/**
Theme Name: GGZ
Version: 1.0.0
Author: base digital marketing
Text Domain: twentytwentythree-child
Description: .
Template: twentytwentythree
*/

/* lato-regular - latin */
@font-face {
  font-display: swap; /* Check https://developer.mozilla.org/en-US/docs/Web/CSS/@font-face/font-display for other options. */
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  src: url('assets/fonts/lato-v24-latin-regular.woff2') format('woff2'), /* Chrome 36+, Opera 23+, Firefox 39+, Safari 12+, iOS 10+ */
       url('assets/fonts/lato-v24-latin-regular.ttf') format('truetype'); /* Chrome 4+, Firefox 3.5+, IE 9+, Safari 3.1+, iOS 4.2+, Android Browser 2.2+ */
}


@font-face {
  font-family: 'icomoon';
  src:  url('fonts/icomoon.eot?x2tc7f');
  src:  url('fonts/icomoon.eot?x2tc7f#iefix') format('embedded-opentype'),
    url('assets/icomoon/fonts/icomoon.ttf?x2tc7f') format('truetype'),
    url('assets/icomoon/fonts/icomoon.woff?x2tc7f') format('woff'),
    url('assets/icomoon/fonts/icomoon.svg?x2tc7f#icomoon') format('svg');
  font-weight: normal;
  font-style: normal;
  font-display: block;
}

