@font-face{font-family:'Barlow Condensed';font-style:normal;font-weight:800;font-display:swap;src:url('media/fonts/barlow-condensed-800.woff2') format('woff2')}
@font-face{font-family:'DM Sans';font-style:normal;font-weight:400 600;font-display:swap;src:url('media/fonts/dm-sans-latin-variable.woff2') format('woff2')}
@font-face{font-family:'Hero Impact Fallback';font-style:normal;font-weight:800;src:local('Impact');size-adjust:94%}
@font-face{font-family:'Hero Sans Fallback';font-style:normal;font-weight:800;src:local('Arial Bold'),local('Liberation Sans Bold'),local('Helvetica Bold');size-adjust:69%}

:root{--paper:#f5f5f0;--paper-alt:#ebebe5;--ink:#1d1d1b;--muted:#62625b;--line:#cecec7;--red:#cf4545;--action:#b93131;--button-ink:#fffaf8;--white:#fafaf6;--display:'Barlow Condensed','Arial Narrow',Impact,sans-serif;--body:'DM Sans',Arial,sans-serif;--page-pad:clamp(24px,5vw,88px);--ease:cubic-bezier(.2,.7,.2,1);color-scheme:dark}
/* Sand palette retained for a future optional light theme. */
@media not all{
  :root{--paper:#e7dbc7;--paper-alt:#dccdb5;--white:#f3eadb;--line:#c6b69e;--muted:#62594c}
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:104px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}
body.modal-open{overflow:hidden}
button,a{-webkit-tap-highlight-color:transparent}
button{font:inherit;color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
button:focus-visible,a:focus-visible,summary:focus-visible,[tabindex]:focus-visible{outline:3px solid var(--red);outline-offset:5px}
::selection{background:var(--red);color:var(--white)}
button{border-radius:0}
img{display:block;width:100%;height:auto}
figure,p,h1,h2,h3{margin:0}
p+p{margin-top:20px}
address{font-style:normal}
[hidden]{display:none!important}
.section-shell{max-width:1600px;margin-inline:auto;padding-inline:var(--page-pad)}
.accent{color:var(--red)}
h1,h2,h3,.brand-name,.footer-wordmark{font-family:var(--display);font-weight:800;line-height:.98;letter-spacing:-.018em}
h2{font-size:clamp(48px,5.7vw,88px)}
h3{font-size:32px;letter-spacing:0}
.eyebrow{font-size:12px;line-height:1.5;text-transform:uppercase;font-weight:600;letter-spacing:.13em}
.button{display:inline-flex;align-items:center;justify-content:center;gap:38px;min-height:56px;padding:15px 24px;background:var(--action);color:var(--button-ink);border:1px solid var(--action);font-size:14px;font-weight:600;border-radius:3px;white-space:nowrap;transition:background .2s,transform .2s var(--ease),box-shadow .2s}
.button span{font-size:24px;line-height:1}
.button:hover{background:var(--ink);border-color:var(--ink);color:var(--paper);transform:translateY(-2px)}
.button:active{transform:translateY(0) scale(.98)}
.button-small{min-height:44px;padding:10px 18px;gap:20px;font-size:13px}
.text-link{display:inline-flex;align-items:center;gap:20px;min-height:44px;border:0;border-bottom:1px solid currentColor;background:transparent;padding:5px 0;font-weight:600;font-size:14px;line-height:1.4;transition:color .2s}
.text-link span{font-size:22px;line-height:1}
.text-link:hover{color:var(--action)}
.skip-link{position:fixed;left:20px;top:16px;transform:translateY(-200%);z-index:30;background:var(--ink);color:var(--paper);padding:12px 20px}
.skip-link:focus{transform:translateY(0)}

/* Layer 10: persistent navigation. Layer 20: mobile navigation. Dialogs use the native top layer. */
.header{position:sticky;top:0;z-index:10;background:var(--paper);border-bottom:1px solid var(--line)}
.header-inner{max-width:1760px;height:80px;padding-inline:var(--page-pad);margin:auto;display:flex;align-items:center;gap:36px}
.brand{display:flex;align-items:center;gap:13px;margin-right:auto;flex-shrink:0}
.brand img{width:64px;height:64px}
.brand-name{font-size:26px;white-space:nowrap;letter-spacing:.015em}
.brand-name span{color:var(--red)}
.desktop-nav{display:flex;align-items:center;gap:32px;margin-right:18px;white-space:nowrap}
.desktop-nav a{font-size:13px;font-weight:500;position:relative;padding:16px 0}
.desktop-nav a:after{content:'';position:absolute;left:0;bottom:10px;width:100%;height:1px;background:var(--red);transform:scaleX(0);transform-origin:left;transition:transform .25s var(--ease)}
.desktop-nav a:hover:after,.desktop-nav a[aria-current]:after{transform:scaleX(1)}
.menu-toggle{display:none;width:44px;height:44px;background:transparent;border:0;padding:11px}
.menu-toggle span{display:block;background:var(--ink);height:2px;width:22px;margin:6px 0;transition:transform .2s}
.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}
.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}
.mobile-nav{padding:16px var(--page-pad) 28px;border-top:1px solid var(--line);background:var(--paper)}
.mobile-nav a,.mobile-nav>button{display:block;font-family:var(--display);font-size:32px;line-height:1.5;padding:9px 0}
.mobile-nav>button{background:none;border:0;color:var(--ink);text-align:left}
.header-actions{display:flex;align-items:center;gap:12px;flex-shrink:0}
.header-reserve{background:transparent;border-color:var(--line);color:var(--ink)}
.mobile-nav-actions{display:grid;gap:12px;margin-top:20px;padding-top:24px;border-top:1px solid var(--line)}
.mobile-nav .mobile-nav-actions .button{display:flex;align-items:center;justify-content:space-between;width:100%;min-height:56px;padding:15px 20px;font-family:var(--body);font-size:16px;line-height:1.4}
.mobile-nav .mobile-reserve{background:transparent;border-color:var(--red);color:var(--ink)}
.mobile-nav-backdrop{position:fixed;inset:0;z-index:9;background:rgb(0 0 0 / .25);backdrop-filter:blur(7px);-webkit-backdrop-filter:blur(7px);opacity:0;visibility:hidden;pointer-events:none;transition:opacity .2s,visibility .2s}
@media(max-width:767px){
  body.nav-open{overflow:hidden}
  .nav-open .mobile-nav-backdrop{opacity:1;visibility:visible;pointer-events:auto}
  .mobile-nav{max-height:calc(100dvh - 72px);overflow-y:auto;overscroll-behavior:contain}
}
@media(min-width:768px) and (max-width:900px){
  .header-actions{gap:8px}
  .header-actions .button{padding-inline:12px;font-size:12px}
  .header-actions .button span{display:none}
}

.hero{max-width:1920px;margin:auto;display:grid;grid-template-columns:minmax(0,48fr) minmax(0,52fr);position:relative}
.hero-copy{position:relative;z-index:1;min-width:0;padding:clamp(44px,5.2vw,86px) 28px 70px var(--page-pad);display:flex;flex-direction:column;justify-content:center;min-height:580px;height:min(730px,calc(100svh - 127px))}
.hero .eyebrow{color:var(--muted);margin-bottom:30px}
.hero h1{font-family:'Barlow Condensed','Hero Impact Fallback','Hero Sans Fallback',Impact,sans-serif;font-size:clamp(76px,7.45vw,135px);line-height:.94;letter-spacing:-.023em;white-space:nowrap;color:var(--red);position:relative;z-index:1}
.hero h1 span{color:var(--ink)}
.hero-description{max-width:340px;margin-top:28px;font-size:17px;line-height:1.65}
.hero-actions{display:flex;align-items:center;gap:26px;margin-top:33px}
.hero-actions .text-link{border:0;font-size:13px;gap:12px}
.hero-photo{overflow:hidden;position:relative;min-width:0;background:#775e4f}
.hero-photo img{height:100%;object-fit:cover;object-position:43% center}
.hero-caption{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;border-block:1px solid var(--line);padding:15px var(--page-pad);font-size:11px;line-height:1.4;letter-spacing:.10em;font-weight:500}

.intro{display:grid;grid-template-columns:1fr 1fr;gap:clamp(56px,9vw,148px);padding-block:132px;align-items:center}
.intro h2{margin-bottom:32px;font-size:clamp(45px,4.7vw,74px)}
.intro-copy .lead{font-size:20px;color:var(--ink);line-height:1.6}
.intro-copy>p{max-width:480px;color:var(--muted)}
.intro-copy .text-link{margin-top:26px}
.loft-photo{padding-top:28px}
.loft-photo img{aspect-ratio:4/4.15;object-fit:cover;object-position:44% center}
.loft-photo figcaption{font-size:12px;color:var(--muted);margin-top:14px}

.menu-section{padding-block:75px 100px;border-top:1px solid var(--line)}
.menu-heading p{font-size:17px;color:var(--muted);margin-top:20px}
.menu-toolbar{display:flex;justify-content:space-between;align-items:center;margin:38px 0 35px;gap:20px}
.category-tabs{display:flex;border-bottom:1px solid var(--line);gap:30px}
.category-tabs button{border:0;background:transparent;padding:12px 0 14px;font-weight:500;color:var(--muted);border-bottom:2px solid transparent;margin-bottom:-1px}
.category-tabs button[aria-selected=true]{border-bottom-color:var(--red);color:var(--ink)}
.category-tabs button:hover{color:var(--red)}
.full-menu-trigger{font-size:13px}
.menu-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:26px;align-items:start}
.dish-photo{overflow:hidden;background:var(--paper-alt)}
.dish-photo img{width:100%;height:350px;object-fit:cover;transition:transform .65s var(--ease)}
.dish:hover .dish-photo img{transform:scale(1.035)}
.dish-heading{display:flex;justify-content:space-between;gap:10px;align-items:baseline;margin-top:21px}
.dish h3{font-size:30px;line-height:1.08}
.dish-price{white-space:nowrap;font-size:14px;font-weight:600}
.dish>p{font-size:14px;color:var(--muted);line-height:1.65;margin-top:10px;max-width:350px}
.menu-note{font-size:12px;color:var(--muted);line-height:1.7;margin-top:34px;max-width:780px}
.menu-note a{border-bottom:1px solid var(--line)}
.menu-note a:hover{border-bottom-color:var(--ink)}

.art-section{background:var(--paper-alt);padding-block:100px 50px}
.art-heading .eyebrow{margin-bottom:27px;color:var(--muted)}
.art-heading h2{font-size:clamp(42px,5.7vw,88px)}
.art-copy{max-width:76ch;margin-top:24px;font-size:16px;color:var(--muted);line-height:1.8}
.art-gallery{display:grid;grid-template-columns:.75fr 1.15fr 1fr;grid-template-rows:230px 270px;gap:28px;margin-top:50px}
.gallery-item{position:relative;display:block;border:0;padding:0;overflow:hidden;background:var(--line)}
.gallery-item img{height:100%;width:100%;object-fit:cover;transition:transform .65s var(--ease)}
.gallery-item:hover img{transform:scale(1.025)}
.gallery-art{grid-row:1/3;margin-top:0;margin-bottom:50px}
.gallery-art img{object-position:50% 43%}
.gallery-table{grid-column:2/4;grid-row:1/3;margin-left:0;margin-top:40px;margin-bottom:0}
.gallery-drinks{grid-column:2;grid-row:2;margin:65px -24px -34px -42px;border:8px solid var(--paper-alt)}


.gallery-footer{display:flex;align-items:center;justify-content:space-between;gap:24px;margin-top:75px}
.gallery-footer>span{font-size:13px;color:var(--muted)}
.gallery-footer .text-link{font-size:13px}

.visit-section{padding-block:116px 90px}
.visit-top{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:50px;margin-bottom:58px}
.visit-top h2{font-size:clamp(68px,8.4vw,128px)}
.visit-invite{justify-self:start;margin-left:70px}
.visit-invite p{font-size:22px;line-height:1.5;margin-bottom:26px}
.visit-details{display:grid;grid-template-columns:1fr 1.25fr 1fr;gap:55px;border-top:1px solid var(--line);padding-top:39px}
.visit-details h3{font-family:var(--body);font-weight:600;font-size:15px;line-height:1.4;letter-spacing:0;margin-bottom:20px}
.visit-details address,.visit-details p,.visit-details dl{font-size:14px;line-height:1.75;color:var(--muted)}
.visit-address .text-link{margin-top:20px}
.season-label{margin-bottom:9px}
.visit-hours dl{margin:0}
.visit-hours dl div{display:flex;justify-content:space-between;gap:16px}
.visit-hours dd{margin:0;text-align:right}
.visit-hours dt{max-width:155px}
.season-details{margin-top:17px;font-size:13px}
.season-details summary{cursor:pointer;width:fit-content;padding-block:7px;color:var(--ink)}
.season-details>div{padding-top:10px}
.season-details p{font-size:13px}
.season-details p+p{margin-top:8px}
.visit-contact>a:not(.text-link){display:block;width:fit-content;font-size:14px}
.visit-contact>a:not(.text-link):hover{color:var(--action)}
.visit-contact .phone-link{font-weight:600;margin-bottom:5px}
.visit-contact p{margin-block:18px 8px}

.footer{padding-top:36px;padding-bottom:25px;border-top:1px solid var(--line)}
.footer-wordmark{display:flex;align-items:baseline;justify-content:flex-start;gap:.17em;white-space:nowrap;font-size:clamp(56px,14.7vw,232px);line-height:1.1;letter-spacing:-.01em}
.footer-wordmark>span:not(.footer-arrow){color:var(--red)}
.footer-arrow{margin-left:.15em;font-family:var(--body);font-size:.58em;font-weight:400;transition:transform .25s var(--ease)}
.footer-wordmark:hover .footer-arrow{transform:translate(5px,-5px)}
.footer-bottom{display:flex;justify-content:space-between;gap:24px;align-items:center;border-top:1px solid var(--line);padding-top:23px;margin-top:28px;color:var(--muted);font-size:12px}
.footer-bottom nav{display:flex;gap:25px;flex-wrap:wrap}
.footer-bottom a:hover{color:var(--red)}

dialog{border:0;padding:0;background:var(--paper);color:var(--ink);max-height:90dvh;max-width:calc(100vw - 32px)}
dialog::backdrop{background:rgb(16 16 14 / .72);backdrop-filter:blur(4px)}
.menu-dialog{width:1000px}
.dialog-top{position:sticky;top:0;display:flex;justify-content:space-between;align-items:center;background:var(--paper);border-bottom:1px solid var(--line);padding:15px 34px}
.dialog-top>p{font-weight:600}
.close-dialog{border:1px solid var(--line);background:var(--paper);color:var(--ink);font-family:Arial,sans-serif;font-weight:400;font-size:30px;line-height:1;display:grid;place-items:center;width:44px;height:44px;padding:0}
.close-dialog:hover{color:var(--red);border-color:var(--red)}
.menu-dialog-content{padding:40px 50px 46px}
.menu-dialog-content>h2{font-size:64px;max-width:640px}
.menu-dialog-content>p:not(.menu-note){margin-top:20px;color:var(--muted);font-size:15px}
.full-menu-list{display:grid;grid-template-columns:1fr 1fr;gap:28px 40px;margin-top:38px}
.full-menu-list article{padding-top:17px;border-top:1px solid var(--line)}
.full-menu-list header{display:flex;justify-content:space-between;align-items:baseline;gap:15px}
.full-menu-list h3{font-size:27px;line-height:1.1}
.full-menu-list header span{white-space:nowrap;font-size:14px}
.full-menu-list p{margin-top:8px;font-size:13px;color:var(--muted);line-height:1.6}
.dialog-actions{display:flex;align-items:center;gap:28px;margin-top:28px;flex-wrap:wrap}
.lightbox{width:max-content;max-width:min(1180px,94vw);overflow:visible;background:var(--paper);padding:14px}
.lightbox>.close-dialog{position:absolute;right:24px;top:24px}
.lightbox figure img{width:auto;max-width:100%;max-height:70dvh;object-fit:contain;min-width:240px}
.lightbox figcaption{font-size:14px;padding:15px 6px 4px;max-width:90%;line-height:1.5}
.lightbox-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin:8px 0 2px}
.lightbox-controls button{width:44px;height:44px;background:none;border:1px solid var(--line);font-size:24px}
.lightbox-controls button:hover{border-color:var(--red);color:var(--red)}
.lightbox-controls span{font-size:12px;min-width:40px;text-align:center}

