/* A compact welcome page, with the full menu and atmosphere on their own pages. */
.compact-site .header-inner{max-width:1280px;min-height:108px;padding-block:17px 12px}
.compact-site .language-switch{top:6px}
.compact-site nav>a[aria-current=page]{color:var(--gold)}
.compact-site nav>a[aria-current=page]:after{width:100%}
.welcome-hero{isolation:isolate;position:relative;display:grid;place-items:center;min-height:510px;padding:65px 24px;overflow:hidden;text-align:center}
.welcome-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 53%;z-index:-2}
.welcome-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(7,12,21,.75),rgba(7,12,21,.5),rgba(7,12,21,.74));z-index:-1}
.welcome-content{position:relative;padding:35px 56px 38px;background:rgba(7,12,21,.53);border:1px solid rgba(217,189,136,.5);max-width:880px}
.welcome-content:before{content:'';position:absolute;inset:8px;border:1px solid rgba(217,189,136,.15);pointer-events:none}
.welcome-content h1{font-size:clamp(62px,6.7vw,94px);margin:15px 0 10px;line-height:1.04;letter-spacing:-.035em}
.welcome-content h1 em{white-space:nowrap}
.welcome-tagline{font-family:var(--serif);font-size:clamp(23px,2.3vw,30px);color:var(--ivory);line-height:1.35}
.welcome-actions{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:26px}
.welcome-actions .button{min-height:48px;padding:12px 22px;font-size:.8125rem}
.welcome-actions .button-outline{background:rgba(7,12,21,.55)}
.welcome-actions .button-outline:hover{background:var(--gold)}
.home-intro{display:grid;grid-template-columns:.9fr 1fr;gap:74px;align-items:center;padding-block:62px;max-width:1160px}
.intro-visual{overflow:hidden;border:1px solid var(--line)}
.intro-visual img{width:100%;height:370px;object-position:50% 53%}
.intro-copy h2{font-size:clamp(40px,4vw,54px);margin:13px 0 20px}
.intro-copy>p:not(.eyebrow){font-size:.9375rem;line-height:1.8;color:var(--muted);margin-top:13px}
.intro-copy .text-link{margin-top:23px}
.compact-site .footer-main{grid-template-columns:160px 1.2fr 1fr;gap:54px;max-width:1160px;padding-block:38px}
.compact-site .footer-brand .brand{width:128px;margin:0}
.compact-site .footer-main .footer-column h2{margin:0 0 12px}
.compact-site .opening-hours{margin:0;padding:0;border:0}
.compact-site .opening-hours dl{margin:0}
.compact-site .opening-hours dl>div{gap:20px}
.compact-site .opening-hours dt,.compact-site .opening-hours dd{font-size:.8125rem}
.compact-site .footer-column .text-link{margin-top:16px}
.compact-site .footer-bottom{padding-block:16px;max-width:1160px;gap:16px}
.compact-site .site-credit{max-width:1160px;padding-block:10px 18px}
.compact-site .footer-legal{gap:16px}
.compact-site .menu-section{padding-block:56px 64px;border-top:0;min-height:65vh}
.compact-site .menu-heading h1,.page-heading h1{font-size:clamp(52px,5.5vw,76px);margin-top:12px;line-height:1.04}
.compact-site .menu-heading>p{max-width:360px;font-size:.9375rem}
.compact-site .menu-tabs{margin-top:30px;gap:0 28px}
.compact-site .menu-tabs button{padding-block:11px 15px}
.compact-site .menu-bottom p{font-size:1.25rem}
.atmosphere-page.section-wrap{max-width:1160px;padding-block:50px 62px}
.page-heading{text-align:center;margin:0 auto 35px;max-width:750px}
.page-heading>p:not(.eyebrow){color:var(--muted);font-size:.9375rem;margin-top:19px}
.sfeer-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.sfeer-grid figure{min-width:0}
.sfeer-grid img{width:100%;height:370px;border:1px solid var(--line)}
.sfeer-grid .sfeer-wide{grid-column:1/-1}
.sfeer-grid .sfeer-wide img{height:auto;max-height:540px;object-position:center}
.sfeer-grid figcaption{color:var(--gold);font:italic 1.35rem/1.3 var(--serif);margin-top:12px}
.sfeer-actions{display:flex;align-items:center;justify-content:center;gap:28px;margin-top:34px}
@media(max-width:1000px){.home-intro{gap:40px}.compact-site .footer-main{grid-template-columns:120px 1.2fr 1fr;gap:30px}.compact-site .footer-brand .brand{width:100px}.compact-site .footer-bottom{flex-wrap:wrap}}
@media(max-width:720px){
 .compact-site .header-inner{min-height:96px;padding:14px 22px 9px}
 .compact-site .language-switch{right:22px;top:3px}
 .compact-site .nav-toggle{margin-top:10px}
 .welcome-hero{min-height:420px;padding:28px 18px}
 .welcome-content{padding:27px 17px 29px;width:100%;max-width:530px}
 .welcome-content h1{font-size:clamp(51px,12vw,76px);margin-block:15px 12px}
 .welcome-content h1 em{display:block}
 .welcome-content .eyebrow{font-size:.6875rem;letter-spacing:.14em}
 .welcome-tagline{font-size:23px;max-width:270px;margin-inline:auto}
 .welcome-actions{gap:10px;margin-top:22px;flex-wrap:wrap}
 .welcome-actions .button{padding:11px 13px;gap:12px;font-size:.75rem;min-height:46px}
 .home-intro{grid-template-columns:1fr;gap:27px;padding:36px 24px;max-width:580px}
 .intro-copy{grid-row:1}.intro-copy h2{font-size:43px;margin:9px 0 15px}
 .intro-copy>p:not(.eyebrow){font-size:.875rem;margin-top:10px}
 .intro-copy .text-link{margin-top:18px}
 .intro-visual img{height:260px;object-position:50% 56%}
 .compact-site .footer-main{grid-template-columns:1fr;gap:27px;padding:30px 24px;max-width:580px}
 .compact-site .footer-brand{display:none}
 .compact-site .footer-column h2{font-size:.6875rem}
 .compact-site .opening-hours{max-width:380px}
 .compact-site .footer-bottom{padding:16px 24px;gap:10px;max-width:580px;font-size:.6875rem}
 .compact-site .footer-bottom>a{margin-left:0}
 .compact-site .footer-legal{width:100%;gap:9px 15px;flex-wrap:wrap}
 .compact-site .footer-bottom .footer-legal a{margin-left:0}
 .compact-site .site-credit{padding:8px 24px 24px;max-width:580px;font-size:.6875rem}
 .compact-site .menu-section{padding-block:32px 40px}
 .compact-site .menu-heading h1,.page-heading h1{font-size:51px}
 .compact-site .menu-heading>p{font-size:.875rem;margin-top:17px}
 .compact-site .menu-tabs{gap:0 23px;margin-top:21px}
 .compact-site .menu-tabs button{font-size:.8125rem}
 .compact-site .menu-bottom{gap:18px}
 .atmosphere-page.section-wrap{padding:34px 24px 42px}
 .page-heading{margin-bottom:26px}
 .sfeer-grid{gap:20px}.sfeer-grid img{height:235px}.sfeer-grid figcaption{font-size:1.125rem}
 .sfeer-actions{gap:20px;flex-wrap:wrap;margin-top:28px}
}
@media(prefers-reduced-motion:reduce){.compact-site *{scroll-behavior:auto}}

