/* Apérobar refinement: original Noto Serif / Manrope, charcoal and gold.
   Layers: content 0, header 20, mobile actions 25, reservation modal 40.
   Frosted navigation is a web approximation, not native Apple Liquid Glass. */
:root{--apero-ease-out:cubic-bezier(.23,1,.32,1);--apero-ease-drawer:cubic-bezier(.32,.72,0,1);--apero-gutter:clamp(24px,5vw,72px);color-scheme:dark}
html{scroll-padding-top:100px;scrollbar-color:#a68d5a #131313}
body{font-size:17px;line-height:1.7;-webkit-font-smoothing:antialiased}
::selection{background:#dfc38b;color:#261a00}
input,textarea{caret-color:#dfc38b}
input::placeholder,textarea::placeholder{color:#bcb4a8;opacity:1}
h1,h2,h3{text-wrap:balance}p{text-wrap:pretty}
.site-header{min-height:80px;padding:10px var(--apero-gutter);background:rgba(14,14,14,.92);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);gap:24px}
.header-signature,.footer-signature{position:absolute;inset:auto 0 0;height:1px;background:linear-gradient(90deg,transparent,#dfc38b 24%,#dfc38b 76%,transparent);transform-origin:left center;pointer-events:none}
.header-signature{opacity:.8}
.site-logo{display:flex;align-items:center;gap:13px;color:#e5e2e1}
.site-logo img{height:54px;width:40px}
.site-wordmark{font:500 21px/1.1 'Noto Serif',Georgia,serif;letter-spacing:-.02em}
.site-wordmark small{display:block;margin-top:5px;font:600 9px/1.4 Manrope,sans-serif;letter-spacing:.19em;text-transform:uppercase;color:#dfc38b}
.site-header nav{gap:clamp(14px,1.7vw,28px)}
.site-header nav a{font-size:11px;letter-spacing:.07em;min-height:44px;display:flex;align-items:center}
.site-header nav .nav-primary,.site-header nav .nav-secondary{padding:13px 17px;border-radius:3px}
.menu-toggle{min-height:48px;min-width:104px;border-color:#dfc38b55;border-radius:3px;align-items:center;gap:15px;font-size:12px;letter-spacing:.04em}
.menu-lines{width:20px;height:14px;position:relative;display:block}
.menu-lines:before,.menu-lines:after{content:'';position:absolute;inset:2px 0 auto;height:1px;background:currentColor;transition:transform 180ms var(--apero-ease-out)}
.menu-lines:after{top:11px}
.menu-toggle[aria-expanded=true] .menu-lines:before{transform:translateY(4.5px) rotate(45deg)}
.menu-toggle[aria-expanded=true] .menu-lines:after{transform:translateY(-4.5px) rotate(-45deg)}
.site-hero{min-height:clamp(420px,64svh,720px);text-align:left;place-items:end start}
.site-hero-home{min-height:calc(100svh - 80px)}
.hero-content{width:min(1280px,100%);margin:auto;padding:80px var(--apero-gutter);align-self:end}
.hero-content h1{max-width:820px;margin:0 0 24px;font-size:clamp(44px,5.5vw,80px);line-height:1.08;letter-spacing:-.03em;font-weight:600}
.hero-content .apero-hero-subtitle{max-width:620px;margin:0 0 32px;font-size:clamp(22px,2.5vw,29px);color:#e5e2e1;line-height:1.5}
.hero-content .apero-kicker{font-size:11px;letter-spacing:.16em;margin-bottom:24px}
.hero-content .apero-actions{justify-content:flex-start;gap:12px}
.hero-shade{background:linear-gradient(90deg,rgba(14,14,14,.7),rgba(14,14,14,.15)),linear-gradient(180deg,rgba(19,19,19,.12) 25%,rgba(19,19,19,.42) 65%,#131313)}
.hero-video{display:block!important;opacity:0;transition:opacity 240ms var(--apero-ease-out);object-position:50% 50%}
.hero-video.is-playing{opacity:1}
.button,.apero-button,.apero-button-outline,.form-buttons button,.apero-whatsapp-button{border-radius:3px;box-shadow:none;min-height:52px;transition:transform 140ms var(--apero-ease-out),background-color 180ms ease,border-color 180ms ease,color 180ms ease}
/* Legacy link-button color must not render gold text on a filled gold button. */
.button.apero-link-button,.button.apero-link-button:hover,.button.apero-link-button:focus{color:#261a00!important}
.button.apero-link-button span{color:inherit}
.button:active,.apero-button:active,.apero-button-outline:active,.menu-toggle:active,.form-buttons button:active,.apero-qty button:active{transform:scale(.98);transition-duration:100ms}
.section{padding:clamp(80px,8vw,128px) 0!important}
.apero-title,.apero-page .apero-title{letter-spacing:-.025em!important}
.apero-title-md{font-size:clamp(32px,3.5vw,48px);letter-spacing:-.025em;line-height:1.18}
.apero-lead,.apero-copy{max-width:65ch}
.slider{border:0;gap:20px;scroll-snap-type:x proximity;scrollbar-width:thin;overscroll-behavior-x:contain}
.slider>div{flex-basis:88%}
.slider .img-inner{overflow:hidden;border-radius:4px}
.slider img{aspect-ratio:4/5;object-fit:cover}
.apero-feature{padding:20px 0;background:none;border:0}
.apero-event-card{min-height:340px;border-radius:4px;border:0}
.apero-card-content{padding:32px}
.apero-event-card img{transition:transform 240ms var(--apero-ease-out);transform:none}
.apero-menu-item h3{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:baseline}
.apero-menu-item h3 span{white-space:nowrap;font-variant-numeric:tabular-nums}
.apero-menu-item p{max-width:65ch}
.apero-order-products,.apero-order-summary,.apero-reservation-card{border-radius:4px}
.apero-order-item{padding:24px}
.apero-order-item strong{font-weight:500;font-size:23px}
.apero-order-item span{font-size:14px}
.apero-order-item p{margin:0}
.apero-qty{grid-template-columns:44px 32px 44px;border-radius:3px;overflow:hidden}
.apero-qty button{width:44px;height:44px;min-width:44px;min-height:44px}
[data-qty],.apero-order-total,.apero-order-lines strong{font-variant-numeric:tabular-nums}
.apero-order-item.is-selected{background:#dfc38b0a}
.apero-order-summary{position:sticky;top:104px;align-self:start}
.apero-order-summary input,.apero-order-summary select,.apero-order-summary textarea,.apero-modal__dialog input,.apero-modal__dialog select,.apero-modal__dialog textarea,.form-field input,.form-field textarea{font-size:16px!important;border-radius:3px!important}
.apero-modal{z-index:40;padding:clamp(24px,7vh,72px) 24px 24px;touch-action:pan-y}
.apero-modal__backdrop{backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px)}
.apero-modal__dialog{max-height:calc(100dvh - 96px);border-radius:6px;padding:40px;overscroll-behavior:contain;touch-action:pan-y}
.apero-modal__close{width:44px;height:44px;top:10px;right:10px;border-radius:3px}
.apero-modal__dialog h3{padding-right:24px}
.site-footer{position:relative;padding-top:80px;padding-bottom:48px;gap:48px;border-top:0}
.footer-signature{inset:0 0 auto;grid-column:1/-1;opacity:.8}
.site-footer p,.site-footer dd{font-size:15px}
.site-footer h3{font-size:23px;font-weight:500}
.apero-footer-actions__inner{padding:32px 24px 48px}
@media(hover:hover) and (pointer:fine){
  .apero-button:hover,.button:hover{transform:translateY(-2px)}
  .apero-event-card:hover img{transform:scale(1.035)}
  .site-header nav a:hover{color:#dfc38b}
}
@media(hover:none){.apero-button:hover,.apero-event-card:hover img{transform:none}}
@media(max-width:1180px) and (min-width:951px){.site-wordmark{display:none}.site-header{padding-left:24px;padding-right:24px}.site-header nav{gap:14px}}
@media(max-width:950px){
  .site-header{min-height:80px;padding:10px 24px}
  .menu-toggle{display:flex}
  .site-header nav{display:flex;position:absolute;inset:100% 0 auto;height:calc(100dvh - 80px);max-height:calc(100dvh - 80px);background:#131313;padding:28px 24px max(32px,env(safe-area-inset-bottom));gap:4px;align-items:stretch;overflow-y:auto;overscroll-behavior:contain;visibility:hidden;pointer-events:none;opacity:0;transform:translateY(-12px);transition:opacity 180ms var(--apero-ease-out),transform 180ms var(--apero-ease-drawer),visibility 0s 180ms}
  .site-header nav.is-open{visibility:visible;pointer-events:auto;opacity:1;transform:none;transition-duration:240ms,240ms,0s;transition-delay:0s}
  .site-header nav a{font:500 clamp(24px,4vw,32px)/1.3 'Noto Serif',Georgia,serif;text-transform:none;letter-spacing:-.02em;padding:14px 0;min-height:56px;border:0}
  .site-header nav a[aria-current]{border:0}
  .site-header nav .nav-primary,.site-header nav .nav-secondary{font:700 14px/1.4 Manrope,sans-serif;letter-spacing:0;justify-content:center;padding:16px;margin-top:12px}
  .site-header nav .nav-primary,.site-header nav .nav-secondary{display:none}
  .navigation-open{overflow:hidden}
  .navigation-open .apero-mobile-sticky-cta{visibility:hidden}
  .site-header nav.no-motion,.site-header nav.no-motion *{transition:none!important}
}
@media(max-width:767px){
  body{padding-bottom:calc(92px + env(safe-area-inset-bottom));font-size:17px}
  .site-hero{min-height:520px}
  .site-hero-home{min-height:calc(100svh - 80px);place-items:end start}
  .hero-content{width:100%;margin:0;padding:72px 24px 68px}
  .site-hero-home .hero-content{padding:64px 24px 132px}
  .hero-content h1{font-size:clamp(38px,10.8vw,52px);line-height:1.09;letter-spacing:-.035em;max-width:11ch;margin-bottom:24px}
  .hero-content .apero-kicker{font-size:10px;letter-spacing:.15em;margin-bottom:20px}
  .hero-content .apero-hero-subtitle{font-size:23px;line-height:1.5;margin:0 0 28px;max-width:20ch}
  .site-hero-home .hero-content{text-align:center}
  .site-hero-home .hero-content h1,.site-hero-home .apero-hero-subtitle{margin-inline:auto}
  .hero-content .apero-actions{display:none}
  .hero-shade{background:linear-gradient(180deg,rgba(19,19,19,.08),rgba(19,19,19,.24) 28%,rgba(19,19,19,.78) 68%,#131313)}
  .hero-photo,.hero-video{object-position:54% 50%}
  .section{padding:72px 0!important}
  .row{padding-left:9px;padding-right:9px}
  .col{padding-bottom:32px}
  .apero-title,.apero-page .apero-title,.apero-form-page-no-hero .apero-title{font-size:clamp(33px,8.9vw,42px)!important;line-height:1.16!important}
  .apero-title-md{font-size:34px;line-height:1.18;margin-bottom:24px}
  .apero-lead,.apero-copy{font-size:17px;line-height:1.75}
  .apero-section-head{margin-bottom:32px}
  .slider{width:calc(100% + 24px);margin-bottom:12px;gap:12px}
  .slider>div{flex-basis:88%}
  .slider img{aspect-ratio:4/5}
  .apero-feature-list{margin:24px 0}
  .apero-feature{padding:8px 0}
  .apero-event-card{min-height:300px}
  .apero-card-content{padding:28px}
  .apero-event-card h3{font-size:27px}
  .apero-menu-item h3{gap:12px;font-size:22px}
  .apero-menu-item h3 span{font-size:20px}
  .apero-menu-item p{font-size:15px;line-height:1.6}
  .apero-order-item{grid-template-columns:minmax(0,1fr) auto;padding:22px 18px;gap:12px}
  .apero-order-item>div:first-child{grid-column:1/-1}
  .apero-order-item>.apero-qty{grid-column:2;grid-row:2}
  .apero-order-item>p{grid-column:1;grid-row:2}
  .apero-order-item strong{font-size:23px}
  .apero-order-summary{position:static;padding:24px}
  .apero-panel>.col-inner{padding:28px 22px!important}
  .apero-modal{padding:16px 12px max(16px,env(safe-area-inset-bottom))}
  .apero-modal__dialog{width:100%;max-width:100%;max-height:calc(100dvh - 32px - env(safe-area-inset-bottom));padding:48px 24px 28px}
  .apero-modal__dialog h3{font-size:32px}
  .site-footer{padding:64px 24px 36px;gap:36px}
  .site-footer h2{max-width:18ch;font-size:26px}
  .apero-footer-actions__inner{padding:28px 24px 40px}
  /* Focused mobile task pages: no footer, review block or fixed action bar. */
  :is(.page-tisch-reservieren,.page-pizza-zum-abholen) :is(.site-footer,.apero-footer-actions,.apero-mobile-sticky-cta){display:none!important}
  body:is(.page-tisch-reservieren,.page-pizza-zum-abholen){padding-bottom:env(safe-area-inset-bottom)}
  .apero-mobile-sticky-cta{top:auto;left:12px!important;right:12px!important;bottom:max(12px,env(safe-area-inset-bottom));width:auto!important;max-width:none!important;z-index:25;padding:6px;gap:6px;border:1px solid #dfc38b4d;border-radius:6px;background:rgba(19,19,19,.96);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);box-shadow:0 8px 24px #0e0e0e66;align-items:stretch}
  .apero-mobile-sticky-cta a{flex:1;width:auto;min-height:52px;display:flex;align-items:center;justify-content:center;padding:12px 8px;border-radius:3px;font-size:11px;line-height:1.4;letter-spacing:.02em;background:#dfc38b;color:#261a00}
  body.apero-modal-opened .apero-mobile-sticky-cta{visibility:hidden}
}
@media(max-width:359px){.site-wordmark{font-size:19px}.menu-toggle{min-width:94px}.hero-content h1{font-size:36px}.hero-content{padding-left:20px;padding-right:20px}}
@media(min-width:768px){.apero-mobile-sticky-cta{display:none!important}}
@media(max-height:520px) and (max-width:950px){.site-hero-home{min-height:620px}.hero-content{padding-top:48px}.site-header nav{padding-top:12px;display:grid;grid-template-columns:1fr 1fr;gap:8px 24px}.site-header nav a{font-size:21px;padding:10px 0}}
@media(prefers-reduced-transparency:reduce){.site-header,.apero-mobile-sticky-cta{background:#131313;backdrop-filter:none;-webkit-backdrop-filter:none}.apero-modal__backdrop{backdrop-filter:none;-webkit-backdrop-filter:none}}
@media(prefers-reduced-motion:reduce) and (min-width:951px){
  html{scroll-behavior:auto}
  .site-header nav,.menu-lines:before,.menu-lines:after,.hero-video,.button,.apero-button,.apero-button-outline{transform:none!important;transition:opacity 100ms linear!important}
  .apero-event-card:hover img,.button:active,.apero-button:active,.apero-button-outline:active,.menu-toggle:active,.apero-qty button:active{transform:none!important}
}
