/* Shared mobile layouts for every public page. */
.mobile-menu{display:none}
a:focus-visible,summary:focus-visible{outline:2px solid #b98a4c;outline-offset:5px}
@media(max-width:1000px){
  [data-bp-nav]{display:none!important}
  .site-header{height:76px!important;padding:0 24px!important;gap:16px!important;align-items:center!important}
  .site-header>a:first-child{margin-right:auto}
  .mobile-menu{display:block;align-self:center;flex:none;color:#3a1a0b;font-family:Jost,Arial,sans-serif}
  .mobile-menu summary{list-style:none;cursor:pointer;min-height:44px;min-width:76px;display:flex;align-items:center;justify-content:center;gap:9px;font-size:14px;border:1px solid #d9c9bc;border-radius:24px;padding:0 13px;box-sizing:border-box}
  .mobile-menu summary::-webkit-details-marker{display:none}
  .menu-icon,.menu-icon:before,.menu-icon:after{display:block;width:15px;height:1px;background:currentColor;position:relative}
  .menu-icon:before,.menu-icon:after{content:'';position:absolute;left:0;top:-5px}
  .menu-icon:after{top:5px}
  .mobile-menu[open] .menu-icon{background:transparent}
  .mobile-menu[open] .menu-icon:before{top:0;transform:rotate(45deg)}
  .mobile-menu[open] .menu-icon:after{top:0;transform:rotate(-45deg)}
  .mobile-menu nav{position:absolute;left:0;right:0;top:100%;padding:16px 24px 24px;background:#fdf7f1;border-bottom:1px solid #d9c9bc;box-shadow:0 14px 24px #3a1a0b18;display:flex;flex-direction:column;gap:0;max-height:calc(100dvh - 76px);overflow:auto;overscroll-behavior:contain}
  .mobile-menu nav a{display:block;padding:13px 4px;min-height:44px;box-sizing:border-box;text-decoration:none;font-size:17px;border-bottom:1px solid #3a1a0b15;color:#3a1a0b;line-height:1.5}
  .mobile-menu nav a[aria-current=page]{color:#946530;font-weight:600}
  .mobile-menu nav .mobile-booking{margin-top:16px;background:#3a1a0b;color:#fdf7f1;border-radius:28px;text-align:center}
  [data-page=legal] header{position:sticky;top:0;z-index:50;background:#fdf7f1;flex-direction:row;align-items:center;padding:16px 20px;gap:12px;max-width:none}
  [data-page=legal] .brand{font-size:23px;line-height:1.1;margin-right:auto;max-width:160px}
  [data-page=legal] header>.button{display:none}
}
@media(max-width:820px){
  :root{--edge-desktop:24px!important;--size-h1:40px!important;--size-h2:34px!important;--size-h3:28px!important;--size-lead:18px!important}
  *,*:before,*:after{box-sizing:border-box}
  body{overflow-wrap:break-word}
  [data-bp-page]{width:100%;overflow:clip}
  [data-bp-page]>section{padding-top:64px!important;padding-bottom:64px!important}
  [data-bp-page]>footer{padding:56px var(--edge-desktop)!important}
  [data-mobile-stack]{grid-template-columns:minmax(0,1fr)!important;grid-template-rows:auto!important;gap:28px!important}
  [data-mobile-stack]>*{grid-area:auto!important;min-width:0;max-width:100%}
  [data-mobile-stack]>[style*="position: sticky"], [data-bp-ki-nav]{position:static!important}
  [data-bp-page]>footer [style*="width: 1px"]{display:none}
  [data-bp-page]>footer a{min-height:36px;display:inline-flex;align-items:center}
  [data-bp-page]>footer>div{gap:40px!important}
  [data-bp-page] p{max-width:100%;overflow-wrap:break-word}
  [data-bp-page] h1{font-size:clamp(36px,8.8vw,58px)!important;line-height:1.13!important}
  [data-bp-page] h1 em{font-size:1.2em!important}
  [data-bp-page] h2{font-size:clamp(30px,7vw,44px)!important;line-height:1.15!important}
  [data-bp-page] a[href^="mailto:"]{overflow-wrap:anywhere;word-break:break-word}
  [data-bp-page] [id]{scroll-margin-top:96px!important}
  [data-bp-intro]{display:none!important}
  [data-bp-reveal],[data-bp-float]{opacity:1!important;animation:none!important;transform:none!important}
  [data-page=home] .page-hero{min-height:0!important;display:flex!important;flex-direction:column;padding:0!important}
  [data-page=home] .page-hero>div:first-child{position:relative!important;inset:auto!important;height:300px;order:0}
  [data-page=home] .page-hero>div:nth-child(2){display:none}
  [data-page=home] .page-hero>div:nth-child(3){padding:36px var(--edge-desktop)!important;order:1}
  [data-page=home] .page-hero>a{position:relative!important;inset:auto!important;order:2;margin:0 var(--edge-desktop) 36px;width:auto!important;padding:24px!important;gap:14px!important}
  [data-page=home] [data-bp-hero-in]{max-width:none!important;gap:20px!important}
  [data-page=home] [data-bp-band]{min-height:0!important;padding:48px 24px!important}
  [data-page=home] [data-bp-float-row]{display:none!important}
  [data-page=home] #behandlungen [data-mobile-stack]>a{min-height:310px!important}
  [data-page=home] #kundeninformation [data-mobile-stack] [data-mobile-stack]{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:12px!important}
  [data-page=home] #kundeninformation [data-mobile-stack] [data-mobile-stack] img{height:180px!important;max-width:100%;object-fit:cover}
  [data-page=home] #kundeninformation [data-mobile-stack] [data-mobile-stack]>a{grid-column:1/-1!important}
  [data-bp-track]>div{width:min(320px,82vw)!important;min-width:min(320px,82vw)!important;padding:24px!important}
  [data-bp-hero-grid]{gap:32px!important}
  [data-bp-hero-grid]>div:last-child{max-height:480px!important;max-width:360px!important}
  [data-bp-scroll-cards]{margin:0 auto!important;padding:0!important;gap:24px!important}
  [data-bp-sticky]{position:static!important;height:auto!important;padding:24px 0 40px!important}
  [data-bp-scroll-cards]>div{margin:0!important}
  [data-bp-ki-hero]{gap:0!important}
  [data-bp-ki-hero]>div:first-child{min-height:0!important;height:230px!important}
  [data-bp-ki-hero]>div:last-child{padding:32px 24px!important}
  [data-bp-topic-card]{padding:24px!important;gap:16px!important}
  [data-bp-topic-card]>div{grid-column:1!important}
  [data-page=info] [data-bp-hero-in]>div:last-child{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:0!important}
  [data-page=info] [data-bp-hero-in]>div:last-child>div{padding:20px 12px!important;flex-direction:column;align-items:center!important;gap:8px!important;border-bottom:1px solid var(--line-hairline)}
  [data-page=info] [data-bp-hero-in]>div:last-child span{text-align:center!important}
  [data-page=wax] .page-hero{min-height:0!important;padding:0!important}
  [data-page=wax] [data-bp-wax-photo]{top:60px!important;bottom:auto!important;height:410px!important;max-width:95%!important;width:300px!important;object-fit:contain!important}
  [data-page=wax] [data-bp-hero-in]{flex:none!important;height:480px;padding:28px 20px 22px!important;justify-content:space-between!important}
  [data-page=wax] [data-bp-word]{transform:none!important;will-change:auto!important}
  [data-page=wax] [data-bp-word=left]{font-size:clamp(76px,20vw,150px)!important}
  [data-page=wax] [data-bp-word=right]{font-size:clamp(44px,12vw,80px)!important;margin-bottom:0!important;text-shadow:0 2px 12px #3a1a0b}
  [data-page=wax] .page-hero>[data-bp-hero-in]+div{padding:24px var(--edge-desktop) 32px!important;background:var(--c-espresso)}
  [data-page=wax] [data-bp-intro-grid]>div{position:static!important}
  [data-page=legal] main{padding:32px 20px 48px}
  [data-page=legal] h2{font-size:27px}
  [data-page=legal] footer{padding:24px 20px}
}
@media(max-width:480px){
  :root{--edge-desktop:20px!important}
  .site-header{height:72px!important;padding:0 16px!important;gap:10px!important}
  .site-header>a:first-child img{height:45px!important}
  .site-header [data-bp-cta]{height:44px!important;padding:0 15px!important;gap:7px!important}
  .site-header [data-bp-cta] svg{display:none}
  [data-bp-page]>section{padding-top:48px!important;padding-bottom:48px!important}
  [data-page=home] .page-hero>div:first-child{height:240px}
  [data-bp-hero-in] a{white-space:normal!important;text-align:center;justify-content:center;min-height:46px;height:auto!important;padding-top:12px!important;padding-bottom:12px!important}
  [data-page=home] [data-bp-hero-in]>div:first-of-type{gap:10px!important}
  [data-page=home] [data-bp-hero-in]>div:first-of-type>*{width:100%}
  [data-page=info] .page-hero{padding:24px 16px 40px!important}
  [data-page=info] h1{font-size:36px!important}
  [data-page=home] #kontakt>div>div:last-child{padding:28px 22px!important}
}
@media(prefers-reduced-motion:reduce){[data-bp-track]{animation:none!important}}
@media(max-width:820px){
  [data-mobile-stack][style*="gap: 1px"]{gap:1px!important}
  [data-bp-tile]{opacity:1!important;animation:none!important;transform:none!important}
  [data-page=wax] [data-bp-wax-photo]{opacity:1!important;object-fit:cover!important;object-position:top center!important}
}
.legal-content h1{display:none}
@media(max-width:820px){
 [data-page=legal] main>h1{font-size:32px;hyphens:auto;overflow-wrap:normal}
 [data-page=legal] .legal-content{hyphens:auto}
}
@media(max-width:820px){
 [data-page=wax] [data-bp-wax-photo]{width:480px!important;max-width:none!important;height:540px!important;top:76px!important}
}
/* Clear booking action and a compact, comfortable mobile navigation. */
.site-header [data-bp-cta]{background:linear-gradient(135deg,#654029,#3a1a0b)!important;border:1px solid #89603c;box-shadow:0 4px 12px #3a1a0b18;letter-spacing:.06em!important;transition:background .2s,box-shadow .2s}
@media(max-width:1000px){
 .site-header{border-bottom:1px solid #dccfc2;background:#fdf7f1!important;isolation:isolate}
 .mobile-menu summary{width:46px;min-width:46px;height:46px;border-radius:50%;padding:0;background:#efe4d8;border-color:transparent}
 .mobile-menu summary>span:last-child{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}
 .menu-icon,.menu-icon:before,.menu-icon:after{width:18px;height:1.5px}
 .mobile-menu nav{left:12px;right:12px;top:calc(100% + 8px);padding:12px 20px 20px;border:1px solid #dccfc2;border-radius:8px 8px 24px 24px;box-shadow:0 18px 40px #3a1a0b24;max-height:calc(100vh - 108px);max-height:calc(100dvh - 108px)}
 .mobile-menu nav a{padding:14px 8px;font-size:18px}
 .mobile-menu nav a[aria-current=page]{background:#efe4d8;border-radius:8px;padding-left:14px}
 .mobile-menu nav a[href='/impressum'],.mobile-menu nav a[href='/datenschutz']{font-size:14px;color:#75604f;min-height:44px;padding-top:10px;padding-bottom:10px}
 .mobile-menu nav .mobile-booking{padding:14px;background:linear-gradient(135deg,#654029,#3a1a0b);border:0;font-size:16px;letter-spacing:.02em}
 .site-header [data-bp-cta]{height:46px!important;padding:0 17px!important;font-size:13px!important;gap:8px!important}
 .site-header [data-bp-cta-label]{font-size:13px!important}
 .site-header [data-bp-cta-label]:after{content:none!important}
 .site-header [data-bp-cta] svg{display:none}
}
@media(max-width:360px){.site-header{gap:8px!important}.site-header [data-bp-cta]{padding:0 12px!important;font-size:12px!important}.site-header [data-bp-cta-label]{font-size:12px!important}}
/* Touch devices use a scrollable review list instead of perpetual animation. */
@media(max-width:820px),(prefers-reduced-motion:reduce){
 [data-bp-track]{animation:none!important;transform:none!important;will-change:auto!important;overflow-x:auto;max-width:100%;scroll-snap-type:x proximity;-webkit-overflow-scrolling:touch}
 [data-bp-track]>div{scroll-snap-align:start}
 html{scroll-behavior:auto!important}
}
.site-header [data-bp-cta]{border-radius:28px!important}
@media(max-width:820px){[data-bp-track]>div:nth-child(n+5){display:none}}
@media(max-width:820px){[data-page=wax] [data-bp-word=right]{color:#fff4e5!important;text-shadow:0 2px 14px #3a1a0b!important}}