@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
/* Fixed dark theme, independent of device settings. */
@media all{
  :root{--paper:#20211f;--paper-alt:#292a27;--ink:#f2f2eb;--muted:#b7b8ad;--line:#484941;--red:#ee7773;--action:#b93131;--white:#fafaf6}
  .hero-photo{background:#493c32}
  .brand img{border-radius:50%}
  .gallery-drinks{border-color:var(--paper-alt)}
  .button:hover{background:var(--ink);color:var(--paper)}
  .text-link:hover,.visit-contact>a:not(.text-link):hover{color:var(--red)}
}

/* Keep the inset tied to the capped hero width, including on ultrawide screens. */
@media(min-width:1800px){.hero-copy{padding-left:max(var(--page-pad),calc((min(100vw,1920px) - 1600px)/2 + 80px))}}
@media(max-width:1200px){
  .header-inner{gap:20px}.desktop-nav{gap:22px;margin-right:0}.brand-name{font-size:23px}
  .hero-copy{padding-right:22px}.hero-actions{gap:18px}.hero-actions .text-link{font-size:12px;gap:7px}.hero-actions .button{gap:24px;padding-inline:20px}
  .intro{gap:60px;padding-block:100px}.dish-photo img{height:295px}.dish-heading{flex-wrap:wrap;gap:5px}.dish h3{font-size:28px}
  .visit-details{gap:32px}.visit-invite{margin-left:30px}.art-gallery{grid-template-rows:200px 230px}
}
@media(max-width:1023px){
  .brand-name{display:none}.desktop-nav{margin-left:auto}.header-inner{height:74px}.brand img{width:58px;height:58px}
  .hero-copy{min-height:550px;height:calc(85svh - 75px);padding-left:32px}.hero .eyebrow{font-size:10px;letter-spacing:.10em}.hero h1{font-size:7.7vw}
  .hero-actions{align-items:flex-start;flex-direction:column;gap:10px}.hero-description{font-size:16px;padding-right:15px}.hero-caption{padding-inline:32px}
  .intro h2{font-size:50px}.intro{gap:40px}.intro-copy .lead{font-size:18px}.intro-copy p{font-size:15px}
  .menu-grid{gap:20px}.dish-photo img{height:255px}.dish h3{font-size:26px}.dish>p{font-size:13px}.dish-price{font-size:13px}
  .visit-details{grid-template-columns:1fr 1.3fr;gap:35px}.visit-contact{grid-column:1/-1;display:grid;grid-template-columns:1fr 1fr}.visit-contact h3{grid-column:1/-1}.visit-contact .text-link{width:fit-content}.visit-contact p{margin-top:10px}
}
@media(max-width:767px){
  :root{--page-pad:24px}
  html{scroll-padding-top:90px}
  .header-inner{height:72px;gap:12px;padding-inline:20px}.brand img{width:56px;height:56px}.brand-name{display:block;font-size:23px}.brand{gap:9px}
  .desktop-nav,.header-actions{display:none}.menu-toggle{display:block}.brand{margin-right:auto}
  .hero{grid-template-columns:minmax(0,1fr)}.hero-copy{padding:48px 24px 42px;min-height:0;height:auto}.hero .eyebrow{font-size:10px;letter-spacing:.09em;margin-bottom:21px}
  .hero h1{font-size:clamp(52px,17vw,118px);line-height:.94}.hero-description{font-size:15px;max-width:325px;margin-top:22px;padding-right:0}
  .hero-actions{flex-direction:row;align-items:center;gap:21px;margin-top:24px}.hero-actions .button{font-size:13px;min-height:50px;padding:12px 18px;gap:18px}.hero-actions .text-link{font-size:11px;gap:6px}
  .hero-photo{height:330px}.hero-photo img{object-position:43% 50%}.hero-caption{padding:13px 24px;gap:12px;font-size:9px;letter-spacing:.055em}.hero-caption span:last-child{max-width:130px;text-align:right}
  .intro{display:grid;grid-template-columns:1fr;gap:38px;padding-block:75px}.intro h2{font-size:clamp(48px,11.5vw,78px);margin-bottom:25px}.intro-copy .lead{font-size:19px}.intro-copy>p{max-width:none;font-size:16px}.intro-copy .text-link{margin-top:20px}
  .loft-photo{padding-top:0}.loft-photo img{aspect-ratio:5/4;object-position:50% 48%}.loft-photo figcaption{font-size:11px}
  h2{font-size:clamp(49px,12vw,76px)}
  .menu-section{padding-block:64px 66px}.menu-heading p{font-size:15px}.menu-toolbar{display:block;margin:26px 0}.category-tabs{width:100%;gap:35px}.category-tabs button{font-size:15px;padding-bottom:13px}
  .full-menu-trigger{margin-top:18px;font-size:12px;min-height:38px;gap:16px}
  .menu-grid{display:grid;grid-template-columns:1fr;gap:33px}.dish-photo img{height:auto;aspect-ratio:1.35;object-position:center}.dish-heading{flex-wrap:nowrap;margin-top:17px}.dish h3{font-size:33px}.dish-price{font-size:14px}.dish>p{font-size:14px;max-width:none;margin-top:8px}
  .menu-note{font-size:11px;margin-top:30px}
  .art-section{padding-block:67px 35px}.art-heading .eyebrow{font-size:10px;margin-bottom:22px}.art-heading h2{font-size:clamp(34px,8.5vw,64px)}.art-copy{font-size:15px;line-height:1.7}.art-heading br:not(h2 br){display:none}
  .art-gallery{grid-template-columns:1fr 1fr;grid-template-rows:250px 250px;gap:16px;margin-top:32px}.gallery-art{grid-column:1;grid-row:1;margin:0}.gallery-table{grid-column:1/-1;grid-row:2;margin:0}.gallery-drinks{grid-column:2;grid-row:1;margin:32px 0 0;border:0}.gallery-drinks img{object-position:64% center}
  .gallery-footer{margin-top:28px;display:block}.gallery-footer>span{font-size:11px}.gallery-footer .text-link{margin-top:10px;font-size:12px}
  .visit-section{padding-block:72px 60px}.visit-top{grid-template-columns:1fr;gap:25px;margin-bottom:35px}.visit-top h2{font-size:clamp(78px,21vw,120px)}.visit-invite{margin-left:0;display:flex;width:100%;justify-content:space-between;align-items:center;gap:20px}.visit-invite p{font-size:15px;margin:0}.visit-invite .button{font-size:12px;gap:16px;min-height:50px;padding:12px 16px}
  .visit-details{grid-template-columns:1fr;gap:35px;padding-top:30px}.visit-details h3{margin-bottom:16px}.visit-details address,.visit-details p,.visit-details dl{font-size:15px}.visit-address .text-link{margin-top:14px}.visit-hours dl div{max-width:380px}.visit-hours dt{max-width:170px}.visit-contact{grid-column:auto;display:block}.visit-contact p{margin-top:15px}.visit-contact>a:not(.text-link){font-size:15px}
  .footer{padding-top:24px;padding-bottom:25px}.footer-wordmark{font-size:14.4vw;gap:.12em}.footer-bottom{display:block;margin-top:19px;font-size:10px;padding-top:18px}.footer-bottom nav{gap:23px;margin-top:10px;font-size:11px}
  .dialog-top{padding:12px 20px}.menu-dialog-content{padding:28px 23px 34px}.menu-dialog-content>h2{font-size:49px}.full-menu-list{grid-template-columns:1fr;gap:22px}.full-menu-list h3{font-size:27px}.dialog-actions{gap:17px}.dialog-actions .text-link{font-size:12px}.lightbox{padding:10px}.lightbox figcaption{font-size:12px}.lightbox>.close-dialog{right:18px;top:18px}
}
@media(max-width:359px){.hero-actions{gap:13px}.hero-actions .text-link{font-size:10px}.hero h1{font-size:clamp(52px,17vw,60px)}.brand-name{font-size:21px}.visit-invite{align-items:flex-start;flex-direction:column}.art-gallery{grid-template-rows:200px 210px}.hero-caption{font-size:8px}}

/* Iconsax Linear: scalable SVG arrows, independent of emoji fonts. */
.icon-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.15em;flex-shrink:0;fill:none;pointer-events:none}
.button .icon-arrow,.text-link .icon-arrow,.hero-scroll .icon-arrow{width:24px;height:24px}
.footer-arrow .icon-arrow{vertical-align:0}
.dish .dish-food-labels,.menu-entry .dish-food-labels { font-size: 11px; line-height: 1.5; letter-spacing: .045em; color: var(--muted, #b6b8b1); margin-top: 8px; }
.dish-food-labels a { text-decoration: underline; text-underline-offset: 3px; }
.dish-food-labels a:hover { color: var(--accent, #ee7773); }

.art-copy p{margin:0}.art-copy p+p{margin-top:1em}.art-copy strong{color:var(--ink)}

.icon-instagram{display:block;width:24px;height:24px;flex:0 0 24px}
.header-instagram{display:flex;align-items:center;justify-content:center;width:44px;height:44px;flex:0 0 44px;border-radius:4px;color:var(--ink);transition:color .2s,filter .2s}
.header-instagram:hover{color:var(--red);background:transparent;filter:drop-shadow(0 0 5px rgb(235 91 87 / .4))}
.header-instagram{margin-right:auto;margin-left:-16px}
@media(max-width:767px){.header-inner{gap:4px}.header-instagram{margin-left:auto}.header-inner .brand{margin-right:0}.header-inner .brand-name{font-size:clamp(17px,5.8vw,23px)}}

/* Instagram follows the brand; navigation stays aligned to the right. */
.header-inner .brand{margin-right:0}
.header-instagram{margin-right:auto;margin-left:-16px}
@media(max-width:767px){.header-instagram{margin-left:8px;margin-right:auto}}

.header-socials{display:flex;align-items:center;gap:4px;margin-left:-16px;margin-right:auto;flex-shrink:0}
.header-socials .header-instagram{margin:0}
.header-facebook,.header-tiktok{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:4px;color:var(--ink);transition:color .2s,filter .2s}
.header-facebook:hover,.header-tiktok:hover{color:var(--red);background:transparent;filter:drop-shadow(0 0 5px rgb(235 91 87 / .4))}
@media(max-width:767px){.header-socials{margin-left:4px;gap:0}.header-inner{padding-inline:12px}.header-inner .brand-name{font-size:clamp(15px,4.6vw,23px)}}

@media(max-width:374px){.header-socials>a{width:36px;flex-basis:36px}.header-inner .brand-name{font-size:14px}.header-socials{margin-left:0}}
