/**
 * Theme Name: Blocksy Child
 * Description: Blocksy Child theme
 * Author: Creative Themes
 * Template: blocksy
 * Text Domain: blocksy
*/
/**

    var(--theme-palette-color-1); you can use this as your primary brand colour.
    var(--theme-palette-color-2); alternative colour, used usually for the hover action 
    var(--theme-palette-color-3); colour used for general text paragraphs
    var(--theme-palette-color-4); colour used for headings, subheadings and titles 
    var(--theme-palette-color-5); colour used for borders
    var(--theme-palette-color-6); #778d7a;  colour used for subtle backgrounds (page hero, footer)
    var(--theme-palette-color-7); colour used for the site’s background
    var(--theme-palette-color-8); lighter alternative colour, to be used in header backgrounds


  	font-family: ct_font_liebe_heide !important;

	Blocksy Querys:
	@media (max-width: 767px) {}
	@media (min-width: 768px) {}
	@media (max-width: 999px) {}

*/


			
/* ========================================================= */
/* 1. RUNDER VERLAUF AUF DEM CONTENT-BEREICH (Anti-Banding) */
/* ========================================================= */
body {
	
    /* Radial Gradient: Innen 15% Gelb, Außen Transparent */
    background: radial-gradient(
        farthest-corner at center, 
        /* Start: Maximal 15% Deckkraft (0.15) in der Mitte */
        rgba(250, 227, 69, 0.15) 0%, 
        /* Mitte: 5% Deckkraft für den Übergang */
        rgba(250, 227, 69, 0.05) 40%,
        /* Ende: Transparent (0) am Rand */
        rgba(250, 227, 69, 0) 100% 
		
		
    );
    
}






/* lose und freie Klassen 
__________________________________________________________________________________*/

	/* https://www.joshwcomeau.com/shadow-palette/ */
:root {
  --shadow-color: 72deg 7% 72%;
  --shadow-elevation-low:
    0.4px 0.5px 1px hsl(var(--shadow-color) / 0),
    0.7px 0.9px 1.7px hsl(var(--shadow-color) / 0.14),
    1.3px 1.7px 3.2px hsl(var(--shadow-color) / 0.29);
  --shadow-elevation-medium:
    0.4px 0.5px 1px hsl(var(--shadow-color) / 0),
    1.6px 2.1px 4px hsl(var(--shadow-color) / 0.11),
    3.2px 4.2px 7.9px hsl(var(--shadow-color) / 0.23),
    6.5px 8.5px 16.1px hsl(var(--shadow-color) / 0.34);
  --shadow-elevation-high:
    0.4px 0.5px 1px hsl(var(--shadow-color) / 0),
    2.8px 3.6px 6.8px hsl(var(--shadow-color) / 0.05),
    4.8px 6.3px 11.9px hsl(var(--shadow-color) / 0.11),
    6.9px 9.1px 17.1px hsl(var(--shadow-color) / 0.16),
    9.6px 12.6px 23.8px hsl(var(--shadow-color) / 0.21),
    13.3px 17.4px 32.9px hsl(var(--shadow-color) / 0.26),
    18.4px 24px 45.4px hsl(var(--shadow-color) / 0.32),
    25.3px 33.1px 62.5px hsl(var(--shadow-color) / 0.37);
}
		.schatten-small { box-shadow: var(--shadow-elevation-low); }
		.schatten 		{ box-shadow: var(--shadow-elevation-medium); }	
		.schatten-large { box-shadow: var(--shadow-elevation-high); }


			/* @link https://utopia.fyi/type/calculator?c=360,16,1.2,1490,18,1.25,5,2,&s=0.75|0.5|0.25,1.5|2|3|4|6,s-l&g=s,l,xl,12 */

