:root{--final-sans:-apple-system,BlinkMacSystemFont,"SF Pro Display","Helvetica Neue",Arial,sans-serif;--headline-size:56px;--headline-weight:400;--headline-leading:1.05;--headline-tracking:-.045em}
html,body{font-family:var(--final-sans)}

/* One definitive header. */
.site-header,.home .site-header{position:fixed!important;inset:0 0 auto!important;display:block!important;width:100%!important;height:58px!important;padding:0!important;margin:0!important;background:rgba(255,255,255,.94)!important;color:#111!important;border:0!important;border-bottom:1px solid #e5e5e5!important;box-shadow:none!important;backdrop-filter:saturate(180%) blur(18px);z-index:99999!important}
.site-header .primary-nav,.home .site-header .primary-nav{display:grid!important;grid-template-columns:132px minmax(0,1fr) auto!important;align-items:center!important;gap:16px!important;width:min(1240px,calc(100% - 40px))!important;height:58px!important;min-height:58px!important;margin:0 auto!important;padding:0!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.site-header .brand-logo{display:block!important;width:128px!important;height:38px!important;overflow:visible!important}.site-header .brand-logo img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;object-position:left center!important}
.site-header .nav,.home .site-header .nav{position:static!important;display:flex!important;align-items:center!important;justify-content:center!important;gap:clamp(12px,1.65vw,28px)!important;min-width:0!important;background:transparent!important;font-family:var(--final-sans)!important}.site-header .nav a,.home .site-header .nav a{position:relative!important;padding:20px 0 18px!important;background:transparent!important;color:#222!important;font:400 clamp(9px,.72vw,11px)/1 var(--final-sans)!important;letter-spacing:0!important;text-transform:none!important;white-space:nowrap!important}.site-header .nav a:before,.site-header .nav a:after{display:none!important}.site-header .nav a.is-current{font-weight:600!important}
.nav-booking{display:none!important}.nav-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:2px!important}.booking-icon,.contact-icon{display:grid!important;width:36px!important;height:36px!important;place-items:center!important;border-radius:50%!important;color:#111!important;background:transparent!important}.booking-icon:hover,.contact-icon:hover,.booking-icon.is-current,.contact-icon.is-current{background:#f1f1f3!important}.booking-icon svg,.contact-icon svg{display:block!important;width:21px!important;height:21px!important;fill:none!important;stroke:currentColor!important;stroke-width:1.65!important;stroke-linecap:round!important;stroke-linejoin:round!important}.booking-icon svg path:last-child{fill:currentColor!important;stroke:none!important}.menu-toggle{display:none!important;margin:0!important;padding:8px 0!important;border:0!important;background:transparent!important;color:#111!important;font:500 14px/1 var(--final-sans)!important}
body.admin-bar .site-header{top:32px!important}@media(max-width:782px){body.admin-bar .site-header{top:46px!important}}

/* Preserve the established Apple typography; normalize only contact details. */
.contact-grid,.contact-details,.contact-details *,.contact-cta,.contact-cta *,.booking-form,.booking-form *{font-family:var(--final-sans)!important}.contact-details{font:400 clamp(23px,2.25vw,34px)/1.2 var(--final-sans)!important;letter-spacing:-.04em!important}.contact-details p{margin:0 0 32px!important}.contact-details a{font-weight:500!important}.contact-details .travel-note{font-size:16px!important;line-height:1.55!important;letter-spacing:-.012em!important;color:#6e6e73!important}.contact-cta p{font-size:18px!important;line-height:1.5!important;color:#6e6e73!important}.booking-form label{font-size:10px!important;font-weight:600!important;letter-spacing:.11em!important}.booking-form input,.booking-form select,.booking-form textarea{font-size:16px!important;font-weight:400!important;letter-spacing:-.015em!important}
.contact-cta .booking-form{margin-top:34px!important;width:100%!important}.contact-cta .booking-form .calendar{margin:26px 0!important}.contact-cta .booking-form .form-note{font-size:12px!important}

/* Edge-to-edge gallery mood hero. */
.detail-hero{padding-top:58px!important}.detail-hero-image{position:relative!important;width:100%!important;height:min(720px,66vw)!important;margin:0!important;border-radius:0!important;overflow:hidden!important;background:#ececec!important}.detail-hero-image .detail-hero-photo{position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.detail-hero-image .detail-hero-photo img{width:100%!important;height:100%!important;object-fit:cover!important;object-position:var(--asset-position,50% 50%)!important}.detail-hero-image:after{content:""!important;position:absolute!important;z-index:4!important;inset:0!important;background:linear-gradient(90deg,rgba(0,0,0,.58),rgba(0,0,0,.12) 58%,transparent 82%)!important;pointer-events:none!important}.gallery-mood-title{position:absolute!important;z-index:6!important;left:clamp(30px,6vw,92px)!important;bottom:clamp(30px,6vw,78px)!important;max-width:80%!important;color:#fff!important;font:600 clamp(58px,8vw,122px)/.8 var(--final-sans)!important;letter-spacing:-.075em!important;text-align:left!important;text-shadow:0 2px 22px rgba(0,0,0,.2)!important}.gallery-mood-title span{display:block!important}

@media(max-width:1180px){.site-header .primary-nav,.home .site-header .primary-nav{display:grid!important;grid-template-columns:1fr auto auto!important;gap:8px!important}.site-header .nav,.home .site-header .nav{display:none!important;position:fixed!important;inset:58px 0 auto!important;width:100vw!important;height:calc(100dvh - 58px)!important;min-height:480px!important;flex-direction:column!important;gap:18px!important;background:rgba(255,255,255,.98)!important}.menu-open .site-header .nav,.menu-open .home .site-header .nav{display:flex!important}.site-header .nav a,.home .site-header .nav a{padding:4px!important;font-size:clamp(20px,3vw,28px)!important}.nav-actions{margin-left:0!important}.menu-toggle{display:block!important;position:relative!important;z-index:100000!important}}
@media(max-width:800px){.site-header,.home .site-header{height:54px!important}.site-header .primary-nav,.home .site-header .primary-nav{height:54px!important;min-height:54px!important;width:calc(100% - 32px)!important}.site-header .brand-logo{width:112px!important;height:34px!important}.site-header .nav,.home .site-header .nav{inset:54px 0 auto!important;height:calc(100dvh - 54px)!important}.detail-hero{padding-top:54px!important}.detail-hero-image{height:66svh!important}.gallery-mood-title{left:22px!important;bottom:28px!important;max-width:calc(100% - 44px)!important}.contact-details{font-size:26px!important}}

/* Unified headline scale: identical to the homepage, regular throughout. */
.apple-panel h1,.apple-panel h2,.apple-tile h2,.page-hero h1,.detail-hero-copy h1,.detail-section-head h2,.detail-closing h2,.booking h2,.contact-cta h2,.about-grid h2,.legal-content h2,.testimonials h2,.gallery-mood-title{font-family:var(--final-sans)!important;font-size:var(--headline-size)!important;font-weight:var(--headline-weight)!important;line-height:var(--headline-leading)!important;letter-spacing:var(--headline-tracking)!important}
@media(max-width:980px){:root{--headline-size:48px}}
@media(max-width:800px){:root{--headline-size:40px}}

/* Responsive masonry gallery: natural image ratios, equal spacing, no tile backgrounds. */
.detail-overview{padding:10px!important;background:#fff!important}
body .detail-gallery-images{display:block!important;column-count:3!important;column-gap:10px!important;width:100%!important;margin:0!important;padding:0!important;overflow:visible!important;background:transparent!important}
body .detail-gallery-images .detail-card-image,body .detail-gallery-images .detail-card-image:nth-child(n){display:inline-block!important;position:relative!important;width:100%!important;height:auto!important;min-height:0!important;margin:0 0 10px!important;padding:0!important;aspect-ratio:auto!important;break-inside:avoid!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:hidden!important;background:transparent!important}
body .detail-gallery-images .detail-card-image .asset-photo{position:relative!important;inset:auto!important;display:block!important;width:100%!important;height:auto!important;min-height:0!important;margin:0!important;padding:0!important;aspect-ratio:auto!important;overflow:hidden!important;background:transparent!important}
body .detail-gallery-images .detail-card-image .asset-photo:before,body .detail-gallery-images .detail-card-image .asset-photo:after{display:none!important}
body .detail-gallery-images .detail-card-image img{position:static!important;display:block!important;width:100%!important;height:auto!important;max-width:100%!important;margin:0!important;padding:0!important;aspect-ratio:auto!important;object-fit:contain!important;object-position:center!important;background:transparent!important}
@media(max-width:980px){body .detail-gallery-images{column-count:2!important}}
@media(max-width:600px){.detail-overview{padding:6px!important}body .detail-gallery-images{column-count:1!important;column-gap:6px!important}body .detail-gallery-images .detail-card-image,body .detail-gallery-images .detail-card-image:nth-child(n){margin-bottom:6px!important}}

/* One transparent Keynote-style treatment for every real CTA button. */
.btn,.detail-cta,.wp-block-button__link,.wp-element-button{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  color:#1d1d1f!important;
  background:transparent!important;
  border:1px solid rgba(29,29,31,.18)!important;
  border-radius:999px!important;
  box-shadow:none!important;
  -webkit-backdrop-filter:blur(16px) saturate(150%)!important;
  backdrop-filter:blur(16px) saturate(150%)!important;
  transition:background-color .2s ease,border-color .2s ease,box-shadow .2s ease,transform .2s ease!important;
}
.btn:hover,.detail-cta:hover,.wp-block-button__link:hover,.wp-element-button:hover{
  color:#1d1d1f!important;
  background:rgba(29,29,31,.06)!important;
  border-color:rgba(29,29,31,.28)!important;
  box-shadow:none!important;
  transform:translateY(-1px)!important;
}
.detail-closing .detail-cta,.apple-panel-dark .btn,.apple-tile-dark .btn,.band .btn,.site-footer .btn{
  color:#fff!important;
  background:transparent!important;
  border-color:rgba(255,255,255,.3)!important;
  box-shadow:none!important;
}
.detail-closing .detail-cta:hover,.apple-panel-dark .btn:hover,.apple-tile-dark .btn:hover,.band .btn:hover,.site-footer .btn:hover{
  color:#fff!important;
  background:rgba(255,255,255,.08)!important;
  border-color:rgba(255,255,255,.44)!important;
}
.btn:focus-visible,.detail-cta:focus-visible,.wp-block-button__link:focus-visible,.wp-element-button:focus-visible{outline:2px solid currentColor!important;outline-offset:3px!important}
@media(prefers-reduced-motion:reduce){.btn,.detail-cta,.wp-block-button__link,.wp-element-button{transition:none!important}.btn:hover,.detail-cta:hover,.wp-block-button__link:hover,.wp-element-button:hover{transform:none!important}}

/* Refined graphite finish for gallery closing panels. */
.detail-closing{background:#29292b!important;color:#f5f5f7!important}

/* Optional sub-brand mark used only by the Kita gallery intro. */
.detail-hero-copy .gallery-sub-brand{display:block!important;position:static!important;width:216px!important;max-width:54vw!important;height:auto!important;margin:0 auto 18px!important;opacity:1!important;filter:saturate(1.55) contrast(1.28)!important}
.story-positioning h1{max-width:980px;margin:14px auto 12px;font:600 clamp(42px,6vw,88px)/.96 var(--final-sans);letter-spacing:-.055em}.story-positioning p{max-width:820px!important;margin:18px auto 0!important;font:400 clamp(16px,1.65vw,22px)/1.48 var(--final-sans)!important;letter-spacing:-.015em!important;color:#6e6e73!important}.detail-location-note{max-width:760px;margin:0 auto 22px;color:rgba(255,255,255,.76);font-size:clamp(15px,1.6vw,19px);line-height:1.5}
.bambinidou-kita-info{padding:clamp(76px,10vw,150px) 0;background:#f4f8f5;color:#17211d;scroll-margin-top:80px}.bambinidou-kita-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(320px,1.2fr);gap:clamp(36px,8vw,120px);align-items:start}.bambinidou-kita-info h2{margin:0;font:600 clamp(42px,6vw,82px)/.96 var(--final-sans);letter-spacing:-.055em}.bambinidou-kita-info p{max-width:720px;font-size:clamp(17px,1.6vw,21px);line-height:1.6}.bambinidou-kita-info .detail-cta{display:inline-block;margin-top:20px;color:#17211d;border-color:#17211d}@media(max-width:800px){.bambinidou-kita-grid{grid-template-columns:1fr}}
@media(max-width:800px){.detail-hero-copy .gallery-sub-brand{width:199px!important;margin-bottom:16px!important}}
.detail-hero-sub-brand{background:#fff!important}

/* Persönliches Mediathek-Bild: immer vollständig, ohne Eingriff ins Raster. */
.about-grid .alex-about-portrait-page{
  position:static!important;
  display:block!important;
  width:100%!important;
  height:auto!important;
  min-height:0!important;
  aspect-ratio:auto!important;
  background:transparent!important;
  overflow:visible!important;
  align-self:center!important;
}
.about-grid{
  width:100%!important;
  max-width:none!important;
  padding-left:0!important;
  padding-right:0!important;
  gap:clamp(42px,7vw,110px)!important;
}
.about-grid>div:last-child{
  padding-right:clamp(24px,7vw,110px)!important;
}
.about-grid .alex-about-portrait-page img{
  position:static!important;
  display:block!important;
  flex:none!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  aspect-ratio:auto!important;
  object-fit:contain!important;
  object-position:center!important;
}
.apple-tile .alex-about-portrait-tile img{
  object-fit:cover!important;
  object-position:center center!important;
}
.apple-tile .business-engineer-home img{
  object-fit:cover!important;
  object-position:center center!important;
}
@media(max-width:800px){
  .about-grid>div:last-child{
    padding:0 18px!important;
  }
  .apple-tile .business-engineer-home img{
    object-position:29% center!important;
  }
}

/* Keep the Kita homepage tile light, independent of alternating row colors. */
.apple-tiles-row>.apple-tile.apple-tile-force-light{background:#f5f5f7!important;color:#1d1d1f!important}
.apple-tiles-row>.apple-tile.apple-tile-force-light .asset-photo{background:#f5f5f7!important}
.apple-tiles-row>.apple-tile.apple-tile-force-light .asset-photo:before{display:block!important;background:linear-gradient(180deg,#f5f5f7 0%,rgba(245,245,247,.96) 24%,rgba(245,245,247,.6) 42%,rgba(245,245,247,0) 62%)!important}
.apple-tiles-row>.apple-tile.apple-tile-force-light .apple-links a{color:inherit!important}

/* Verbindliche mobile Typografie: ruhig, lesbar und ohne fehlerhafte Umbrüche. */
@media(max-width:800px){
  :root{
    --headline-size:34px;
    --headline-leading:1.08;
    --headline-tracking:-.035em;
  }

  .story-positioning{
    padding:48px 18px 44px!important;
  }
  .story-positioning span,
  .page-hero .eyebrow,
  .detail-hero-copy .eyebrow{
    font-size:10px!important;
    line-height:1.3!important;
    letter-spacing:.11em!important;
  }
  .story-positioning h1{
    max-width:360px!important;
    margin:12px auto 10px!important;
    font-size:36px!important;
    line-height:1.02!important;
    letter-spacing:-.04em!important;
  }
  .story-positioning p{
    max-width:350px!important;
    margin:12px auto 0!important;
    font-size:15px!important;
    font-weight:400!important;
    line-height:1.5!important;
    letter-spacing:-.01em!important;
  }

  .apple-panel-copy{
    padding:38px 18px 0!important;
  }
  .apple-tile-copy{
    padding:38px 18px 0!important;
  }
  .apple-panel h1,
  .apple-panel h2,
  .apple-tile h2{
    font-size:34px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  .apple-panel p,
  .apple-tile p{
    max-width:340px!important;
    margin:8px auto 12px!important;
    padding:0!important;
    font-size:17px!important;
    line-height:1.32!important;
    letter-spacing:-.015em!important;
  }
  .apple-links{
    gap:20px!important;
  }
  .apple-links a{
    font-size:15px!important;
    line-height:1.35!important;
  }

  .page-hero{
    padding:122px 18px 68px!important;
    text-align:center!important;
  }
  .page-hero h1{
    font-size:38px!important;
    line-height:1.04!important;
    letter-spacing:-.04em!important;
  }
  .page-hero p{
    max-width:350px!important;
    margin:22px auto 0!important;
    font-size:16px!important;
    line-height:1.5!important;
  }

  .about-grid h2,
  .contact-cta h2,
  .booking h2,
  .testimonials h2,
  .legal-content h2,
  .bambinidou-kita-info h2,
  .footer-top h2{
    font-size:34px!important;
    line-height:1.08!important;
    letter-spacing:-.035em!important;
  }
  .about-grid p,
  .bambinidou-kita-info p,
  .contact-cta p{
    font-size:16px!important;
    line-height:1.55!important;
  }
}

@media(max-width:420px){
  :root{--headline-size:32px}
  .story-positioning h1{font-size:34px!important}
  .story-positioning p{font-size:15px!important}
  .apple-panel h1,
  .apple-panel h2,
  .apple-tile h2{font-size:32px!important}
  .page-hero h1{font-size:36px!important}
}

/* Startseite: kompakter, klarer Ablauf von der Anfrage bis zur Auslieferung. */
.apple-tiles-final .service-steps{
  width:min(600px,92%)!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:10px!important;
}
.apple-tiles-final .service-steps div{
  display:grid!important;
  grid-template-rows:40px 58px!important;
  align-content:center!important;
  justify-items:center!important;
  row-gap:13px!important;
  padding:16px 8px!important;
}
.apple-tiles-final .service-steps b{
  align-self:start!important;
  margin:0!important;
}
.apple-tiles-final .service-steps span{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:center!important;
  max-width:105px!important;
  min-height:58px!important;
  margin:0!important;
  line-height:1.3!important;
  text-align:center!important;
}
@media(max-width:600px){
  .apple-tiles-final .service-steps{
    width:min(360px,88%)!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    margin-top:38px!important;
  }
  .apple-tiles-final .service-steps div{
    height:124px!important;
    grid-template-rows:40px 48px!important;
    row-gap:10px!important;
  }
  .apple-tiles-final .service-steps span{
    min-height:48px!important;
  }
}

/* Klare, markenkonforme 404-Seite statt der englischen WordPress-Ausgabe. */
.error-page{min-height:72svh;padding:clamp(150px,18vw,240px) 0 clamp(90px,12vw,160px);display:flex;align-items:center;text-align:center}
.error-page .wrap{max-width:900px}
.error-page h1{margin:0;font:500 clamp(48px,7vw,92px)/.98 var(--final-sans);letter-spacing:-.055em}
.error-page p{max-width:620px;margin:26px auto 32px;color:#6e6e73;font-size:clamp(17px,1.6vw,20px);line-height:1.55}
.error-page-links{display:flex;flex-wrap:wrap;justify-content:center;gap:12px}
@media(max-width:600px){.error-page{padding-top:130px}.error-page-links{align-items:stretch;flex-direction:column}.error-page-links .detail-cta{width:100%}}

/* Das Anfrageformular darf auch am Tablet niemals aus seinem Grid herausragen. */
.booking-grid>*{min-width:0}
.booking-form{width:100%;max-width:100%;min-width:0}
.booking-form .required-fields-note{margin:0 0 22px!important;color:#6e6e73!important;font-size:12px!important;line-height:1.4!important;letter-spacing:.01em!important;text-align:right!important}.booking-form .required-mark,.booking-form .required-fields-note span{color:#8b3f32!important;font-weight:700!important}.booking-form .screen-reader-text{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
@media(max-width:900px){.booking-grid{grid-template-columns:1fr!important}.booking-form{padding-inline:clamp(18px,4vw,32px)!important}}

/* Schlichter Einwilligungsdialog für optionale Google-Dienste. */
.privacy-consent[hidden]{display:none!important}
.privacy-consent{position:fixed;z-index:9999;right:18px;bottom:18px;left:18px;display:flex;align-items:center;justify-content:space-between;gap:28px;width:min(920px,calc(100% - 36px));margin:auto;padding:22px 24px;border:1px solid rgba(29,29,31,.14);border-radius:22px;background:rgba(255,255,255,.96);color:#1d1d1f;box-shadow:0 20px 60px rgba(0,0,0,.16);-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px)}
.privacy-consent-copy{max-width:640px}.privacy-consent-copy strong{display:block;font-size:18px}.privacy-consent-copy p{margin:7px 0;font-size:14px;line-height:1.45;color:#5f5f63}.privacy-consent-copy a{font-size:13px;text-decoration:underline;text-underline-offset:3px}.privacy-consent-actions{display:flex;gap:10px;flex-shrink:0}.privacy-consent .detail-cta{min-height:42px;padding:10px 18px;font-size:14px}
@media(max-width:700px){.privacy-consent{align-items:stretch;flex-direction:column;gap:18px;padding:20px}.privacy-consent-actions{display:grid;grid-template-columns:1fr 1fr}.privacy-consent .detail-cta{width:100%}}

/* Final mobile safety rules: no horizontal overflow, controlled headlines and consent dialog. */
@media(max-width:800px){
  html,
  body{
    width:100%!important;
    max-width:100%!important;
    overflow-x:hidden!important;
  }

  .site-shell,
  main,
  section,
  .wrap,
  .story-positioning,
  .page-hero,
  .detail-hero-copy,
  .apple-panel,
  .apple-tile,
  .booking,
  .booking-grid,
  .contact-grid,
  .about-grid,
  .bambinidou-kita-info,
  .footer-top{
    max-width:100vw!important;
    overflow-x:hidden!important;
  }

  .wrap,
  .story-positioning,
  .page-hero,
  .detail-hero-copy,
  .booking .wrap,
  .contact-grid,
  .about-grid{
    width:100%!important;
    padding-left:18px!important;
    padding-right:18px!important;
  }

  .story-positioning h1,
  .page-hero h1,
  .detail-hero-copy h1,
  .apple-panel h1,
  .apple-panel h2,
  .apple-tile h2,
  .booking h2,
  .contact-cta h2,
  .about-grid h2,
  .testimonials h2,
  .legal-content h2,
  .bambinidou-kita-info h2,
  .footer-top h2{
    width:100%!important;
    max-width:354px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    padding-left:0!important;
    padding-right:0!important;
    font-size:clamp(30px,8.4vw,34px)!important;
    line-height:1.08!important;
    letter-spacing:-.032em!important;
    text-align:center!important;
    white-space:normal!important;
    overflow-wrap:break-word!important;
    word-break:normal!important;
    hyphens:auto!important;
  }

  .story-positioning p,
  .page-hero p,
  .detail-hero-copy p,
  .apple-panel p,
  .apple-tile p,
  .booking p,
  .contact-cta p,
  .about-grid p,
  .bambinidou-kita-info p{
    width:100%!important;
    max-width:354px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
    overflow-wrap:break-word!important;
  }

  .apple-links,
  .hero-actions{
    max-width:354px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    flex-wrap:wrap!important;
    justify-content:center!important;
  }

  .booking-grid{
    display:block!important;
  }
  .booking-form,
  .contact-cta .booking-form{
    width:100%!important;
    max-width:100%!important;
    padding:24px 18px!important;
    margin-left:0!important;
    margin-right:0!important;
  }

  .privacy-consent{
    left:12px!important;
    right:12px!important;
    bottom:12px!important;
    width:auto!important;
    max-width:calc(100vw - 24px)!important;
    margin:0!important;
    padding:18px!important;
    border-radius:20px!important;
    overflow:hidden!important;
  }
  .privacy-consent-actions{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:420px){
  .story-positioning h1,
  .page-hero h1,
  .detail-hero-copy h1,
  .apple-panel h1,
  .apple-panel h2,
  .apple-tile h2,
  .booking h2,
  .contact-cta h2,
  .about-grid h2,
  .testimonials h2,
  .legal-content h2,
  .bambinidou-kita-info h2,
  .footer-top h2{
    max-width:320px!important;
    font-size:30px!important;
  }
}

/* Datenschutz-Checkbox im Formular als lesbarer Fließtext, nicht als gesperrtes Label. */
.booking-form .consent{
  margin-top:8px!important;
}
.booking-form .consent label{
  display:grid!important;
  grid-template-columns:22px minmax(0,1fr)!important;
  column-gap:14px!important;
  align-items:start!important;
  width:100%!important;
  max-width:100%!important;
  color:#1d1d1f!important;
  font-family:var(--final-sans)!important;
  font-size:14px!important;
  font-weight:400!important;
  line-height:1.45!important;
  letter-spacing:0!important;
  text-transform:none!important;
  text-align:left!important;
}
.booking-form .consent input[type="checkbox"]{
  grid-column:1!important;
  width:20px!important;
  height:20px!important;
  margin:1px 0 0!important;
  padding:0!important;
}
.booking-form .consent a{
  text-decoration:underline!important;
  text-underline-offset:3px!important;
}
.booking-form .consent .required-mark{
  margin-left:3px!important;
}
@media(max-width:800px){
  .booking-form .consent label{
    grid-template-columns:22px minmax(0,1fr)!important;
    font-size:14px!important;
    line-height:1.45!important;
  }
}

/* Mobile Eyebrows optisch zur zentrierten Headline ausrichten. */
@media(max-width:800px){
  .booking .eyebrow,
  .story-positioning span,
  .page-hero .eyebrow,
  .detail-hero-copy .eyebrow{
    display:block!important;
    width:100%!important;
    max-width:354px!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
}

/* Mobile Textlinks/Inline-CTAs optisch mittig ausrichten. */
@media(max-width:800px){
  .text-link,
  .detail-cta,
  .page-hero .text-link,
  .about-grid .text-link,
  .contact-grid .text-link,
  .detail-closing .detail-cta{
    width:max-content!important;
    max-width:100%!important;
    margin-left:auto!important;
    margin-right:auto!important;
    text-align:center!important;
  }
}

/* Consent text wrapper: keeps the full sentence together next to the checkbox. */
.booking-form .consent .consent-text{
  grid-column:2!important;
  display:block!important;
  min-width:0!important;
  max-width:100%!important;
  overflow-wrap:break-word!important;
}

/* Mobile text-link final: block-level CTA centered under centered copy. */
@media(max-width:800px){
  a.text-link,
  .text-link{
    display:block!important;
    width:fit-content!important;
    max-width:calc(100vw - 72px)!important;
    margin:32px auto 0!important;
    padding-left:0!important;
    padding-right:0!important;
    text-align:center!important;
    white-space:normal!important;
  }
}

/* Make the appointment card match the light card next to it. */
.apple-tile-appointment{
  background:#f5f5f7!important;
  color:#1d1d1f!important;
  background-image:none!important;
}