/* Give the main customer action a distinct, highly visible gold treatment. */
.compact-site{--booking-accent:#efb74f;--booking-accent-hover:#ffd281}
.compact-site a.button[data-booking-open],.compact-site .booking-fab{background:var(--booking-accent);border-color:var(--booking-accent);color:#09111d;font-weight:700;box-shadow:0 5px 20px #0003}
.compact-site a.button[data-booking-open]:hover,.compact-site .booking-fab:hover{background:var(--booking-accent-hover);border-color:var(--booking-accent-hover);color:#09111d}
.compact-site .nav-reserve{min-height:56px;padding:14px 25px;font-size:1rem;gap:18px}
.compact-site .welcome-actions>[data-booking-open]{min-height:64px;min-width:250px;padding:17px 30px;font-size:1.125rem}
.compact-site .welcome-actions>a:not([data-booking-open]){background:transparent;border-color:rgba(217,189,136,.55);color:var(--ivory);box-shadow:none}
.compact-site .welcome-actions>a:not([data-booking-open]):hover{background:var(--navy-light);border-color:var(--gold)}
.compact-site .menu-bottom>[data-booking-open],.compact-site .sfeer-actions>[data-booking-open]{min-height:58px;padding:16px 28px;font-size:1rem}
.compact-site .booking-fab{display:inline-flex;align-items:center;justify-content:center;gap:12px;width:auto;max-width:calc(100vw - 32px);height:auto;min-height:62px;border-radius:40px;padding:15px 24px}
.compact-site .booking-fab svg{width:25px;height:25px;flex-shrink:0}
.compact-site .booking-fab-label{position:static;opacity:1;white-space:normal;padding:0;border:0;border-radius:0;background:none;color:inherit;box-shadow:none;font:700 1rem/1.35 var(--sans);text-align:center}
.compact-site .site-credit{padding-bottom:100px}
@media(max-width:900px){.compact-site .nav-reserve{padding-inline:18px;font-size:.9375rem}}
@media(max-width:720px){
 .compact-site .welcome-actions{flex-direction:column;align-items:stretch;gap:12px}
 .compact-site .welcome-actions>[data-booking-open]{width:100%;min-width:0;min-height:58px;padding:15px 14px;font-size:1.0625rem}
 .compact-site .welcome-actions>a:not([data-booking-open]){align-self:center;min-height:44px;padding:9px 18px;font-size:.8125rem}
 .compact-site .nav-reserve{font-size:1rem;min-height:56px}
 .compact-site .booking-fab{min-height:58px;padding:14px 20px;gap:10px}
 .compact-site .booking-fab-label{font-size:.9375rem}
 .compact-site .site-credit{padding-bottom:100px}
}