:root {
  --step--2: clamp(0.6944rem, 0.6863rem + 0.0362vw, 0.72rem);
  --step--1: clamp(0.8333rem, 0.8121rem + 0.0944vw, 0.9rem);
  --step-0: clamp(1rem, 0.9602rem + 0.177vw, 1.125rem);
  --step-1: clamp(1.2rem, 1.1343rem + 0.292vw, 1.4063rem);
  --step-2: clamp(1.44rem, 1.3388rem + 0.45vw, 1.7578rem);
  --step-3: clamp(1.728rem, 1.5785rem + 0.6644vw, 2.1973rem);
  --step-4: clamp(2.0736rem, 1.8592rem + 0.9529vw, 2.7466rem);
  --step-5: clamp(2.4883rem, 2.1873rem + 1.3379vw, 3.4332rem);
}


		/* Background-blur */
		.ct-popup,
		[data-header*="type-1"] #offcanvas,
		#bp_container,
		.mwl.visible {
			-webkit-backdrop-filter: blur(12px);
			backdrop-filter: blur(12px); 
			}
	

		h1 { 
			margin-top: 0 !important; 
			margin-bottom: 0.75em !important; 
			}
		h2 { margin-bottom: 0.75em !important; }
		h3 { margin-top: 0.5em !important;; margin-bottom: 0.5em !important; }
		h4 { margin-bottom: 1em;  }
		h5 {  margin-bottom: 1em; }

		p { font-size: var(--step-0); margin-bottom: 0.875em !important; }

		.bottom-0 { margin-bottom: 0px !important; }
		.small { font-size: var(--step--1); }
		.xsmall { font-size: var( --step--2); }
		.large { font-size: var( --step-4) !important; }
		.xlarge { font-size: var( --step-5) !important; }


		

		b, strong { font-weight: 600 !important; }
		
		.small { font-size: 0.875em; }
		.blocksatz { text-align: justify; hyphens: auto }

		.wp-block-quote p { 
			font-size: var(--step-4);
			line-height: 1.2em;
			} 
			.wp-block-quote cite { 
				font-size: var(--step-2) !important;
				text-align: right;
				line-height: 1em;
				} 
     
		.kolumnen div.stk-block-content,
		.kolumnen div.tpgb-column-inner,
		.kolumnen {
			column-count:  2;
			column-width: 400px;
			column-gap: 8em;
			column-rule: 1px solid rgba(0,0,0,0.15);
			display: block;
			hyphens: auto;
			}
			.margin-bottom-0 { margin-bottom: 0 !important; }

	    
		.radius,
		.wp-block-image img,
		.blocks-gallery-item img,
		.wp-block-gallery img { 
			border-radius: 4px !important; 
		}

		figure.wp-block-gallery { margin-top: 2%; margin-bottom: 4%; }

		.wp-block-media-text.has-media-on-the-right {
			margin-bottom: 0.875em !important;
		}
		.wp-block-media-text figure {
			border-radius: 3px;
			min-height: 450px !important;
			}
			.wp-block-media-text .wp-block-media-text__content {
				padding: 0 12% 0 0;
			}
			.wp-block-media-text.has-media-on-the-right .wp-block-media-text__content {
				margin-bottom: -0.875em !important;
			}
			@media (max-width: 600px) {
				.wp-block-media-text .wp-block-media-text__content {
					margin-top: 1em;
				}
			}