body {font-family:'Lato', Arial, Helvetica, sans-serif;}
div, * {box-sizing:border-box;}
.wp-site-blocks {padding-top:68px; margin-top:0;}
header {position:absolute; left:0; top:0; width:100%; z-index:20;}
header .wp-block-navigation__container {height:auto; min-height:49px; column-gap:1.2em;}
.wp-block-navigation-item__label {color:var(--wp--preset--color--primary);}
.wp-block-site-logo {position:absolute; top:-10px; width:200px; padding:0 30px; margin-bottom:-60px; z-index:10;}
.wp-block-site-title {width:150px; float:left; padding-left:50px; overflow:hidden; white-space:nowrap;}
.home .wp-block-site-logo {left:50%; margin-left:-100px;}
.home .wp-block-site-title {opacity:0;}
button.wp-block-navigation__responsive-container-open {position:fixed; padding:0.6em; transform:translateX(2em); background-color:#fff; border-radius:50%; z-index:92;}
.wp-block-navigation__responsive-container-close {top:0.8rem;}
.a11y-toolbar.custom-location {top:120px; z-index:90;}
.a11y-toolbar ul li button {padding:14px 12px;}
.featuredImage {min-height:220px;}
.alignfull {width:auto; max-width:1920px !important; margin:0 auto;}
main {margin-block-start:0 !important;}

body .is-layout-constrained .teaserBox.alignwide {margin-left:-1.5% !important; margin-right:-1.5% !important;}
.teaserBox .wp-block-cover {width:47% !important; margin:0.5em 1.5% !important; padding:0 clamp(0.3rem, 1.5vw, 1rem); float:left; aspect-ratio:16/10 !important;}
.teaserBox .wp-block-cover__inner-container {height:100%; width:100%;}
.teaserBox .wp-block-cover__inner-container p {height:100%; text-align:left;}
.teaserBox .wp-block-cover__inner-container a {display:inline-block; height:100%; width:100%; font-size:clamp(0.78em, 2.5vw, 1em); line-height:1.15em; text-transform:uppercase; text-decoration:none;}
.teaserBox .wp-block-cover__inner-container a span {position:absolute; left:0; bottom:0; width:100%; text-align:center; white-space:nowrap;}
.wp-block-group:after {content:""; display:table; clear:both;}
.wp-element-button, .wp-block-button__link {color:#fff; text-transform:uppercase;}

.slick-autoplay-toggle-button {bottom:-22px;}
.has-secondary-background-color .slick-autoplay-toggle-button, .has-secondary-background-color .slick-dots button .slick-dot-icon, .has-secondary-background-color .slick-dots li.slick-active button .slick-dot-icon {color:#fff;}
.slick-prev {left:0; z-index:2;}
.slick-next {right:0;}

.panel {gap:0}
.panelHead {min-height:3em;}
.panelBox .panelHead h3 {font-size:1.05em;}
.panelHead p, .panelHead .wp-block-group {margin-block-start:0;}
.panelContent {height:auto; visibility:hidden; padding-top:0 !important; padding-bottom:0 !important; max-height:1px; overflow:hidden; transition:0.5s;}
.entry-content ul, .entry-content ol {padding-left:1.2em;}
.entry-content ul li {margin-bottom:0.5em;}
.entry-content ol li {padding-left:0.2em; margin-bottom:0.5em;}

.wpcf7-form {font-size:0.95em; padding-top:1em; width:auto; max-width:800px;}
.wpcf7-text, .wpcf7-select, .wpcf7-textarea, .wpcf7-free-text {font-family:'Lato', Arial, Helvetica, sans-serif; width:100%; padding:0.5em 5px; box-sizing:border-box; font-size:1em; color:#000; background-color:#fff; border:1px #eee solid;}
.wpcf7-date {font-family:'Lato', Arial, Helvetica, sans-serif; padding:0.6em 5px; box-sizing:border-box; font-size:0.9em; color:#000; background-color:#fff; border:1px #eee solid;}
span[data-name="voucher"] .wpcf7-free-text {width:50%;}
.wpcf7-form .labelText {display:block; font-size:0.9em; width:250px;}
.wpcf7-form-control-wrap {width:100%;}
.wpcf7-list-item {padding-top:0.3em;}
.wpcf7-list-item.first, .wpcf7-acceptance .wpcf7-list-item, .wpcf7-radio .wpcf7-list-item {margin-left:0;}
.wpcf7-checkbox input, .wpcf7-acceptance input {height:1.2em; width:1.2em; outline:none; transform:translateY(0.2em); margin-right:0.5em;}
.wpcf7-checkbox input:focus-visible, .wpcf7-acceptance input:focus-visible {outline-style:auto;}
.wpcf7-radio .wpcf7-list-item {display:block; margin:0 0 0.4em;}
input.wpcf7-not-valid {background:#ecc; border-color:#c00;}
.wpcf7-form .rowSubmit {display:block; text-align:center; padding:1em 0 0 72px;}
.wpcf7-submit {min-width:10em; padding: calc(0.667em + 2px) calc(1.333em + 2px); font-family:'Lato', Arial, Helvetica, sans-serif; font-size:1em; text-transform:uppercase; color:#fff; background-color:var(--wp--preset--color--primary); border:none;}
.wpcf7 form .wpcf7-response-output {margin-left:0; margin-right:0; background-color:#fff;}
#Wunschtorte {position:relative;}
#MeineWunschtorte {position:absolute; top:-100px;}

footer {position:fixed; bottom:0; left:0; width:100%; z-index:10;}
footer ul {padding:0; list-style-type:none;}
footer li {float:left; margin-right:0.2em;}
footer li a {display:block; font-size:0.65em; line-height:1.35em; text-transform:uppercase; text-decoration:none; padding:0.5em 0.1em;}
.socialLinks {white-space:nowrap;}
.socialLinks a {display:inline-block; line-height:1.4; margin-left:0.1em; margin-bottom:0.1em;}
.socialLinks a span {display:inline-block; width:1px; overflow:hidden;}
.socialLinks a:before {font-family:'Icomoon' !important; display:inline-block; height:1.8em; width:1.8em; font-size:1em; line-height:1.8em; text-align:center; color:#90887C; background-color:#fff; border-radius:50%;}
.fbLink:before {content:"\ea90";}
.instaLink:before {content:"\ea92"; font-family:'Icomoon' !important; display:inline-block;}
.phoneLink:before {content:"\e942"; font-family:'Icomoon' !important; display:inline-block;}
.mailLink:before {content:"\e902"; font-family:'Icomoon' !important; display:inline-block;}

.fontsize .wp-block-site-logo a {display:block;}
.fontsize h1.wp-block-site-title {font-size:0.8rem !important;}
.fontsize main {padding-bottom:140px;}
.fontsize footer li a {font-size:0.75em;}

@keyframe headerScale {
  0% {transform: scale(1.2); -webkit-transform: scale(1.2);}
  100% {transform: scale(1.0); -webkit-transform: scale(1.0);}
}
@-webkit-keyframes headerScale {
  0% {transform: scale(1.2); -webkit-transform: scale(1.2);}
  100% {transform: scale(1.0); -webkit-transform: scale(1.0);}
}
.featuredImage img {animation-name: headerScale; animation-duration: 4s;}

@media screen and (max-width:575px){
  .fontsize .teaserBox .wp-block-cover {width:auto !important; float:none;}
  .fontsize .socialLinks {white-space: wrap; min-width:4.6em;}
}

@media screen and (max-width:989px){
	/*.panelBox .panel {margin-block-start:0;}*/
  .panel.hasContent .panelHead {position:relative; cursor:pointer;}
  .panel.hasContent .panelHead:after {content:"\e903"; font-family:'Icomoon' !important; display:block; position:absolute; right:0.8rem; top:50%; font-size:1.6rem; line-height:1em; margin-top:-0.5em; transition:0.2s;}
  .panel.opened .panelContent {visibility:visible; max-height:600px; margin:15px 0 !important;}
  .panel.large.opened .panelContent {visibility:visible; max-height:2300px; margin:15px 0 !important;}
  .panel.opened .panelHead:after {transform:rotate(90deg);}
	.font-size .panel.opened .panelContent {max-height:1000px;}
}
@media screen and (max-width:1199px){
	.g1 {height:1px; width:100%;}
}
@media screen and (min-width: 640px){
  .teaserBox .wp-block-cover__inner-container a {line-height:1.6em;}
  .smf-form--simple-table .smf-item {padding:0.75em 0;}
  .smf-item__label {font-size:1em;}
  footer li {margin-right:1em;}
  footer li a {position:relative; font-size:0.9em;}
  footer li a:before {content:""; display:block; position:absolute; top:0.8em; left:-0.5em; height:0.85em; width:1px; background-color:#fff;}
	footer li:first-child a:before {display:none;}
  .socialLinks a {margin-left:0.4em;}
  .socialLinks a:before {font-size:1.3em;}
  .fontsize main {padding-bottom:60px;}
}

@media screen and (min-width:768px){
  header {position:fixed;}
  .home .wp-block-site-logo {left:auto; margin-left:0;}
  .a11y-toolbar ul li button {padding:14px 16px;}
  .featuredImage {min-height:400px;}
  .wpcf7-form p, .wpcf7-form label {display:flex; width:100%;}
  .wpcf7-form .labelText {font-size:1em; padding-top:0.3em;}
  .wp-block-column .wpcf7-form p, .wp-block-column .wpcf7-form label {display:block; width:auto;}
  .wp-block-column .wpcf7-form .labelText {font-size:0.9em; padding-top:0;}
}

@media screen and (min-width:990px){
  body .is-layout-constrained .teaserBox.alignwide {margin-left:-1% !important; margin-right:-1% !important;}
  .teaserBox .wp-block-cover {width:31.3% !important; margin:0.5em 1% !important;}
  .panelBox {display:flex; flex-wrap:wrap; max-width:calc(var(--wp--style--global--wide-size) + 2%) !important;}
  .panelBox .panel, .panelBox .noPanel {width:47% !important; margin:0.5em 1.5% !important; float:left;}
  body .is-layout-constrained .panelBox.alignwide {margin-left:-1.5% !important; margin-right:-1.5% !important;}
  .panelBox .hasContent .panelContent {visibility:visible; max-height:600px; padding-top:var(--wp--preset--spacing--15) !important; padding-bottom:var(--wp--preset--spacing--15) !important;}
  .panel.large.hasContent .panelHead {position:relative; cursor:pointer;}
  .panel.large.hasContent .panelHead:after {content:"\e903"; font-family:'Icomoon' !important; display:block; position:absolute; right:0.8rem; top:50%; font-size:1.6rem; line-height:1em; margin-top:-0.5em; transition:0.2s;}
  .panel.large.opened .panelContent, .panel.large.lg-opened .panelContent {visibility:visible; max-height:2300px; margin:15px 0 !important;}
  .panel.large.opened .panelHead:after, .panel.large.lg-opened .panelHead:after {transform:rotate(90deg);}
  .socialLinks a:before {font-size:1.6em;}
	.fontsize .panelBox .hasContent .panelContent {max-height:1000px;}
}

@media screen and (min-width:1200px){
  header {background-color:#fff;}
  .fontsize .wp-block-navigation__container {margin-top:-6px; margin-bottom:-6px; row-gap:12px !important;}
	.wp-site-blocks {padding-top:108px;}
  .wp-block-navigation__responsive-container {background-color:inherit; display:block; position:relative; width:100%; z-index:auto;}
  .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container.wp-block-navigation__submenu-container {left:0}
  .wp-block-navigation {font-size:0.96em;}
  .wp-block-navigation__responsive-container .wp-block-navigation__responsive-container-close {display:none;}
  .wp-block-navigation__responsive-container-open {display:none;}
  .wp-block-site-logo {padding:0;}
  .wp-block-site-title {padding:25px 0 25px 50px;}
  .featuredImage {min-height:550px;}
  body .is-layout-constrained .teaserBox.alignwide, body .is-layout-constrained .panelBox.alignwide {margin-left:auto !important; margin-right:auto !important;}
  .teaserBox {max-width:calc(var(--wp--style--global--wide-size) + 1.5rem) !important;}
  .teaserBox .wp-block-cover img {transition: 0.5s;}
  .teaserBox .wp-block-cover:hover img {transform:scale(1.1);}
  .panelBox {display:flex; flex-wrap:wrap; max-width:calc(var(--wp--style--global--wide-size) + 1.5rem) !important;}
  .panelBox .panel, .panelBox .noPanel {width:31.3% !important; margin:0.5em 1% !important;}
}

@media screen and (min-width:1260px){
  .slick-prev {left:-25px;}
  .slick-next {right:-25px;}
}


.contrast .wp-block-cover__inner-container a {display:inline-block; padding:0 5px; background-color:#fff;}
.contrast .has-primary-color, .contrast .wp-block-navigation-item__label, .contrast :where(.wp-block-post-content a:where(:not(.wp-element-button))) {color:#666157 !important;}
.contrast .has-secondary-color {color:#4A473F !important;}
.contrast .has-primary-background-color {background-color:#746F63 !important;}
.contrast .has-secondary-background-color {background-color:#5A564D !important; color:#fff !important;}
.contrast .has-tertiary-background-color {background-color:#DBD3C7 !important; color:#423F38 !important;}
.contrast .has-tertiary-background-color .has-base-color, .contrast .has-tertiary-background-color .has-primary-color, .contrast .has-tertiary-background-color a {color:#423F38 !important;}
.contrast .wpcf7-text, .contrast .wpcf7-select, .contrast .wpcf7-textarea, .contrast .wpcf7-free-text, .contrast .wpcf7-date {border:1px #666 solid;}

@media (prefers-color-scheme: dark) {
  body.contrast, .contrast header {color:#fff; background-color:#000;}
  .contrast .wp-block-navigation__responsive-container-open svg {fill:#000;}
  .contrast .wp-block-navigation__responsive-container {color:#fff !important; background-color:#000 !important;}
  .contrast .wp-block-navigation-item__label {color:#fff !important;}
  .contrast h1, .contrast h2, .contrast h3, .contrast h4, .contrast h5, .contrast p, .contrast ul {color:#fff;}
  .contrast .wp-block-cover__inner-container a {background-color:#000;}
  .contrast .has-primary-color, .contrast .has-secondary-color {color:#e6eded !important;}
  .contrast .has-light-background-color {background-color:#2A2824 !important; color:#fff !important;}
  .contrast .has-primary-background-color {background-color: #4B473D !important;}
  .contrast .has-tertiary-background-color {background-color:#4A473F !important; color:#fff !important;}
  .contrast .has-tertiary-background-color .has-base-color, .contrast .has-tertiary-background-color .has-primary-color, .contrast .has-tertiary-background-color a {color:#fff !important;}
  .contrast .wpcf7-text, .contrast .wpcf7-select, .contrast .wpcf7-textarea, .contrast .wpcf7-free-text, .contrast .wpcf7-date {border:1px #999 solid; color:#eee; background-color:#000;}
  .contrast .teaserBox a span {color:#eee; background-color:#000;}
  .contrast :where(.wp-block-post-content a:where(:not(.wp-element-button))) {color:#fff !important;}
  .contrast .slick-autoplay-toggle-button, .contrast .slick-dots li button .slick-dot-icon, .contrast .slick-next .slick-next-icon, .contrast .slick-next .slick-prev-icon, .contrast .slick-prev .slick-next-icon, .contrast .slick-prev .slick-prev-icon {color:#fff;}
}

html { --wpa-font-size: clamp( 20px, 1.4rem, 32px ); --wpa-h1-size : clamp( 48px, 3rem, 72px ); --wpa-h2-size : clamp(28px, calc(2.4rem + ((1vw - 0.48rem) * 8.4135)), 40px); --wpa-h3-size : clamp(1.4rem, calc(2.3rem + ((1vw - 0.48rem) * 9)), 1.6rem); --wpa-h4-size : clamp(1.4rem, 1.4rem + ((1vw - 0.2rem) * 0.364), 1.6rem); --wpa-sub-list-size: 1.1em; --wpa-sub-sub-list-size: 1em;}