/* Header 
__________________________________________________________________________________*/

		

			[data-row="middle"] .ct-container-fluid {
				--theme-container-edge-spacing: calc(100vw); 
			}

			[data-row="middle"] [data-column="start"],
			[data-row="middle"] [data-column="end"] {  
				align-items: start;
			}

			[data-header*="type-1"] .ct-header [data-id="logo"] .site-title {
				margin: 48px -20% 0 20%;
				text-align: center;	  
				transform: rotate(-5deg);	
			}


			header .bild-header-oben-links {
				max-width: 20vw;
			}



				@media (min-width: 999px) and (max-width: 1300px) {

					header .site-branding,
					header #telefonnummer-header {
						transform: scale(0.8);
					}

					header #telefonnummer-header {
						transform: scale(0.7);
						transform-origin: top right;
					}


				}


				@media (max-width: 767px) {
					
					
					header .bild-header-oben-links {
						max-width: 60vw;
						}					

					header div[data-id="widget-area-1"] {
						display: none;
						}					
					
					[data-header*="type-1"] .ct-header [data-id="logo"] .site-title {
						margin: 24px -10% 0 5%;
						text-align: center;	  
						transform: rotate(-5deg) scale(0.8);
						transform-origin: top;
						
						}

				}





				/* Menü 
				__________________________________________________________________________________*/		

				#main-container #header-menu-1 {
					box-shadow: 0 5px 24px 6px rgba(11, 41, 23, 0.1) ;
					border-radius: 12px;
					border: 1px solid var(--theme-palette-color-8);
					background-color: rgba(255, 255, 255, 0.0);
 					backdrop-filter: blur(8px); 					
					}
					#main-container #header-menu-1:hover {
							transform: scale(1.005) translateY(-2px);
							box-shadow: 10px 40px 40px -20px rgba(11, 41, 23, 0.2) ;
							background-color: rgba(255, 255, 255, 1.0);	
						}

			
				#main-container #menu-hauptmenue > li {
					border-right: 1px solid var(--theme-palette-color-8); 
					display: inline-block; 
					margin: 0.5em 0;
					overflow: visible;
				}

				/* Entfernt die Border vom letzten Listenelement, damit sie nicht am Ende ist */
				#main-container #menu-hauptmenue > li:last-child {
					border-right: none;
				}

				#main-container	[data-menu*=type-3]>ul>li:hover>a {
						background: #FAE246 ;
						background: radial-gradient(ellipse, rgba(250, 226, 70, 0.2) 0%, rgba(250, 226, 70, 0) 80%) !important;
				}

				#main-container [data-menu*=type-3]>ul>li[class*=current-menu-]>a {
					background: #008b3b ;
					background: radial-gradient(ellipse, rgba(0, 139, 59, 0.1) 0%, rgba(0, 139, 59, 0) 80%) !important;
				}




	   
/* Inhalte
__________________________________________________________________________________*/


		.infoblock {
			position: relative;
			z-index: 0;
			border: 1px solid var(--theme-palette-color-6);
			border-radius: 6px;
			padding: 3vw;
			max-width: 500px;			
			background-color: rgba(255, 255, 255, 0.6);
 			backdrop-filter: blur(8px); 
  			box-shadow: 10px 40px 40px -20px rgba(0, 0, 0, 0.25);
    		}

			.infoblock > .stk-block-icon {
				position: absolute;
				aspect-ratio: 1/1;
				border-radius: 50% !important;
				top: -50px;
				left: -50px;
				}

			.infoblock:hover {
				z-index: 10;
				transform: scale(1.01);
				background-color: rgba(255, 255, 255, 0.8);
				box-shadow: 20px 60px 60px -20px rgba(0, 0, 0, 0.25);
				backdrop-filter: blur(12px);
				}
				.infoblock:hover > .stk-block-icon {
					-webkit-animation: shadow-drop-2-center 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
							animation: shadow-drop-2-center 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
					}


		.infoblock.breiter { max-width: 700px; }


@media (min-width: 768px) {

		.infoblock.links { translate: -48px; }
		.infoblock.rechts { translate: 48px; }

		}

@media (max-width: 999px) {
	
		.infoblock { 
			padding: 5vw;
		}
	
		.infoblock > .stk-block-icon {
				position: absolute;
				aspect-ratio: 1/1;
				border-radius: 50% !important;
				top: -30px;
				left: -30px;
				}

		}


@media (max-width: 767px) {

		.infoblock { 
			margin-left: 10px;
		}
	
		.infoblock > .stk-block-icon {
			top: -25px;
			left: -25px;
			}

		}









/* Footer 
__________________________________________________________________________________*/
	

   footer #menu-footer-menue-2 {
        padding-top: 36px;
		border-top: 1px solid var(--theme-palette-color-1);
      }

	footer .stk-block-columns > .stk-block-content {
		column-gap: 8vw;
	}


		@media (min-width: 1000px) {

			footer #menu-footer-menue-1 {
				padding-top: 36px;
				border-top: 2px solid #fff;
				}

			}


		@media (max-width: 999px) {

			footer .stk-block-columns > .stk-block-content p,
			footer .stk-block-columns > .stk-block-content h5 {
				text-align: center;
				}

		}

		@media (max-width: 767px) {

			[data-footer*="type-1"] .ct-footer {
				background-position: 50% 100%;
				background-size: cover;
			}
			
			footer .stk-block-columns > .stk-block-content {
		    	justify-content: center !important;
			}

		}






/* Plugins 
__________________________________________________________________________________*/

    
		/* Blocksy
        -------------------------------------*/
				.ct-shortcuts-container {
					z-index: 99 !important;
					}






		/* Complianz
        -------------------------------------*/
			#cmplz-cookies-overview .cmplz-dropdown p, 
			#cmplz-document .cmplz-dropdown p, 
			#cmplz-document li, 
			#cmplz-document p, 
			#cmplz-document td {
				font-size: 1rem;
			}

			#cmplz-document.impressum h2, 
			#cmplz-document.impressum h3 {
				font-size: 1.5rem;
				margin-top: 1.5em;
				margin-bottom: 0 !important;			
				color: var(--theme-palette-color-3) !important;
				opacity: 1;
			}

			#cmplz-document a {	text-decoration: none; }
			#cmplz-document b { font-weight: 700; }
			#cmplz-document h2, #cmplz-document h3 { margin-top: 2em !important; margin-bottom: 0 !important; }
				







		/* Stackable Blocks 
		__________________________________________________________________________________*/

				.stackable-container {
                      padding-top: 8% !important;
                      padding-bottom: 8% !important;					
                      }
					.stackable-container-oben { padding-top: 8% !important; }
					.stackable-container-unten {padding-bottom: 8% !important; }


			   .liste-mit-linien ul li {
					list-style: none; 
					border-bottom: 1px solid rgba(255, 255, 255, 30%) !important;
					margin: 0 -0.25em;
					padding: 1.25em 0.25em;
				   }
				.circle-content-inner ul  { padding-inline-start: 0; }
				.circle-content-inner ul li { padding: 0.5em 0.25em; }


			   .liste-mit-linien ul li:last-child {
						border-bottom: none !important;
				 }

				
	



		/* Meow Lightbox
		__________________________________________________________________________________*/
			
        .mwl__slider__image__thumbnail img { border-radius: 3px; }
		.mwl__topbar__controls__control--fullscreen { visibility: hidden; }





		/* DrDsgvO Map -------------------------------------*/

			#kontakt-container {
				pointer-events: none;
			}	

			#drdsgvo_map { height: 400px; }
				@media (min-width: 1000px) {
					#drdsgvo_map { height: auto; }
				}



            #drdsgvo_map .ol-control button {  background-color: var(--theme-palette-color-1) !important;}
            #drdsgvo_map .ol-attribution li a {
                color: var(--theme-palette-color-1) !important;
                text-decoration: none;
            }


			.ol-zoom {
                top: 1.5em !important;
                left: 0.3em;
            }
            .ol-touch .drdsgvo_initbtn {
                top: 3em;
                left: 1.1em;
            }
            .drdsgvo_routebtn,
			.drdsgvo_initbtn {
                display: none;
            }


	

	/* JetForms
    -------------------------------------*/	

			.jet-form-builder__field:not(.checkboxes-field):not(.radio-field):not(.range-field) {
				background-color: rgba(255,255,255,0.50);
				border: none;
				}
			.jet-form-builder__field-label.for-checkbox>span::before {
				background-color: #fff;
				}
		
			.jet-form-builder__field-label.for-checkbox :checked+span::before {
				border-color: var(--theme-palette-color-1) !important;
				background-color: var(--theme-palette-color-1) !important;
				}

			.jet-form-builder [type='text'], 
			.jet-form-builder [type='password'], 
			.jet-form-builder [type='date'], 
			.jet-form-builder [type='datetime'], 
			.jet-form-builder [type='datetime-local'], 
			.jet-form-builder [type='month'], 
			.jet-form-builder [type='week'], 
			.jet-form-builder [type='email'], 
			.jet-form-builder [type='number'], 
			.jet-form-builder [type='search'], 
			.jet-form-builder [type='tel'], 
			.jet-form-builder [type='time'], 
			.jet-form-builder [type='url'], 
			.jet-form-builder [type='color'], 
			.jet-form-builder textarea {
				margin-bottom: 0 !important;
				padding-top: 35px !important;
				padding-bottom: 15px !important;
				padding-left: 9px !important;
				border-radius: 3px !important;
				background-color: rgba(255,255,255,0.50) !important;
				box-shadow: 0 0 0 !important;
				border: 0px solid var(--theme-palette-color-3) !important;
				}


			.jet-form-builder input[required],
			.jet-form-builder textarea[required],
			.jet-form-builder select[required] {
				border: 0px solid var(--theme-palette-color-1) !important;
				background-color: rgba(255,255,255,0.90) !important;
				}  

					.jet-form-builder input:focus,
					.jet-form-builder textarea:focus { 
						background-color: rgba(255,255,255,1.00) !important;
						color: #000;
						border: 1px solid var(--theme-palette-color-1) !important;
						box-shadow:  0 1px 1px rgba(0,0,0,0.11), 
									  0 2px 2px rgba(0,0,0,0.11), 
									  0 4px 4px rgba(0,0,0,0.11), 
									  0 6px 8px rgba(0,0,0,0.11),
									  0 8px 16px rgba(0,0,0,0.11) !important;
						transform: scale(1.01);
						}

		

			/* Label inline */
			.jet-form-builder .field-type-text-field,
			.jet-form-builder .field-type-textarea-field {
				margin-top: -12px !important;		
				}				
				.jet-form-builder .field-type-text-field label,
				.jet-form-builder .field-type-textarea-field label {
					z-index: 2;
					bottom: -35px;
					left: 16px;
					position: relative;
					pointer-events: none;
					}
					.jet-form-builder .field-type-text-field:focus-within label,
					.jet-form-builder .field-type-textarea-field:focus-within label,
					.jet-form-builder .input-filled label {
						bottom: -25px;
						left: 8px;
						color: rgb(0 0 0 / 0.5) !important;
						font-size: 0.7em !important;
						}

			.jet-sm-gb-b568fc13-f070-4a8b-bb12-b039ef493376 .checkradio-wrap { 
				display: flex; 
				justify-content: center;
				}

			.jet-form-builder__field-wrap.checkradio-wrap:not(:first-child) {
				padding-top: 0 !important;
			}
			
			.jet-form-builder__desc { margin-top: 0.5em; }

			.jet-form-builder .jet-container.plz-ort {
				display: flex;
				flex-wrap: wrap;
				flex-direction: row;
				padding: 0;
			}
			.jet-form-builder .jet-container.plz-ort .jet-form-builder-row:nth-child(2) { width: 27% !important; margin-right: 3%; }
			.jet-form-builder .jet-container.plz-ort .jet-form-builder-row:nth-child(3) { width: 70% !important; }
			.jet-form-builder .jet-form-builder__desc { line-height: 1.3em; }
			.jet-form-builder__submit-wrap {
				justify-content: flex-end;
			}
			.jet-form-builder__submit {
				background-color: var(--theme-palette-color-1) !important;
			}
			.jet-form-builder__submit:hover {
				background-color: var(--theme-palette-color-2);
			}

			.jet-form-builder-row.field-has-error .error-message { color: #990000 !important; }
			.jet-form-builder-message--success { background-color: #fff; border-radius: 3px; border: 0px !important;  }








/* Animationen 
__________________________________________________________________________________*/	

	input,
    textarea,
    input[type=submit],
    select,
	label,
	tr,
    .linktext,
	.ugb-card__image,
	.ugb-card__description,
	.ugb-card .ugb-card__subtitle,
	.ugb-card .ugb-card__title,
	.tpgb-featured-image img,
	.wp-block-image img,
	.ct-icon-container,
	.card,
	.box,
	.mwl,
	.mwl__slider__image__thumbnail__high-res landscape,
	.animiert,
	.animiert div,
.infoblock,
#header-menu-1 {		
		transition: all 0.3s ease !important;
	 }











.kreisen {
  /* Animation: Name, 60s Dauer, gleichmäßig (linear), endlos */
  animation: kreisenLinearWeich 60s linear infinite; 
  transform: translate(0, 0); 
}

@keyframes kreisenLinearWeich {
  0% {
    /* Oben */
    transform: translate(0%, -4%); 
  }
  
  8.33% {
    /* Oben rechts-1 */
    transform: translate(2%, -3.46%); /* 30° */
  }
  
  16.66% {
    /* Oben rechts-2 */
    transform: translate(3.46%, -2%); /* 60° */
  }
  
  25% {
    /* Rechts */
    transform: translate(4%, 0%);
  }
  
  33.33% {
    /* Unten rechts-1 */
    transform: translate(3.46%, 2%); /* 120° */
  }
  
  41.66% {
    /* Unten rechts-2 */
    transform: translate(2%, 3.46%); /* 150° */
  }
  
  50% {
    /* Unten */
    transform: translate(0%, 4%);
  }
  
  58.33% {
    /* Unten links-1 */
    transform: translate(-2%, 3.46%); /* 210° */
  }
  
  66.66% {
    /* Unten links-2 */
    transform: translate(-3.46%, 2%); /* 240° */
  }
  
  75% {
    /* Links */
    transform: translate(-4%, 0%);
  }
  
  83.33% {
    /* Oben links-1 */
    transform: translate(-3.46%, -2%); /* 300° */
  }
  
  91.66% {
    /* Oben links-2 */
    transform: translate(-2%, -3.46%); /* 330° */
  }
  
  100% {
    /* Zurück zum Start (O-Grad) */
    transform: translate(0%, -4%);
  }
}













.shadow-drop-2-center {
	-webkit-animation: shadow-drop-2-center 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
	        animation: shadow-drop-2-center 0.4s cubic-bezier(0.250, 0.460, 0.450, 0.940) both;
}

/* ----------------------------------------------
 * Generated by Animista on 2025-10-6 22:41:33
 * Licensed under FreeBSD License.
 * See http://animista.net/license for more info. 
 * w: http://animista.net, t: @cssanimista
 * ---------------------------------------------- */

/**
 * ----------------------------------------
 * animation shadow-drop-2-center
 * ----------------------------------------
 */
@-webkit-keyframes shadow-drop-2-center {
  0% {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    -webkit-box-shadow: 0 0 0 0 rgba(31, 42, 3, 0);
            box-shadow: 0 0 0 0 rgba(31, 42, 3, 0);
  }
  100% {
    -webkit-transform: translateZ(50px);
            transform: translateZ(50px);
    -webkit-box-shadow: 0 0 20px 0px rgba(31, 42, 3, 0.35);
            box-shadow: 0 0 20px 0px rgba(31, 42, 3, 0.35);
  }
}
@keyframes shadow-drop-2-center {
  0% {
    -webkit-transform: translateZ(0);
            transform: translateZ(0);
    -webkit-box-shadow: 0 0 0 0 rgba(31, 42, 3, 0);
            box-shadow: 0 0 0 0 rgba(31, 42, 3, 0);
  }
  100% {
    -webkit-transform: translateZ(50px);
            transform: translateZ(50px);
    -webkit-box-shadow: 0 0 20px 0px rgba(31, 42, 3, 0.35);
            box-shadow: 0 0 20px 0px rgba(31, 42, 3, 0.35);
  }
}
