:root{
  font-family:Manrope,system-ui,sans-serif;color:#eee9dc;background:#050b09;font-synthesis:none;
  --bg:#07110e;--deep:#040a08;--panel:#0a1512;--panel-2:#0d1a16;--text:#eee9dc;
  --muted:#a9a79b;--dim:#777b72;--gold:#c7954f;--gold-light:#e0b26d;--ink:#181006;
  --line:rgba(199,149,79,.34);--soft:rgba(238,233,220,.12);--display:'Cormorant Garamond',Georgia,serif;
  --ease:cubic-bezier(.16,1,.3,1);--radius:4px;--z-grain:60;--z-overlay:100;--z-menu:110
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;background:var(--deep)}
body{margin:0;min-width:320px;background:var(--deep);color:var(--text)}
html[lang="ko"] body,html[lang="ko"] button,html[lang="ko"] input,html[lang="ko"] select{font-family:"Noto Sans KR","Malgun Gothic",system-ui,sans-serif}html[lang="ja"] body,html[lang="ja"] button,html[lang="ja"] input,html[lang="ja"] select{font-family:"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif}html[lang="zh-Hans"] body,html[lang="zh-Hans"] button,html[lang="zh-Hans"] input,html[lang="zh-Hans"] select{font-family:"Noto Sans SC","Microsoft YaHei",system-ui,sans-serif}html[lang="ko"]{--display:"Noto Sans KR","Malgun Gothic",system-ui,sans-serif}html[lang="ja"]{--display:"Noto Sans JP","Yu Gothic",Meiryo,system-ui,sans-serif}html[lang="zh-Hans"]{--display:"Noto Sans SC","Microsoft YaHei",system-ui,sans-serif}
body:before{content:"";position:fixed;inset:0;z-index:var(--z-grain);pointer-events:none;opacity:.025;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitchTiles'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.8'/%3E%3C/svg%3E")}
button,a,input,select{font:inherit}button{cursor:pointer}a{color:inherit;text-decoration:none}img{display:block;width:100%}svg{width:1.15rem;height:1.15rem;flex:0 0 auto}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
.site{width:min(1280px,100%);margin:auto;overflow:hidden;border-inline:1px solid rgba(199,149,79,.25);background:var(--bg)}
.page-main{display:block}.skip-link{position:fixed;z-index:120;top:1rem;left:1rem;padding:.7rem 1rem;background:var(--gold);color:var(--ink);transform:translateY(-180%)}.skip-link:focus-visible{transform:none}.skip-link:focus:not(:focus-visible){transform:translateY(-180%)}
.eyebrow{margin:0 0 .55rem;color:var(--gold);font-size:.62rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase}

.hero{position:relative;height:520px;isolation:isolate;overflow:hidden;background:#080e0c}
.hero-picture{position:absolute;z-index:-2;inset:0;display:block}
.hero:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(3,8,7,.94) 0%,rgba(3,8,7,.72) 34%,rgba(3,8,7,.08) 66%,rgba(3,8,7,.17) 100%),linear-gradient(180deg,rgba(3,8,7,.36),transparent 45%,rgba(3,8,7,.28))}
.hero-image{position:absolute;z-index:-2;inset:0;height:100%;object-fit:cover;object-position:center center}
.masthead{position:absolute;z-index:2;top:0;left:50%;width:calc(100% - 80px);height:88px;transform:translateX(-50%);display:grid;grid-template-columns:188px 1fr auto;align-items:center;border-bottom:1px solid var(--soft)}
.brand{width:166px}.brand img{height:74px;object-fit:contain;object-position:left center}
.desktop-nav{justify-self:center;display:flex;align-items:center;gap:clamp(.8rem,1.35vw,1.25rem);white-space:nowrap;font-size:.75rem;font-weight:800;letter-spacing:.075em;text-transform:uppercase}
.desktop-nav a,.desktop-nav button{position:relative;border:0;padding:1rem .05rem;background:transparent;color:var(--text);font:inherit;text-transform:inherit;letter-spacing:inherit}
.desktop-nav a:after{content:"";position:absolute;right:100%;bottom:.5rem;left:0;height:1px;background:var(--gold);transition:right .2s var(--ease)}.desktop-nav a:hover:after,.desktop-nav a.active:after{right:0}
.masthead-actions{display:flex;align-items:center;gap:.3rem}.lang,.lang-alt,.menu-button{min-width:36px;height:50px;border:0;background:transparent;color:#a7a89e;font-size:.72rem;font-weight:800}.lang.active,.lang-alt.active{color:var(--gold-light)}.lang span{margin-left:.2rem}.menu-button{display:none;place-items:center;color:var(--text)}
.language-switcher{position:relative}.language-switcher summary{min-width:52px;height:44px;padding:0 .35rem;display:flex;align-items:center;justify-content:center;gap:.35rem;color:var(--gold-light);font-size:.68rem;font-weight:800;list-style:none;cursor:pointer}.language-switcher summary::-webkit-details-marker{display:none}.language-switcher summary svg{width:.62rem;height:.45rem;fill:none;stroke:currentColor;stroke-width:1.5;transition:transform .2s ease}.language-switcher[open] summary svg{transform:rotate(180deg)}.language-switcher>nav{position:absolute;top:calc(100% + .45rem);right:0;width:176px;padding:.4rem;border:1px solid rgba(224,178,109,.35);border-radius:8px;background:rgba(5,24,17,.98);box-shadow:0 18px 44px rgba(0,0,0,.38);backdrop-filter:blur(16px)}.language-switcher>nav a{min-height:46px;padding:.45rem .6rem;border-radius:5px;display:grid;grid-template-columns:42px 1fr;align-items:center;color:var(--text);font-size:.72rem}.language-switcher>nav a:hover,.language-switcher>nav a:focus-visible,.language-switcher>nav a[aria-current="page"]{background:rgba(224,178,109,.12);color:var(--gold-light)}.language-switcher>nav a small{color:var(--muted);font-size:.62rem}.mobile-language-list{margin-top:auto;padding:1rem;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.35rem;border-top:1px solid var(--soft)}.mobile-language-list>span{grid-column:1/-1;color:var(--gold-light);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.mobile-language-list a{min-height:44px!important;padding:.5rem .25rem!important;display:grid!important;place-items:center;border:1px solid var(--soft)!important;border-radius:5px;font-size:.68rem!important}.mobile-language-list a[aria-current="page"]{border-color:var(--gold)!important;color:var(--gold-light)}
.hero-copy{position:absolute;top:152px;left:48px;width:600px}
.hero-title{margin:0;font-family:var(--display);font-size:3.55rem;font-weight:500;letter-spacing:-.025em;line-height:.87;text-transform:uppercase;text-shadow:0 5px 24px rgba(0,0,0,.45)}
.hero-title span{display:block;padding-bottom:.1em;white-space:nowrap}.hero-lead{max-width:410px;margin:.65rem 0 .95rem;color:#d4d0c6;font-size:.72rem;line-height:1.45}.hero-actions{display:flex;gap:.55rem}
.action{min-height:38px;border:1px solid transparent;border-radius:var(--radius);padding:0 1rem;display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;text-transform:uppercase;letter-spacing:.08em;font-size:.56rem;font-weight:800;transition:transform .18s var(--ease),background .2s,color .2s,border-color .2s}.action:active{transform:scale(.98)}.action-gold{background:var(--gold);color:var(--ink)}.action-gold:hover{background:var(--gold-light)}.action-line{border-color:rgba(224,178,109,.8);background:rgba(4,10,8,.45);color:var(--text)}.action-line:hover{border-color:var(--gold-light);color:var(--gold-light)}

.service-rail{height:82px;display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:#06130f}
.service-rail>a,.service-rail>button{height:100%;border:0;border-right:1px solid var(--soft);padding:0 2.3rem;background:transparent;color:var(--text);display:flex;align-items:center;justify-content:center;gap:.9rem;text-align:left}.service-rail>*:last-child{border-right:0}.service-rail svg{width:1.45rem;height:1.45rem;color:var(--gold)}.service-rail span{display:grid;gap:.1rem}.service-rail b{font-family:var(--display);font-size:.83rem;font-weight:600;text-transform:uppercase}.service-rail small{color:var(--muted);font-size:.55rem}

.story{height:330px;display:grid;grid-template-columns:42% 58%;border-bottom:1px solid var(--line);background:var(--panel)}
.story-copy{padding:2.2rem 4rem;display:flex;flex-direction:column;justify-content:center}.story-copy h2,.section-heading h2,.locations>h2,.testimonials>h2,.experience>h2,.booking-finale h2{margin:0;font-family:var(--display);font-weight:500;letter-spacing:-.015em;text-transform:uppercase}
.story-copy h2{font-size:2rem;line-height:1}.story-copy>p:not(.eyebrow){max-width:39ch;margin:.65rem 0 .8rem;color:#b8b5ab;font-size:.65rem;line-height:1.55}.story-copy .action{align-self:flex-start;min-height:34px;padding:0 .8rem;font-size:.5rem}
.story>img{height:100%;object-fit:cover;object-position:center center}

.signature{height:335px;padding:1.45rem 3.8rem 1.75rem;border-bottom:1px solid var(--line);background:var(--bg)}
.section-heading{height:34px;display:flex;align-items:start;justify-content:space-between}.section-heading h2{font-size:1.45rem}.section-heading>a{min-height:28px;border:0;background:transparent;color:var(--gold-light);display:flex;align-items:center;gap:.35rem;font-size:.48rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.section-heading>a svg{width:.8rem}
.dish-grid{height:245px;display:grid;grid-template-columns:repeat(4,1fr);gap:.72rem}.dish-card{position:relative;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#081410}.dish-card>img{height:176px;object-fit:cover;filter:saturate(.88) contrast(1.04);transition:transform .35s var(--ease)}.dish-card:hover>img{transform:scale(1.025)}.dish-card>div{height:67px;padding:.55rem .65rem}.dish-card h3{margin:0 2rem .2rem 0;font-family:var(--display);font-size:.73rem;font-weight:600;line-height:1.1;text-transform:uppercase}.dish-card span{color:var(--gold-light);font-size:.5rem;font-weight:700}.dish-card>a{position:absolute;right:.45rem;bottom:.45rem;width:30px;height:30px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);color:var(--gold);display:grid;place-items:center}.dish-card>a svg{width:.8rem}

.locations{height:320px;padding:1.2rem 3.8rem 1.7rem;border-bottom:1px solid var(--line);background:var(--panel)}.locations>h2{text-align:center;font-size:1.4rem;line-height:1.2}.location-grid{height:232px;margin-top:.65rem;display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.location-grid article{position:relative;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#07120f}.location-grid img{height:142px;object-fit:cover;filter:saturate(.78) brightness(.83)}.location-grid article>div{height:88px;padding:.55rem .72rem}.location-grid h3{margin:0;font-family:var(--display);font-size:1rem;font-weight:600;text-transform:uppercase}.location-grid p{margin:.05rem 0 .2rem;color:#b4b1a6;font-size:.52rem}.location-grid a{display:inline-flex;align-items:center;gap:.25rem;color:var(--gold-light);font-size:.5rem}.location-grid a svg{width:.65rem}

.testimonials{position:relative;height:275px;padding:1rem 3.8rem 1.2rem;border-bottom:1px solid var(--line);background:var(--bg)}.testimonials>h2{text-align:center;font-size:1.4rem}.google-score{position:absolute;top:1.1rem;right:3.8rem;display:flex;align-items:center;gap:.3rem;color:var(--gold-light);font-size:.49rem;font-weight:700;letter-spacing:.04em}.google-score svg{width:.75rem}.review-grid{height:177px;margin-top:.65rem;display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.review-grid>article{position:relative;border:1px solid var(--line);border-radius:var(--radius);padding:.75rem .85rem 2rem;background:#07120f}.review-person{display:flex;align-items:center;gap:.55rem}.review-avatar{width:2.15rem;height:2.15rem;border:1px solid #d7d1c5;border-radius:50%;display:grid;place-items:center;flex:0 0 auto;object-fit:cover;color:#e0dbcf;font-family:var(--display);font-size:.67rem;font-weight:600}.review-person h3{margin:0;font-family:var(--display);font-size:.69rem;font-weight:600;text-transform:uppercase}.review-person small{display:block;margin-top:.15rem;color:#777b72;font-size:.43rem}.stars{display:flex;gap:.08rem;margin-top:.08rem}.stars svg{width:.57rem;height:.57rem;color:var(--gold-light)}.review-grid article>p{margin:.5rem 0 0;color:#b7b4aa;font-size:.55rem;line-height:1.42}.review-source{position:absolute;left:.85rem;bottom:.62rem;display:flex;align-items:center;gap:.25rem;color:var(--gold-light);font-size:.46rem}.review-source svg{width:.62rem}.review-summary{background:linear-gradient(135deg,rgba(199,149,79,.08),transparent 70%),#07120f}.dots{height:20px;display:flex;align-items:end;justify-content:center;gap:.35rem}.dots i{width:4px;height:4px;border-radius:50%;background:#5f5e56}.dots i:first-child{background:var(--gold)}

.experience{height:168px;padding:1.05rem 3.8rem 1.2rem;border-bottom:1px solid var(--line);background:#08120f}.experience>h2{text-align:center;font-size:1.4rem}.experience>div{margin-top:.75rem;display:grid;grid-template-columns:repeat(4,1fr)}.experience article{padding:.15rem 1rem;display:flex;gap:.7rem;border-right:1px solid var(--soft)}.experience article:last-child{border-right:0}.experience article>svg{width:1.55rem;height:1.55rem;color:var(--gold)}.experience h3{margin:0 0 .2rem;color:var(--gold-light);font-size:.54rem;letter-spacing:.04em;text-transform:uppercase}.experience p{margin:0;color:#aaa89e;font-size:.51rem;line-height:1.42}

.booking-finale{height:148px;padding:1.3rem 2rem;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;border-bottom:1px solid var(--line);background:linear-gradient(rgba(69,37,19,.78),rgba(54,29,17,.82)),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cpath d='M0 20C30 10 50 40 80 25S110 5 120 15M0 80C25 55 50 95 75 75s35-10 45 2' fill='none' stroke='%23c7954f' stroke-opacity='.08'/%3E%3C/svg%3E")}.booking-finale h2{font-size:1.35rem}.booking-finale p{margin:.3rem 0 .6rem;color:#c6bdb2;font-size:.58rem}.booking-finale .action{min-height:34px}

.footer{height:250px;padding:2rem 3.8rem 1rem;display:grid;grid-template-columns:1.35fr .8fr .7fr 1.2fr .7fr;grid-template-rows:1fr 30px;gap:1.6rem;background:var(--deep);color:var(--muted);font-size:.54rem}.footer-brand img{width:126px;height:58px;object-fit:contain;object-position:left}.footer-brand p{max-width:210px;margin:.45rem 0;line-height:1.5}.footer-brand>div{display:flex;gap:.35rem}.footer-brand>div a{width:26px;height:26px;border:1px solid var(--soft);display:grid;place-items:center}.footer-brand>div svg{width:.75rem}.footer>div:not(.footer-brand){display:flex;flex-direction:column;align-items:flex-start;gap:.35rem}.footer h2{margin:.35rem 0 .3rem;color:var(--gold);font-size:.52rem;letter-spacing:.09em;text-transform:uppercase}.footer a,.footer button{border:0;padding:0;background:transparent;color:var(--muted);display:flex;align-items:center;gap:.25rem;text-align:left}.footer a:hover,.footer button:hover{color:var(--text)}.footer a svg{width:.75rem;color:var(--gold)}.footer>small{grid-column:1/-1;padding-top:.65rem;border-top:1px solid var(--soft);color:var(--dim);font-size:.48rem}

.mobile-menu{position:fixed;z-index:var(--z-menu);inset:0;height:100vh;height:100dvh;padding:max(1rem,env(safe-area-inset-top)) max(1.2rem,env(safe-area-inset-right)) max(1rem,env(safe-area-inset-bottom)) max(1.2rem,env(safe-area-inset-left));display:flex;flex-direction:column;gap:1.5rem;overflow:hidden;background:var(--bg)}.mobile-menu header{display:flex;flex:0 0 auto;align-items:center;justify-content:space-between;min-height:64px}.mobile-menu header img{width:135px;height:64px;object-fit:contain;object-position:left center}.mobile-menu header button,.overlay header>button{width:44px;height:44px;border:1px solid var(--soft);border-radius:var(--radius);background:transparent;color:var(--text);display:grid;place-items:center}.mobile-menu nav{display:flex;flex-direction:column;flex:1 1 auto;min-height:0;overflow-y:auto;overscroll-behavior:contain;margin:0;padding-bottom:env(safe-area-inset-bottom)}.mobile-menu nav a,.mobile-menu nav>button{flex:0 0 auto;min-height:58px;border:0;border-bottom:1px solid var(--soft);padding:0;background:transparent;color:var(--text);display:flex;align-items:center;justify-content:space-between;font-family:var(--display);font-size:1.9rem;text-align:left;text-transform:uppercase}

.overlay{position:fixed;z-index:var(--z-overlay);inset:0;padding:1rem;display:grid;place-items:center;background:rgba(2,7,5,.88);backdrop-filter:blur(8px)}.menu-drawer,.flow-modal{width:min(1000px,100%);max-height:calc(100dvh - 2rem);overflow:auto;border:1px solid var(--line);border-radius:var(--radius);padding:1.5rem;background:var(--panel);box-shadow:0 28px 80px rgba(0,0,0,.55)}.overlay header{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem}.overlay header p{margin:0 0 .3rem;color:var(--gold);font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}.overlay header h2{margin:0;font-family:var(--display);font-size:2.8rem;font-weight:500;line-height:.95;text-transform:uppercase}.menu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;margin:1.3rem 0}.menu-grid article{border:1px solid var(--soft);border-radius:var(--radius);overflow:hidden;background:var(--bg)}.menu-grid img{height:150px;object-fit:cover}.menu-grid article>div{padding:.7rem}.menu-grid h3{margin:0;font-family:var(--display);font-size:1rem}.menu-grid p{min-height:2.4em;margin:.25rem 0;color:var(--muted);font-size:.6rem;line-height:1.4}.menu-grid span{color:var(--gold);font-size:.57rem}.menu-grid article>button{width:100%;min-height:38px;border:0;border-top:1px solid var(--soft);background:transparent;color:var(--text);display:flex;align-items:center;justify-content:center;gap:.4rem;font-size:.55rem;text-transform:uppercase}.mock-note{margin:1rem 0;padding:.7rem 1rem;border-left:2px solid var(--gold);background:rgba(199,149,79,.07);color:#c9c5bb;font-size:.65rem;line-height:1.5}.booking-form{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.booking-row{grid-column:1/-1;display:grid;grid-template-columns:1.2fr 1fr .8fr;gap:.7rem}.booking-form label{display:grid;gap:.35rem;color:#cbc7be;font-size:.62rem;font-weight:700}.booking-form input,.booking-form select{width:100%;height:46px;border:1px solid var(--soft);border-radius:var(--radius);padding:0 .7rem;background:var(--bg);color:var(--text);font-size:.78rem;color-scheme:dark}.booking-form .action,.booking-form .form-error,.booking-form .success{grid-column:1/-1}.booking-form .action{justify-self:start}.form-error{margin:0;color:#ff9e8f;font-size:.65rem}.success{min-height:48px;padding:.8rem;border:1px solid rgba(124,183,133,.46);background:rgba(93,154,102,.1);color:#b9dfbf;display:flex;align-items:center;gap:.6rem;font-size:.68rem}.order-panel{display:grid;grid-template-columns:1.25fr .75fr;gap:.8rem}.order-list{display:grid;gap:.5rem}.order-list article{min-height:78px;padding:.5rem;border:1px solid var(--soft);display:grid;grid-template-columns:88px 1fr auto;align-items:center;gap:.65rem}.order-list img{height:62px;object-fit:cover}.order-list h3{margin:0;font-family:var(--display);font-size:1rem}.order-list span{color:var(--gold);font-size:.58rem}.quantity{display:flex;align-items:center;gap:.45rem}.quantity button{width:34px;height:34px;border:1px solid var(--soft);background:transparent;color:var(--text);display:grid;place-items:center}.quantity svg{width:.75rem}.cart{padding:1rem;border:1px solid var(--line);background:var(--bg)}.cart h3{margin:0 0 .8rem;font-family:var(--display);font-size:1.5rem}.cart>p{display:flex;justify-content:space-between;gap:.8rem;color:var(--muted);font-size:.6rem}.cart>p b{color:var(--text);white-space:nowrap}.cart-total{margin:1rem 0;padding-top:.8rem;border-top:1px solid var(--soft);display:flex;justify-content:space-between;font-size:.68rem}.cart .action{width:100%}
.ressto-overlay{padding:clamp(.75rem,2vw,1.5rem);background:rgba(1,7,5,.82);backdrop-filter:blur(16px) saturate(.7)}
.ressto-modal{width:min(1180px,calc(100vw - 2rem));height:min(880px,calc(100dvh - 2rem));min-height:min(620px,calc(100dvh - 2rem));border:1px solid rgba(224,178,109,.42);border-radius:8px;overflow:hidden;display:flex;flex-direction:column;background:#f8f8f5;box-shadow:0 34px 100px rgba(0,0,0,.72)}
.ressto-modal>header{min-height:96px;padding:1rem 1.25rem 1rem 1.5rem;align-items:center;border-bottom:1px solid rgba(199,149,79,.28);background:linear-gradient(110deg,#07130f,#0d1c17)}
.ressto-modal>header h2{font-size:clamp(1.9rem,3vw,3rem);line-height:.88}
.ressto-modal>header p{margin-bottom:.45rem}
.ressto-header-actions{display:flex;align-items:center;gap:.65rem;flex:0 0 auto}
.ressto-header-actions>a{min-height:42px;border:1px solid var(--line);border-radius:var(--radius);padding:0 .8rem;display:inline-flex;align-items:center;gap:.45rem;color:#ded8ca;font-size:.58rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;transition:border-color .2s,color .2s,background .2s}
.ressto-header-actions>a:hover{border-color:var(--gold-light);background:rgba(199,149,79,.08);color:var(--gold-light)}
.ressto-header-actions>a svg{width:.85rem}
.ressto-header-actions>button{width:42px;height:42px;border:1px solid var(--soft);border-radius:var(--radius);background:rgba(255,255,255,.04);color:var(--text);display:grid;place-items:center}
.ressto-header-actions>button:hover{border-color:var(--gold-light);color:var(--gold-light)}
.ressto-modal>iframe{width:100%;height:100%;min-height:0;flex:1;border:0;background:#fff}
.cookie-banner{position:fixed;z-index:95;left:1rem;bottom:1rem;width:min(540px,calc(100% - 2rem));padding:.8rem 1rem;border:1px solid var(--line);display:flex;align-items:center;gap:.8rem;background:var(--panel-2);box-shadow:0 1rem 3rem rgba(0,0,0,.45)}.cookie-banner p{margin:0;color:#c7c4bb;font-size:.62rem;line-height:1.45}.cookie-banner>div{display:flex;gap:.4rem;flex-shrink:0}.cookie-banner button{min-height:38px;border:1px solid var(--line);padding:0 .65rem;background:transparent;color:var(--text);font-size:.58rem}.cookie-banner button:last-child{background:var(--gold);color:var(--ink)}

@media(max-width:1024px){.masthead{width:calc(100% - 40px);grid-template-columns:150px 1fr auto}.desktop-nav{display:none}.menu-button{display:grid}.hero-copy{left:28px}.footer{grid-template-columns:1.2fr .8fr .7fr 1.2fr}.footer>div:nth-child(5){display:none}}
@media(max-width:767px){
  .site{width:100%;border:0}.page-main{display:block}.hero{order:0;height:570px}.service-rail{order:1}.craft-marquee{order:2}.story{order:3}.signature{order:4}.locations{order:5}.booking-finale{order:6}.testimonials{order:7}.experience{order:8}
  .masthead{width:calc(100% - 28px);height:68px;grid-template-columns:1fr auto;border-bottom:0}.brand{width:124px}.brand img{height:58px}.masthead-actions{gap:.05rem}.lang,.lang-alt{min-width:27px}.menu-button{min-width:36px}
  .hero-image{object-position:59% center}.hero:after{background:linear-gradient(180deg,rgba(3,8,7,.82) 0%,rgba(3,8,7,.57) 43%,rgba(3,8,7,.08) 66%,rgba(3,8,7,.38) 100%)}.hero-copy{top:132px;left:16px;width:calc(100% - 32px)}.hero-title{max-width:330px;font-size:3.35rem;line-height:.86}.hero-title span{white-space:normal}.hero-lead{max-width:280px;margin:.65rem 0 .85rem;font-size:.67rem}.hero-actions{width:160px;display:grid;gap:.42rem}.hero-actions .action{width:100%;min-height:38px}
  .service-rail{height:78px}.service-rail>a,.service-rail>button{padding:.45rem .25rem;display:grid;place-items:center;align-content:center;gap:.2rem;text-align:center}.service-rail svg{width:1.15rem;height:1.15rem}.service-rail b{font-family:Manrope,sans-serif;font-size:.48rem;letter-spacing:.02em}.service-rail small{display:none}
  .story{height:255px;grid-template-columns:54% 46%}.story-copy{padding:1.35rem 1rem}.story-copy h2{font-size:1.45rem}.story-copy>p:not(.eyebrow){margin:.45rem 0 .55rem;font-size:.56rem;line-height:1.45}.story-copy .action{min-height:31px;padding:0 .5rem;font-size:.43rem}.story>img{object-position:58% center}
  .signature{height:266px;padding:1rem 0 1.15rem}.section-heading{height:34px;padding:0 .8rem}.section-heading h2{font-size:1.25rem}.dish-grid{height:202px;display:flex;gap:.55rem;overflow-x:auto;padding:0 .8rem;scroll-snap-type:x mandatory;scrollbar-width:none}.dish-grid::-webkit-scrollbar{display:none}.dish-card{min-width:70vw;scroll-snap-align:start}.dish-card>img{height:142px}.dish-card>div{height:58px;padding:.48rem .55rem}.dish-card h3{font-size:.67rem}
  .locations{height:332px;padding:1rem .8rem}.locations>h2{font-size:1.2rem}.location-grid{height:273px;margin-top:.55rem;display:grid;grid-template-columns:1fr;gap:.45rem}.location-grid article{height:86px}.location-grid img{position:absolute;inset:0;height:100%;filter:saturate(.7) brightness(.5)}.location-grid article>div{position:relative;z-index:1;height:100%;padding:.8rem;display:flex;flex-direction:column;justify-content:center}.location-grid h3{font-size:1rem}.location-grid p{font-size:.49rem}.location-grid a{position:absolute;right:.75rem;bottom:.6rem}
  .booking-finale{height:152px;padding:1rem}.booking-finale h2{max-width:320px;font-size:1.35rem}.booking-finale p{font-size:.55rem}.booking-finale .action{min-width:145px}
  .testimonials{height:288px;padding:1rem .8rem}.testimonials>h2{font-size:1.25rem}.google-score{top:2.8rem;right:.8rem;font-size:.44rem}.review-grid{height:180px;display:block;margin-top:1.8rem}.review-grid>article{display:none;height:180px;padding:1rem 1rem 2.2rem}.review-grid>article:first-child{display:block}.review-grid article>p{font-size:.67rem;line-height:1.5}.review-source{left:1rem;bottom:.8rem}.dots{height:25px}
  .experience{height:auto;min-height:315px;padding:1rem .8rem 1.2rem}.experience>h2{font-size:1.2rem}.experience>div{grid-template-columns:1fr 1fr;gap:0;margin-top:.65rem}.experience article{min-height:105px;padding:1rem .55rem;border-right:1px solid var(--soft);border-bottom:1px solid var(--soft)}.experience article:nth-child(2n){border-right:0}.experience article:nth-child(n+3){border-bottom:0}.experience h3{font-size:.52rem}.experience p{font-size:.5rem}
  .footer{height:auto;min-height:360px;padding:1.8rem 1rem 1rem;grid-template-columns:1.15fr .85fr;grid-template-rows:auto auto;gap:1.5rem}.footer-brand{grid-column:1/-1}.footer>div:nth-child(3){display:none}.footer>small{grid-column:1/-1}
  .overlay{padding:0}.menu-drawer,.flow-modal{width:100%;min-height:100dvh;max-height:100dvh;border:0;padding:1rem}.overlay header h2{font-size:2.35rem}.menu-grid{grid-template-columns:1fr 1fr}.menu-grid img{height:120px}.booking-form{grid-template-columns:1fr}.booking-row{grid-template-columns:1fr 1fr}.booking-row label:first-child{grid-column:1/-1}.order-panel{grid-template-columns:1fr}.order-list article{grid-template-columns:70px 1fr auto}.order-list img{height:56px}.cart{margin-bottom:1rem}.cookie-banner{bottom:1rem;display:block}.cookie-banner>div{justify-content:flex-end;margin-top:.6rem}
}
.job-facts{margin:0 0 2rem;display:grid;grid-template-columns:repeat(3,1fr);border:1px solid var(--soft);border-radius:14px;overflow:hidden}.job-facts>div{padding:1rem;border-right:1px solid var(--soft)}.job-facts>div:last-child{border-right:0}.job-facts dt{color:var(--gold);font-size:.64rem;text-transform:uppercase}.job-facts dd{margin:.4rem 0 0}.job-section{margin:2rem 0}.job-section h2{font-size:2rem}.job-section p{color:var(--muted);line-height:1.7}@media(max-width:767px){.job-facts{grid-template-columns:1fr}.job-facts>div{border-right:0;border-bottom:1px solid var(--soft)}.job-facts>div:last-child{border-bottom:0}}
@media(max-width:390px){.hero-title{font-size:3rem}.story-copy h2{font-size:1.3rem}.dish-card{min-width:76vw}.menu-grid{grid-template-columns:1fr}.booking-row{grid-template-columns:1fr}.booking-row label:first-child{grid-column:auto}.experience>div{grid-template-columns:1fr}.experience article{border-right:0;border-bottom:1px solid var(--soft)!important}.experience article:last-child{border-bottom:0!important}}
@media(max-width:767px){.ressto-modal{width:100%;height:100dvh;min-height:0;border:0;border-radius:0}.ressto-modal>header{min-height:78px;padding:.75rem .8rem}.ressto-modal>header h2{max-width:70vw;font-size:1.7rem}.ressto-modal>header p{margin-bottom:.25rem;font-size:.48rem}.ressto-header-actions{gap:.35rem}.ressto-header-actions>a{width:42px;padding:0;font-size:0;justify-content:center}.ressto-header-actions>a svg{width:1rem}.ressto-header-actions>button{width:42px;height:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}.reveal,.hero-title span,.hero-lead,.hero-actions{opacity:1!important;transform:none!important}.masthead{opacity:1!important}}

/* Premium homepage direction: cinematic Italian nocturne */
:root{
  font-family:Outfit,system-ui,sans-serif;
  --bg:#06100d;--deep:#030806;--panel:#091612;--panel-2:#0d1c17;--text:#f4efe4;
  --muted:#b8b5aa;--dim:#85877f;--gold:#d2a35e;--gold-light:#edc382;--ink:#171006;
  --line:rgba(210,163,94,.38);--soft:rgba(244,239,228,.13);--display:'Cormorant Garamond',Georgia,serif;
  --ease:cubic-bezier(.16,1,.3,1);--radius:10px
}
body{background:radial-gradient(circle at 50% -15%,#10231c 0,transparent 38%),var(--deep)}
button,a{touch-action:manipulation}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid var(--gold-light);outline-offset:4px}
.site{width:min(1440px,100%);border-inline-color:rgba(210,163,94,.2);box-shadow:0 0 100px rgba(4,24,17,.5)}
.hero{height:min(860px,100dvh);min-height:720px;background:#050b08}
.hero:after{background:radial-gradient(circle at 50% 48%,rgba(2,7,5,.13) 0%,rgba(2,7,5,.5) 55%,rgba(2,7,5,.88) 100%),linear-gradient(180deg,rgba(3,8,6,.5),transparent 28%,rgba(3,8,6,.58))}
.hero-image{filter:saturate(.78) contrast(1.08) brightness(.82);transform-origin:center 55%}
.masthead{top:1rem;width:calc(100% - 5rem);height:88px;grid-template-columns:188px 1fr auto;padding-inline:1rem;border:1px solid rgba(244,239,228,.13);border-radius:12px;background:linear-gradient(110deg,rgba(4,12,9,.9),rgba(8,20,15,.66));box-shadow:inset 0 1px 0 rgba(255,255,255,.06),0 18px 54px rgba(1,8,5,.22)}
.desktop-nav{gap:clamp(.75rem,1.28vw,1.3rem);font-size:.73rem;font-weight:600;letter-spacing:.07em}
.desktop-nav a,.desktop-nav button{min-height:48px;padding:1rem .08rem;transition:color .25s var(--ease),transform .25s var(--ease)}
.desktop-nav a:hover,.desktop-nav button:hover{color:var(--gold-light);transform:translateY(-1px)}
.brand{width:166px}.brand img{height:74px;filter:drop-shadow(0 8px 18px rgba(0,0,0,.24))}
.lang,.lang-alt{font-size:.72rem;color:#b9b8af}
.hero-copy{top:50%;left:50%;width:min(1100px,calc(100% - 6rem));transform:translate(-50%,-43%);display:flex;flex-direction:column;align-items:center;text-align:center}
.hero-title{width:100%;font-size:clamp(4.2rem,6.35vw,6.35rem);line-height:var(--hero-title-leading,.8);letter-spacing:-.045em;text-wrap:balance;text-shadow:0 12px 45px rgba(0,0,0,.42)}
.hero-title-line{display:block!important;white-space:nowrap!important;padding-bottom:.14em!important}
.hero-lead{max-width:570px;margin:1.15rem 0 1.5rem;color:#e1ddd3;font-size:1rem;line-height:1.6;text-wrap:balance}
.hero-actions{gap:.75rem}.action{min-height:54px;border-radius:999px;padding:.3rem .42rem .3rem 1.35rem;gap:1rem;font-size:.69rem;letter-spacing:.075em;transition:transform .28s var(--ease),background .28s var(--ease),border-color .28s var(--ease),color .28s var(--ease),box-shadow .28s var(--ease)}
.action>i{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(8,16,12,.12);transition:transform .36s var(--ease),background .28s var(--ease)}
.action>i svg{width:1rem;height:1rem}.action-line>i{background:rgba(244,239,228,.1)}
.action:hover{transform:translateY(-2px);box-shadow:0 14px 34px rgba(4,14,10,.28)}.action:hover>i{transform:translate(2px,-1px) scale(1.06)}.action:active{transform:scale(.98)}
.service-rail{height:104px;background:linear-gradient(90deg,#06130f,#091813 50%,#06130f)}
.service-rail>a,.service-rail>button{padding:0 2.75rem;gap:1.1rem;transition:background .3s var(--ease),color .3s var(--ease)}
.service-rail>a:hover,.service-rail>button:hover{background:rgba(210,163,94,.07)}
.service-rail svg{width:1.65rem;height:1.65rem}.service-rail b{font-size:1rem}.service-rail small{margin-top:.15rem;font-size:.68rem;line-height:1.35}
.craft-marquee{height:76px;overflow:hidden;border-bottom:1px solid var(--line);display:flex;align-items:center;background:#040c09}
.craft-marquee>div{width:max-content;display:flex;align-items:center;animation:craft-flow 34s cubic-bezier(.37,0,.63,1) infinite;will-change:transform}
.craft-marquee span{display:flex;align-items:center;gap:2.4rem;padding-right:2.4rem;color:#d8d2c5;font-family:var(--display);font-size:1.35rem;font-style:italic;white-space:nowrap}
.craft-marquee svg{width:1rem;height:1rem;color:var(--gold)}
@keyframes craft-flow{to{transform:translateX(-50%)}}
.story{min-height:1580px;height:auto;grid-template-columns:42% 58%;align-items:start;background:radial-gradient(circle at 15% 25%,rgba(40,76,60,.19),transparent 35%),var(--panel)}
.story-copy{height:auto;min-height:100%;padding:0 3.5rem;background:transparent;display:block}
.story-copy-inner{min-height:100dvh;padding:7rem 0 5rem;display:flex;flex-direction:column;justify-content:center}
.story-copy .eyebrow{margin-bottom:1rem;font-size:.69rem}.story-copy h2{max-width:560px;font-size:clamp(3.6rem,5.2vw,5.8rem);line-height:.84;letter-spacing:-.04em;text-wrap:balance}
.story-copy .story-text{max-width:34ch;margin:1.6rem 0 2rem;color:#d4d0c5;font-size:clamp(1rem,1.35vw,1.3rem);line-height:1.7;text-wrap:pretty}
.story-word{opacity:.16}.story-copy .action{min-height:52px;padding:.3rem .42rem .3rem 1.25rem;font-size:.66rem}
.story-media{padding:6rem 3.5rem 7rem 0;display:grid;gap:2rem}
.story-media figure{height:700px;margin:0;padding:7px;border:1px solid rgba(210,163,94,.24);border-radius:18px;background:rgba(244,239,228,.035);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 26px 75px rgba(1,10,6,.25);overflow:hidden}
.story-media figure:nth-child(2){width:84%;justify-self:end}
.story-media img{height:100%;border-radius:12px;object-fit:cover;filter:saturate(.78) contrast(1.06)}
.signature{height:auto;min-height:920px;padding:8rem 4rem 9rem;background:radial-gradient(circle at 88% 16%,rgba(44,83,64,.18),transparent 30%),var(--bg)}
.section-heading{height:auto;margin-bottom:2.2rem;align-items:end}.section-heading h2{font-size:clamp(3rem,4.8vw,5rem);line-height:.88;letter-spacing:-.035em}.section-heading>a{min-height:48px;padding:.5rem;color:var(--gold-light);font-size:.67rem;transition:transform .28s var(--ease),color .28s}.section-heading>a:hover{transform:translateX(3px);color:var(--text)}.section-heading>a svg{width:1rem}
.dish-grid{height:690px;display:grid;grid-template-columns:repeat(12,1fr);grid-template-rows:repeat(4,1fr);grid-auto-flow:dense;gap:.75rem}
.dish-card{min-width:0;border-color:rgba(210,163,94,.28);border-radius:14px;padding:6px;background:rgba(244,239,228,.035);box-shadow:inset 0 1px 0 rgba(255,255,255,.07);isolation:isolate}
.dish-card:nth-child(1){grid-column:1/7;grid-row:1/5}.dish-card:nth-child(2){grid-column:7/13;grid-row:1/3}.dish-card:nth-child(3){grid-column:7/10;grid-row:3/5}.dish-card:nth-child(4){grid-column:10/13;grid-row:3/5}
.dish-card:after{content:"";position:absolute;z-index:-1;inset:6px;border-radius:9px;background:linear-gradient(180deg,transparent 45%,rgba(2,7,5,.95));pointer-events:none}
.dish-card>img{position:absolute;z-index:-2;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:9px;filter:saturate(.78) contrast(1.08);transition:transform .75s var(--ease),filter .45s var(--ease)}
.dish-card:hover>img{transform:scale(1.045);filter:saturate(.95) contrast(1.04)}
.dish-card>div{position:absolute;left:0;right:0;bottom:0;height:auto;padding:1.25rem 1.35rem 1.35rem}.dish-card h3{max-width:85%;margin:0 0 .4rem;font-size:clamp(1.1rem,1.8vw,2rem);line-height:.96;text-wrap:balance}.dish-card span{font-size:.72rem;font-variant-numeric:tabular-nums}.dish-card>a{right:1rem;bottom:1rem;width:44px;height:44px;border-color:rgba(244,239,228,.22);border-radius:50%;background:rgba(4,12,9,.72);backdrop-filter:blur(10px);transition:transform .3s var(--ease),background .3s}.dish-card>a:hover{transform:rotate(90deg) scale(1.05);background:var(--gold);color:var(--ink)}
.locations{height:auto;min-height:880px;padding:8rem 4rem 9rem;background:var(--panel)}.locations>h2{margin-bottom:2.5rem;font-size:clamp(3rem,4.8vw,5rem);line-height:.9;letter-spacing:-.035em}
.location-grid{height:640px;margin:0;display:flex;gap:.75rem}.location-grid article{height:100%;min-width:0;flex:1;container-type:inline-size;border-color:rgba(210,163,94,.26);border-radius:14px;padding:6px;isolation:isolate;transition:flex .7s var(--ease),transform .35s var(--ease),border-color .35s var(--ease);box-shadow:inset 0 1px 0 rgba(255,255,255,.07)}
.location-grid article:hover,.location-grid article:focus-within,.location-grid article:focus{flex:1.75;border-color:rgba(237,195,130,.58);outline:0}
.location-grid article:after{content:"";position:absolute;z-index:-1;inset:6px;border-radius:9px;background:linear-gradient(180deg,rgba(2,8,5,.05) 20%,rgba(2,8,5,.9) 84%)}
.location-grid img{position:absolute;z-index:-2;inset:6px;width:calc(100% - 12px);height:calc(100% - 12px);border-radius:9px;filter:saturate(.7) brightness(.72);transition:transform .8s var(--ease),filter .5s var(--ease)}
.location-grid article:hover img,.location-grid article:focus img{transform:scale(1.035);filter:saturate(.9) brightness(.78)}
.location-grid article>div{position:absolute;inset:auto 0 0;height:auto;padding:1.5rem 1.6rem 1.7rem;background:none}.location-grid article>div>small{color:var(--gold-light);font-size:.64rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase}.location-grid h3{max-width:100%;margin:.35rem 0 .55rem;font-size:clamp(1.55rem,8.1cqi,2.55rem);line-height:1.04;letter-spacing:-.012em;text-wrap:balance}.location-grid p{max-width:42ch;margin:0 0 .9rem;color:#d0ccc2;font-size:.71rem;line-height:1.45;opacity:0;transform:translateY(8px);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.location-actions{display:flex;align-items:center;gap:1rem;opacity:0;transform:translateY(8px);transition:opacity .35s .04s var(--ease),transform .35s .04s var(--ease)}
.location-grid article:hover p,.location-grid article:focus p,.location-grid article:hover .location-actions,.location-grid article:focus .location-actions{opacity:1;transform:none}.location-grid .location-actions a{position:static;min-width:44px;min-height:44px;padding:.25rem;display:inline-flex;align-items:center;justify-content:center;color:var(--gold-light);font-size:.66rem}.location-grid .location-actions a:last-child{color:#d8d4ca}
.testimonials{height:auto;min-height:790px;padding:7.5rem 4rem 8.5rem;background:radial-gradient(circle at 20% 15%,rgba(36,73,55,.18),transparent 32%),var(--bg)}.testimonials>h2{text-align:left;font-size:clamp(3rem,4.8vw,5rem);line-height:.9;letter-spacing:-.035em}.google-score{top:8rem;right:4rem;font-size:.65rem}.google-score svg{width:1rem}
.review-grid{height:500px;margin-top:2.5rem;display:grid;grid-template-columns:1.35fr 1fr 1fr;grid-template-rows:1fr 1fr;gap:.75rem}.review-grid>article{height:auto;border-color:rgba(210,163,94,.23);border-radius:14px;padding:1.2rem 1.25rem 2.8rem;background:linear-gradient(145deg,rgba(244,239,228,.035),rgba(244,239,228,.012));box-shadow:inset 0 1px 0 rgba(255,255,255,.06);transition:transform .35s var(--ease),border-color .35s var(--ease)}
.review-grid>article:hover{transform:translateY(-4px);border-color:rgba(237,195,130,.48)}.review-grid>article:first-child{grid-row:1/3;padding:2rem 2rem 3.5rem}.review-grid>article:nth-child(4){grid-column:2/4}.review-avatar{width:3rem;height:3rem}.review-grid>article:first-child .review-avatar{width:4.5rem;height:4.5rem}.review-person h3{font-size:.92rem}.review-grid>article:first-child .review-person h3{font-size:1.25rem}.review-grid article>p{margin-top:1rem;color:#d3cfc5;font-family:var(--display);font-size:1.05rem;line-height:1.35}.review-grid>article:first-child>p{margin-top:2rem;font-size:clamp(1.8rem,2.7vw,3rem);line-height:1.08}.review-source{left:1.25rem;bottom:1.1rem;font-size:.58rem}.review-grid>article:first-child .review-source{left:2rem;bottom:1.5rem}.dots{display:none}
.experience{height:auto;min-height:500px;padding:7rem 4rem 8rem;background:var(--panel)}.experience>h2{max-width:780px;margin:0 0 2.5rem;text-align:left;font-size:clamp(3rem,4.8vw,5rem);line-height:.9;letter-spacing:-.035em}.experience>div{margin:0;display:grid;grid-template-columns:repeat(2,1fr);border-top:1px solid var(--soft)}.experience article{min-height:145px;padding:2rem 1.25rem;border-right:0;border-bottom:1px solid var(--soft);align-items:flex-start;transition:background .3s var(--ease)}.experience article:nth-child(odd){border-right:1px solid var(--soft)}.experience article:hover{background:rgba(210,163,94,.045)}.experience article>svg{width:2rem;height:2rem}.experience h3{font-size:.76rem}.experience p{max-width:48ch;font-size:.75rem;line-height:1.55}
.booking-finale{height:auto;min-height:430px;padding:4rem;position:relative;isolation:isolate;overflow:hidden;background:linear-gradient(90deg,rgba(4,10,7,.96),rgba(4,10,7,.54)),url('../images/opening-continuous-pasta-v1.webp') center 46%/cover}.booking-finale:after{content:"";position:absolute;z-index:-1;inset:0;background:radial-gradient(circle at 75% 45%,transparent,rgba(2,8,5,.3))}.booking-finale h2{max-width:840px;font-size:clamp(3.25rem,5.3vw,5.6rem);line-height:.84;letter-spacing:-.04em;text-wrap:balance}.booking-finale p{margin:.9rem 0 1.25rem;font-size:.85rem}.booking-finale .action{min-height:54px}
.footer{height:auto;min-height:390px;padding:4.5rem 4rem 1.5rem;gap:2.5rem;background:#020705;font-size:.67rem}.footer-brand img{width:160px;height:72px}.footer-brand p{max-width:290px;font-size:.72rem}.footer h2{font-size:.66rem}.footer a,.footer button{min-height:27px}.footer>small{font-size:.58rem}

@media(max-width:1024px){
  .masthead{width:calc(100% - 2rem);grid-template-columns:160px 1fr auto}.brand{width:150px}.brand img{height:66px}
  .hero-copy{width:calc(100% - 3rem)}.hero-title{font-size:clamp(4rem,8vw,5.3rem)}
  .story-copy{padding-inline:2rem}.story-media{padding-right:2rem}.signature,.locations,.testimonials,.experience{padding-inline:2rem}
}
@media(max-width:767px){
  .hero{height:720px;min-height:720px}.masthead{top:.75rem;width:calc(100% - 1.5rem);height:70px;padding-inline:.65rem;border-radius:10px;grid-template-columns:1fr auto}.brand{width:132px}.brand img{height:58px}.masthead-actions{gap:.05rem}.lang,.lang-alt{min-width:44px;font-size:.64rem}.menu-button{min-width:44px;height:48px}
  .hero-copy{top:49%;width:calc(100% - 2rem);transform:translate(-50%,-42%)}.hero-title{font-size:clamp(3rem,13vw,4.2rem);line-height:var(--hero-title-leading,.82)}.hero-title-line{display:block!important;white-space:normal!important}.hero-title-line:first-child{font-size:.78em;white-space:nowrap!important}.hero-lead{max-width:330px;margin:.9rem 0 1.2rem;font-size:.84rem;line-height:1.5}.hero-actions{width:auto;display:flex;gap:.5rem}.hero-actions .action{width:auto;min-height:50px;padding-left:1rem;font-size:.61rem}.action>i{width:36px;height:36px}
  .service-rail{height:88px}.service-rail>a,.service-rail>button{padding:.5rem .25rem;gap:.28rem}.service-rail b{font-size:.52rem}.service-rail svg{width:1.25rem;height:1.25rem}
  .craft-marquee{height:64px}.craft-marquee span{gap:1.8rem;padding-right:1.8rem;font-size:1.1rem}
  .story{min-height:0;display:block}.story-copy{min-height:0;padding:0}.story-copy-inner{min-height:0;padding:6rem 1.15rem 5rem}.story-copy h2{font-size:3.5rem}.story-copy .story-text{font-size:1rem}.story-media{padding:0 1rem 6rem;gap:1rem}.story-media figure,.story-media figure:nth-child(2){width:100%;height:68vh;min-height:470px;padding:5px;border-radius:14px}.story-media img{border-radius:9px}
  .signature{min-height:0;padding:5.5rem 0 6rem}.section-heading{margin-bottom:1.5rem;padding:0 1rem}.section-heading h2{font-size:2.7rem}.section-heading>a{font-size:.58rem}.dish-grid{height:430px;display:flex;gap:.65rem;padding:0 1rem}.dish-card,.dish-card:nth-child(n){min-width:82vw;height:430px;display:block}.dish-card>img{height:calc(100% - 12px)}.dish-card h3{font-size:1.6rem}.dish-card>div{height:auto;padding:1rem 1.1rem 1.2rem}
  .locations{min-height:0;padding:5.5rem 1rem 6rem}.locations>h2{margin-bottom:1.5rem;font-size:2.75rem}.location-grid{height:auto;display:grid;gap:.65rem}.location-grid article,.location-grid article:hover,.location-grid article:focus{height:230px;min-height:230px;flex:none}.location-grid article>div{padding:1rem 1.1rem 1.2rem}.location-grid h3{font-size:1.65rem}.location-grid p,.location-actions{opacity:1;transform:none}.location-grid p{max-width:32ch;font-size:.61rem}.location-grid .location-actions a{font-size:.59rem}
  .testimonials{min-height:0;height:auto;padding:5.5rem 1rem 6rem}.testimonials>h2{font-size:2.75rem}.google-score{position:static;margin-top:.8rem;justify-content:flex-start}.review-grid{height:370px;margin-top:1.5rem;display:block}.review-grid>article{display:none;height:370px}.review-grid>article:first-child{display:block;height:370px;padding:1.3rem 1.3rem 3.2rem}.review-grid>article:first-child .review-avatar{width:3.5rem;height:3.5rem}.review-grid>article:first-child>p{margin-top:1.25rem;font-size:1.75rem}.review-grid>article:first-child .review-source{left:1.3rem;bottom:1.2rem}
  .experience{min-height:0;padding:5.5rem 1rem 6rem}.experience>h2{font-size:2.75rem}.experience article{min-height:150px;padding:1.5rem .7rem}.experience h3{font-size:.64rem}.experience p{font-size:.66rem}
  .booking-finale{height:auto;min-height:390px;padding:3rem 1rem;align-items:flex-start;text-align:left;background-position:62% center}.booking-finale h2{max-width:350px;font-size:3.2rem}.booking-finale p{max-width:280px;font-size:.72rem}.booking-finale .action{align-self:flex-start}
  .footer{padding:3.5rem 1rem 1rem;gap:2rem}.footer-brand img{width:150px}
}
@media(max-width:390px){.hero-title{font-size:2.85rem}.hero-actions{width:100%;display:grid}.hero-actions .action{width:100%}.story-copy h2,.section-heading h2,.locations>h2,.testimonials>h2,.experience>h2{font-size:2.5rem}.booking-finale h2{font-size:2.8rem}}
@media(prefers-reduced-motion:reduce){.craft-marquee>div{animation:none}.story-word{opacity:1!important}.dish-card>img,.location-grid img{transform:none!important}}

/* WordPress integration */
[hidden]{display:none!important}
.admin-bar .masthead{margin-top:32px}
.masthead-actions a{display:inline-flex;align-items:center;justify-content:center;gap:.2rem;line-height:1;white-space:nowrap}
.masthead-actions .lang span{margin:0;line-height:1;transform:translateY(-.06em)}
.content-page{min-height:70vh;padding:clamp(8rem,14vw,12rem) clamp(1rem,7vw,6rem);background:var(--panel)}
.content-page article{max-width:820px;margin:auto}.content-page h1{margin:0 0 1.5rem;font-family:var(--display);font-size:clamp(3rem,7vw,6rem);font-weight:500;line-height:.9;text-transform:uppercase}.content-page p{color:var(--muted);line-height:1.7}
.content-header{max-width:1100px;margin:0 auto 3rem}.archive-description{max-width:60ch;color:var(--muted)}.content-grid{max-width:1100px;margin:auto;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.content-grid .content-card{max-width:none;border:1px solid var(--soft);border-radius:14px;overflow:hidden;background:rgba(244,239,228,.025)}.content-card>div{padding:1.25rem}.content-card>div>p{font-size:.75rem}.content-card img{height:300px;object-fit:cover}.content-card h2{margin:.3rem 0;font-family:var(--display);font-size:2rem;font-weight:500;line-height:1}.content-link{display:inline-flex;align-items:center;gap:.4rem;color:var(--gold-light);font-size:.7rem;text-transform:uppercase}.content-link svg{width:.9rem}.single-hero{margin:2rem 0}.single-hero img{max-height:640px;border-radius:14px;object-fit:cover}.entry-content{font-size:1rem;line-height:1.75}.entry-content h2,.entry-content h3{font-family:var(--display);font-weight:500}.entry-content a{color:var(--gold-light);text-decoration:underline}
.stars{color:var(--gold-light);font-size:.65rem;letter-spacing:.06em}
.voucher-overlay{background:rgba(1,7,5,.9);backdrop-filter:blur(14px)}
.voucher-modal{position:relative;width:min(560px,calc(100vw - 2rem));padding:clamp(1.5rem,5vw,3.5rem);border:1px solid var(--line);border-radius:14px;background:radial-gradient(circle at 90% 0,rgba(210,163,94,.16),transparent 34%),var(--panel);box-shadow:0 34px 100px rgba(0,0,0,.65);text-align:center}
.voucher-modal h2{margin:.3rem auto .8rem;font-family:var(--display);font-size:clamp(2.4rem,7vw,4.8rem);font-weight:500;line-height:.86;text-transform:uppercase}.voucher-modal>p:not(.eyebrow){max-width:45ch;margin:.75rem auto 1rem;color:var(--muted);font-size:.76rem;line-height:1.55}.voucher-close{position:absolute;top:1rem;right:1rem;width:42px;height:42px;border:1px solid var(--soft);border-radius:50%;display:grid;place-items:center;background:transparent;color:var(--text)}.voucher-code{margin:0 auto 1.1rem;padding:.65rem 1rem;border:1px dashed var(--gold);display:block;background:rgba(210,163,94,.08);color:var(--gold-light);font-weight:800;letter-spacing:.12em}.voucher-modal .action{margin:auto}
@media(max-width:782px){.admin-bar .masthead{margin-top:46px}}
@media(max-width:767px){.content-grid{grid-template-columns:1fr}.content-page{padding-top:7rem}.content-card img{height:230px}}

/* Accessible interaction sizing */
.lang,.lang-alt,.menu-button{min-width:44px}
.footer-brand>div{gap:.5rem}
.footer-brand>div a{width:44px;height:44px}
.footer-brand>div svg{width:1rem;height:1rem}
.ressto-header-actions>button,.voucher-close{width:44px;height:44px}
.cookie-banner button{min-height:44px}
@media(max-width:767px){.lang,.lang-alt,.menu-button{min-width:44px}.menu-button{height:48px}}

/* Brand brief alignment · v1.1 */
:root{
  font-family:'Cabin',system-ui,sans-serif;
  --bg:#0d2f25;--deep:#071a14;--panel:#164a3a;--panel-2:#3f735d;--text:#f5f4ef;
  --muted:#c7d6ce;--dim:#a9c5b5;--gold:#f7d398;--gold-light:#ffe2ad;--ink:#1e1e1e;
  --line:rgba(247,211,152,.3);--soft:rgba(245,244,239,.14);--display:'Bitter',Georgia,serif;
  --brand-green:#008f6a;--sage:#a9c5b5;--red:#cd283e;--taupe:#c4b098;--off-white:#f5f4ef
}
body{background:var(--deep);font-family:'Cabin',system-ui,sans-serif}
h1,h2,h3,.hero-title{font-family:var(--display)}
a,button{cursor:pointer}
:focus-visible{outline:3px solid var(--gold);outline-offset:4px}
.masthead{grid-template-columns:190px 1fr auto;background:linear-gradient(115deg,rgba(7,26,20,.96),rgba(22,74,58,.8));border-color:rgba(169,197,181,.24)}
.brand{width:180px}.brand img{width:100%;height:auto;max-height:72px;object-fit:contain;filter:none}
.desktop-nav{gap:clamp(.5rem,.82vw,1rem);font-size:.65rem}
.desktop-nav a{letter-spacing:.055em}
.desktop-nav .masthead-cta{min-height:40px;padding:.65rem .75rem;border:1px solid rgba(245,244,239,.34);border-radius:999px}
.desktop-nav .masthead-cta-fill{border-color:var(--red);background:var(--red);color:#fff}
.desktop-nav .masthead-cta-fill:hover{color:#fff;background:#b62035}
.inner-masthead{position:fixed;top:1rem;left:50%;z-index:70;transform:translateX(-50%)}
.admin-bar .inner-masthead{top:3rem;margin-top:0}
.hero:after{background:linear-gradient(180deg,rgba(2,12,8,.52),rgba(4,20,14,.2) 42%,rgba(4,16,12,.74))}
.hero-kicker{margin:0 0 .8rem;color:var(--gold);font-size:.7rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}
.hero-title{font-weight:500}
/* Vietnamese stacked accents need room on wrapped hero lines at every breakpoint. */
html:lang(vi) .hero-title{--hero-title-leading:1.2;letter-spacing:-.015em}
html:lang(vi) .page-main :is(h2,h3){line-height:1.2;letter-spacing:-.015em}
html:lang(vi) .page-main h2{margin-block-start:1rem}
.booking-finale>*{flex-shrink:0}
.hero-lead{color:var(--off-white);font-size:1.08rem}
.action-red{border-color:var(--red);background:var(--red);color:#fff}
.action-red>i{background:rgba(0,0,0,.14)}
.action-red:hover{border-color:#e23a51;background:#e23a51;color:#fff}
.action-light{border-color:var(--off-white);background:var(--off-white);color:var(--panel)}
.action-light>i{background:rgba(22,74,58,.1)}
.service-rail{background:linear-gradient(90deg,#123f32,#164a3a 50%,#123f32)}
.service-rail>a:hover{background:rgba(247,211,152,.08)}
.craft-marquee{background:#0a251c}
.eyebrow{color:var(--gold)!important}

.story-preview{--story-gutter:clamp(1rem,5vw,4rem);min-height:720px;background:radial-gradient(circle at 15% 20%,rgba(0,143,106,.18),transparent 36%),var(--panel)}
.story-text-secondary{color:var(--sage)!important;font-size:1rem!important}
.story-preview .story-copy{padding-inline:var(--story-gutter)}.story-preview .story-copy-inner{min-height:720px;padding-block:5rem;max-width:38rem;margin-inline:auto}
.story-preview .story-media{padding-block:4rem;align-content:center}
.story-preview .story-media figure{height:560px}
.timeline{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
.timeline article{min-height:132px;padding:1.25rem;border:1px solid rgba(247,211,152,.28);border-radius:14px;background:rgba(245,244,239,.045)}
.timeline strong{display:block;color:var(--gold);font-family:var(--display);font-size:2rem;font-weight:500}
.timeline span{display:block;margin-top:.4rem;color:var(--muted);font-size:.78rem;line-height:1.45}

.kitchen-section{padding-bottom:6rem;background:radial-gradient(circle at 90% 10%,rgba(63,115,93,.26),transparent 30%),var(--deep)}
.kitchen-section .section-heading{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(280px,.8fr);gap:3rem;align-items:end}
.kitchen-section .section-heading>p{max-width:52ch;margin:0;color:var(--muted);font-size:.9rem;line-height:1.7}
.menu-categories{display:flex;flex-wrap:wrap;gap:.55rem;margin:-.5rem 0 2rem}
.menu-categories span,.catering-tags span,.family-benefits span{padding:.55rem .85rem;border:1px solid rgba(169,197,181,.28);border-radius:999px;color:var(--sage);font-size:.68rem}
.dish-card>div span{color:var(--gold)}
.menu-document{margin-top:1rem;padding:1.25rem;display:grid;grid-template-columns:minmax(280px,.7fr) minmax(0,1.3fr);gap:1.25rem;border:1px solid rgba(247,211,152,.28);border-radius:18px;background:linear-gradient(140deg,rgba(22,74,58,.9),rgba(7,26,20,.9));box-shadow:0 28px 80px rgba(0,0,0,.22)}
.menu-document>div{padding:clamp(1.25rem,4vw,3.5rem);display:flex;flex-direction:column;justify-content:center}
.menu-document h3{margin:.25rem 0 1rem;font-size:clamp(2rem,3.5vw,3.8rem);font-weight:500;line-height:.98}
.menu-document>div>p:not(.eyebrow){color:var(--muted);font-size:.82rem;line-height:1.55}
.document-actions{display:flex;flex-wrap:wrap;gap:.65rem;margin-top:1.2rem}
.menu-document iframe{width:100%;height:620px;border:0;border-radius:12px;background:var(--off-white)}

.section-intro{max-width:860px;margin-bottom:2.5rem}
.section-intro h2{margin:.35rem 0;font-size:clamp(3rem,4.8vw,5rem);font-weight:500;line-height:.92;letter-spacing:-.035em}
.section-intro>p:not(.eyebrow){max-width:58ch;color:var(--muted);line-height:1.7}
.locations{background:var(--panel)}
.locations .location-grid{height:700px}
.location-grid article>div{background:linear-gradient(180deg,transparent,rgba(4,22,15,.92) 38%)}
.location-grid address{margin:.45rem 0 .85rem;color:var(--muted);font-size:.67rem;font-style:normal;line-height:1.45;opacity:0;transform:translateY(8px);transition:opacity .35s var(--ease),transform .35s var(--ease)}
.location-grid article:hover address,.location-grid article:focus address{opacity:1;transform:none}
.location-actions{flex-wrap:wrap;gap:.4rem .9rem}
.location-grid .location-actions a{min-height:44px;display:inline-flex;align-items:center}

.awards{padding:8rem 4rem;background:var(--off-white);color:var(--ink)}
.awards .eyebrow{color:var(--brand-green)!important}
.award-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(30,30,30,.2);border-bottom:1px solid rgba(30,30,30,.2)}
.award-grid article{min-height:260px;padding:2rem 1.4rem;border-right:1px solid rgba(30,30,30,.2);display:flex;flex-direction:column;justify-content:flex-end}
.award-grid article:last-child{border-right:0}
.award-grid strong{margin-bottom:auto;color:var(--red);font-size:.72rem;letter-spacing:.12em}
.award-grid h3{margin:1rem 0 .5rem;color:var(--panel);font-size:1.65rem;font-weight:600;line-height:1.05}
.award-grid p{margin:0;color:#4d5b55;font-size:.75rem;line-height:1.5}

.catering{padding:5rem 4rem;display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:4rem;align-items:center;background:var(--deep)}
.catering-copy h2{margin:.4rem 0 1rem;font-size:clamp(3rem,5vw,5.6rem);font-weight:500;line-height:.9}
.catering-copy>p:not(.eyebrow){max-width:54ch;color:var(--muted);font-size:.92rem;line-height:1.7}
.catering-tags{display:flex;flex-wrap:wrap;gap:.5rem;margin:1.5rem 0 2rem}
.catering figure{height:440px;margin:0;padding:7px;border:1px solid rgba(247,211,152,.28);border-radius:18px;overflow:hidden}
.catering figure img{width:100%;height:100%;border-radius:12px;object-fit:cover;filter:saturate(.82)}

.family{padding:8rem 4rem;display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--gold);color:var(--panel)}
.family>img{width:90px;height:auto;margin-bottom:1.5rem}
.family .eyebrow{color:var(--panel)!important}
.family h2{max-width:920px;margin:.4rem auto 1rem;font-size:clamp(3rem,5.4vw,6rem);font-weight:500;line-height:.92}
.family>p:not(.eyebrow){max-width:60ch;margin:0;color:#38584c;font-size:.95rem;line-height:1.7}
.family-benefits{display:flex;flex-wrap:wrap;justify-content:center;gap:.6rem;margin:1.6rem 0 2rem}
.family-benefits span{border-color:rgba(22,74,58,.3);color:var(--panel);font-weight:600}

.careers{padding:8rem 4rem;background:var(--panel)}
.careers .section-intro{display:grid;grid-template-columns:1fr 1fr;gap:1rem 4rem;align-items:end}
.careers .section-intro .eyebrow,.careers .section-intro h2{grid-column:1}
.careers .section-intro>p:not(.eyebrow){grid-column:2;grid-row:1/3;margin:0;align-self:end}
.career-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;margin-top:2rem}
.career-grid article,.careers-empty{padding:1.5rem;border:1px solid rgba(247,211,152,.25);border-radius:14px;background:rgba(245,244,239,.04)}
.career-grid small{color:var(--gold);font-size:.65rem;text-transform:uppercase}
.career-grid h3{margin:.65rem 0 1.2rem;font-size:1.8rem;font-weight:500}
.career-grid a{display:inline-flex;align-items:center;gap:.45rem;color:var(--gold);font-size:.68rem;text-transform:uppercase}.career-grid a svg{width:1rem}
.careers-empty{display:flex;align-items:center;justify-content:space-between;gap:1rem}.careers-empty p{color:var(--muted)}
.booking-finale{background:linear-gradient(90deg,rgba(7,26,20,.97),rgba(7,26,20,.48)),url('../images/opening-continuous-pasta-v1.webp') center 46%/cover}
.booking-finale .eyebrow{margin:0 0 .6rem}

@media(max-width:1180px){.desktop-nav{gap:.45rem;font-size:.59rem}.desktop-nav .masthead-cta{padding-inline:.55rem}.masthead{grid-template-columns:166px 1fr auto}.brand{width:160px}}
@media(max-width:1024px){
  .menu-document{grid-template-columns:1fr}.menu-document iframe{height:560px}
  .award-grid{grid-template-columns:repeat(2,1fr)}.award-grid article:nth-child(2){border-right:0}.award-grid article:nth-child(-n+2){border-bottom:1px solid rgba(30,30,30,.2)}
  .catering{gap:2rem;padding-inline:2rem}.catering figure{height:560px}
  .awards,.family,.careers{padding-inline:2rem}
}
@media(max-width:767px){
  .masthead{grid-template-columns:1fr auto}.brand{width:142px}.brand img{max-height:54px}.hero-kicker{font-size:.58rem}
  .kitchen-section .section-heading,.careers .section-intro{display:block}.kitchen-section .section-heading>p{margin-top:1rem}
  .menu-categories{padding:0 1rem}.menu-document{margin:1rem;border-radius:14px;padding:.65rem}.menu-document>div{padding:1.1rem}.menu-document iframe{display:none}.document-actions{display:grid}.document-actions .action{width:100%}
  .story-preview{min-height:0;display:block}.story-preview .story-copy-inner{min-height:0;padding:3.75rem 0 2rem}.story-preview .story-media{padding:0 1rem 3.75rem}.story-preview .story-media figure{height:52vh;min-height:340px}.timeline{grid-template-columns:1fr 1fr}.timeline article{min-height:115px;padding:1rem}.timeline strong{font-size:1.55rem}.timeline span{font-size:.67rem}
  .locations .location-grid{height:auto}.location-grid address{opacity:1;transform:none}.location-grid article,.location-grid article:hover,.location-grid article:focus{height:330px;min-height:330px}.location-grid article>div{background:linear-gradient(180deg,transparent,rgba(4,22,15,.94) 28%)}
  .awards,.family,.careers{padding:3.75rem 1rem}.award-grid{grid-template-columns:1fr}.award-grid article{min-height:220px;border-right:0;border-bottom:1px solid rgba(30,30,30,.2)!important}.award-grid article:last-child{border-bottom:0!important}
  .catering{padding:3.75rem 1rem;display:block}.catering figure{height:320px;margin-top:2rem}
  .family h2{font-size:3rem}.family-benefits{display:grid;width:100%}.family-benefits span{width:100%}
  .career-grid{grid-template-columns:1fr}.careers .section-intro>p:not(.eyebrow){margin-top:1rem}.careers-empty{display:block}.careers-empty .action{margin-top:1rem}
}

/* Navigation and editorial pages · v1.2 */
.masthead{grid-template-columns:178px minmax(0,1fr) 104px;padding-inline:1.15rem}
.brand{width:166px}
.desktop-nav{gap:clamp(.72rem,1vw,1.05rem);font-family:'Cabin',system-ui,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.065em}
.desktop-nav a{min-height:52px;padding:1rem .08rem;display:inline-flex;align-items:center}
.desktop-nav a:after{bottom:.62rem}
.desktop-nav a.active{color:var(--gold)}
.desktop-nav a.active:after{right:0;height:2px}
.masthead-actions{justify-self:end}

.story-copy h2{line-height:.96;letter-spacing:-.022em}
.timeline{gap:1rem}
.timeline article{position:relative;min-height:158px;padding:1.45rem;border-color:rgba(247,211,152,.56);background:linear-gradient(145deg,rgba(247,211,152,.13),rgba(0,143,106,.08));box-shadow:inset 0 1px 0 rgba(255,255,255,.1),0 16px 34px rgba(2,16,11,.2);overflow:hidden;transition:transform .3s var(--ease),border-color .3s var(--ease),background .3s var(--ease)}
.timeline article:nth-child(2),.timeline article:nth-child(3){background:linear-gradient(145deg,rgba(0,143,106,.2),rgba(247,211,152,.06))}
.timeline article:after{content:"";position:absolute;right:-24px;bottom:-24px;width:84px;height:84px;border:1px solid rgba(247,211,152,.2);border-radius:50%}
.timeline article:hover{transform:translateY(-4px);border-color:var(--gold);background:linear-gradient(145deg,rgba(247,211,152,.18),rgba(0,143,106,.14))}
.timeline strong{font-size:2.75rem;line-height:1}
.timeline span{max-width:24ch;margin-top:.75rem;color:var(--off-white);font-size:.85rem}

.menu-document{position:relative;gap:1.6rem;padding:1rem;border-color:rgba(247,211,152,.5);background:radial-gradient(circle at 12% 15%,rgba(0,143,106,.26),transparent 32%),linear-gradient(135deg,#0b3327,#071a14);box-shadow:0 36px 100px rgba(0,0,0,.35),inset 0 1px 0 rgba(255,255,255,.08)}
.menu-document>div:first-child{padding:clamp(2rem,4vw,4rem)}
.menu-document h3{line-height:1.05;letter-spacing:-.025em}
.menu-document-frame{position:relative;min-width:0;padding:12px;border:1px solid rgba(247,211,152,.48);border-radius:14px;background:linear-gradient(145deg,#f8f5ed,#ddd2bd);box-shadow:0 24px 58px rgba(0,0,0,.34)}
.menu-document-frame:before,.menu-document-frame:after{content:"";position:absolute;z-index:2;width:26px;height:26px;border-color:rgba(22,74,58,.38);pointer-events:none}
.menu-document-frame:before{top:22px;left:22px;border-top:1px solid;border-left:1px solid}
.menu-document-frame:after{right:22px;bottom:22px;border-right:1px solid;border-bottom:1px solid}
.menu-document-frame-bar{height:54px;padding:0 1.15rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(22,74,58,.22);color:var(--panel);font-size:.67rem;font-weight:700;letter-spacing:.11em;text-transform:uppercase}
.menu-document-frame-bar span:first-child{font-family:var(--display);font-size:1rem;letter-spacing:.02em;text-transform:none}
.menu-document .menu-document-frame{padding:12px}
.menu-document .menu-document-frame iframe{height:650px;border-radius:0 0 8px 8px;box-shadow:inset 0 0 0 1px rgba(22,74,58,.15)}

.awards{position:relative;overflow:hidden;background:radial-gradient(circle at 10% 0,rgba(0,143,106,.11),transparent 30%),var(--off-white)}
.awards:before{content:"";position:absolute;top:0;right:4rem;width:1px;height:100%;background:linear-gradient(transparent,rgba(22,74,58,.18),transparent)}
.awards .section-intro{max-width:980px;margin-bottom:3.5rem}
.awards .section-intro h2{font-size:clamp(3.4rem,5.5vw,6rem);color:var(--panel)}
.award-grid{gap:1rem;border:0}
.award-grid article{position:relative;min-height:330px;padding:2rem;border:1px solid rgba(22,74,58,.16);border-radius:16px;background:linear-gradient(155deg,#164a3a,#0b2d23);color:var(--off-white);box-shadow:0 18px 44px rgba(22,74,58,.16);overflow:hidden;transition:transform .35s var(--ease),box-shadow .35s var(--ease)}
.award-grid article:nth-child(2n){background:linear-gradient(155deg,#225d49,#123d30)}
.award-grid article:before{content:"";position:absolute;top:-54px;right:-54px;width:154px;height:154px;border:1px solid rgba(247,211,152,.28);border-radius:50%;box-shadow:0 0 0 18px rgba(247,211,152,.05),0 0 0 36px rgba(247,211,152,.025)}
.award-grid article:after{content:"";position:absolute;top:0;left:2rem;width:56px;height:4px;background:var(--red)}
.award-grid article:nth-child(2n):after{background:var(--gold)}
.award-grid article:hover{transform:translateY(-7px);box-shadow:0 28px 58px rgba(22,74,58,.26)}
.award-grid strong{position:relative;z-index:1;align-self:flex-start;margin-bottom:auto;padding:.45rem .7rem;border:1px solid rgba(247,211,152,.45);border-radius:999px;color:var(--gold);font-size:.75rem}
.award-grid h3{position:relative;z-index:1;margin:1.3rem 0 .65rem;color:var(--off-white);font-size:clamp(1.65rem,2.2vw,2.25rem);line-height:1.02}
.award-grid p{position:relative;z-index:1;color:#d8e2dd;font-size:.82rem;line-height:1.55}

.detail-page{min-height:100vh;background:var(--deep)}
.detail-hero{position:relative;min-height:700px;padding:clamp(11rem,18vw,14rem) clamp(1.25rem,7vw,6rem) clamp(5rem,8vw,7rem);display:flex;align-items:flex-end;isolation:isolate;background-position:center;background-size:cover}
.detail-hero:before{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(90deg,rgba(4,18,13,.96),rgba(4,18,13,.65) 50%,rgba(4,18,13,.22)),linear-gradient(0deg,rgba(4,18,13,.72),transparent 55%)}
.detail-hero--story{background-image:url('../images/opening-diptych-artisan-v2.webp')}
.detail-hero--locations{background-image:url('../images/branch-thanh-my-loi-wide.jpg')}
.detail-hero--book{background-image:url('../images/branch-thao-dien-wide.jpg')}
.detail-hero--order{background-image:url('../images/menu-margherita.jpg')}
.detail-hero--menu{background-image:url('../images/menu-margherita.jpg')}
.detail-hero--catering{background-image:url('../images/catering-hero-event.webp')}
.detail-hero>div{max-width:1020px}
.detail-hero h1{max-width:12ch;margin:.65rem 0 1.2rem;font-size:clamp(4rem,7vw,7.5rem);font-weight:500;line-height:.88;letter-spacing:-.035em;text-wrap:balance}
.detail-hero>div>p:last-child{max-width:58ch;margin:0;color:#e2e4df;font-size:clamp(1rem,1.5vw,1.25rem);line-height:1.65}
.detail-section{padding:clamp(5rem,9vw,9rem) clamp(1rem,7vw,6rem)}
.detail-section h2{margin:.5rem 0 1.25rem;font-size:clamp(2.8rem,5vw,5.5rem);font-weight:500;line-height:.95;letter-spacing:-.025em;text-wrap:balance}

.story-chapters{display:grid;grid-template-columns:minmax(0,.85fr) minmax(420px,1.15fr);gap:clamp(2rem,6vw,7rem);align-items:center;background:var(--panel)}
.story-chapter-copy>p:not(.eyebrow){max-width:58ch;color:var(--muted);font-size:1rem;line-height:1.8}
.story-chapters figure{height:720px;margin:0;padding:7px;border:1px solid rgba(247,211,152,.28);border-radius:18px;background:rgba(255,255,255,.035)}
.story-chapters figure img{height:100%;border-radius:12px;object-fit:cover}
.story-values{background:var(--off-white);color:var(--panel)}
.story-values header{max-width:900px;margin-bottom:3.5rem}.story-values .eyebrow{color:var(--brand-green)!important}
.value-list{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(22,74,58,.2);border-bottom:1px solid rgba(22,74,58,.2)}
.value-list article{min-height:300px;padding:2rem;border-right:1px solid rgba(22,74,58,.2);display:flex;flex-direction:column;justify-content:flex-end}.value-list article:last-child{border-right:0}
.value-list strong{margin-bottom:auto;color:var(--red)}.value-list h3{margin:1rem 0 .6rem;font-size:1.75rem}.value-list p{margin:0;color:#496259;line-height:1.65}
.detail-timeline{padding:4rem clamp(1rem,7vw,6rem) 8rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;background:var(--panel)}
.detail-timeline article{min-height:220px;padding:1.5rem;border:1px solid rgba(247,211,152,.4);border-radius:16px;background:linear-gradient(145deg,rgba(247,211,152,.1),rgba(0,143,106,.08));display:flex;flex-direction:column;justify-content:space-between}
.detail-timeline strong{color:var(--gold);font-family:var(--display);font-size:3rem}.detail-timeline span{max-width:22ch;color:var(--off-white);line-height:1.5}

.branch-page-section{background:radial-gradient(circle at 80% 10%,rgba(0,143,106,.14),transparent 30%),var(--panel)}
.branch-directory{display:grid;gap:1.25rem}
.branch-choice{min-height:520px;display:grid;grid-template-columns:minmax(360px,1.05fr) minmax(0,.95fr);border:1px solid rgba(247,211,152,.28);border-radius:18px;padding:7px;background:rgba(245,244,239,.035);overflow:hidden}
.branch-choice:nth-child(even) figure{order:2}.branch-choice figure{min-height:500px;margin:0;overflow:hidden;border-radius:12px}.branch-choice figure img{height:100%;object-fit:cover;filter:saturate(.8) contrast(1.04);transition:transform .7s var(--ease)}.branch-choice:hover figure img{transform:scale(1.035)}
.branch-choice-copy{padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center}
.branch-number{margin:0 0 auto;color:var(--gold);font-family:var(--display);font-size:2rem}.branch-number span{color:var(--sage);font-family:'Cabin',sans-serif;font-size:.68rem;letter-spacing:.1em;text-transform:uppercase}
.branch-choice h2{max-width:11ch;margin:.45rem 0 .85rem;font-size:clamp(2.3rem,4vw,4.3rem);font-weight:500;line-height:.92}.branch-choice-copy>p:not(.eyebrow):not(.branch-number){max-width:48ch;color:var(--muted);line-height:1.7}
.branch-choice address{margin:1rem 0 1.5rem;color:var(--off-white);font-style:normal;line-height:1.6}.branch-choice address a{color:var(--gold)}
.branch-choice-actions{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.branch-map-link{min-height:44px;padding:.5rem;display:inline-flex;align-items:center;gap:.45rem;color:var(--gold);font-size:.75rem;font-weight:700;text-transform:uppercase}.branch-map-link svg{width:1rem}

.menu-page-intro{padding-bottom:3rem;background:var(--panel)}.menu-page-intro>div{max-width:1000px}.menu-page-intro>div>p:not(.eyebrow){color:var(--muted);font-size:1rem;line-height:1.7}.menu-page-intro .document-actions{align-items:center}.menu-order-link{min-height:44px;padding:.5rem;display:inline-flex;align-items:center;gap:.4rem;color:var(--gold);font-size:.72rem;font-weight:700;text-transform:uppercase}.menu-order-link svg{width:1rem}
.menu-page-viewer{padding:0 clamp(1rem,7vw,6rem) 9rem;background:var(--panel)}.menu-page-viewer .menu-document-frame{max-width:1120px;margin:auto;padding:18px}.menu-page-viewer iframe{width:100%;height:900px;border:0;border-radius:0 0 10px 10px;background:var(--off-white)}
.catering-story{display:grid;grid-template-columns:minmax(0,1fr) minmax(420px,.9fr);gap:clamp(2rem,6vw,7rem);align-items:center;background:var(--panel)}.catering-story>div>p:not(.eyebrow){max-width:60ch;color:var(--muted);line-height:1.75}.catering-story figure{height:760px;margin:0;padding:7px;border:1px solid rgba(247,211,152,.28);border-radius:18px}.catering-story figure img{height:100%;border-radius:12px;object-fit:cover}.catering-service-grid{margin:2rem 0;display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--soft)}.catering-service-grid article{padding:1.25rem 1rem;border-bottom:1px solid var(--soft)}.catering-service-grid article:nth-child(odd){border-right:1px solid var(--soft)}.catering-service-grid h3{margin:0 0 .4rem;font-size:1.05rem}.catering-service-grid p{margin:0;color:var(--muted);font-size:.78rem;line-height:1.5}

@media(max-width:1180px){.masthead{grid-template-columns:154px minmax(0,1fr) 96px;padding-inline:.8rem}.brand{width:146px}.desktop-nav{gap:.52rem;font-size:.7rem}.desktop-nav a{letter-spacing:.045em}}
@media(max-width:1024px){.desktop-nav{display:none}.masthead{grid-template-columns:1fr auto}.brand{width:150px}.story-chapters,.catering-story{grid-template-columns:1fr}.story-chapters figure,.catering-story figure{height:600px}.branch-choice{grid-template-columns:1fr}.branch-choice:nth-child(even) figure{order:0}.detail-timeline{grid-template-columns:1fr 1fr}.award-grid{grid-template-columns:1fr 1fr}.award-grid article{border:1px solid rgba(22,74,58,.16)!important}.menu-document{grid-template-columns:1fr}}
@media(max-width:767px){.detail-hero{min-height:620px;padding:9rem 1rem 4rem;background-position:center}.detail-hero h1{font-size:clamp(3.1rem,15vw,4.5rem);line-height:.92}.detail-section{padding:5.5rem 1rem}.story-chapters figure,.catering-story figure{height:470px}.value-list{grid-template-columns:1fr}.value-list article{min-height:230px;border-right:0;border-bottom:1px solid rgba(22,74,58,.2)}.value-list article:last-child{border-bottom:0}.detail-timeline{padding:1rem 1rem 5.5rem;grid-template-columns:1fr 1fr}.detail-timeline article{min-height:170px}.detail-timeline strong{font-size:2.2rem}.detail-timeline span{font-size:.75rem}.branch-page-section{padding-inline:1rem}.branch-choice{min-height:0;display:block}.branch-choice figure{height:300px;min-height:0}.branch-choice-copy{padding:1.5rem 1rem 1.75rem}.branch-number{margin-bottom:2rem}.branch-choice h2{font-size:2.4rem}.branch-choice-actions{display:grid}.branch-choice-actions .action{width:100%}.branch-map-link{justify-content:center}.menu-page-viewer{padding:0 1rem 5.5rem}.menu-page-viewer iframe{display:none}.menu-page-viewer .menu-document-frame{min-height:240px;display:grid;place-items:center}.menu-page-viewer .menu-document-frame:after{content:"PDF";position:static;width:auto;height:auto;border:0;color:var(--panel);font-family:var(--display);font-size:4rem}.catering-service-grid{grid-template-columns:1fr}.catering-service-grid article:nth-child(odd){border-right:0}.menu-document .menu-document-frame{min-height:250px;display:grid;place-items:center}.menu-document .menu-document-frame iframe{display:none}.menu-document .menu-document-frame:after{content:"MENU";position:static;width:auto;height:auto;border:0;color:var(--panel);font-family:var(--display);font-size:3.5rem}.timeline article{min-height:135px}.timeline strong{font-size:2rem}.timeline span{font-size:.72rem}.awards .section-intro{margin-bottom:2rem}.award-grid{grid-template-columns:1fr}.award-grid article{min-height:270px}.story-copy h2{line-height:1;letter-spacing:-.015em}}

.archive-page .content-header h1{max-width:900px;font-size:clamp(3.5rem,7vw,7rem);line-height:1.2;letter-spacing:-.015em;margin-top:1rem}.archive-page .archive-description{font-size:1rem;line-height:1.7}.archive-empty{grid-column:1/-1;padding:3rem;border:1px solid var(--line);border-radius:16px;background:rgba(245,244,239,.04)}.archive-empty h2{margin:0 0 .75rem;font-size:2rem}.archive-empty p{margin:0 0 1.5rem;color:var(--muted)}

/* Vietnamese typography and heritage editorial polish · v1.2.1 */
.story-copy h2,
.kitchen-section .section-heading h2,
.catering-copy h2,
.careers .section-intro h2,
.booking-finale h2,
.detail-hero h1{line-height:1.06;letter-spacing:-.015em}

.story-values{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 86% 12%,rgba(210,163,94,.14),transparent 28%),linear-gradient(180deg,#faf7ef,#f1ebdc);color:var(--panel)}
.story-values:before{content:"";position:absolute;z-index:-1;inset:2.25rem;border:1px solid rgba(22,74,58,.12);pointer-events:none}
.story-values header{position:relative;max-width:1020px;margin-bottom:4rem;padding-left:1.5rem}
.story-values header:before{content:"";position:absolute;left:0;top:.2rem;bottom:.3rem;width:3px;background:linear-gradient(var(--red) 0 38%,var(--gold) 38% 100%)}
.story-values header h2{max-width:13ch;line-height:1.06;letter-spacing:-.012em}
.value-list{gap:1rem;border:0}
.value-list article{position:relative;min-height:350px;padding:2.25rem;border:1px solid rgba(22,74,58,.18)!important;background:linear-gradient(155deg,rgba(255,255,255,.7),rgba(244,238,222,.78));box-shadow:0 22px 50px rgba(22,74,58,.08),inset 0 0 0 5px rgba(255,255,255,.36);overflow:hidden}
.value-list article:before{content:"";position:absolute;top:0;left:2.25rem;width:54px;height:4px;background:var(--red)}
.value-list article:nth-child(2):before{background:var(--gold)}
.value-list article:after{content:"";position:absolute;right:-58px;top:-58px;width:150px;height:150px;border:1px solid rgba(22,74,58,.11);border-radius:50%;box-shadow:0 0 0 18px rgba(22,74,58,.025)}
.value-list strong{position:relative;z-index:1;align-self:flex-start;padding:.45rem .7rem;border:1px solid rgba(213,37,58,.32);border-radius:999px;color:var(--red);font-family:'Cabin',system-ui,sans-serif;font-size:.72rem;letter-spacing:.12em}
.value-list h3{position:relative;z-index:1;max-width:12ch;margin:1.5rem 0 .75rem;color:var(--panel);font-size:clamp(1.8rem,2.4vw,2.55rem);font-weight:600;line-height:1.08}
.value-list p{position:relative;z-index:1;max-width:36ch;color:#496259;font-size:.92rem;line-height:1.7}

.detail-timeline{position:relative;padding:7rem clamp(1rem,7vw,6rem) 8rem;grid-template-columns:repeat(4,minmax(0,1fr));gap:1rem;background:radial-gradient(circle at 50% 0,rgba(0,143,106,.16),transparent 35%),var(--panel)}
.timeline-heading{grid-column:1/-1;margin-bottom:2.5rem;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.65fr);gap:3rem;align-items:end}
.timeline-heading h2{margin:.4rem 0 0;font-size:clamp(3rem,5vw,5.5rem);font-weight:500;line-height:1.02;letter-spacing:-.015em}
.timeline-heading>p{max-width:48ch;margin:0;color:var(--muted);font-size:.92rem;line-height:1.7}
.detail-timeline article{position:relative;min-height:300px;padding:2rem;border:1px solid rgba(247,211,152,.46);border-radius:0;background:linear-gradient(155deg,rgba(247,211,152,.12),rgba(0,143,106,.075));box-shadow:inset 0 0 0 5px rgba(7,26,20,.9),inset 0 0 0 6px rgba(247,211,152,.12),0 22px 52px rgba(0,0,0,.2);overflow:hidden}
.detail-timeline article:before{content:"";position:absolute;left:2rem;top:5.25rem;width:42px;height:1px;background:var(--red)}
.detail-timeline article:nth-of-type(even):before{background:var(--gold)}
.detail-timeline article:after{content:"";position:absolute;right:-48px;bottom:-48px;width:130px;height:130px;border:1px solid rgba(247,211,152,.16);border-radius:50%}
.detail-timeline article i{position:absolute;top:1.4rem;right:1.6rem;color:rgba(247,211,152,.5);font-family:var(--display);font-size:1rem;font-style:normal}
.detail-timeline strong{position:relative;z-index:1;font-size:clamp(3.2rem,4.5vw,5rem);font-weight:500;line-height:1}
.detail-timeline span{position:relative;z-index:1;max-width:18ch;color:var(--off-white);font-family:var(--display);font-size:clamp(1.2rem,1.55vw,1.6rem);line-height:1.28}

#branch-directory{scroll-margin-top:8.5rem}
.branch-page-section{padding-top:6rem}
.branch-directory--locations{grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.branch-location-card{position:relative;height:680px;border:1px solid rgba(247,211,152,.3);border-radius:18px;padding:7px;background:rgba(245,244,239,.035);box-shadow:0 24px 60px rgba(0,0,0,.2);overflow:hidden}
.branch-location-card-media{position:absolute;inset:7px;display:block;overflow:hidden;border-radius:12px}
.branch-location-card-media img{width:100%;height:100%;display:block;border-radius:12px;object-fit:cover;filter:saturate(.78) brightness(.78);transition:transform .7s var(--ease),filter .5s var(--ease)}
.branch-location-card:hover .branch-location-card-media img,.branch-location-card:focus-within .branch-location-card-media img{transform:scale(1.035);filter:saturate(.9) brightness(.68)}
.branch-location-card-copy{position:absolute;inset:auto 7px 7px;padding:7rem 1.5rem 1.6rem;border-radius:0 0 12px 12px;background:linear-gradient(180deg,transparent,rgba(4,22,15,.96) 42%)}
.branch-location-number{margin:0 0 .5rem;color:var(--gold);font-family:var(--display);font-size:1.35rem}.branch-location-number span{color:var(--sage);font-family:'Cabin',sans-serif;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase}
.branch-location-card .eyebrow{margin:.3rem 0;color:var(--gold)!important;font-size:.62rem}
.branch-location-card h2{max-width:12ch;margin:.35rem 0 .6rem;font-size:clamp(1.8rem,2.55vw,2.85rem);font-weight:600;line-height:1.04;letter-spacing:-.012em}
.branch-location-description,.branch-location-card address{max-height:0;margin:0;color:#d7d4ca;font-size:.74rem;font-style:normal;line-height:1.55;opacity:0;overflow:hidden;transform:translateY(8px);transition:max-height .45s var(--ease),margin .35s var(--ease),opacity .35s var(--ease),transform .35s var(--ease)}
.branch-location-card:hover .branch-location-description,.branch-location-card:focus-within .branch-location-description{max-height:5rem;margin-bottom:.6rem;opacity:1;transform:none}
.branch-location-card:hover address,.branch-location-card:focus-within address{max-height:5rem;margin-bottom:.8rem;opacity:1;transform:none}
.branch-location-card address a{color:var(--gold)}
.branch-location-actions{display:flex;flex-wrap:wrap;gap:.45rem}
.branch-location-actions a{min-height:42px;padding:.55rem .75rem;border:1px solid rgba(247,211,152,.35);border-radius:999px;display:inline-flex;align-items:center;color:var(--off-white);font-size:.63rem;font-weight:700;text-transform:uppercase;transition:background .25s var(--ease),border-color .25s var(--ease)}
.branch-location-actions a:first-child{border-color:var(--red);background:var(--red)}
.branch-location-actions a:hover{border-color:var(--gold);background:rgba(247,211,152,.12)}

@media(max-width:1024px){
  .branch-directory--locations{grid-template-columns:1fr 1fr}.branch-location-card:last-child{grid-column:1/-1}
  .timeline-heading{grid-template-columns:1fr}.timeline-heading>p{max-width:60ch}
}
@media(max-width:767px){
  .story-copy h2,.kitchen-section .section-heading h2,.catering-copy h2,.careers .section-intro h2,.booking-finale h2,.detail-hero h1{line-height:1.1;letter-spacing:-.008em}
  .story-values:before{inset:1rem}.story-values header{margin-bottom:2.5rem;padding-left:1rem}.value-list{gap:.75rem}.value-list article{min-height:280px;padding:1.5rem}.value-list article:before{left:1.5rem}
  .detail-timeline{padding:5.5rem 1rem;grid-template-columns:1fr}.timeline-heading{margin-bottom:1.5rem;gap:1rem}.timeline-heading h2{line-height:1.06}.detail-timeline article{min-height:250px;padding:1.5rem}.detail-timeline article:before{left:1.5rem;top:4.7rem}.detail-timeline article i{right:1.25rem}.detail-timeline strong{font-size:3.5rem}.detail-timeline span{font-size:1.35rem}
  #branch-directory{scroll-margin-top:6.5rem}.branch-page-section{padding:4.5rem 1rem}.branch-directory--locations{grid-template-columns:1fr}.branch-location-card,.branch-location-card:last-child{grid-column:auto;height:560px}.branch-location-card-copy{padding:6rem 1.1rem 1.2rem}.branch-location-description,.branch-location-card address{max-height:6rem;margin-bottom:.6rem;opacity:1;transform:none}.branch-location-actions a{min-height:44px}
}

/* Lightweight menu preview and catering atelier · v1.2.1 */
.menu-preview-link{position:relative;display:block;width:100%;aspect-ratio:1600/2263;overflow:hidden;border-radius:0 0 10px 10px;background:#efe6d3;isolation:isolate}
.menu-preview-link:after{content:"";position:absolute;z-index:1;inset:0;background:linear-gradient(180deg,transparent 64%,rgba(4,18,13,.88));pointer-events:none;transition:background .35s var(--ease)}
.menu-preview-link img{width:100%;height:100%;object-fit:cover;object-position:center top;filter:saturate(.92) contrast(1.02);transition:transform .6s var(--ease),filter .4s var(--ease)}
.menu-preview-link>span{position:absolute;z-index:2;right:1.25rem;bottom:1.25rem;left:1.25rem;min-height:52px;padding:.75rem 1rem;border:1px solid rgba(247,211,152,.5);display:flex;align-items:center;justify-content:space-between;gap:1rem;background:rgba(4,22,15,.86);backdrop-filter:blur(8px);color:var(--off-white);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;transition:background .25s var(--ease),border-color .25s var(--ease)}
.menu-preview-link>span svg{color:var(--gold);transition:transform .25s var(--ease)}
.menu-preview-link:hover img,.menu-preview-link:focus-visible img{transform:scale(1.018);filter:saturate(1) contrast(1.03)}
.menu-preview-link:hover:after,.menu-preview-link:focus-visible:after{background:linear-gradient(180deg,transparent 56%,rgba(4,18,13,.94))}
.menu-preview-link:hover>span,.menu-preview-link:focus-visible>span{border-color:var(--gold);background:rgba(4,22,15,.94)}
.menu-preview-link:hover>span svg,.menu-preview-link:focus-visible>span svg{transform:translateX(4px)}
.menu-document .menu-document-frame{align-self:start}
.menu-page-viewer .menu-document-frame{max-width:820px}

.catering-detail{--catering-paper:#f3eddf;--catering-green:#0c3025}
.catering-detail .detail-hero--catering{background-position:center 58%}
.catering-detail .detail-hero--catering:after{content:"";position:absolute;z-index:-1;right:clamp(1rem,7vw,6rem);bottom:clamp(2rem,6vw,5rem);width:clamp(84px,12vw,150px);aspect-ratio:1;border:1px solid rgba(247,211,152,.38);border-radius:50%;box-shadow:0 0 0 14px rgba(247,211,152,.04),0 0 0 28px rgba(247,211,152,.025);pointer-events:none}
.catering-detail .detail-hero h1{max-width:13ch;line-height:1.02}
.catering-story{position:relative;isolation:isolate;overflow:hidden;background:radial-gradient(circle at 8% 4%,rgba(199,149,79,.13),transparent 27%),var(--panel)}
.catering-story:before{content:"";position:absolute;z-index:-1;left:clamp(1rem,7vw,6rem);bottom:3rem;width:160px;height:1px;background:linear-gradient(90deg,var(--red),var(--gold),transparent)}
.catering-story-copy{max-width:720px}
.catering-story-copy h2{max-width:11ch;line-height:1.02;letter-spacing:-.015em}
.catering-story-copy>p:not(.eyebrow){max-width:58ch;color:#c2c0b6;font-size:1rem;line-height:1.8}
.catering-signature{margin:2rem 0 0;padding-block:1.1rem;display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid rgba(247,211,152,.25)}
.catering-signature span{min-height:52px;padding:.35rem 1rem;display:flex;align-items:center;border-right:1px solid rgba(247,211,152,.2);color:var(--gold);font-family:var(--display);font-size:1.05rem;line-height:1.25}
.catering-signature span:first-child{padding-left:0}.catering-signature span:last-child{padding-right:0;border-right:0}
.catering-service-grid{margin:2rem 0 2.25rem;border:1px solid rgba(247,211,152,.23)}
.catering-service-grid article{position:relative;min-height:190px;padding:1.6rem 1.5rem 1.5rem;overflow:hidden;background:linear-gradient(145deg,rgba(247,211,152,.055),transparent);transition:background .3s var(--ease)}
.catering-service-grid article:hover{background:linear-gradient(145deg,rgba(247,211,152,.11),rgba(0,143,106,.04))}
.catering-service-grid article strong{position:absolute;right:1rem;top:.45rem;color:rgba(247,211,152,.13);font-family:var(--display);font-size:4.25rem;font-weight:500;line-height:1}
.catering-service-grid h3{position:relative;z-index:1;max-width:14ch;margin:2.8rem 0 .55rem;color:var(--off-white);font-family:var(--display);font-size:1.55rem;font-weight:600;line-height:1.05}
.catering-service-grid p{position:relative;z-index:1;max-width:34ch;color:#aaa9a1;font-size:.78rem;line-height:1.65}
.catering-story .action{min-height:50px}
.catering-story figure{position:relative;overflow:hidden;background:rgba(247,211,152,.04)}
.catering-story figure:before{content:"";position:absolute;z-index:1;inset:7px;border-radius:12px;background:linear-gradient(180deg,transparent 52%,rgba(4,18,13,.92));pointer-events:none}
.catering-story figure img{filter:saturate(.82) contrast(1.04);transition:transform .8s var(--ease),filter .5s var(--ease)}
.catering-story figure:hover img{transform:scale(1.025);filter:saturate(.95) contrast(1.03)}
.catering-story figcaption{position:absolute;z-index:2;right:clamp(1.4rem,3vw,2.5rem);bottom:clamp(1.4rem,3vw,2.5rem);left:clamp(1.4rem,3vw,2.5rem);display:grid;gap:.4rem;color:var(--off-white)}
.catering-story figcaption span{color:var(--gold);font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.catering-story figcaption strong{max-width:17ch;font-family:var(--display);font-size:clamp(1.65rem,2.5vw,2.5rem);font-weight:500;line-height:1.05}

.catering-process{position:relative;background:linear-gradient(180deg,#f6f1e7,var(--catering-paper));color:var(--catering-green);overflow:hidden}
.catering-process:before{content:"PF";position:absolute;right:-.04em;top:-.27em;color:rgba(22,74,58,.04);font-family:var(--display);font-size:clamp(13rem,28vw,27rem);font-weight:600;line-height:1;pointer-events:none}
.catering-process>header{position:relative;z-index:1;max-width:780px;margin-bottom:4rem}
.catering-process .eyebrow{color:var(--brand-green)!important}
.catering-process h2{max-width:11ch;line-height:1.02}
.catering-process>div{position:relative;z-index:1;display:grid;grid-template-columns:repeat(3,1fr);border-block:1px solid rgba(22,74,58,.24)}
.catering-process article{position:relative;min-height:300px;padding:2rem;border-right:1px solid rgba(22,74,58,.24);display:flex;flex-direction:column;justify-content:flex-end}
.catering-process article:last-child{border-right:0}
.catering-process article strong{margin-bottom:auto;color:var(--red);font-family:var(--display);font-size:2.7rem;font-weight:500}
.catering-process article:nth-child(2) strong{color:#9b6b2f}
.catering-process article:nth-child(3) strong{color:var(--brand-green)}
.catering-process article h3{max-width:15ch;margin:2rem 0 .7rem;color:var(--catering-green);font-family:var(--display);font-size:clamp(1.55rem,2vw,2rem);line-height:1.08}
.catering-process article p{max-width:36ch;margin:0;color:#4d645b;font-size:.88rem;line-height:1.7}

@media(max-width:1024px){
  .menu-document .menu-document-frame,.menu-page-viewer .menu-document-frame{max-width:760px;margin-inline:auto}
  .catering-signature{grid-template-columns:1fr}.catering-signature span{min-height:44px;padding:.7rem 0;border-right:0;border-bottom:1px solid rgba(247,211,152,.16)}.catering-signature span:last-child{border-bottom:0}
  .catering-process>div{grid-template-columns:1fr}.catering-process article{min-height:240px;border-right:0;border-bottom:1px solid rgba(22,74,58,.24)}.catering-process article:last-child{border-bottom:0}
}
@media(max-width:767px){
  .menu-page-viewer .menu-document-frame,.menu-document .menu-document-frame{min-height:0;padding:8px;display:block}.menu-page-viewer .menu-document-frame:after,.menu-document .menu-document-frame:after{content:none}.menu-preview-link>span{right:.75rem;bottom:.75rem;left:.75rem;min-height:46px;padding:.65rem .75rem;font-size:.62rem}.menu-preview-link>span svg{width:.9rem}
  .catering-detail .detail-hero--catering:after{display:none}.catering-detail .detail-hero h1{font-size:clamp(3rem,14vw,4.4rem);line-height:1.08}
  .catering-story-copy h2{font-size:clamp(2.7rem,13vw,4rem);line-height:1.08}.catering-story-copy>p:not(.eyebrow){font-size:.92rem;line-height:1.75}
  .catering-service-grid{grid-template-columns:1fr}.catering-service-grid article{min-height:175px;border-right:0!important}.catering-service-grid article strong{font-size:3.7rem}.catering-story figure{height:500px}.catering-story figcaption strong{font-size:1.75rem}
  .catering-process>header{margin-bottom:2.5rem}.catering-process h2{font-size:clamp(2.8rem,13vw,4rem);line-height:1.08}.catering-process article{min-height:230px;padding:1.5rem}.catering-process article h3{font-size:1.7rem}.catering-process:before{font-size:14rem}
}
@media(prefers-reduced-motion:reduce){
  .menu-preview-link img,.menu-preview-link>span,.menu-preview-link>span svg,.catering-service-grid article,.catering-story figure img{transition:none}
}

/* Branch navigation and in-page menu reader · v1.2.2 */
@media(min-width:1025px){
  .masthead{grid-template-columns:clamp(148px,14vw,190px) minmax(0,1fr) 100px;padding-inline:clamp(.75rem,1.4vw,1.4rem)}
  .desktop-nav{gap:clamp(.42rem,.8vw,.9rem);font-size:clamp(.82rem,.74vw,.92rem);font-weight:700;letter-spacing:.045em}
  .desktop-nav>a,.nav-item>a{min-height:60px;padding:1rem .06rem}
  .nav-item{position:relative;display:flex;align-items:center}
  .nav-item>a{display:inline-flex;align-items:center}
  .nav-submenu-toggle{width:23px;height:44px;margin-left:-.1rem;padding:0;border:0;display:grid;place-items:center;background:transparent;color:var(--off-white);cursor:pointer}
  .nav-submenu-toggle svg{width:10px;fill:none;stroke:currentColor;stroke-width:1.6;transition:transform .24s var(--ease)}
  .nav-item:hover .nav-submenu-toggle svg,.nav-item:focus-within .nav-submenu-toggle svg,.nav-item.is-open .nav-submenu-toggle svg{transform:rotate(180deg)}
  .nav-submenu{position:absolute;z-index:40;top:calc(100% - 5px);left:50%;width:250px;padding:.8rem;border:1px solid rgba(247,211,152,.38);border-radius:0 0 12px 12px;background:linear-gradient(155deg,rgba(11,51,39,.98),rgba(4,22,15,.99));box-shadow:0 22px 48px rgba(0,0,0,.34);opacity:0;visibility:hidden;transform:translate(-50%,8px);transition:opacity .2s var(--ease),transform .2s var(--ease),visibility .2s;pointer-events:none}
  .nav-item:hover .nav-submenu,.nav-item:focus-within .nav-submenu,.nav-item.is-open .nav-submenu{opacity:1;visibility:visible;transform:translate(-50%,0);pointer-events:auto}
  .nav-submenu-kicker{display:block;padding:.25rem .55rem .65rem;color:var(--gold);font-size:.6rem;letter-spacing:.13em;text-transform:uppercase}
  .desktop-nav .nav-submenu a{min-height:46px;padding:.55rem;border-top:1px solid rgba(247,211,152,.13);display:grid;grid-template-columns:28px 1fr;gap:.35rem;align-items:center;color:var(--off-white);font-size:.78rem;letter-spacing:.02em;text-transform:none;transition:background .2s var(--ease),color .2s var(--ease)}
  .desktop-nav .nav-submenu a:after{display:none}
  .desktop-nav .nav-submenu a:hover,.desktop-nav .nav-submenu a:focus-visible{background:rgba(247,211,152,.1);color:var(--gold)}
  .nav-submenu a small{color:var(--sage);font-size:.57rem;letter-spacing:.08em}
  .desktop-nav .nav-submenu .nav-submenu-all{min-height:38px;margin-top:.35rem;padding:.55rem;display:flex;justify-content:flex-end;border-top:0;color:var(--gold);font-size:.61rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}
  .nav-submenu-toggle:focus-visible,.desktop-nav a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
}

.menu-document{grid-template-columns:minmax(280px,.65fr) minmax(540px,1.35fr);align-items:center;padding:clamp(.75rem,1.4vw,1.25rem)}
.menu-document-copy{position:relative}
.menu-document-copy:after{content:"PF";position:absolute;right:1rem;bottom:-2rem;color:rgba(247,211,152,.06);font-family:var(--display);font-size:8rem;font-weight:600;line-height:1;pointer-events:none}
.menu-viewer-note{position:relative;z-index:1;margin-top:1.5rem;padding-left:2.2rem;display:inline-flex;align-items:center;color:var(--gold);font-size:.67rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.menu-viewer-note:before{content:"";position:absolute;left:0;width:1.45rem;height:1px;background:var(--red)}
.menu-document .menu-document-frame{width:100%;max-width:none}
.menu-document .menu-document-frame iframe{display:block;width:100%;height:min(74vh,790px);min-height:620px;border:0;border-radius:0 0 8px 8px;background:#f5f4ef}
.menu-page-viewer .menu-document-frame{max-width:1120px}
.menu-page-viewer iframe{display:block!important;min-height:720px}

[id^="branch-"]{scroll-margin-top:8.5rem}

@media(min-width:1025px) and (max-width:1180px){
  .masthead{grid-template-columns:145px minmax(0,1fr) 92px;padding-inline:.65rem}
  .brand{width:138px}
  .desktop-nav{gap:.38rem;font-size:.9rem;letter-spacing:.02em}
  .nav-submenu-toggle{width:18px}
}

@media(max-width:1024px){
  .menu-document{grid-template-columns:1fr}
  .menu-document-copy:after{font-size:6rem}
  .menu-document .menu-document-frame{max-width:820px}
}

@media(max-width:767px){
  .menu-document{padding:.55rem}
  .menu-document>div:first-child{padding:2rem 1.1rem 2.4rem}
  .menu-document-copy:after{right:0;bottom:-1rem;font-size:5rem}
  .menu-document .menu-document-frame iframe,.menu-page-viewer iframe{display:block!important;height:70svh;min-height:520px}
  .menu-document-frame-bar{width:100%;height:46px;padding-inline:.8rem;gap:1rem;font-size:.58rem}
  .menu-document-frame-bar span{min-width:0;white-space:nowrap}
  .menu-document-frame-bar span:last-child{margin-left:auto;text-align:right}
  [id^="branch-"]{scroll-margin-top:6.5rem}
}

@media(prefers-reduced-motion:reduce){
  .nav-submenu,.nav-submenu-toggle svg{transition:none}
}

/* Balanced masthead and award gallery · v1.2.3 */
@media(min-width:1025px){
  .masthead{grid-template-columns:clamp(138px,12.5vw,174px) minmax(0,1fr) auto;column-gap:clamp(.9rem,1.4vw,1.45rem);padding-inline:clamp(.9rem,1.55vw,1.55rem)}
  .brand{width:clamp(136px,12vw,166px)}
  .desktop-nav{width:100%;justify-self:stretch;justify-content:space-between;gap:.25rem}
  .masthead-actions{width:max-content;gap:0;justify-self:end}
  .masthead-actions .lang,.masthead-actions .lang-alt{min-width:35px;height:44px;padding:0 .25rem}
  .masthead-actions .lang-alt{position:relative;margin-left:.1rem}
  .masthead-actions .lang-alt:before{content:"";position:absolute;left:-.05rem;width:1px;height:14px;background:rgba(247,211,152,.28)}
}

.awards{padding:clamp(5.5rem,8vw,8rem) clamp(1.5rem,5vw,4rem);isolation:isolate;background:radial-gradient(circle at 92% 0,rgba(199,149,79,.12),transparent 31%),linear-gradient(145deg,#06110e 0%,#0a1914 58%,#07120f 100%);color:var(--text)}
.awards:before{top:auto;right:auto;bottom:0;left:clamp(1.5rem,5vw,4rem);width:calc(100% - clamp(3rem,10vw,8rem));height:1px;background:rgba(224,178,109,.3)}
.awards .section-intro{max-width:760px;margin-bottom:clamp(2.5rem,5vw,4.5rem)}
.awards .section-intro h2{max-width:720px;color:var(--text);font-size:clamp(3.4rem,6.4vw,6.4rem);font-weight:500;line-height:.92;letter-spacing:-.035em;text-wrap:balance}
.awards .eyebrow{color:var(--gold-light)!important}
.award-intro-copy{max-width:56ch;margin:1.35rem 0 0;color:#bfc5bf;font-size:clamp(.88rem,1.2vw,1rem);line-height:1.7}
.award-grid{display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(2,minmax(260px,auto));gap:1px;padding:1px;border:0;background:rgba(224,178,109,.25)}
.award-grid:focus-visible{outline:2px solid var(--gold-light);outline-offset:5px}
.award-grid .award-card{min-height:0;padding:0;border:0!important;border-radius:0;background:#0a1814!important;box-shadow:none;display:grid;grid-template-rows:minmax(190px,1fr) auto;justify-content:stretch;color:var(--text);overflow:hidden;transition:none}
.award-grid .award-card:before,.award-grid .award-card:after{content:none}
.award-grid .award-card:nth-child(1){grid-column:1/6;grid-row:1/3;grid-template-rows:minmax(390px,1fr) auto}
.award-grid .award-card:nth-child(2){grid-column:6/13;grid-row:1;grid-template-columns:minmax(250px,.92fr) minmax(280px,1.08fr);grid-template-rows:minmax(260px,1fr)}
.award-grid .award-card:nth-child(3){grid-column:6/9;grid-row:2}
.award-grid .award-card:nth-child(4){grid-column:9/13;grid-row:2}
.award-card-media{position:relative;min-height:0;padding:0;display:grid;place-items:center;background:radial-gradient(circle at 50% 43%,rgba(224,178,109,.14),transparent 38%),linear-gradient(155deg,#10271f,#07120f);overflow:hidden}
.award-card-media:before{content:"";position:absolute;inset:clamp(1rem,2vw,1.75rem);border:1px solid rgba(224,178,109,.2);border-radius:50%;pointer-events:none}
.award-card-media:after{content:"";position:absolute;right:0;bottom:0;left:0;height:36%;background:linear-gradient(transparent,rgba(2,9,7,.48));pointer-events:none}
.award-card-media img,.award-card-media--gambero img{position:absolute;z-index:1;inset:clamp(1.15rem,2.2vw,2rem);width:calc(100% - clamp(2.3rem,4.4vw,4rem));height:calc(100% - clamp(2.3rem,4.4vw,4rem));object-fit:contain;filter:drop-shadow(0 18px 28px rgba(0,0,0,.3));transition:transform .45s var(--ease)}
.award-card-media--plaque img{inset:1rem;width:calc(100% - 2rem);height:calc(100% - 2rem)}
.award-card-copy{position:relative;min-width:0;padding:1.35rem clamp(1.2rem,2vw,1.75rem) 1.6rem;border-top:1px solid rgba(224,178,109,.18);display:grid;grid-template-columns:auto 1fr;column-gap:1rem;align-items:start}
.award-card-copy:before{content:"";position:absolute;top:-1px;left:clamp(1.2rem,2vw,1.75rem);width:56px;height:2px;background:var(--red)}
.award-card:nth-child(even) .award-card-copy:before{background:var(--gold)}
.award-grid .award-card strong{grid-column:1;margin:.12rem 0 0;padding:0;border:0;border-radius:0;color:var(--gold-light);font-family:Manrope,system-ui,sans-serif;font-size:.67rem;font-weight:700;letter-spacing:.12em;line-height:1.4}
.award-grid .award-card h3{grid-column:2;margin:0;color:var(--text);font-family:var(--display);font-size:clamp(1.55rem,2.35vw,2.45rem);font-weight:500;line-height:1;letter-spacing:-.018em}
.award-grid .award-card p{grid-column:2;margin:.65rem 0 0;color:#aeb9b2;font-size:.76rem;line-height:1.6}
.award-grid .award-card:nth-child(2) .award-card-copy{border-top:0;border-left:1px solid rgba(224,178,109,.18);align-content:end}
.award-grid .award-card:nth-child(2) .award-card-copy:before{top:auto;right:auto;bottom:1.6rem;left:-1px;width:2px;height:56px}

@media(min-width:1025px) and (max-width:1180px){
  .masthead{grid-template-columns:136px minmax(0,1fr) auto;column-gap:.75rem;padding-inline:.8rem}
  .brand{width:134px}
  .desktop-nav{gap:.15rem;font-size:.86rem;letter-spacing:.012em}
  .nav-submenu-toggle{width:17px}
  .masthead-actions .lang,.masthead-actions .lang-alt{min-width:32px;padding-inline:.15rem}
  .award-grid{grid-template-rows:repeat(2,minmax(250px,auto))}
  .award-grid .award-card:nth-child(1){grid-template-rows:minmax(360px,1fr) auto}
  .award-grid .award-card:nth-child(2){grid-template-columns:minmax(220px,.88fr) minmax(260px,1.12fr)}
}

@media(max-width:1024px){
  .award-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:auto}
  .award-grid .award-card,.award-grid .award-card:nth-child(1),.award-grid .award-card:nth-child(2),.award-grid .award-card:nth-child(3),.award-grid .award-card:nth-child(4){grid-column:auto;grid-row:auto;grid-template-columns:1fr;grid-template-rows:240px auto}
  .award-grid .award-card:nth-child(1){grid-column:1/-1;grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr);grid-template-rows:330px}
  .award-grid .award-card:nth-child(1) .award-card-copy,.award-grid .award-card:nth-child(2) .award-card-copy{border-top:0;border-left:1px solid rgba(224,178,109,.18);align-content:end}
  .award-grid .award-card:nth-child(1) .award-card-copy:before,.award-grid .award-card:nth-child(2) .award-card-copy:before{top:auto;bottom:1.6rem;left:-1px;width:2px;height:56px}
}

@media(max-width:767px){
  .awards{padding:4.75rem 1rem 5rem}
  .awards:before{left:1rem;width:calc(100% - 2rem)}
  .awards .section-intro{margin-bottom:2.25rem}
  .awards .section-intro h2{font-size:clamp(3rem,15vw,4.5rem);line-height:.9}
  .award-intro-copy{font-size:.88rem;line-height:1.65}
  .award-grid{display:flex;align-items:stretch;gap:.85rem;overflow-x:auto;overflow-y:hidden;padding:0 0 .35rem;background:transparent;scroll-snap-type:x mandatory;scrollbar-width:none;overscroll-behavior-inline:contain}
  .award-grid::-webkit-scrollbar{display:none}
  .award-grid .award-card,.award-grid .award-card:nth-child(1),.award-grid .award-card:nth-child(2),.award-grid .award-card:nth-child(3),.award-grid .award-card:nth-child(4){flex:0 0 82vw;width:82vw;min-width:0;min-height:0;grid-template-columns:minmax(0,1fr);grid-template-rows:220px auto;scroll-snap-align:start}
  .award-card-copy,.award-grid .award-card:nth-child(1) .award-card-copy,.award-grid .award-card:nth-child(2) .award-card-copy{min-height:0;padding:1.35rem 1.2rem 1.5rem;border-top:1px solid rgba(224,178,109,.18);border-left:0;align-content:start}
  .award-card-copy:before,.award-grid .award-card:nth-child(1) .award-card-copy:before,.award-grid .award-card:nth-child(2) .award-card-copy:before{top:-1px;bottom:auto;left:1.2rem;width:52px;height:2px}
  .award-grid .award-card h3{font-size:1.85rem}
}

@media(prefers-reduced-motion:reduce){
  .award-grid .award-card,.award-card-media img{transition:none}
}

/* Compact homepage and Catering page · v1.3.0 */
.section-action{margin-top:2rem;display:flex;justify-content:center}
.story-preview .action{margin-top:.25rem}
.catering-preview .catering-copy>p:not(.eyebrow){margin-bottom:1.75rem}

.catering-detail section:not(.catering-process){padding:clamp(4rem,7vw,7rem) clamp(1rem,7vw,6rem)}
.catering-detail section header h2,.catering-intro h2,.quote-intro h2{margin:.35rem 0 1rem;font-family:var(--display);font-size:clamp(2.65rem,5vw,5.2rem);font-weight:500;line-height:1.02;letter-spacing:-.025em;text-wrap:balance}
.catering-detail section header{max-width:920px;margin-bottom:2.5rem}
.catering-hero-actions{max-width:900px;margin-top:2rem;display:flex;align-items:center;gap:1.25rem}
.catering-hero-actions>p{max-width:620px;margin:0;padding-left:1.25rem;border-left:1px solid rgba(247,211,152,.36);display:grid;gap:.35rem;color:#dce1dd;font-size:.78rem;line-height:1.45}
.catering-hero-actions>p strong{color:var(--gold-light);font-size:.84rem}

.catering-intro{display:grid;grid-template-columns:minmax(0,1fr) minmax(360px,.82fr);gap:clamp(2rem,6vw,6rem);align-items:center;background:var(--panel)}
.catering-intro-copy>p:not(.eyebrow),.chef-note>p:last-child{max-width:66ch;color:var(--muted);font-size:.96rem;line-height:1.75}
.chef-note{margin-top:2rem;padding:1.5rem;border:1px solid rgba(247,211,152,.24);border-radius:14px;background:rgba(244,239,228,.035)}
.chef-note .eyebrow{margin-bottom:.75rem}
.chef-note>p:last-child{margin:0;font-size:.88rem}
.catering-intro figure{height:620px;margin:0;padding:7px;border:1px solid rgba(247,211,152,.28);border-radius:18px;overflow:hidden}
.catering-intro figure img{width:100%;height:100%;border-radius:12px;object-fit:cover;filter:saturate(.78)}

.catering-collaborations{background:var(--deep)}
.name-strip{display:flex;flex-wrap:wrap;border-top:1px solid rgba(247,211,152,.22);border-left:1px solid rgba(247,211,152,.22)}
.name-strip span{min-height:76px;padding:1rem 1.35rem;border-right:1px solid rgba(247,211,152,.22);border-bottom:1px solid rgba(247,211,152,.22);display:flex;flex:1 1 240px;align-items:center;justify-content:center;color:var(--off-white);font-family:var(--display);font-size:1.05rem;text-align:center}

.catering-clients{background:var(--off-white);color:var(--panel)}
.catering-clients .eyebrow,.catering-formats .eyebrow,.catering-gallery .eyebrow{color:var(--brand-green)}
.client-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));border-top:1px solid rgba(22,74,58,.2);border-left:1px solid rgba(22,74,58,.2)}
.client-grid span{min-height:104px;padding:1rem;border-right:1px solid rgba(22,74,58,.2);border-bottom:1px solid rgba(22,74,58,.2);display:grid;place-items:center;color:#264b3e;font-size:.8rem;font-weight:700;line-height:1.35;text-align:center}

.catering-testimonials{background:radial-gradient(circle at 90% 10%,rgba(0,143,106,.18),transparent 34%),var(--panel)}
.catering-testimonials>header{position:relative;padding-right:9rem}
.swipe-hint{position:absolute;right:0;bottom:.4rem;margin:0;color:var(--gold);font-size:.68rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase}
.testimonial-track{display:flex;gap:1rem;overflow-x:auto;padding:0 0 1rem;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--gold) rgba(247,211,152,.12);overscroll-behavior-inline:contain}
.testimonial-track article{min-width:min(46vw,610px);min-height:320px;padding:2rem;border:1px solid rgba(247,211,152,.24);border-radius:16px;background:linear-gradient(145deg,rgba(244,239,228,.06),rgba(244,239,228,.02));display:flex;flex-direction:column;justify-content:space-between;scroll-snap-align:start}
.testimonial-track blockquote{margin:0;color:var(--off-white);font-family:var(--display);font-size:clamp(1.25rem,2vw,1.8rem);line-height:1.4}
.testimonial-track footer{margin-top:2rem;display:grid;gap:.3rem}
.testimonial-track footer strong{color:var(--gold-light);font-size:.78rem;letter-spacing:.04em;text-transform:uppercase}
.testimonial-track footer span{color:var(--muted);font-size:.72rem;line-height:1.45}

.catering-formats{background:var(--off-white);color:var(--panel)}
.format-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));border-top:1px solid rgba(22,74,58,.22);border-left:1px solid rgba(22,74,58,.22)}
.format-grid article{min-height:360px;padding:1.6rem;border-right:1px solid rgba(22,74,58,.22);border-bottom:1px solid rgba(22,74,58,.22);display:flex;flex-direction:column}
.format-grid article>strong{color:var(--red);font-family:var(--display);font-size:2.5rem;font-weight:500}
.format-grid h3{margin:auto 0 .75rem;font-family:var(--display);font-size:1.75rem;line-height:1.08}
.format-grid p{min-height:7em;margin:0;color:#4d645b;font-size:.82rem;line-height:1.65}
.format-grid a{min-height:44px;margin-top:1rem;display:flex;align-items:center;gap:.45rem;color:var(--brand-green);font-size:.68rem;font-weight:700;text-transform:uppercase}
.format-grid a svg{width:1rem}

.catering-capabilities{padding:0!important;display:grid;grid-template-columns:1fr 1fr;background:var(--deep)}
.catering-capabilities>div{padding:clamp(4rem,7vw,7rem) clamp(1rem,5vw,5rem)}
.live-stations{border-right:1px solid rgba(247,211,152,.18)}
.live-stations>div{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid rgba(247,211,152,.2);border-left:1px solid rgba(247,211,152,.2)}
.live-stations article{min-height:210px;padding:1.25rem;border-right:1px solid rgba(247,211,152,.2);border-bottom:1px solid rgba(247,211,152,.2)}
.live-stations article strong{color:var(--gold);font-family:var(--display);font-size:1.65rem}
.live-stations h3,.event-services h3{margin:2rem 0 .45rem;font-family:var(--display);font-size:1.25rem;line-height:1.15}
.live-stations p,.event-services p{margin:0;color:var(--muted);font-size:.77rem;line-height:1.55}
.event-services{background:rgba(244,239,228,.025)}
.event-services>div{display:grid;grid-template-columns:1fr 1fr;gap:0 1.25rem}
.event-services article{padding:1rem 0;border-top:1px solid rgba(247,211,152,.18)}
.event-services h3{margin:0 0 .35rem;font-size:1.05rem}
.event-services .action{margin-top:1.5rem}

.catering-gallery{background:var(--off-white);color:var(--panel)}
.catering-gallery>div{display:grid;grid-template-columns:1.2fr .8fr .8fr 1.2fr;gap:.75rem}
.catering-gallery figure{height:440px;margin:0;position:relative;overflow:hidden;border-radius:12px;background:#d9d2c3}
.catering-gallery figure:nth-child(2),.catering-gallery figure:nth-child(3){height:360px;align-self:end}
.catering-gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.8);transition:transform .55s var(--ease),filter .35s var(--ease)}
.catering-gallery figure:hover img{transform:scale(1.025);filter:saturate(.95)}
.catering-gallery figcaption{position:absolute;right:.75rem;bottom:.75rem;left:.75rem;padding:.65rem .75rem;background:rgba(4,22,15,.8);color:var(--off-white);font-size:.68rem;line-height:1.4}

.compact-process{padding:clamp(4rem,7vw,7rem) clamp(1rem,7vw,6rem)}
.compact-process article{min-height:270px}

.catering-quote{scroll-margin-top:2rem;display:grid;grid-template-columns:minmax(300px,.72fr) minmax(0,1.28fr);gap:clamp(2rem,6vw,6rem);background:radial-gradient(circle at 10% 15%,rgba(0,143,106,.2),transparent 34%),var(--panel)}
.quote-intro{align-self:start;position:sticky;top:2rem}
.quote-intro>p:not(.eyebrow){max-width:52ch;color:var(--muted);font-size:.92rem;line-height:1.75}
.minimum-spend{margin-top:2rem;padding:1.25rem;border:1px solid rgba(247,211,152,.3);border-radius:12px;display:grid;gap:.5rem;background:rgba(247,211,152,.05)}
.minimum-spend strong{color:var(--gold-light);font-size:.9rem;line-height:1.45}
.minimum-spend span{color:var(--muted);font-size:.76rem;line-height:1.5}
.catering-quote-form{min-width:0}
.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-field{min-width:0;display:grid;align-content:start;gap:.45rem}
.form-field--wide,.form-error-summary{grid-column:1/-1}
.form-field label,.form-field legend{color:var(--off-white);font-size:.74rem;font-weight:700;line-height:1.4}
.form-field label>span{color:var(--gold)}
.form-field input,.form-field select,.form-field textarea{width:100%;min-height:50px;border:1px solid rgba(247,211,152,.28);border-radius:9px;padding:.75rem .85rem;background:rgba(4,22,15,.72);color:var(--off-white);font:inherit;font-size:1rem;color-scheme:dark;transition:border-color .2s var(--ease),box-shadow .2s var(--ease)}
.form-field textarea{min-height:140px;resize:vertical;line-height:1.5}
.form-field input:focus,.form-field select:focus,.form-field textarea:focus{outline:0;border-color:var(--gold);box-shadow:0 0 0 3px rgba(210,163,94,.2)}
.form-field [aria-invalid="true"]{border-color:#ff9e8f}
.service-options{margin:0;padding:0;border:0}
.service-options>div{display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
.service-options label{min-height:48px;padding:.55rem .75rem;border:1px solid rgba(247,211,152,.24);border-radius:9px;display:flex;align-items:center;gap:.65rem;background:rgba(4,22,15,.45);cursor:pointer}
.service-options input{width:20px;height:20px;min-height:0;accent-color:var(--gold)}
.field-error{margin:0;color:#ffb4a8;font-size:.72rem;line-height:1.4}
.form-error-summary{margin:0 0 1rem;padding:1rem 1.2rem;border:1px solid rgba(255,158,143,.55);border-radius:10px;background:rgba(126,35,25,.16)}
.form-error-summary h3{margin:0 0 .5rem;font-size:1rem}
.form-error-summary ul{margin:0;padding-left:1.2rem}
.form-error-summary a{color:#ffd0c8;font-size:.76rem;line-height:1.6;text-decoration:underline}
.form-success{grid-column:2;margin-bottom:1.25rem;padding:1.25rem;border:1px solid rgba(151,205,166,.45);border-radius:10px;background:rgba(77,145,95,.15)}
.form-success strong{color:#c8ebd1;font-size:1.1rem}
.form-success p{margin:.35rem 0 0;color:#d8e5dc;line-height:1.55}
.form-submit{margin-top:1.25rem;display:flex;align-items:center;gap:1rem}
.form-submit p{max-width:38ch;margin:0;color:var(--muted);font-size:.7rem;line-height:1.5}
.form-submit button:disabled{cursor:wait;opacity:.62;filter:saturate(.55)}
.form-honeypot{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:1024px){
  .catering-intro{grid-template-columns:1fr}.catering-intro figure{height:540px}
  .client-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .format-grid{grid-template-columns:1fr 1fr}.format-grid article{min-height:310px}
  .catering-capabilities{grid-template-columns:1fr}.live-stations{border-right:0;border-bottom:1px solid rgba(247,211,152,.18)}
  .catering-gallery>div{grid-template-columns:1fr 1fr}.catering-gallery figure,.catering-gallery figure:nth-child(2),.catering-gallery figure:nth-child(3){height:360px}
  .catering-quote{grid-template-columns:1fr}.quote-intro{position:static}.form-success{grid-column:1}
}

@media(max-width:767px){
  .section-action{justify-content:stretch}.section-action .action{width:100%}
  .catering-detail section:not(.catering-process){padding:3.75rem 1rem}
  .catering-detail section header h2,.catering-intro h2,.quote-intro h2{font-size:clamp(2.5rem,12vw,3.6rem);line-height:1.05}
  .catering-detail section header{margin-bottom:1.75rem}
  .catering-hero-actions{align-items:stretch;flex-direction:column}.catering-hero-actions .action{width:100%}.catering-hero-actions>p{padding:1rem 0 0;border-top:1px solid rgba(247,211,152,.36);border-left:0}
  .catering-intro figure{height:420px}.chef-note{padding:1.1rem}
  .catering-testimonials>header{padding-right:0}.swipe-hint{position:static;margin-top:1rem}.testimonial-track article{min-width:86vw;min-height:360px;padding:1.35rem}.testimonial-track blockquote{font-size:1.3rem}
  .format-grid{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.format-grid::-webkit-scrollbar{display:none}.format-grid article{min-width:82vw;min-height:340px;scroll-snap-align:start}.format-grid p{min-height:0}
  .catering-capabilities>div{padding:3.75rem 1rem}.live-stations>div,.event-services>div{grid-template-columns:1fr}.live-stations article{min-height:170px}.event-services{padding-top:0!important}
  .catering-gallery>div{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none}.catering-gallery>div::-webkit-scrollbar{display:none}.catering-gallery figure,.catering-gallery figure:nth-child(2),.catering-gallery figure:nth-child(3){min-width:82vw;height:360px;scroll-snap-align:start}
  .compact-process{padding:3.75rem 1rem}.compact-process article{min-height:220px}
  .form-grid{grid-template-columns:1fr}.form-field--wide,.form-error-summary{grid-column:auto}.service-options>div{grid-template-columns:1fr}.form-submit{align-items:stretch;flex-direction:column}.form-submit .action{width:100%}
}

@media(prefers-reduced-motion:reduce){
  .testimonial-track,.format-grid,.name-strip,.client-grid,.catering-gallery>div{scroll-behavior:auto}
  .catering-gallery img{transition:none}
}


/* Premium catering editorial redesign · v1.3.5 */
.catering-detail{
  --catering-canvas:#06110e;
  --catering-surface:#0a1b16;
  --catering-surface-2:#0d231c;
  --catering-line:rgba(224,178,109,.22);
  --catering-copy:#b9c2bc;
  background:var(--catering-canvas);
  color:var(--text)
}
.catering-detail .detail-hero--catering{
  min-height:min(880px,100dvh);
  padding:clamp(10rem,16vw,13rem) clamp(1.25rem,7vw,6rem) clamp(4.5rem,8vw,7rem);
  border-bottom:1px solid var(--catering-line);
  background-position:center 48%
}
.catering-detail .detail-hero--catering:before{
  background:linear-gradient(90deg,rgba(3,12,9,.97) 0%,rgba(3,12,9,.84) 38%,rgba(3,12,9,.22) 72%),linear-gradient(0deg,rgba(3,12,9,.82),transparent 58%)
}
.catering-detail .detail-hero--catering:after{right:clamp(1.25rem,7vw,6rem);bottom:clamp(2rem,5vw,4rem);opacity:.72}
.catering-detail .detail-hero>div{max-width:1120px}
.catering-detail .detail-hero h1{max-width:11ch;margin:1.1rem 0 1.35rem;font-size:clamp(4.6rem,7.6vw,8rem);font-weight:500;line-height:1.2;letter-spacing:-.015em}
.catering-detail .detail-hero>div>p{max-width:66ch;color:#d7ddd8;font-size:clamp(.98rem,1.35vw,1.16rem);line-height:1.65}
.catering-hero-actions{max-width:1000px;margin-top:2.25rem;gap:1.6rem}
.catering-hero-actions>p{padding-left:1.6rem;border-left-color:var(--catering-line);font-size:.8rem}
.catering-hero-actions>p strong{font-size:.88rem}

.catering-detail section:not(.catering-process){padding:clamp(5.75rem,8vw,8rem) clamp(1.25rem,7vw,6rem)}
.catering-detail section header{max-width:880px;margin-bottom:clamp(2.75rem,5vw,4.5rem)}
.catering-detail section header h2,.catering-intro h2,.quote-intro h2{
  margin:1rem 0 1.15rem;
  color:var(--text);
  font-size:clamp(3.25rem,5.9vw,6.25rem);
  font-weight:500;
  line-height:1.2;
  letter-spacing:-.015em;
  text-wrap:balance
}

.catering-intro{
  min-height:820px;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:clamp(2rem,5vw,5rem);
  align-items:center;
  background:radial-gradient(circle at 0 0,rgba(0,143,106,.14),transparent 34%),var(--catering-surface)
}
.catering-intro-copy{grid-column:1/8}
.catering-intro-copy>p:not(.eyebrow){max-width:62ch;color:var(--catering-copy);font-size:1rem;line-height:1.8}
.chef-note{
  max-width:62ch;
  margin-top:2.25rem;
  padding:.25rem 0 .25rem 1.5rem;
  border:0;
  border-left:2px solid var(--red);
  border-radius:0;
  background:transparent
}
.chef-note .eyebrow{margin-bottom:.85rem;color:var(--gold-light)}
.chef-note>p:last-child{color:#aeb9b2;font-size:.9rem;line-height:1.75}
.catering-intro figure{
  grid-column:8/13;
  height:min(680px,66vw);
  margin:0;
  padding:0;
  border:1px solid var(--catering-line);
  border-radius:4px;
  background:#040b09
}
.catering-intro figure img{height:100%;border-radius:3px;object-fit:cover;filter:saturate(.82) contrast(1.04)}

.catering-video-showcase{border-top:1px solid var(--catering-line);background:var(--catering-canvas);color:var(--text)}
.catering-video-showcase>header{max-width:900px}
.catering-video-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.catering-video-grid:has(> figure:only-child){grid-template-columns:minmax(0,760px);justify-content:center}
.catering-video-grid figure{margin:0;min-width:0;border:1px solid var(--catering-line);background:var(--catering-surface)}
.catering-video-grid video{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;background:#030806}
.catering-video-grid figcaption{padding:1rem 1.1rem;color:var(--catering-copy);font-family:var(--display);font-size:1.25rem;line-height:1.25;text-align:center}

.catering-collaborations,.catering-clients{
  display:grid;
  grid-template-columns:minmax(340px,5fr) minmax(0,7fr);
  gap:clamp(2.5rem,7vw,7rem);
  align-items:start;
  background:var(--catering-canvas);
  color:var(--text)
}
.catering-collaborations{border-top:1px solid var(--catering-line)}
.catering-clients{border-top:1px solid rgba(224,178,109,.14);background:var(--catering-surface)}
.catering-collaborations>header,.catering-clients>header{position:sticky;top:2rem;margin:0}
.catering-detail .catering-collaborations header h2,.catering-detail .catering-clients header h2{max-width:100%;font-size:clamp(2.6rem,3.8vw,4.5rem)}
.catering-clients .eyebrow{color:var(--gold)!important}
.name-strip,.client-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  overflow:visible;
  min-width:0;
  border:0;
  background:transparent
}
.name-strip span,.client-grid span{
  min-width:0;
  overflow-wrap:anywhere;
  min-height:104px;
  padding:1.25rem 1rem;
  border:0;
  border-top:1px solid var(--catering-line);
  display:flex;
  align-items:center;
  justify-content:flex-start;
  color:var(--text);
  font-family:var(--display);
  font-size:clamp(1rem,1.4vw,1.28rem);
  font-weight:500;
  line-height:1.25;
  text-align:left
}
.name-strip span:nth-child(odd),.client-grid span:nth-child(odd){padding-left:0}
.name-strip span:nth-child(even),.client-grid span:nth-child(even){padding-right:0;border-left:1px solid rgba(224,178,109,.12);padding-left:1.5rem}
.client-grid span{min-height:96px;color:#d8ded9;font-family:Manrope,system-ui,sans-serif;font-size:.8rem;font-weight:600;line-height:1.45}

.catering-testimonials{
  border-top:1px solid rgba(224,178,109,.16);
  background:radial-gradient(circle at 92% 0,rgba(199,149,79,.1),transparent 30%),var(--catering-canvas)
}
.catering-testimonials>header{max-width:940px;padding-right:0}
.swipe-hint{display:none}
.testimonial-track{gap:1px;padding:1px;background:var(--catering-line);scrollbar-color:var(--gold) rgba(224,178,109,.08)}
.testimonial-track article{
  min-width:min(39vw,520px);
  min-height:390px;
  padding:clamp(1.75rem,3vw,2.75rem);
  border:0;
  border-radius:0;
  background:var(--catering-surface);
  justify-content:space-between
}
.testimonial-track article:first-child{min-width:min(54vw,700px);background:var(--catering-surface-2)}
.testimonial-track blockquote{max-width:33ch;color:var(--text);font-size:clamp(1.35rem,2.25vw,2.2rem);line-height:1.35}
.testimonial-track footer{padding-top:1.5rem;border-top:1px solid rgba(224,178,109,.18)}
.testimonial-track footer strong{color:var(--gold-light);font-size:.72rem}
.testimonial-track footer span{max-width:48ch;color:#9ea9a2;font-size:.72rem;line-height:1.55}

.catering-formats{border-top:1px solid rgba(224,178,109,.16);background:var(--catering-surface);color:var(--text)}
.catering-formats .eyebrow,.catering-gallery .eyebrow{color:var(--gold)!important}
.format-grid{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  gap:1px;
  border:0;
  padding:1px;
  background:var(--catering-line)
}
.format-grid article{
  min-height:290px;
  padding:clamp(1.5rem,3vw,2.5rem);
  border:0;
  background:var(--catering-canvas)
}
.format-grid article:nth-child(1),.format-grid article:nth-child(4){grid-column:span 7;background:#0b2019}
.format-grid article:nth-child(2),.format-grid article:nth-child(3){grid-column:span 5}
.format-grid article>strong{display:none}
.format-grid h3{max-width:17ch;margin:0 0 auto;color:var(--text);font-size:clamp(1.8rem,3vw,3.15rem);font-weight:500;line-height:1}
.format-grid p{max-width:48ch;min-height:0;margin:2rem 0 0;color:var(--catering-copy);font-size:.84rem;line-height:1.7}
.format-grid a{width:max-content;margin-top:1.5rem;color:var(--gold-light);font-size:.65rem}
.format-grid a:focus-visible{outline-color:var(--gold-light)}

.catering-capabilities{
  grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);
  border-top:1px solid var(--catering-line);
  background:var(--catering-canvas)
}
.catering-capabilities>div{padding:clamp(5.75rem,8vw,8rem) clamp(1.25rem,5vw,5rem)}
.catering-capabilities header h2{font-size:clamp(3.2rem,5vw,5.6rem)}
.live-stations{border-right:1px solid var(--catering-line)}
.live-stations>div{border:0;display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--catering-line)}
.live-stations article{
  min-height:230px;
  padding:1.65rem;
  border:0;
  background:var(--catering-canvas)
}
.live-stations article strong{color:var(--gold-light);font-size:1.35rem}
.live-stations h3{margin:auto 0 .5rem;color:var(--text);font-size:1.45rem}
.live-stations p,.event-services p{color:#aeb8b2;font-size:.78rem;line-height:1.65}
.event-services{background:var(--catering-surface-2)}
.event-services>div{grid-template-columns:1fr 1fr;gap:0 1.5rem}
.event-services article{min-height:118px;padding:1.25rem 0;border-top:1px solid var(--catering-line)}
.event-services h3{color:var(--text);font-size:1.15rem}
.event-services .action{margin-top:2rem}

.catering-gallery{border-top:1px solid rgba(224,178,109,.16);background:var(--catering-canvas);color:var(--text)}
.catering-gallery>header{max-width:940px}
.catering-gallery>div{
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:330px 370px;
  gap:1rem
}
.catering-gallery figure{
  height:auto!important;
  margin:0;
  border-radius:4px;
  display:grid;
  grid-template-rows:minmax(0,1fr) auto;
  align-self:stretch!important;
  overflow:hidden;
  background:var(--catering-surface)
}
.catering-gallery figure:nth-child(1){grid-column:1/6;grid-row:1/3}
.catering-gallery figure:nth-child(2){grid-column:6/13;grid-row:1}
.catering-gallery figure:nth-child(3){grid-column:6/10;grid-row:2}
.catering-gallery figure:nth-child(4){grid-column:10/13;grid-row:2}
.catering-gallery img{min-height:0;object-fit:cover;filter:saturate(.84) contrast(1.03)}
.catering-gallery figure:nth-child(1) img{object-position:60% center}
.catering-gallery figcaption{
  position:static;
  padding:1rem 1.1rem;
  border-top:1px solid var(--catering-line);
  background:var(--catering-surface);
  color:#c4cdc7;
  font-size:.7rem;
  line-height:1.45
}

.catering-process.compact-process{
  padding:clamp(5.75rem,8vw,8rem) clamp(1.25rem,7vw,6rem);
  border-top:1px solid rgba(224,178,109,.16);
  background:var(--catering-surface);
  color:var(--text)
}
.catering-process:before{content:none}
.catering-process>header{max-width:780px;margin-bottom:clamp(2.75rem,5vw,4.5rem)}
.catering-process .eyebrow{color:var(--gold)!important}
.catering-process h2{color:var(--text);font-size:clamp(3.25rem,5.9vw,6.25rem);letter-spacing:-.035em}
.catering-process>div{border-block:1px solid var(--catering-line)}
.catering-process article{min-height:320px;padding:2rem;border-right:1px solid var(--catering-line)}
.catering-process article strong,.catering-process article:nth-child(2) strong,.catering-process article:nth-child(3) strong{color:var(--gold-light);font-size:2.2rem}
.catering-process article h3{color:var(--text);font-size:clamp(1.6rem,2vw,2.1rem);font-weight:500}
.catering-process article p{color:var(--catering-copy);font-size:.86rem}

.catering-quote{
  grid-template-columns:minmax(300px,.68fr) minmax(0,1.32fr);
  border-top:1px solid var(--catering-line);
  background:radial-gradient(circle at 0 0,rgba(0,143,106,.13),transparent 32%),var(--catering-canvas)
}
.quote-intro{top:2rem}
.quote-intro>p:not(.eyebrow){color:var(--catering-copy);font-size:.92rem;line-height:1.8}
.minimum-spend{
  margin-top:2.25rem;
  padding:.25rem 0 .25rem 1.35rem;
  border:0;
  border-left:2px solid var(--red);
  border-radius:0;
  background:transparent
}
.minimum-spend strong{color:var(--gold-light)}
.catering-quote-form{
  padding:clamp(1.4rem,3.5vw,3rem);
  border:1px solid var(--catering-line);
  border-radius:4px;
  background:var(--catering-surface)
}
.form-grid{gap:1.15rem}
.form-field label,.form-field legend{font-size:.72rem}
.form-field input,.form-field select,.form-field textarea{
  min-height:54px;
  border-color:rgba(224,178,109,.26);
  border-radius:4px;
  background:#06110e
}
.service-options label{border-radius:4px;background:#071611}
.form-submit{padding-top:.5rem}

@media(min-width:768px) and (max-height:760px){
  .catering-detail .detail-hero--catering{min-height:100dvh;padding-top:7rem;padding-bottom:2rem}
  .catering-detail .detail-hero h1{font-size:clamp(4rem,6vw,5rem);line-height:1.2}
  .catering-detail .detail-hero>div>p{font-size:.92rem;line-height:1.5}
  .catering-hero-actions{margin-top:1.25rem}
}

@media(max-width:1024px){
  .catering-intro{min-height:0;grid-template-columns:1fr}
  .catering-intro-copy,.catering-intro figure{grid-column:auto}
  .catering-intro figure{height:560px}
  .catering-video-grid{grid-template-columns:1fr}
  .catering-collaborations,.catering-clients{grid-template-columns:1fr;gap:2.5rem}
  .catering-collaborations>header,.catering-clients>header{position:static}
  .catering-capabilities{grid-template-columns:1fr}
  .live-stations{border-right:0;border-bottom:1px solid var(--catering-line)}
  .catering-gallery>div{grid-template-rows:420px 320px 320px}
  .catering-gallery figure:nth-child(1){grid-column:1/8;grid-row:1/2}
  .catering-gallery figure:nth-child(2){grid-column:8/13;grid-row:1/2}
  .catering-gallery figure:nth-child(3){grid-column:1/7;grid-row:2/4}
  .catering-gallery figure:nth-child(4){grid-column:7/13;grid-row:2/4}
  .catering-quote{grid-template-columns:1fr}
}

@media(max-width:767px){
  .catering-detail .detail-hero--catering{min-height:720px;padding:8.5rem 1rem 3.5rem;background-position:66% center}
  .catering-detail .detail-hero h1{font-size:clamp(3.25rem,15vw,4.65rem);line-height:1.2}
  .catering-detail .detail-hero>div>p{font-size:.92rem;line-height:1.6}
  .catering-hero-actions{gap:1.1rem}
  .catering-detail section:not(.catering-process){padding:4.75rem 1rem}
  .catering-detail section header h2,.catering-intro h2,.quote-intro h2,.catering-process h2{font-size:clamp(2.8rem,12vw,4rem);line-height:1.2}
  .catering-detail section header{margin-bottom:2.25rem}
  .catering-intro figure{height:460px}
  .chef-note{padding-left:1.15rem}
  .name-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}
  .name-strip span,.client-grid span{min-height:84px;padding:1rem 0;border-left:0!important}
  .client-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1rem}
  .client-grid span{font-size:.72rem}
  .testimonial-track article,.testimonial-track article:first-child{min-width:88vw;min-height:420px;padding:1.5rem}
  .testimonial-track blockquote{font-size:1.35rem}
  .format-grid{display:grid;grid-template-columns:1fr;gap:1px;overflow:visible;padding:1px}
  .format-grid article,.format-grid article:nth-child(1),.format-grid article:nth-child(2),.format-grid article:nth-child(3),.format-grid article:nth-child(4){grid-column:auto;min-width:0;min-height:300px}
  .format-grid h3{font-size:2.2rem}
  .catering-capabilities>div{padding:4.75rem 1rem}
  .live-stations>div,.event-services>div{grid-template-columns:1fr}
  .live-stations article{min-height:190px}
  .event-services{padding-top:4.75rem!important}
  .catering-gallery>div{display:grid;grid-template-columns:1fr;grid-template-rows:none;gap:1rem;overflow:visible}
  .catering-gallery figure,.catering-gallery figure:nth-child(1),.catering-gallery figure:nth-child(2),.catering-gallery figure:nth-child(3),.catering-gallery figure:nth-child(4){grid-column:auto;grid-row:auto;min-width:0;height:380px!important}
  .catering-gallery figure:nth-child(4){height:300px!important}
  .catering-process.compact-process{padding:4.75rem 1rem}
  .catering-process>div{grid-template-columns:1fr}
  .catering-process article{min-height:240px;border-right:0;border-bottom:1px solid var(--catering-line)}
  .catering-process article:last-child{border-bottom:0}
  .catering-quote-form{padding:1.15rem}
}

@media(prefers-reduced-motion:reduce){
  .catering-gallery img{transition:none}
}

/* Our Story heritage editorial redesign · v1.3.6 */
.story-detail{
  --story-canvas:#06110e;
  --story-surface:#0a1b16;
  --story-surface-2:#0d241c;
  --story-ink:#f1eee5;
  --story-copy:#b9c3bc;
  --story-line:rgba(241,238,229,.16);
  --story-accent:#d5253a;
  background:var(--story-canvas)
}
.story-detail .detail-hero--story{border-bottom:1px solid var(--story-line);background-position:center 44%}
.story-detail .detail-hero--story:before{background:linear-gradient(90deg,rgba(3,15,11,.96),rgba(3,15,11,.68) 48%,rgba(3,15,11,.16)),linear-gradient(0deg,rgba(3,15,11,.8),transparent 58%)}
.story-detail .detail-hero .eyebrow{color:#dedbd2}
.story-detail .detail-hero h1{max-width:11ch;margin-bottom:1.05rem;padding-bottom:.08em;color:var(--story-ink);font-size:clamp(4rem,7.3vw,7.7rem);line-height:1.08;letter-spacing:-.025em;text-transform:none}
.story-detail .detail-hero>div>p:last-child{max-width:47ch;color:#d8ddd9}

.story-origin{position:relative;min-height:920px;padding:8rem clamp(1rem,7vw,6rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));gap:clamp(2rem,4vw,4rem);align-items:center;overflow:hidden;background:linear-gradient(115deg,var(--story-canvas) 0 52%,var(--story-surface) 52%)}
.story-origin:before{content:"2016";position:absolute;left:clamp(1rem,6vw,5rem);bottom:-.12em;color:rgba(241,238,229,.035);font-family:var(--display);font-size:clamp(9rem,22vw,22rem);font-weight:500;line-height:.75;pointer-events:none}
.story-origin .story-chapter-copy{position:relative;z-index:1;grid-column:1/7;max-width:620px;padding-right:clamp(0rem,2vw,2rem)}
.story-origin-meta{margin-bottom:2rem;display:flex;align-items:center;gap:1rem;color:#d8ddd9;font-size:.7rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.story-origin-meta:after{content:"";width:min(8vw,86px);height:1px;background:var(--story-accent)}
.story-origin-meta time{color:var(--story-ink);font-family:var(--display);font-size:1.35rem;font-weight:600;letter-spacing:0}
.story-origin h2{max-width:9ch;margin:0 0 2rem;color:var(--story-ink);font-size:clamp(4rem,6vw,6.5rem);line-height:.9;letter-spacing:-.03em;text-transform:none}
.story-origin .story-chapter-copy>p:not(.eyebrow){max-width:54ch;margin:0 0 1.2rem;color:var(--story-copy);font-size:1rem;line-height:1.85}
.story-origin-portrait{position:relative;grid-column:7/13;width:100%;max-width:610px;aspect-ratio:4/5;margin:0;justify-self:end;border:1px solid var(--story-line);border-radius:0;padding:10px;background:rgba(255,255,255,.025);overflow:hidden}
.story-origin-portrait:after{content:"";position:absolute;left:0;bottom:clamp(2rem,7vw,5rem);width:5px;height:clamp(80px,13vw,150px);background:var(--story-accent)}
.story-origin-portrait img{width:100%;height:100%;border-radius:0;object-fit:cover;object-position:center;filter:saturate(.82) contrast(1.04);transition:transform .8s var(--ease),filter .5s var(--ease)}
.story-origin-portrait:hover img{transform:scale(1.02);filter:saturate(.94) contrast(1.03)}

.story-values{position:relative;padding:9rem clamp(1rem,7vw,6rem);overflow:visible;background:var(--story-surface);color:var(--story-ink)}
.story-values:before{display:none}
.story-values-layout{display:grid;grid-template-columns:minmax(280px,.78fr) minmax(0,1.22fr);gap:clamp(3rem,9vw,9rem);align-items:start}
.story-values header{position:sticky;top:7rem;max-width:520px;margin:0;padding:0}
.story-values header:before{display:none}
.story-values header h2{max-width:9ch;margin:0;color:var(--story-ink);font-size:clamp(4rem,6.2vw,6.7rem);line-height:.9;letter-spacing:-.03em;text-transform:none}
.story-values-lede{max-width:39ch;margin:2rem 0 0;padding-left:1.25rem;border-left:3px solid var(--story-accent);color:var(--story-copy);font-size:1rem;line-height:1.7}
.story-values .value-list{display:block;border:0}
.story-values .value-list article{position:relative;min-height:250px;padding:2.7rem 0 3rem;border:0!important;border-top:1px solid var(--story-line)!important;background:transparent;box-shadow:none;display:grid;grid-template-columns:minmax(180px,.8fr) minmax(0,1.2fr);gap:2rem;align-items:end;overflow:visible}
.story-values .value-list article:last-child{border-bottom:1px solid var(--story-line)!important}
.story-values .value-list article:before{content:"";position:absolute;top:-1px;left:0;width:72px;height:2px;background:var(--story-accent)}
.story-values .value-list article:after{display:none}
.story-values .value-list h3{max-width:9ch;margin:0;color:var(--story-ink);font-family:var(--display);font-size:clamp(2.1rem,3vw,3.4rem);font-weight:500;line-height:.98;letter-spacing:-.018em}
.story-values .value-list p{max-width:38ch;margin:0;color:var(--story-copy);font-size:.94rem;line-height:1.75}

.story-detail .detail-timeline{position:relative;padding:9rem clamp(1rem,7vw,6rem) 10rem;display:block;background:linear-gradient(180deg,var(--story-surface),var(--story-canvas));overflow:hidden}
.story-detail .detail-timeline:after{content:"";position:absolute;right:-11rem;top:-11rem;width:30rem;aspect-ratio:1;border:1px solid rgba(241,238,229,.07);border-radius:50%;box-shadow:0 0 0 4rem rgba(241,238,229,.018),0 0 0 8rem rgba(241,238,229,.012);pointer-events:none}
.story-detail .timeline-heading{position:relative;z-index:1;max-width:760px;margin:0 0 6rem;display:block}
.story-detail .timeline-heading h2{margin:0;color:var(--story-ink);font-size:clamp(4.2rem,7vw,7.4rem);line-height:.9;letter-spacing:-.03em;text-transform:none}
.story-detail .timeline-heading>p{max-width:48ch;margin:1.5rem 0 0;color:var(--story-copy);font-size:1rem;line-height:1.75}
.story-timeline-track{position:relative;z-index:1;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none}
.story-timeline-track:before{content:"";position:absolute;top:0;right:0;left:0;height:1px;background:var(--story-line)}
.story-timeline-track li{position:relative;min-height:260px;padding:3.2rem 2rem 0 0}
.story-timeline-track li:before{content:"";position:absolute;top:-5px;left:0;width:11px;height:11px;border:2px solid var(--story-accent);border-radius:50%;background:var(--story-canvas)}
.story-timeline-track li:not(:last-child):after{content:"";position:absolute;top:3.2rem;right:2rem;bottom:1rem;width:1px;background:rgba(241,238,229,.08)}
.story-timeline-track time{display:block;color:var(--story-ink);font-family:var(--display);font-size:clamp(3.7rem,5vw,5.8rem);font-weight:500;line-height:1;letter-spacing:-.03em}
.story-timeline-track p{max-width:18ch;margin:4.6rem 0 0;color:#d9ddd9;font-family:var(--display);font-size:clamp(1.25rem,1.7vw,1.65rem);line-height:1.28}

@media(max-width:1024px){
  .story-origin{min-height:0;padding-block:7rem;grid-template-columns:1fr 1fr;gap:2.5rem;background:linear-gradient(115deg,var(--story-canvas),var(--story-surface))}
  .story-origin .story-chapter-copy{grid-column:auto;padding:0}.story-origin-portrait{grid-column:auto}
  .story-origin h2{font-size:clamp(3.7rem,7vw,5rem)}
  .story-values-layout{gap:4rem}.story-values .value-list article{grid-template-columns:1fr;gap:1.25rem}
  .story-timeline-track{grid-template-columns:1fr 1fr;gap:4rem 0}.story-timeline-track:before{display:none}.story-timeline-track li{min-height:230px;border-top:1px solid var(--story-line)}.story-timeline-track li:before{top:-6px}.story-timeline-track li:not(:last-child):after{display:none}
}

@media(max-width:767px){
  .story-detail .detail-hero--story{min-height:660px;padding:8.5rem 1rem 4rem;background-position:58% center}
  .story-detail .detail-hero h1{font-size:clamp(3.3rem,15vw,4.7rem);line-height:1.07}
  .story-origin{padding:5.5rem 1rem;display:flex;flex-direction:column;gap:3rem;background:var(--story-canvas)}
  .story-origin:before{left:.65rem;bottom:.01em;font-size:40vw}
  .story-origin .story-chapter-copy{width:100%}.story-origin-meta{margin-bottom:1.5rem}.story-origin-meta span{font-size:.62rem}
  .story-origin h2{font-size:clamp(3.5rem,14vw,4.6rem);line-height:.94}
  .story-origin .story-chapter-copy>p:not(.eyebrow){font-size:.94rem;line-height:1.75}
  .story-origin-portrait{width:100%;height:auto;max-width:none;aspect-ratio:4/5;padding:6px}
  .story-origin-portrait:after{width:3px}
  .story-values{padding:6rem 1rem}
  .story-values-layout{display:block}.story-values header{position:static}.story-values header h2{font-size:clamp(3.6rem,14vw,4.7rem);line-height:.94}
  .story-values-lede{margin-bottom:3.5rem}.story-values .value-list article{min-height:0;padding:2.3rem 0 2.6rem;display:block}
  .story-values .value-list h3{font-size:2.6rem}.story-values .value-list p{margin-top:1.25rem;font-size:.92rem}
  .story-detail .detail-timeline{padding:6rem 1rem 7rem}
  .story-detail .timeline-heading{margin-bottom:4rem}.story-detail .timeline-heading h2{font-size:clamp(4rem,17vw,5.4rem);line-height:.92}
  .story-timeline-track{display:block;padding-left:1.5rem}
  .story-timeline-track:before{display:block;top:0;right:auto;bottom:0;left:0;width:1px;height:auto}
  .story-timeline-track li{min-height:0;padding:0 0 4.5rem;border:0}
  .story-timeline-track li:last-child{padding-bottom:0}
  .story-timeline-track li:before{top:.45rem;left:-1.82rem}
  .story-timeline-track time{font-size:4rem}.story-timeline-track p{margin:1.25rem 0 0;font-size:1.4rem}
}

@media(prefers-reduced-motion:reduce){
  .story-origin-portrait img{transition:none}
}

/* Catering imagery, client marks and editorial proof · v1.4.2 */
.catering-collaborations{
  display:block;
  background:
    radial-gradient(circle at 92% 4%,rgba(224,178,109,.08),transparent 24%),
    var(--catering-canvas)
}
.catering-collaborations>header{position:static;max-width:900px;margin:0 0 clamp(3rem,6vw,5rem)}
.catering-collaborations>header>p:last-child{max-width:58ch;margin:1.5rem 0 0;color:var(--catering-copy);font-size:.9rem;line-height:1.75}
.collaboration-showcase{display:grid;grid-template-columns:minmax(0,7fr) minmax(360px,5fr);min-height:600px;border:1px solid var(--catering-line);background:var(--catering-surface)}
.collaboration-photo{position:relative;min-width:0;height:100%;margin:0;overflow:hidden;border-right:1px solid var(--catering-line);background:#061510}
.collaboration-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 58%,rgba(2,14,10,.82));pointer-events:none}
.collaboration-photo img{width:100%;height:100%;object-fit:cover;object-position:center 43%;filter:saturate(.82) contrast(1.04);transition:transform .8s var(--ease),filter .5s var(--ease)}
.collaboration-photo:hover img{transform:scale(1.018);filter:saturate(.94) contrast(1.02)}
.collaboration-photo figcaption{position:absolute;z-index:1;right:clamp(1.25rem,3vw,2.5rem);bottom:clamp(1.25rem,3vw,2.5rem);left:clamp(1.25rem,3vw,2.5rem);max-width:38ch;color:#d8ded9;font-size:.72rem;line-height:1.55}
.collaboration-ledger{min-width:0;padding:clamp(1.5rem,3vw,2.75rem);display:flex;flex-direction:column}
.collaboration-ledger>p{margin:0 0 1.25rem;color:var(--gold);font-size:.64rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.name-strip{display:grid;grid-template-columns:1fr;margin:0;padding:0;border-top:1px solid var(--catering-line);list-style:none}
.name-strip li{min-width:0;padding:clamp(1rem,1.7vw,1.35rem) 0;border-bottom:1px solid var(--catering-line)}
.name-strip li strong{display:block;max-width:25ch;color:var(--text);font-family:var(--display);font-size:clamp(1.05rem,1.45vw,1.45rem);font-weight:500;line-height:1.22;transition:color .25s var(--ease),transform .25s var(--ease)}
.name-strip li:hover strong{color:var(--gold-light);transform:translateX(4px)}

.catering-clients{
  display:block;
  overflow:hidden;
  background:
    radial-gradient(circle at 10% 90%,rgba(0,143,106,.11),transparent 30%),
    radial-gradient(circle at 92% 8%,rgba(224,178,109,.08),transparent 25%),
    var(--catering-surface)
}
.catering-clients>header{position:static;max-width:850px;margin-bottom:clamp(3rem,6vw,5.5rem)}
.client-grid{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));grid-auto-rows:minmax(168px,1fr);gap:1px;padding:1px;background:var(--catering-line);box-shadow:0 28px 80px rgba(0,0,0,.16)}
.client-logo{position:relative;min-width:0;padding:clamp(1.5rem,2.8vw,2.5rem);display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,rgba(18,54,42,.98),rgba(7,31,23,.98));transition:background .3s var(--ease)}
.client-logo:nth-child(1){grid-column:span 3}.client-logo:nth-child(2){grid-column:span 2}.client-logo:nth-child(3){grid-column:span 3}.client-logo:nth-child(4){grid-column:span 2}
.client-logo:nth-child(5),.client-logo:nth-child(6){grid-column:span 2}.client-logo:nth-child(7),.client-logo:nth-child(8){grid-column:span 3}
.client-logo:nth-child(9),.client-logo:nth-child(10){grid-column:span 5}
.client-logo:after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 50% 120%,rgba(224,178,109,.13),transparent 52%);opacity:0;transition:opacity .3s var(--ease);pointer-events:none}
.client-logo img{position:relative;z-index:1;width:100%;height:78px;max-width:190px;object-fit:contain;filter:grayscale(1) brightness(0) invert(1);opacity:.78;transition:filter .3s var(--ease),opacity .3s var(--ease),transform .3s var(--ease)}
.client-logo:nth-child(1) img,.client-logo:nth-child(3) img,.client-logo:nth-child(10) img{max-width:220px}
.client-logo:hover{background:linear-gradient(145deg,rgba(23,67,51,.99),rgba(8,37,27,.99))}
.client-logo:hover:after{opacity:1}
.client-logo:hover img{filter:grayscale(1) brightness(0) invert(1);opacity:1;transform:scale(1.035)}

.catering-testimonials{overflow:hidden;background:radial-gradient(circle at 86% 8%,rgba(224,178,109,.12),transparent 30%),var(--catering-canvas)}
.catering-testimonials>header{max-width:none;margin-bottom:clamp(3rem,6vw,5.5rem);display:grid;grid-template-columns:minmax(0,8fr) minmax(260px,4fr);gap:clamp(2rem,7vw,7rem);align-items:end}
.catering-testimonials>header>div{max-width:920px}
.testimonial-intro{max-width:42ch;margin:0 0 .7rem;padding-left:1.25rem;border-left:2px solid var(--gold);color:var(--catering-copy);font-size:.9rem;line-height:1.75}
.testimonial-stage{position:relative}
.testimonial-track{gap:1rem;padding:0;background:transparent;scrollbar-width:none}
.testimonial-track::-webkit-scrollbar{display:none}
.testimonial-track article,.testimonial-track article:first-child{
  position:relative;
  min-width:clamp(650px,68vw,980px);
  min-height:500px;
  padding:clamp(2rem,4vw,4rem);
  border:1px solid var(--catering-line);
  background:linear-gradient(135deg,rgba(18,54,42,.96),rgba(5,25,19,.99));
  display:grid;
  grid-template-columns:minmax(72px,1fr) minmax(0,9fr);
  grid-template-rows:1fr auto;
  gap:2rem;
  align-items:start;
  scroll-snap-align:start;
  overflow:hidden
}
.testimonial-track article:after{content:"";position:absolute;right:-7rem;bottom:-7rem;width:18rem;aspect-ratio:1;border:1px solid rgba(224,178,109,.08);border-radius:50%;box-shadow:0 0 0 3rem rgba(224,178,109,.018),0 0 0 6rem rgba(224,178,109,.012);pointer-events:none}
.testimonial-quote-mark{grid-column:1;grid-row:1;color:var(--gold);font-family:var(--display);font-size:clamp(5rem,8vw,9rem);line-height:.68}
.testimonial-track blockquote{grid-column:2;grid-row:1;max-width:31ch;margin:0;color:var(--text);font-size:clamp(1.65rem,2.7vw,3rem);line-height:1.28;text-wrap:pretty}
.testimonial-track footer{grid-column:2;grid-row:2;margin:0;padding-top:1.5rem;border-top:1px solid rgba(224,178,109,.22);display:grid;grid-template-columns:auto 1fr;gap:1.25rem;align-items:start}
.testimonial-number{color:var(--gold);font-family:var(--display);font-size:1.35rem;line-height:1}
.testimonial-track footer>div{display:grid;gap:.35rem}
.testimonial-track footer strong{color:var(--gold-light);font-size:.72rem}
.testimonial-track footer span:not(.testimonial-number){max-width:52ch;color:#aeb8b2;font-size:.73rem;line-height:1.55}
.testimonial-controls{margin-top:1.4rem;display:flex;align-items:center;justify-content:space-between}
.testimonial-controls>p{min-width:190px;margin:0;display:flex;align-items:center;gap:.85rem;color:#97a59d;font-family:var(--display);font-size:.9rem}
.testimonial-controls>p span:first-child{color:var(--gold-light);font-size:1.45rem}
.testimonial-controls>p i{width:100%;height:1px;background:var(--catering-line)}
.testimonial-controls>div{display:flex;gap:.6rem}
.testimonial-controls button{width:52px;height:52px;padding:0;border:1px solid var(--catering-line);border-radius:50%;display:grid;place-items:center;background:transparent;color:var(--gold-light);cursor:pointer;transition:background .2s var(--ease),color .2s var(--ease),transform .2s var(--ease)}
.testimonial-controls button:first-child svg{transform:rotate(180deg)}
.testimonial-controls button:hover{background:var(--gold);color:var(--catering-canvas)}
.testimonial-controls button:active{transform:scale(.97)}
.testimonial-controls button:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
.testimonial-controls button:disabled{opacity:.35;cursor:not-allowed;background:transparent;color:var(--gold-light)}
.testimonial-controls svg{width:18px;height:18px}

.format-grid article{position:relative;min-height:520px;padding:0;isolation:isolate;overflow:hidden;background:#071b15}
.format-grid article:nth-child(2),.format-grid article:nth-child(3){min-height:480px}
.format-grid article:after{content:"";position:absolute;z-index:-1;inset:0;background:linear-gradient(180deg,rgba(2,12,9,.08) 12%,rgba(2,12,9,.88) 68%,rgba(2,12,9,.98) 100%)}
.format-grid figure{position:absolute;z-index:-2;inset:0;margin:0;overflow:hidden}
.format-grid figure img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.04);transition:transform .8s var(--ease),filter .5s var(--ease)}
.format-grid article:nth-child(1) figure img{object-position:center 44%}
.format-grid article:nth-child(2) figure img{object-position:center 40%}
.format-grid article:nth-child(3) figure img{object-position:center}
.format-grid article:nth-child(4) figure img{object-position:center 45%}
.format-grid article:hover figure img{transform:scale(1.025);filter:saturate(.92) contrast(1.02)}
.format-card-copy{position:relative;z-index:1;min-height:inherit;padding:clamp(1.5rem,3vw,2.5rem);display:flex;flex-direction:column}
.format-grid .format-card-copy>strong{display:block;margin-bottom:auto;color:var(--gold-light);font-family:Manrope,system-ui,sans-serif;font-size:.66rem;font-weight:700;letter-spacing:.12em}
.format-grid h3{margin:7rem 0 0;color:var(--text);text-shadow:0 2px 24px rgba(0,0,0,.32)}
.format-grid p{margin:1rem 0 0;color:#d6dcd7;text-shadow:0 1px 12px rgba(0,0,0,.42)}
.format-grid a{margin-top:1.15rem;color:var(--gold-light)}

@media(max-width:1024px){
  .collaboration-showcase{grid-template-columns:minmax(0,1.1fr) minmax(320px,.9fr);min-height:560px}
  .client-grid{grid-template-columns:repeat(3,minmax(0,1fr));grid-auto-rows:145px}.client-logo,.client-logo:nth-child(n){grid-column:span 1}
  .client-logo:nth-child(10){grid-column:2}
  .testimonial-track article,.testimonial-track article:first-child{min-width:min(82vw,820px)}
}

@media(max-width:767px){
  .catering-collaborations>header{margin-bottom:2.5rem}.collaboration-showcase{display:block;min-height:0}.collaboration-photo{height:430px;border-right:0;border-bottom:1px solid var(--catering-line)}.collaboration-ledger{padding:1.5rem}.name-strip li{padding:1.15rem 0}.name-strip li strong{font-size:1.3rem}.name-strip li:hover strong{transform:none}
  .client-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-rows:128px}.client-logo,.client-logo:nth-child(n){grid-column:span 1;padding:1.1rem}.client-logo:nth-child(10){grid-column:auto}.client-logo img,.client-logo:nth-child(1) img,.client-logo:nth-child(3) img,.client-logo:nth-child(10) img{height:62px;max-width:138px}.client-logo:hover img{transform:none}
  .catering-testimonials>header{display:block}.testimonial-intro{margin-top:1.5rem}
  .testimonial-track article,.testimonial-track article:first-child{min-width:calc(100vw - 2rem);min-height:480px;padding:1.5rem;grid-template-columns:1fr;grid-template-rows:auto 1fr auto;gap:1.3rem}
  .testimonial-quote-mark{grid-column:1;grid-row:1;font-size:5.5rem}.testimonial-track blockquote{grid-column:1;grid-row:2;font-size:clamp(1.35rem,6vw,1.75rem);line-height:1.38}.testimonial-track footer{grid-column:1;grid-row:3}
  .testimonial-controls>p{min-width:120px}.testimonial-controls button{width:48px;height:48px}
  .format-grid article,.format-grid article:nth-child(1),.format-grid article:nth-child(2),.format-grid article:nth-child(3),.format-grid article:nth-child(4){min-height:480px}
  .format-card-copy{padding:1.5rem}.format-grid h3{margin:6rem 0 0;font-size:2.35rem}.format-grid p{font-size:.8rem}
}

@media(prefers-reduced-motion:reduce){
  .collaboration-photo img,.name-strip li strong,.client-logo,.client-logo:after,.client-logo img,.format-grid figure img,.testimonial-controls button{transition:none}
}

/* Catering signature sections: depth, constellation and journey · v1.4.3 */
@media(min-width:768px){
  .catering-detail .detail-hero h1{max-width:20ch;font-size:clamp(4.5rem,7vw,7.4rem);line-height:1.12}
}
.catering-collaborations>header{max-width:820px;margin-bottom:clamp(3.5rem,7vw,6rem)}
.collaboration-showcase{
  grid-template-columns:repeat(12,minmax(0,1fr));
  min-height:720px;
  align-items:center;
  border:0;
  background:transparent
}
.collaboration-photo{
  grid-column:1/9;
  grid-row:1;
  height:720px;
  border:0;
  border-radius:18px;
  box-shadow:0 32px 100px rgba(0,0,0,.28)
}
.collaboration-photo:after{background:linear-gradient(180deg,transparent 46%,rgba(2,14,10,.9))}
.collaboration-photo figcaption{bottom:2rem;left:2rem;right:2rem}
.collaboration-ledger{
  position:relative;
  z-index:2;
  grid-column:8/13;
  grid-row:1;
  margin:0;
  padding:clamp(2rem,3vw,3rem);
  border:1px solid rgba(224,178,109,.25);
  border-radius:16px;
  background:rgba(5,28,21,.92);
  box-shadow:0 30px 80px rgba(0,0,0,.34),inset 0 1px 0 rgba(255,255,255,.04);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px)
}
.collaboration-ledger>p{margin-bottom:1.5rem}
.collaboration-ledger .name-strip{border-color:rgba(224,178,109,.2)}
.collaboration-ledger .name-strip li{padding:1.05rem 0;border-color:rgba(224,178,109,.16)}
.collaboration-ledger .name-strip li strong{font-size:clamp(1.05rem,1.35vw,1.35rem)}

.catering-clients>header{max-width:900px;margin-bottom:clamp(2rem,4vw,3rem)}
.client-intro{max-width:58ch;margin:1.5rem 0 0;color:var(--catering-copy);font-size:.9rem;line-height:1.75}
.client-grid{
  position:relative;
  isolation:isolate;
  min-height:650px;
  padding:2.5rem 0 3.5rem;
  display:grid;
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:repeat(4,minmax(125px,1fr));
  gap:0;
  overflow:hidden;
  background:transparent;
  box-shadow:none
}
.client-grid:before{
  content:"";
  position:absolute;
  z-index:-1;
  top:5%;
  right:8%;
  bottom:8%;
  left:8%;
  border:1px solid rgba(224,178,109,.14);
  border-radius:50%;
  background:radial-gradient(circle at 50% 50%,rgba(0,143,106,.08),transparent 58%);
  transform:rotate(-5deg);
  pointer-events:none
}
.client-logo,.client-logo:nth-child(n){
  grid-column:auto;
  grid-row:auto;
  min-height:0;
  padding:clamp(1rem,2vw,2rem);
  overflow:visible;
  background:transparent;
  transition:transform .35s var(--ease)
}
.client-logo:after{content:none}
.client-logo:nth-child(1){grid-column:1/4;grid-row:1}.client-logo:nth-child(2){grid-column:5/8;grid-row:1}.client-logo:nth-child(3){grid-column:9/13;grid-row:1}
.client-logo:nth-child(4){grid-column:2/6;grid-row:2}.client-logo:nth-child(5){grid-column:7/10;grid-row:2}.client-logo:nth-child(6){grid-column:10/13;grid-row:2}
.client-logo:nth-child(7){grid-column:1/4;grid-row:3}.client-logo:nth-child(8){grid-column:5/9;grid-row:3}.client-logo:nth-child(9){grid-column:9/13;grid-row:3}.client-logo:nth-child(10){grid-column:4/10;grid-row:4}
.client-logo img,.client-logo:nth-child(1) img,.client-logo:nth-child(3) img,.client-logo:nth-child(10) img{height:82px;max-width:210px;opacity:.76}
.client-logo:hover{background:transparent;transform:translateY(-6px)}
.client-logo:hover img{opacity:1;transform:scale(1.025)}

.event-services{position:relative;background:linear-gradient(155deg,#0a2c21,#071b15 68%)}
.event-services-photo{height:340px;margin:0 0 2.25rem;overflow:hidden;border-radius:16px;box-shadow:0 24px 70px rgba(0,0,0,.22)}
.event-services-photo img{width:100%;height:100%;object-fit:cover;object-position:center 46%;filter:saturate(.82) contrast(1.04);transition:transform .8s var(--ease),filter .45s var(--ease)}
.event-services-photo:hover img{transform:scale(1.02);filter:saturate(.95) contrast(1.02)}
.event-services>.event-services-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.event-services-grid article{
  min-height:160px;
  padding:1.3rem;
  border:1px solid rgba(224,178,109,.17);
  border-radius:12px;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  background:linear-gradient(145deg,rgba(18,54,42,.72),rgba(5,26,20,.45));
  transition:border-color .25s var(--ease),transform .25s var(--ease),background .25s var(--ease)
}
.event-services-grid article:hover{border-color:rgba(224,178,109,.36);background:linear-gradient(145deg,rgba(25,72,55,.8),rgba(6,32,24,.55));transform:translateY(-3px)}
.event-services-grid h3{margin:0 0 .55rem;font-size:1.12rem}
.event-services-grid p{font-size:.75rem;line-height:1.55}

.catering-process.compact-process{overflow:visible;background:radial-gradient(circle at 90% 0,rgba(224,178,109,.08),transparent 26%),var(--catering-surface)}
.catering-process>div{padding-bottom:2rem;border:0;gap:1rem;align-items:stretch;background:transparent}
.catering-process article{
  min-height:390px;
  padding:2.25rem;
  border:1px solid rgba(224,178,109,.2);
  border-radius:16px;
  overflow:hidden;
  background:linear-gradient(155deg,rgba(18,54,42,.94),rgba(6,27,21,.98));
  box-shadow:0 24px 70px rgba(0,0,0,.16)
}
.catering-process article:nth-child(2){transform:translateY(2.5rem)}
.catering-process article strong,.catering-process article:nth-child(2) strong,.catering-process article:nth-child(3) strong{font-size:clamp(4rem,6vw,6rem);line-height:.85;opacity:.72}
.catering-process article h3{margin-top:5rem;font-size:clamp(1.75rem,2.2vw,2.35rem)}
.catering-process article p{font-size:.84rem;line-height:1.7}

.catering-quote{position:relative;grid-template-columns:minmax(320px,5fr) minmax(0,7fr);gap:clamp(3rem,7vw,7rem);background:radial-gradient(circle at 3% 12%,rgba(0,143,106,.15),transparent 28%),var(--catering-canvas)}
.quote-intro{top:7rem}
.quote-intro h2{max-width:8ch}
.minimum-spend{margin-top:2.75rem;padding:1.4rem 0 1.4rem 1.5rem}
.catering-quote-form{padding:clamp(1.5rem,4vw,3.5rem);border-color:rgba(224,178,109,.24);border-radius:16px;background:linear-gradient(145deg,rgba(15,53,40,.94),rgba(6,29,22,.98));box-shadow:0 32px 100px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.035)}
.catering-detail section .quote-form-header{max-width:none;margin:0 0 2.5rem;padding:0 0 2rem;border-bottom:1px solid rgba(224,178,109,.2)}
.quote-form-header h3{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(2rem,3.4vw,3.25rem);font-weight:500;line-height:1.05}
.quote-form-header p{max-width:48ch;margin:1rem 0 0;color:var(--catering-copy);font-size:.82rem;line-height:1.65}
.form-grid{gap:1.25rem}
.form-field{gap:.55rem}
.form-field input,.form-field select,.form-field textarea{min-height:58px;border-color:rgba(224,178,109,.22);border-radius:8px;background:rgba(2,18,13,.72)}
.form-field textarea{min-height:160px}
.service-options label{border-radius:8px;background:rgba(2,18,13,.58)}

@media(max-width:1024px){
  .collaboration-showcase{min-height:620px}.collaboration-photo{height:620px}.collaboration-ledger{grid-column:7/13}
  .client-grid{min-height:560px;grid-template-rows:repeat(4,minmax(110px,1fr))}
  .event-services>.event-services-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .catering-process article:nth-child(2){transform:none}
  .catering-quote{grid-template-columns:1fr}
}

@media(max-width:767px){
  .catering-collaborations>header{margin-bottom:2.75rem}
  .collaboration-showcase{display:block;min-height:0}
  .collaboration-photo{height:620px;border-radius:14px}
  .collaboration-photo figcaption{bottom:5.5rem;left:1.5rem;right:1.5rem}
  .collaboration-ledger{width:calc(100% - 2rem);margin:-4.5rem 1rem 0;padding:1.4rem;border-radius:14px}
  .collaboration-ledger .name-strip li{padding:1rem 0}

  .catering-clients>header{margin-bottom:1rem}
  .client-intro{font-size:.84rem}
  .client-grid{min-height:760px;padding:2rem 0;grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,140px);gap:.25rem 1rem;overflow:visible}
  .client-grid:before{top:4%;right:-18%;bottom:3%;left:-18%;transform:rotate(-9deg)}
  .client-logo,.client-logo:nth-child(n){grid-column:auto;grid-row:auto;padding:.75rem}
  .client-logo:nth-child(odd){transform:translateY(1.25rem)}
  .client-logo img,.client-logo:nth-child(1) img,.client-logo:nth-child(3) img,.client-logo:nth-child(10) img{height:64px;max-width:145px}
  .client-logo:hover{transform:none}

  .event-services-photo{height:320px;margin-bottom:1.5rem;border-radius:14px}
  .event-services>.event-services-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}
  .event-services-grid article{min-height:190px;padding:1rem;border-radius:10px}
  .event-services-grid h3{font-size:1rem;line-height:1.12}
  .event-services-grid p{font-size:.7rem}

  .catering-process.compact-process{padding:5rem 1rem 8rem}
  .catering-process>div{display:block;padding:0;border:0}
  .catering-process article{
    position:sticky;
    top:6.5rem;
    min-height:clamp(360px,58dvh,520px);
    margin:0 0 1.25rem;
    padding:1.75rem;
    border-right:1px solid rgba(224,178,109,.2);
    border-bottom:1px solid rgba(224,178,109,.2);
    border-radius:14px;
    box-shadow:0 28px 80px rgba(0,0,0,.32)
  }
  .catering-process article:nth-child(1){z-index:1}.catering-process article:nth-child(2){z-index:2;top:7.25rem}.catering-process article:nth-child(3){z-index:3;top:8rem}
  .catering-process article strong,.catering-process article:nth-child(2) strong,.catering-process article:nth-child(3) strong{font-size:5rem}
  .catering-process article h3{margin-top:4rem;font-size:2rem}

  .catering-quote{gap:2.5rem}
  .quote-intro h2{max-width:9ch}
  .catering-quote-form{padding:1.25rem;border-radius:14px}
  .catering-detail section .quote-form-header{margin-bottom:1.75rem;padding-bottom:1.5rem}
  .quote-form-header h3{font-size:2.25rem}
  .form-field input,.form-field select,.form-field textarea{min-height:56px}
}

@media(prefers-reduced-motion:reduce){
  .client-logo,.event-services-photo img,.event-services-grid article{transition:none}
}

/* Catering refinement pass 1.4.3: true-colour brand proof and media-led service stories */
.catering-collaborations .collaboration-showcase{min-height:0;align-items:stretch}
.catering-collaborations .collaboration-photo{height:clamp(560px,48vw,720px)}
.catering-collaborations .collaboration-ledger{align-self:center;padding:clamp(1.5rem,3.2vw,3rem)}
.catering-collaborations .name-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 1.5rem;border-top:0}
.catering-collaborations .name-strip li{min-height:92px;padding:1.1rem 0;border-bottom:1px solid rgba(224,178,109,.2);display:flex;align-items:flex-end}
.catering-collaborations .name-strip li:nth-child(4){grid-column:1/-1}
.catering-collaborations .name-strip li strong{font-size:clamp(1rem,1.45vw,1.35rem);line-height:1.18}

.catering-clients .client-grid{
  min-height:0;
  padding:0;
  grid-template-columns:repeat(5,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(148px,1fr));
  gap:.75rem;
  overflow:visible;
}
.catering-clients .client-grid:before{inset:12% 7%;border-color:rgba(224,178,109,.16);background:radial-gradient(circle at 50% 50%,rgba(224,178,109,.1),transparent 60%)}
.catering-clients .client-logo,.catering-clients .client-logo:nth-child(n){
  grid-column:auto;
  grid-row:auto;
  min-height:148px;
  padding:1.25rem;
  border:1px solid rgba(224,178,109,.24);
  border-radius:10px;
  background:#eee9df;
  box-shadow:0 18px 42px rgba(0,0,0,.16);
  transform:none;
}
.catering-clients .client-logo:nth-child(7){background:#eee9df}
.catering-clients .client-logo:nth-child(8){background:#eee9df}
.catering-clients .client-logo:nth-child(3){
  background:#eee9df;
  border-color:rgba(224,178,109,.24);
}
.catering-clients .client-logo:nth-child(3) img{filter:none;opacity:1}
.catering-clients .client-logo img,.catering-clients .client-logo:nth-child(1) img,.catering-clients .client-logo:nth-child(3) img,.catering-clients .client-logo:nth-child(10) img{
  width:100%;
  height:84px;
  max-width:210px;
  filter:none;
  opacity:1;
  mix-blend-mode:normal;
  transform:none;
}
.catering-clients .client-logo:nth-child(7) img{filter:none}
.catering-clients .client-logo:hover{background:#f7f3ea;transform:translateY(-4px)}
.catering-clients .client-logo:nth-child(3):hover,.catering-clients .client-logo:nth-child(7):hover{background:#f7f3ea}
.catering-clients .client-logo:nth-child(8):hover{background:#f7f3ea}

/* The Consulate mark has a light, detailed artwork and needs its own readable treatment. */
.catering-clients .client-logo:nth-child(3){
  background:#eee9df;
}
.catering-clients .client-logo:nth-child(3) img{
  height:96px;
  max-width:260px;
  filter:none;
  opacity:1;
}
@media(max-width:767px){
  .catering-clients .client-logo:nth-child(3) img{
    height:72px;
    max-width:160px;
  }
}

.catering-capabilities .live-stations-layout{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(300px,.92fr);
  gap:clamp(2rem,5vw,5rem);
  align-items:stretch;
}
.live-stations-media{position:relative;min-height:560px}
.live-stations-photo{position:absolute;overflow:hidden;margin:0;border-radius:14px;background:#061510;box-shadow:0 24px 70px rgba(0,0,0,.28)}
.live-stations-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.82) contrast(1.04);transition:transform .7s var(--ease),filter .4s var(--ease)}
.live-stations-photo--main{inset:0 12% 10% 0}
.live-stations-photo--detail{right:0;bottom:0;width:42%;height:44%;border:8px solid var(--catering-canvas)}
.live-stations-photo:hover img{transform:scale(1.025);filter:saturate(1) contrast(1.02)}
.live-stations-list{display:grid!important;grid-template-columns:1fr;align-content:stretch!important;border-top:1px solid var(--catering-line)}
.live-stations-list article{min-height:0!important;padding:1.35rem 0!important;border-bottom:1px solid var(--catering-line);display:grid!important;grid-template-columns:58px 1fr;gap:1rem;align-items:start;background:transparent!important;transform:none!important;box-shadow:none!important;border-radius:0!important}
.live-stations-list article strong{margin:0!important;color:var(--gold-light);font-family:var(--display);font-size:1.7rem!important;line-height:1}
.live-stations-list article h3{margin:0 0 .45rem!important;font-size:1.35rem!important;line-height:1.1}
.live-stations-list article p{margin:0;font-size:.78rem;line-height:1.6}

.event-services .event-services-visual{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(190px,.85fr);gap:1rem;align-items:stretch}
.event-services .event-services-visual:has(> figure:only-child){grid-template-columns:1fr}
.event-services .event-services-photo{height:380px;margin:0;border-radius:12px;box-shadow:0 24px 70px rgba(0,0,0,.22)}
.event-services .event-services-photo--detail{height:280px;align-self:end}
.event-services .event-services-photo img{object-position:center 46%}
.event-services>.event-services-grid{margin-top:2rem;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 2rem;border-top:1px solid rgba(224,178,109,.2)}
.event-services .event-services-grid article{min-height:128px;padding:1.25rem 0;border:0;border-bottom:1px solid rgba(224,178,109,.2);border-radius:0;background:transparent;display:block;transform:none}
.event-services .event-services-grid article:hover{background:transparent;border-color:rgba(224,178,109,.42);transform:none}
.event-services .event-services-grid h3{margin:0 0 .5rem;font-size:1.08rem}
.event-services .event-services-grid p{max-width:30ch;margin:0;font-size:.76rem}

.catering-process.compact-process{overflow:hidden}
.catering-process.compact-process .process-route{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2rem,5vw,5rem);align-items:stretch;padding:0;border:0;background:transparent}
.process-route-photo{position:relative;min-height:500px;margin:0;overflow:hidden;border-radius:14px;background:#061510}
.process-route-photo img{width:100%;height:100%;object-fit:cover;filter:saturate(.78) contrast(1.05)}
.process-route-photo:after{content:"";position:absolute;inset:45% 0 0;background:linear-gradient(180deg,transparent,rgba(2,14,10,.9));pointer-events:none}
.process-route-photo figcaption{position:absolute;z-index:1;right:1.5rem;bottom:1.5rem;left:1.5rem;color:#eef0ea;font-size:.78rem;line-height:1.55}
.process-steps{display:grid;grid-template-columns:1fr;align-content:stretch;border-top:1px solid var(--catering-line)}
.catering-process .process-steps article,.catering-process .process-steps article:nth-child(2){position:static;min-height:0;margin:0;padding:1.35rem 0;border:0;border-bottom:1px solid var(--catering-line);border-radius:0;display:grid;grid-template-columns:76px 1fr;gap:1rem;align-items:start;background:transparent;box-shadow:none;transform:none!important}
.catering-process .process-steps article:last-child{border-bottom:0}
.catering-process .process-steps article strong,.catering-process .process-steps article:nth-child(2) strong,.catering-process .process-steps article:nth-child(3) strong{margin:0;color:var(--gold-light);font-family:var(--display);font-size:2.2rem;line-height:1;opacity:1}
.catering-process .process-steps article h3{margin:0 0 .45rem;color:var(--text);font-size:1.45rem;line-height:1.15}
.catering-process .process-steps article p{margin:0;max-width:38ch;color:var(--catering-copy);font-size:.78rem;line-height:1.65}

@media(max-width:767px){
  .catering-collaborations .collaboration-photo{height:500px}
  .catering-collaborations .collaboration-ledger{width:calc(100% - 1.5rem);margin:-3.5rem .75rem 0;padding:1.25rem}
  .catering-collaborations .name-strip{gap:0 .9rem}
  .catering-collaborations .name-strip li{min-height:78px;padding:.85rem 0}
  .catering-collaborations .name-strip li strong{font-size:1rem}
  .catering-clients .client-grid{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:repeat(5,minmax(116px,1fr));gap:.65rem}
  .catering-clients .client-logo,.catering-clients .client-logo:nth-child(n){min-height:116px;padding:.75rem;border-radius:8px}
  .catering-clients .client-logo img,.catering-clients .client-logo:nth-child(1) img,.catering-clients .client-logo:nth-child(3) img,.catering-clients .client-logo:nth-child(10) img{height:62px;max-width:145px}
  .catering-capabilities .live-stations-layout{display:block!important}
  .live-stations-media{min-height:300px;margin-bottom:2rem}
  .live-stations-photo--main{inset:0 16% 10% 0}
  .live-stations-photo--detail{width:48%;height:46%;border-width:6px}
  .live-stations-list{border-top:1px solid var(--catering-line)}
  .live-stations-list article{grid-template-columns:48px 1fr;gap:.85rem;padding:1.1rem 0!important}
  .live-stations-list article strong{font-size:1.55rem!important}
  .live-stations-list article h3{font-size:1.18rem!important}
  .event-services .event-services-visual{grid-template-columns:1fr;gap:.75rem}
  .event-services .event-services-photo,.event-services .event-services-photo--detail{height:260px;margin:0}
  .event-services .event-services-photo--detail{height:180px;margin:0 12% 0 22%}
  .event-services>.event-services-grid{grid-template-columns:1fr;margin-top:1.75rem}
  .event-services .event-services-grid article{min-height:0;padding:1rem 0}
  .event-services .event-services-grid p{max-width:36ch}
  .catering-process.compact-process .process-route{display:block}
  .process-route-photo{min-height:0;height:260px;margin-bottom:1.75rem;border-radius:10px}
  .catering-process .process-steps article,.catering-process .process-steps article:nth-child(2){grid-template-columns:54px 1fr;gap:.8rem;padding:1.15rem 0}
  .catering-process .process-steps article strong,.catering-process .process-steps article:nth-child(2) strong,.catering-process .process-steps article:nth-child(3) strong{font-size:1.85rem}
  .catering-process .process-steps article h3{font-size:1.25rem}
  .catering-process .process-steps article p{font-size:.78rem}
}

@media(prefers-reduced-motion:reduce){
  .live-stations-photo img,.catering-clients .client-logo{transition:none}
}

/* Final legibility pass: keep the floating masthead crisp over long editorial sections. */
.masthead{background:linear-gradient(115deg,rgba(7,26,20,.985),rgba(22,74,58,.965))}

/* Val original photography and outlet experience · v1.4.5 */
.hero-image--val{object-position:72% 52%;filter:saturate(.9) contrast(1.03)}
.hero:has(.hero-image--val):after{background:linear-gradient(90deg,rgba(3,8,7,.97) 0%,rgba(3,8,7,.9) 35%,rgba(3,8,7,.28) 67%,rgba(3,8,7,.12) 100%),linear-gradient(180deg,rgba(3,8,7,.28),transparent 48%,rgba(3,8,7,.25))}
.dish-card img{background:#eee8dc}

.location-grid article{position:relative}
.location-card-link{position:absolute;z-index:1;inset:0}
.location-grid article>div{z-index:2;pointer-events:none}
.location-grid article>div a{position:relative;z-index:3;pointer-events:auto}
.location-grid h3 a{color:inherit}

.branch-location-card-media{display:block;overflow:hidden}
.branch-location-card-media img{width:100%;height:100%;object-fit:cover}
.branch-location-card h2 a{color:inherit}

.document-actions .action{justify-content:center;text-align:center}
.document-actions .action span{width:auto;display:block;text-align:center}
.menu-page-viewer .menu-document-frame{max-width:860px}
.menu-page-viewer iframe{height:min(78vh,780px)}

.story-homes{padding:clamp(5rem,8vw,8rem) clamp(1rem,7vw,6rem);background:#071a14;color:var(--text)}
.story-homes>header{max-width:850px;margin-bottom:3rem}
.story-homes h2{margin:.75rem 0 1rem;font-family:var(--display);font-size:clamp(3rem,5.5vw,6rem);font-weight:500;line-height:1.04;letter-spacing:-.025em}
.story-homes>header>p:last-child{max-width:58ch;color:var(--muted);line-height:1.7}
.story-homes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;background:rgba(224,178,109,.24)}
.story-homes-grid>a{position:relative;min-height:520px;overflow:hidden;background:#06110e;color:var(--text)}
.story-homes-grid img{width:100%;height:100%;object-fit:cover;filter:saturate(.82);transition:transform .65s var(--ease),filter .35s var(--ease)}
.story-homes-grid>a:after{content:"";position:absolute;inset:25% 0 0;background:linear-gradient(180deg,transparent,rgba(2,13,9,.94))}
.story-homes-grid span{position:absolute;z-index:1;right:1.5rem;bottom:1.5rem;left:1.5rem;display:grid;grid-template-columns:1fr auto;gap:.35rem 1rem;align-items:end}
.story-homes-grid small{grid-column:1/-1;color:var(--gold-light);font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase}
.story-homes-grid strong{font-family:var(--display);font-size:clamp(1.8rem,2.8vw,3rem);font-weight:500;line-height:1}
.story-homes-grid svg{width:1.25rem}
.story-homes-grid>a:hover img{transform:scale(1.025);filter:saturate(1)}

.outlet-detail{background:#06110e;color:var(--text)}
.outlet-hero{position:relative;min-height:min(900px,100dvh);overflow:hidden}
.outlet-hero:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,11,8,.32),rgba(3,11,8,.08) 40%,rgba(3,11,8,.88))}
.outlet-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;filter:saturate(.84) contrast(1.03)}
.outlet-hero-overlay{position:absolute;z-index:1;right:clamp(1rem,7vw,6rem);bottom:clamp(3rem,7vw,6rem);left:clamp(1rem,7vw,6rem)}
.outlet-hero h1{max-width:11ch;margin:.75rem 0;font-family:var(--display);font-size:clamp(5rem,10vw,10rem);font-weight:500;line-height:.86;letter-spacing:-.035em}
.outlet-hero-overlay>p:last-child{margin:0;color:#e5e3dc;font-family:var(--display);font-size:clamp(1.2rem,2vw,1.8rem)}
.outlet-intro{padding:clamp(5rem,9vw,9rem) clamp(1rem,7vw,6rem);display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:auto auto;column-gap:clamp(1.5rem,4vw,4.5rem);row-gap:clamp(2.5rem,5vw,5rem);background:radial-gradient(circle at 0 0,rgba(0,143,106,.14),transparent 36%),#0a1b16}
.outlet-story{grid-column:1 / 8;grid-row:1;align-self:start}
.outlet-story h2{max-width:10ch;margin:.8rem 0 1.75rem;font-family:var(--display);font-size:clamp(3.3rem,5.2vw,6rem);font-weight:500;line-height:1.22;letter-spacing:-.025em;text-wrap:balance}
.outlet-story>p:last-child{max-width:58ch;color:#b9c2bc;font-size:1rem;line-height:1.85}
.outlet-intro-photo{grid-column:1 / 8;grid-row:2;position:relative;min-height:clamp(260px,28vw,430px);margin:0;overflow:hidden;border:1px solid rgba(224,178,109,.28);background:#06110e}
.outlet-intro-photo:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(3,11,8,0) 52%,rgba(3,11,8,.78) 100%);pointer-events:none}
.outlet-intro-photo img{width:100%;height:100%;display:block;object-fit:cover;object-position:center 55%;filter:saturate(.86) contrast(1.03);transition:transform .6s var(--ease),filter .35s var(--ease)}
.outlet-intro-photo figcaption{position:absolute;z-index:1;right:1.1rem;bottom:1rem;left:1.1rem;color:#eee9dc;font-family:var(--display);font-size:1.25rem;line-height:1.05}
.outlet-intro-photo:hover img{transform:scale(1.025);filter:saturate(1) contrast(1.03)}
.outlet-contact{grid-column:9 / 13;grid-row:1 / 3;align-self:stretch;display:flex;flex-direction:column;padding:clamp(1.4rem,2.5vw,2.5rem) 0;border-top:1px solid rgba(224,178,109,.42);border-bottom:1px solid rgba(224,178,109,.42)}
.outlet-contact-heading{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding-bottom:1.4rem;border-bottom:1px solid rgba(224,178,109,.18)}
.outlet-contact-heading .eyebrow{margin:0}
.outlet-contact-heading>span{width:2.6rem;height:2.6rem;border:1px solid rgba(224,178,109,.42);border-radius:50%;display:grid;place-items:center;color:var(--gold-light)}
.outlet-contact-heading svg{width:1rem}
.outlet-contact-details{display:grid;gap:1.1rem;padding:1.45rem 0 1rem}
.outlet-contact-details>div{display:grid;gap:.28rem}
.outlet-contact-details>div>span{color:var(--gold);font-size:.6rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.outlet-contact address,.outlet-contact-details p,.outlet-contact-details a{margin:0;color:#e5e7e1;font-size:.9rem;font-style:normal;line-height:1.55;overflow-wrap:anywhere}
.outlet-contact-details p,.outlet-contact-details a{color:#b9c2bc}
.outlet-contact-details a{display:block;width:max-content;max-width:100%;transition:color .2s var(--ease)}
.outlet-contact-details a:hover{color:var(--gold-light)}
.outlet-actions{margin-top:auto;padding-top:1.25rem;display:grid;gap:.7rem}
.outlet-actions .action{width:100%;min-height:48px}
.outlet-directions{min-height:48px;display:flex;align-items:center;justify-content:center;gap:.5rem;color:var(--gold-light)}
.outlet-directions svg{width:1.1rem}
.outlet-gallery{padding:0 clamp(1rem,4vw,4rem) clamp(4rem,7vw,7rem);display:grid;grid-template-columns:1.2fr .8fr .8fr;grid-template-rows:520px;background:#06110e;gap:1rem}
.outlet-gallery figure{margin:0;overflow:hidden}
.outlet-gallery img{width:100%;height:100%;object-fit:cover;filter:saturate(.84)}
.outlet-video{display:grid;grid-template-columns:minmax(0,.78fr) minmax(0,1.22fr);gap:clamp(2rem,6vw,7rem);align-items:center;padding:clamp(4rem,7vw,7rem) clamp(1rem,7vw,6rem);background:#091612;border-top:1px solid rgba(224,178,109,.18)}
.outlet-video-copy h2{max-width:11ch;margin:.35rem 0 1.5rem;font-size:clamp(2.6rem,5vw,5rem);line-height:1.22}
.outlet-video-copy>p:last-child{max-width:34ch;color:var(--muted);line-height:1.7}
.outlet-video-frame{min-width:0;overflow:hidden;border:1px solid rgba(224,178,109,.28);border-radius:6px;background:#030806;box-shadow:0 20px 60px rgba(0,0,0,.22)}
.outlet-video-frame video{display:block;width:100%;height:auto;aspect-ratio:16 / 9;object-fit:cover;background:#030806}
.outlet-gallery--thanh-my-loi{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:clamp(360px,31vw,500px) clamp(360px,31vw,500px) clamp(300px,25vw,400px);gap:clamp(.65rem,1.1vw,1rem)}
.outlet-gallery--thanh-my-loi .outlet-gallery-item{min-width:0;height:auto;background:#0a1b16}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--1{grid-column:1 / 4;grid-row:1}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--2{grid-column:4 / 9;grid-row:1}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--3{grid-column:9 / 13;grid-row:1}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--4{grid-column:1 / 7;grid-row:2}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--5{grid-column:7 / 10;grid-row:2}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--6{grid-column:10 / 13;grid-row:2}
.outlet-gallery--thanh-my-loi .outlet-gallery-item--7{grid-column:1 / 13;grid-row:3}
.outlet-gallery--thanh-my-loi img{display:block;filter:saturate(.9) contrast(1.025);transition:transform .7s var(--ease),filter .35s var(--ease)}
.outlet-gallery--thanh-my-loi figure:hover img{transform:scale(1.018);filter:saturate(1) contrast(1.02)}

/* Thảo Điền's expanded gallery keeps the new images balanced across desktop and mobile. */
.outlet-gallery--thao-dien{grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:clamp(360px,31vw,500px) clamp(360px,31vw,500px) clamp(300px,25vw,400px);gap:clamp(.65rem,1.1vw,1rem)}
.outlet-gallery--thao-dien .outlet-gallery-item{min-width:0;height:auto;background:#0a1b16}
.outlet-gallery--thao-dien .outlet-gallery-item--1{grid-column:1 / 5;grid-row:1}
.outlet-gallery--thao-dien .outlet-gallery-item--2{grid-column:5 / 9;grid-row:1}
.outlet-gallery--thao-dien .outlet-gallery-item--3{grid-column:9 / 13;grid-row:1}
.outlet-gallery--thao-dien .outlet-gallery-item--4{grid-column:1 / 7;grid-row:2}
.outlet-gallery--thao-dien .outlet-gallery-item--5{grid-column:7 / 10;grid-row:2}
.outlet-gallery--thao-dien .outlet-gallery-item--6{grid-column:10 / 13;grid-row:2}
.outlet-gallery--thao-dien .outlet-gallery-item--7{grid-column:1 / 7;grid-row:3}
.outlet-gallery--thao-dien .outlet-gallery-item--8{grid-column:7 / 13;grid-row:3}
.outlet-gallery--thao-dien .outlet-gallery-item--7 img,.outlet-gallery--thao-dien .outlet-gallery-item--8 img{object-fit:cover;object-position:center}
.outlet-gallery--thao-dien img{display:block;filter:saturate(.9) contrast(1.025);transition:transform .7s var(--ease),filter .35s var(--ease)}
.outlet-gallery--thao-dien figure:hover img{transform:scale(1.018);filter:saturate(1) contrast(1.02)}

/* Da Lat real-space editorial gallery · v1.4.9 */
.outlet-gallery--da-lat{
  grid-template-columns:repeat(12,minmax(0,1fr));
  grid-template-rows:clamp(430px,35vw,550px) clamp(430px,35vw,550px) clamp(340px,28vw,440px);
  gap:clamp(.65rem,1.1vw,1rem)
}
.outlet-gallery--da-lat .outlet-gallery-item{position:relative;min-width:0;height:auto;background:#0a1b16}
.outlet-gallery--da-lat .outlet-gallery-item--1{grid-column:1 / 9;grid-row:1}
.outlet-gallery--da-lat .outlet-gallery-item--2{grid-column:9 / 13;grid-row:1}
.outlet-gallery--da-lat .outlet-gallery-item--3{grid-column:1 / 5;grid-row:2}
.outlet-gallery--da-lat .outlet-gallery-item--4{grid-column:5 / 13;grid-row:2}
.outlet-gallery--da-lat .outlet-gallery-item--5{grid-column:1 / 8;grid-row:3}
.outlet-gallery--da-lat .outlet-gallery-item--6{grid-column:8 / 13;grid-row:3}
.outlet-gallery--da-lat img{display:block;filter:saturate(.9) contrast(1.025);transition:transform .7s var(--ease),filter .35s var(--ease)}
.outlet-gallery--da-lat .outlet-gallery-item--2 img{object-position:center 44%}
.outlet-gallery--da-lat .outlet-gallery-item--3 img{object-position:center 52%}
.outlet-gallery--da-lat .outlet-gallery-item--4 img{object-position:center 48%}
.outlet-gallery--da-lat figure:hover img{transform:scale(1.018);filter:saturate(1) contrast(1.02)}
.outlet-switcher{padding:clamp(4rem,7vw,7rem) clamp(1rem,7vw,6rem);border-top:1px solid rgba(224,178,109,.22);background:#0a1b16}
.outlet-switcher>div{display:grid;grid-template-columns:repeat(3,1fr);margin-top:1.5rem;border-top:1px solid rgba(224,178,109,.22)}
.outlet-switcher a{min-height:84px;padding:1rem;border-bottom:1px solid rgba(224,178,109,.22);display:flex;align-items:center;justify-content:space-between;color:var(--text);font-family:var(--display);font-size:1.25rem}
.outlet-switcher a[aria-current="page"]{color:var(--gold-light)}
.outlet-switcher svg{width:1rem}

.format-grid article{padding:0;display:grid;grid-template-columns:minmax(180px,.82fr) minmax(0,1.18fr);min-height:360px;overflow:hidden}
.format-grid article figure{position:relative;z-index:auto;inset:auto;min-height:360px;margin:0;overflow:hidden}
.format-grid article figure img{width:100%;height:100%;object-fit:cover;filter:saturate(.83) contrast(1.03);transition:transform .65s var(--ease),filter .35s var(--ease)}
.format-card-copy{padding:clamp(1.4rem,2.6vw,2.4rem);display:flex;flex-direction:column}
.format-grid .format-card-copy>strong{display:block;margin-bottom:1.5rem;color:var(--gold-light);font-family:var(--display);font-size:1.15rem;font-weight:500}
.format-grid h3{margin:0}
.format-grid p{margin:auto 0 0;padding-top:1.5rem}
.format-grid article:hover figure img{transform:scale(1.025);filter:saturate(1)}

@media(max-width:1024px){
  .story-homes-grid{grid-template-columns:1fr 1fr}.story-homes-grid>a:last-child{grid-column:1/-1}
  .outlet-intro{column-gap:2rem}.outlet-story{grid-column:1 / 8}.outlet-intro-photo{grid-column:1 / 8}.outlet-contact{grid-column:8 / 13}
  .outlet-gallery{grid-template-columns:1fr 1fr;grid-template-rows:420px 330px}.outlet-gallery figure:first-child{grid-column:1/-1}
  .outlet-video{grid-template-columns:1fr;gap:2rem}.outlet-video-copy h2{max-width:14ch}
  .outlet-gallery--thanh-my-loi{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:400px 360px 360px 300px}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--1{grid-column:1;grid-row:1}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--2{grid-column:2;grid-row:1}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--3{grid-column:1 / -1;grid-row:2}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--4{grid-column:1;grid-row:3}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--5{grid-column:2;grid-row:3}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--6{grid-column:1;grid-row:4}
  .outlet-gallery--thanh-my-loi .outlet-gallery-item--7{grid-column:2;grid-row:4}
  .outlet-gallery--thao-dien{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:400px 360px 360px 300px}
  .outlet-gallery--thao-dien .outlet-gallery-item--1{grid-column:1;grid-row:1}
  .outlet-gallery--thao-dien .outlet-gallery-item--2{grid-column:2;grid-row:1}
  .outlet-gallery--thao-dien .outlet-gallery-item--3{grid-column:1 / -1;grid-row:2}
  .outlet-gallery--thao-dien .outlet-gallery-item--4{grid-column:1;grid-row:3}
  .outlet-gallery--thao-dien .outlet-gallery-item--5{grid-column:2;grid-row:3}
  .outlet-gallery--thao-dien .outlet-gallery-item--6{grid-column:1;grid-row:3}
  .outlet-gallery--thao-dien .outlet-gallery-item--7{grid-column:1;grid-row:4}
  .outlet-gallery--thao-dien .outlet-gallery-item--8{grid-column:2;grid-row:4}
  .outlet-gallery--da-lat{grid-template-columns:repeat(2,minmax(0,1fr));grid-template-rows:400px 470px 380px 310px}
  .outlet-gallery--da-lat .outlet-gallery-item--1{grid-column:1 / -1;grid-row:1}
  .outlet-gallery--da-lat .outlet-gallery-item--2{grid-column:1;grid-row:2}
  .outlet-gallery--da-lat .outlet-gallery-item--3{grid-column:2;grid-row:2}
  .outlet-gallery--da-lat .outlet-gallery-item--4{grid-column:1 / -1;grid-row:3}
  .outlet-gallery--da-lat .outlet-gallery-item--5{grid-column:1;grid-row:4}
  .outlet-gallery--da-lat .outlet-gallery-item--6{grid-column:2;grid-row:4}
  .format-grid article{grid-template-columns:1fr}.format-grid article figure{min-height:280px}.format-card-copy{min-height:310px}
}
@media(max-width:767px){
  .hero-image--val{object-position:64% center}
  .hero:has(.hero-image--val):after{background:linear-gradient(180deg,rgba(3,8,7,.45),rgba(3,8,7,.28) 38%,rgba(3,8,7,.92))}
  .menu-page-viewer{display:none}
  .story-homes{padding-block:4.75rem}.story-homes-grid{grid-template-columns:1fr}.story-homes-grid>a,.story-homes-grid>a:last-child{grid-column:auto;min-height:420px}
  .outlet-hero{min-height:720px}.outlet-hero h1{font-size:clamp(4.3rem,20vw,6.4rem);line-height:.9}
  .outlet-intro{display:flex;flex-direction:column;gap:2.6rem;padding-block:4.75rem}.outlet-story{order:1}.outlet-intro-photo{order:2;min-height:310px}.outlet-contact{order:3;padding:1.25rem 0 0}.outlet-story h2{max-width:12ch;font-size:clamp(3.2rem,14vw,5rem);line-height:1.22}.outlet-story>p:last-child{font-size:.95rem;line-height:1.75}.outlet-intro-photo figcaption{font-size:1.1rem}.outlet-contact-details{gap:1rem}.outlet-contact-details address,.outlet-contact-details p,.outlet-contact-details a{font-size:.88rem}
  .outlet-video{display:block;padding-block:4.5rem}.outlet-video-copy{margin-bottom:1.75rem}.outlet-video-copy h2{max-width:16ch;font-size:clamp(2.35rem,10.5vw,3.6rem);line-height:1.32;letter-spacing:-.015em}.outlet-video-copy>p:last-child{font-size:.92rem;line-height:1.7}.outlet-video-frame{border-radius:4px}.outlet-video-frame video{min-height:0}
  .outlet-gallery{grid-template-columns:1fr;grid-template-rows:none;padding-inline:1rem}.outlet-gallery figure,.outlet-gallery figure:first-child{grid-column:auto;height:360px}.outlet-gallery figure:nth-child(2),.outlet-gallery figure:nth-child(3){height:280px}
  .outlet-gallery--thanh-my-loi{grid-template-columns:1fr;grid-template-rows:none;gap:.7rem;padding-inline:.75rem}.outlet-gallery--thanh-my-loi .outlet-gallery-item,.outlet-gallery--thanh-my-loi .outlet-gallery-item:nth-child(n){grid-column:1;grid-row:auto;height:auto;aspect-ratio:4 / 3}.outlet-gallery--thanh-my-loi .outlet-gallery-item--1{aspect-ratio:3 / 4}.outlet-gallery--thanh-my-loi .outlet-gallery-item--7{aspect-ratio:16 / 9}
  .outlet-gallery--thao-dien{grid-template-columns:1fr;grid-template-rows:none;gap:.7rem;padding-inline:.75rem}.outlet-gallery--thao-dien .outlet-gallery-item,.outlet-gallery--thao-dien .outlet-gallery-item:nth-child(n){grid-column:1;grid-row:auto;height:auto;aspect-ratio:4 / 3}.outlet-gallery--thao-dien .outlet-gallery-item--7,.outlet-gallery--thao-dien .outlet-gallery-item--8{aspect-ratio:4 / 3}
  .outlet-gallery--da-lat{grid-template-columns:1fr;grid-template-rows:none;gap:.7rem;padding-inline:.75rem}
  .outlet-gallery--da-lat .outlet-gallery-item,
  .outlet-gallery--da-lat .outlet-gallery-item:first-child,
  .outlet-gallery--da-lat .outlet-gallery-item:nth-child(2),
  .outlet-gallery--da-lat .outlet-gallery-item:nth-child(3){grid-column:1;grid-row:auto;height:auto}
  .outlet-gallery--da-lat .outlet-gallery-item--landscape{aspect-ratio:4 / 3}
  .outlet-gallery--da-lat .outlet-gallery-item--portrait{aspect-ratio:3 / 4}
  .outlet-gallery--da-lat .outlet-gallery-item--1{aspect-ratio:16 / 11}
  .outlet-switcher>div{grid-template-columns:1fr}.outlet-switcher a{padding-inline:0}
  .format-grid article,.format-grid article:nth-child(n){display:grid;grid-template-columns:1fr;min-width:88vw;min-height:0}.format-grid article figure{height:260px;min-height:260px}.format-card-copy{min-height:330px}
}

/* Homepage hero refresh: use the supplied oven photograph and match the left-led editorial reference. */
.hero-image--oven{object-position:center center;filter:saturate(.92) contrast(1.04) brightness(.88)}
.hero:has(.hero-image--oven):after{background:linear-gradient(90deg,rgba(3,8,7,.9) 0%,rgba(3,8,7,.67) 30%,rgba(3,8,7,.18) 64%,rgba(3,8,7,.12) 100%),linear-gradient(180deg,rgba(3,8,7,.3),transparent 42%,rgba(3,8,7,.42))}
.hero:has(.hero-image--oven) .hero-copy{top:50%;left:clamp(2rem,8vw,7rem);width:min(650px,calc(100% - 8rem));transform:translateY(-38%);align-items:flex-start;text-align:left}
@media(max-width:767px){
  .hero-image--oven{object-position:57% center}
  .hero:has(.hero-image--oven):after{background:linear-gradient(180deg,rgba(3,8,7,.45),rgba(3,8,7,.22) 32%,rgba(3,8,7,.9) 100%)}
  .hero:has(.hero-image--oven) .hero-copy{top:50%;left:1.15rem;width:calc(100% - 2.3rem);transform:translateY(-35%);align-items:flex-start;text-align:left}
}

/* Keep the supplied Consulate artwork readable after the earlier generic mobile logo rule. */
@media(max-width:767px){.catering-clients .client-logo:nth-child(3) img{height:82px;max-width:180px}}
@media(prefers-reduced-motion:reduce){.story-homes-grid img,.format-grid article figure img{transition:none}}

/* Google review photos: show the dish attached to the review, not a reviewer portrait. */
.homepage-reviews .review-photo{height:clamp(92px,12vw,150px);margin:1rem 0 .9rem;overflow:hidden;border-radius:10px;background:#111d18}
.homepage-reviews .review-photo img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(150px,18vw,240px);margin:1.5rem 0 1.25rem}
.homepage-reviews .review-avatar{display:grid;place-items:center;background:rgba(7,18,15,.7);color:#e0dbcf}
@media(max-width:767px){
  .catering-clients .client-logo:nth-child(3) img{height:104px;max-width:220px}
  .homepage-reviews .review-photo,.homepage-reviews .review-grid>article:first-child .review-photo{height:128px;margin:1rem 0 .9rem}
}

/* The supplied homepage photo should read naturally without a dark wash over it. */
.hero-image--oven{filter:saturate(.96) contrast(1.03) brightness(1)}
.hero:has(.hero-image--oven):after{background:none}
@media(max-width:767px){.hero:has(.hero-image--oven):after{background:none}}

/* Final mobile sizing overrides after the legacy review/client rules below. */
@media(max-width:767px){
  .homepage-reviews .review-grid>article,
  .homepage-reviews .review-grid>article:first-child{
    min-height:440px;
    height:440px;
  }
  .homepage-reviews .review-grid>article:first-child>p{font-size:1.4rem;line-height:1.22}
  .catering-clients .client-logo:nth-child(3) img{
    width:116%;
    height:108px;
    max-width:none;
    transform:scale(1.08);
  }
}

/* FINAL OVERRIDE 2026-09-26: premium guest stories, verified avatars and food photos. */
.homepage-reviews{padding-top:clamp(5.5rem,8vw,8rem);padding-bottom:clamp(6rem,9vw,9rem);background:radial-gradient(circle at 82% 10%,rgba(199,149,79,.13),transparent 28%),linear-gradient(145deg,#07110e 0%,#0a1914 62%,#06100d 100%);overflow:hidden}
.homepage-reviews:before{content:"";position:absolute;top:clamp(2rem,5vw,4rem);right:clamp(1rem,5vw,4rem);width:clamp(4rem,8vw,7rem);height:1px;background:var(--gold);opacity:.75}
.homepage-reviews .section-intro{margin-bottom:clamp(2.5rem,5vw,4.25rem)}
.homepage-reviews .section-intro h2{max-width:11ch;font-size:clamp(3.4rem,6.2vw,6.2rem);line-height:.93;letter-spacing:-.04em}
.homepage-reviews .review-intro-copy{max-width:42ch;margin-top:1.25rem;color:#bfc5bf;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.7}
.homepage-reviews .review-grid{height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1.22fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:1rem}
.homepage-reviews .review-grid>article{min-width:0;min-height:0;height:auto;padding:0;border:1px solid rgba(224,178,109,.24);border-radius:0;background:rgba(244,239,228,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden;display:flex;flex-direction:column;transition:transform .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease)}
.homepage-reviews .review-grid>article:hover{transform:translateY(-5px);border-color:rgba(224,178,109,.65);background:rgba(244,239,228,.075)}
.homepage-reviews .review-grid>article:first-child{grid-row:1/3;min-height:0}
.homepage-reviews .review-photo,.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(150px,15vw,230px);flex:0 0 auto;margin:0;border-radius:0;background:#111d18}
.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(240px,27vw,390px)}
.homepage-reviews .review-photo img{height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.homepage-reviews .review-grid>article:hover .review-photo img{transform:scale(1.035)}
.homepage-reviews .review-card-copy{display:flex;flex:1;flex-direction:column;padding:1.15rem 1.25rem 1.2rem}
.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.7rem 2rem 1.5rem}
.homepage-reviews blockquote{margin:0 0 1.5rem}.homepage-reviews blockquote p{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(1.3rem,1.8vw,2rem);line-height:1.16;letter-spacing:-.01em}.homepage-reviews .review-grid>article:first-child blockquote p{font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.04}
.homepage-reviews .review-person{margin-top:auto;align-items:center;gap:.7rem}.homepage-reviews .review-avatar{width:2.75rem;height:2.75rem;border:1px solid rgba(224,178,109,.6);border-radius:50%;background:#0a2018;box-shadow:0 0 0 4px rgba(199,149,79,.06)}.homepage-reviews .review-grid>article:first-child .review-avatar{width:3.4rem;height:3.4rem}.homepage-reviews .review-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.homepage-reviews .review-person h3{font-size:.82rem;letter-spacing:.03em}.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:1rem}.homepage-reviews .review-person small{font-size:.55rem;color:#aeb5ac}.homepage-reviews .stars{display:block;margin-top:.14rem;font-size:.68rem;letter-spacing:.13em;color:var(--gold-light)}
.homepage-reviews .review-source{position:static;align-self:flex-start;min-height:42px;margin-top:1.1rem;padding-top:.8rem;border-top:1px solid rgba(224,178,109,.18);display:flex;align-items:center;gap:.35rem;color:var(--gold-light);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.homepage-reviews .review-source:hover{color:var(--text)}.homepage-reviews .review-source span:last-child{font-size:.95rem;line-height:1}.homepage-reviews .dots{display:none}
@media(max-width:1024px) and (min-width:768px){.homepage-reviews .review-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.homepage-reviews .review-grid>article:first-child{grid-row:auto}.homepage-reviews .review-grid>article:first-child .review-photo{height:260px}}
@media(max-width:767px){.homepage-reviews{padding:4.75rem 1rem 5.5rem}.homepage-reviews:before{top:2rem;right:1rem;width:4.5rem}.homepage-reviews .section-intro{margin-bottom:2rem}.homepage-reviews .section-intro h2{max-width:10ch;font-size:clamp(2.75rem,14vw,4.4rem);line-height:.96}.homepage-reviews .review-intro-copy{max-width:33ch;margin-top:1rem;font-size:.82rem;line-height:1.6}.homepage-reviews .review-grid{display:grid!important;grid-template-columns:1fr;grid-template-rows:none;gap:.75rem;overflow:visible!important}.homepage-reviews .review-grid>article,.homepage-reviews .review-grid>article:first-child{grid-row:auto;grid-column:auto!important;min-width:0!important;min-height:0!important;height:auto!important;display:flex;padding:0}.homepage-reviews .review-grid>article:first-child .review-photo,.homepage-reviews .review-photo{height:220px}.homepage-reviews .review-card-copy,.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.2rem 1.1rem 1.1rem}.homepage-reviews blockquote{margin-bottom:1.2rem}.homepage-reviews blockquote p,.homepage-reviews .review-grid>article:first-child blockquote p{font-size:1.55rem;line-height:1.1}.homepage-reviews .review-grid>article:first-child .review-avatar,.homepage-reviews .review-avatar{width:2.7rem;height:2.7rem}.homepage-reviews .review-person h3,.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:.82rem}.homepage-reviews .review-source{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){.homepage-reviews .review-grid>article,.homepage-reviews .review-photo img{transition:none}}

/* Responsive formats for the 2026-09-30 Marketing photography. */
.pf-responsive-picture{display:block;width:100%;height:100%}
.kitchen-section .dish-card>.pf-responsive-picture{position:absolute;z-index:-2;inset:0}
.kitchen-section .dish-card>.pf-responsive-picture>img{width:100%;height:100%;object-fit:cover;filter:saturate(.94) contrast(1.02);transition:transform .75s var(--ease),filter .45s var(--ease)}
.kitchen-section .dish-card:hover>.pf-responsive-picture>img{transform:scale(1.045);filter:saturate(.98) contrast(1.02)}
.menu-photo-story__item>.pf-responsive-picture{width:100%;height:100%}
@media(prefers-reduced-motion:reduce){.kitchen-section .dish-card>.pf-responsive-picture>img{transition:none}}

/* Val final revision · official Marketing photography + compact editorial carousel. */
.kitchen-section{min-height:0;padding-bottom:7rem;overflow:hidden}
.kitchen-section .dish-carousel{position:relative;margin-inline:-4rem;padding-inline:4rem}
.kitchen-section .dish-grid{height:auto;display:flex!important;grid-template:none;gap:1rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:none;padding:0 4rem 1rem;scroll-padding-inline:4rem}
.kitchen-section .dish-grid::-webkit-scrollbar{display:none}
.kitchen-section .dish-card,.kitchen-section .dish-card:nth-child(n){position:relative;flex:0 0 clamp(360px,38vw,560px);height:560px;grid-column:auto;grid-row:auto;scroll-snap-align:start;scroll-snap-stop:normal;border-color:rgba(224,178,109,.32);border-radius:0;padding:0;background:#07110e;box-shadow:none}
.kitchen-section .dish-card:after{inset:0;border-radius:0;background:linear-gradient(180deg,rgba(2,7,5,.04) 35%,rgba(2,7,5,.92) 100%)}
.kitchen-section .dish-card>img{inset:0;width:100%;height:100%;border-radius:0;object-fit:cover;filter:saturate(.94) contrast(1.02)}
.kitchen-section .dish-card>div{padding:1.45rem 1.5rem 1.55rem}
.dish-card__number{margin:0 0 .75rem;color:var(--gold-light);font-size:.62rem;font-weight:700;letter-spacing:.14em}
.kitchen-section .dish-card h3{max-width:18ch;margin:0 0 .45rem;font-size:clamp(1.6rem,2.6vw,2.7rem);line-height:1.02;text-transform:none}
.kitchen-section .dish-card span{font-size:.62rem;letter-spacing:.06em;text-transform:uppercase}
.dish-carousel__controls{display:flex;align-items:center;justify-content:flex-end;gap:.7rem;margin-top:.85rem;padding-inline:4rem}
.dish-carousel__controls button{width:48px;height:48px;border:1px solid rgba(224,178,109,.32);border-radius:50%;display:grid;place-items:center;background:rgba(244,239,228,.035);color:var(--off-white);cursor:pointer;touch-action:manipulation;transition:border-color .22s ease,background .22s ease,color .22s ease}
.dish-carousel__controls button:first-child svg{transform:rotate(180deg)}
.dish-carousel__controls button:hover:not(:disabled),.dish-carousel__controls button:focus-visible{border-color:var(--gold);background:var(--gold);color:var(--deep)}
.dish-carousel__controls button:focus-visible{outline:3px solid rgba(247,211,152,.45);outline-offset:3px}
.dish-carousel__controls button:disabled{opacity:.32;cursor:default}
.dish-carousel__controls svg{width:1rem}
.dish-carousel__controls p{min-width:96px;margin:0;display:flex;align-items:center;gap:.55rem;color:var(--muted);font-size:.72rem;font-variant-numeric:tabular-nums}
.dish-carousel__controls p span:first-child{color:var(--off-white)}
.dish-carousel__controls p i{width:32px;height:1px;background:rgba(224,178,109,.4)}
.kitchen-section .section-action{margin-top:-3rem;display:flex;justify-content:flex-start}

.detail-hero--menu{background-image:none!important;overflow:hidden}
.detail-hero-media{position:absolute;z-index:-2;inset:0;display:block}
.detail-hero-media img{width:100%;height:100%;object-fit:cover;object-position:center 48%;filter:saturate(.96) contrast(1.02)}
.menu-detail .detail-hero--menu:before{background:linear-gradient(90deg,rgba(3,13,9,.96) 0%,rgba(3,13,9,.78) 38%,rgba(3,13,9,.12) 72%),linear-gradient(0deg,rgba(3,13,9,.72),transparent 58%)}

@media(max-width:1024px){
  .kitchen-section .dish-carousel{margin-inline:-2rem;padding-inline:2rem}.kitchen-section .dish-grid{padding-inline:2rem;scroll-padding-inline:2rem}.dish-carousel__controls{padding-inline:2rem}
}
@media(min-width:768px){
  .kitchen-section .dish-carousel{margin-inline:0;padding-inline:0}
  .kitchen-section .dish-grid{height:auto;display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;overflow:visible;overscroll-behavior:auto;scroll-snap-type:none;padding:0;scroll-padding:0}
  .kitchen-section .dish-card,.kitchen-section .dish-card:nth-child(n){min-width:0;width:auto;height:360px;display:block;grid-column:auto;grid-row:auto;scroll-snap-align:none}
  .kitchen-section .dish-card>div{padding:1.05rem 1.1rem 1.15rem}
  .kitchen-section .dish-card h3{font-size:clamp(1.35rem,2vw,2rem)}
  .kitchen-section .dish-card span{font-size:.54rem}
  .dish-carousel__controls{display:none}
  .kitchen-section .section-action{margin-top:2rem}
}
@media(min-width:1024px){.kitchen-section .dish-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.kitchen-section .dish-card,.kitchen-section .dish-card:nth-child(n){height:380px}}
@media(max-width:767px){
  .kitchen-section{padding-bottom:5.5rem}.kitchen-section .dish-carousel{margin-inline:0;padding-inline:0}.kitchen-section .dish-grid{height:auto!important;padding:0 1rem .75rem;scroll-padding-inline:1rem;gap:.7rem}.kitchen-section .dish-card,.kitchen-section .dish-card:nth-child(n){flex-basis:82vw;min-width:0;height:420px}.kitchen-section .dish-card>img{height:100%}.kitchen-section .dish-card>div{padding:1.1rem 1.15rem 1.2rem}.kitchen-section .dish-card h3{font-size:1.7rem}.dish-carousel__controls{justify-content:space-between;margin-top:.6rem;padding-inline:1rem}.dish-carousel__controls p{justify-content:center}.kitchen-section .section-action{margin:1.4rem 1rem 0}.kitchen-section .section-action .action{width:100%}.detail-hero-media img{object-position:center 46%}.menu-detail .detail-hero--menu:before{background:linear-gradient(180deg,rgba(3,13,9,.58) 0%,rgba(3,13,9,.25) 34%,rgba(3,13,9,.8) 100%),linear-gradient(90deg,rgba(3,13,9,.72),transparent 70%)}
}
@media(prefers-reduced-motion:reduce){.kitchen-section .dish-card>img,.dish-carousel__controls button{transition:none}.kitchen-section .dish-grid{scroll-behavior:auto}}

/* Six-image editorial gallery on the Menu page; the official PDF remains unchanged. */
.menu-photo-story{padding:clamp(4rem,7vw,7rem) clamp(1rem,5vw,4rem);background:linear-gradient(180deg,#07110e,#092018);border-top:1px solid rgba(224,178,109,.16);border-bottom:1px solid rgba(224,178,109,.16)}
.menu-photo-story>header{max-width:1180px;margin:0 auto clamp(2rem,4vw,3.5rem);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.7fr);gap:1rem 4rem;align-items:end}.menu-photo-story>header .eyebrow{grid-column:1/-1}.menu-photo-story>header h2{max-width:13ch;margin:0;font-family:var(--display);font-size:clamp(2.8rem,5.6vw,5.6rem);font-weight:500;line-height:.95;text-transform:uppercase}.menu-photo-story>header>p:last-child{max-width:38ch;margin:0 0 .45rem;color:var(--muted);font-size:.86rem;line-height:1.7}
.menu-photo-story__grid{max-width:1180px;margin:0 auto;display:grid;grid-template-columns:repeat(12,minmax(0,1fr));grid-template-rows:repeat(3,260px);gap:.8rem}.menu-photo-story__item{position:relative;margin:0;overflow:hidden;background:#0b1a15}.menu-photo-story__item:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 52%,rgba(2,8,5,.78));pointer-events:none}.menu-photo-story__item img{width:100%;height:100%;object-fit:cover;filter:saturate(.96) contrast(1.02);transition:transform .55s var(--ease)}.menu-photo-story__item:hover img{transform:scale(1.025)}.menu-photo-story__item figcaption{position:absolute;z-index:1;right:1rem;bottom:.9rem;left:1rem;display:flex;gap:.65rem;color:var(--off-white);font-family:var(--display);font-size:1.05rem;line-height:1.1}.menu-photo-story__item figcaption span{color:var(--gold-light);font-family:var(--body);font-size:.58rem;font-weight:700;letter-spacing:.1em}.menu-photo-story__item--1{grid-column:1/8;grid-row:1/3}.menu-photo-story__item--2{grid-column:8/13;grid-row:1}.menu-photo-story__item--3{grid-column:8/13;grid-row:2}.menu-photo-story__item--4{grid-column:1/5;grid-row:3}.menu-photo-story__item--5{grid-column:5/9;grid-row:3}.menu-photo-story__item--6{grid-column:9/13;grid-row:3}
@media(max-width:767px){.menu-page-intro h2{font-size:clamp(2.7rem,12.2vw,3.55rem);line-height:1.16;letter-spacing:-.006em}.menu-photo-story{padding:4.5rem 1rem}.menu-photo-story>header{display:block;margin-bottom:1.75rem}.menu-photo-story>header h2{font-size:clamp(2.7rem,12.2vw,3.75rem);line-height:1.16;letter-spacing:-.006em}.menu-photo-story>header>p:last-child{margin-top:1rem}.menu-photo-story__carousel{margin-inline:-1rem}.menu-photo-story__grid{max-width:none;margin:0;display:flex;grid-template:none;grid-template-rows:none;gap:.7rem;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scroll-padding-inline:1rem;padding:0 1rem .75rem;scrollbar-width:none}.menu-photo-story__grid::-webkit-scrollbar{display:none}.menu-photo-story__item,.menu-photo-story__item--1,.menu-photo-story__item--2,.menu-photo-story__item--3,.menu-photo-story__item--4,.menu-photo-story__item--5,.menu-photo-story__item--6,.menu-photo-story__item:last-child{flex:0 0 82vw;height:420px;grid-column:auto;grid-row:auto;scroll-snap-align:start;scroll-snap-stop:normal}.menu-photo-story__item figcaption{right:1rem;bottom:.9rem;left:1rem;font-size:1rem}.menu-photo-story__item figcaption span{font-size:.55rem}.menu-photo-story__controls{margin-top:.6rem;padding-inline:1rem}}
@media(prefers-reduced-motion:reduce){.menu-photo-story__item img{transition:none}}

/* One Zalo entry point; branch numbers stay sourced from the Location CMS. */
.zalo-contact{position:relative;z-index:92}
.zalo-trigger{position:fixed;right:clamp(1rem,2vw,1.5rem);bottom:max(1rem,env(safe-area-inset-bottom));min-width:96px;min-height:52px;padding:.45rem .8rem .45rem .5rem;border:1px solid rgba(247,211,152,.48);border-radius:999px;display:flex;align-items:center;gap:.55rem;background:rgba(5,24,17,.94);color:var(--off-white);box-shadow:0 14px 34px rgba(0,0,0,.34);backdrop-filter:blur(14px);cursor:pointer;touch-action:manipulation}
.zalo-trigger>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#0878ff;color:#fff;font-family:Arial,sans-serif;font-size:.62rem;font-weight:700;letter-spacing:-.03em}
.zalo-trigger>strong{font-size:.68rem;font-weight:700;letter-spacing:.02em}
.zalo-trigger:hover,.zalo-trigger:focus-visible{border-color:var(--gold);background:#0b3528;color:#fff}
.zalo-trigger:focus-visible{outline:3px solid rgba(247,211,152,.5);outline-offset:3px}
.zalo-layer{position:fixed;z-index:93;inset:0;background:rgba(0,0,0,.18)}
.zalo-sheet{position:absolute;right:clamp(1rem,2vw,1.5rem);bottom:calc(max(1rem,env(safe-area-inset-bottom)) + 62px);width:min(390px,calc(100% - 2rem));padding:1.2rem;border:1px solid rgba(247,211,152,.34);background:#092319;color:var(--off-white);box-shadow:0 24px 70px rgba(0,0,0,.5)}
.zalo-sheet header{display:grid;grid-template-columns:1fr 44px;gap:1rem;padding-bottom:1rem;border-bottom:1px solid rgba(247,211,152,.18)}
.zalo-sheet header .eyebrow{margin:0 0 .35rem}.zalo-sheet h2{margin:0;font-size:1.75rem;line-height:1.06;text-transform:none}.zalo-sheet header p:last-child{margin:.55rem 0 0;color:#bec8c2;font-size:.78rem;line-height:1.5}
.zalo-sheet header button{width:44px;height:44px;border:1px solid rgba(247,211,152,.25);display:grid;place-items:center;background:transparent;color:var(--off-white);cursor:pointer}.zalo-sheet header button svg{width:1rem}.zalo-sheet header button:focus-visible{outline:3px solid var(--gold);outline-offset:2px}
.zalo-sheet nav{display:grid;margin-top:.5rem}.zalo-sheet nav a{min-height:66px;padding:.75rem .15rem;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgba(247,211,152,.14);color:var(--off-white)}.zalo-sheet nav a:last-child{border-bottom:0}.zalo-sheet nav a:hover,.zalo-sheet nav a:focus-visible{color:var(--gold-light)}.zalo-sheet nav a:focus-visible{outline:2px solid var(--gold);outline-offset:2px}.zalo-sheet nav strong{display:block;font-family:var(--display);font-size:1.15rem;font-weight:500}.zalo-sheet nav small{display:block;margin-top:.18rem;color:#aebcb4;font-size:.65rem}.zalo-sheet nav svg{width:1rem}
.zalo-open .cookie-banner{visibility:hidden;pointer-events:none}
@media(max-width:767px){
  .zalo-trigger{right:1rem;bottom:max(1rem,env(safe-area-inset-bottom));min-width:92px;min-height:50px}.zalo-trigger>span{width:36px;height:36px}
  body:has(.cookie-banner:not([hidden])) .zalo-trigger{bottom:calc(max(1rem,env(safe-area-inset-bottom)) + 126px)}
  body.zalo-open .zalo-trigger{bottom:max(1rem,env(safe-area-inset-bottom))}
  .zalo-layer{display:flex;align-items:flex-end;background:rgba(1,8,5,.62);backdrop-filter:blur(3px)}
  .zalo-sheet{position:relative;right:auto;bottom:auto;width:100%;max-height:min(78dvh,620px);overflow:auto;padding:1.25rem 1rem calc(1.25rem + env(safe-area-inset-bottom));border-width:1px 0 0;border-radius:18px 18px 0 0;box-shadow:0 -24px 70px rgba(0,0,0,.46)}
  .zalo-sheet:before{content:"";width:42px;height:4px;margin:0 auto 1rem;border-radius:99px;display:block;background:rgba(247,211,152,.35)}
  .zalo-sheet h2{font-size:1.9rem}.zalo-sheet nav a{min-height:68px}
}
@media(prefers-reduced-motion:reduce){.zalo-trigger{transition:none}}

/* Recruitment headings: leave room for Vietnamese accents on wrapped lines. */
.careers-archive .careers-hero>h1,
.careers-archive .career-card h3,
.job-page .job-header h1{line-height:1.35;letter-spacing:0}

/* Careers · dynamic vacancies */
.careers-archive{padding-inline:clamp(1rem,7vw,6rem)}
.careers-hero{max-width:1180px;margin-bottom:clamp(4rem,8vw,7rem);display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,.72fr);column-gap:clamp(3rem,8vw,8rem);align-items:start}
.careers-hero>.eyebrow,.careers-hero>h1{grid-column:1}
.careers-hero>h1{max-width:8ch;margin-top:clamp(1.2rem,3vw,2.4rem);font-size:clamp(4.5rem,8vw,8rem);line-height:.88;letter-spacing:-.035em;text-wrap:balance}
.careers-intro-copy{grid-column:2;grid-row:1/3;padding-top:.15rem;border-top:1px solid var(--line)}
.careers-intro-copy p{margin:0;padding:1rem 0;border-bottom:1px solid rgba(247,211,152,.14);font-size:clamp(.92rem,1.2vw,1.06rem);line-height:1.72}
.careers-intro-copy p:first-child{color:var(--text);font-size:clamp(1.08rem,1.5vw,1.28rem)}
.careers-vacancies{max-width:1180px;margin:0 auto}
.careers-vacancies__heading{display:flex;align-items:end;justify-content:space-between;gap:2rem;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--line)}
.careers-vacancies__heading h2{margin:0;font-family:var(--display);font-size:clamp(2.8rem,5vw,5.3rem);font-weight:500;line-height:.95;text-transform:uppercase}
.career-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}
.career-card{position:relative;min-height:360px!important;max-width:none!important;margin:0!important;padding:clamp(1.5rem,3vw,2.3rem);border:1px solid rgba(247,211,152,.24);border-radius:16px;display:flex;flex-direction:column;background:linear-gradient(145deg,rgba(245,244,239,.065),rgba(245,244,239,.018));box-shadow:0 18px 50px rgba(1,14,10,.16);transition:border-color .2s ease,transform .2s ease,background-color .2s ease}
.career-card:hover,.career-card:focus-within{border-color:rgba(247,211,152,.55);transform:translateY(-3px);background-color:rgba(245,244,239,.025)}
.career-card__meta{display:flex;flex-wrap:wrap;gap:.5rem}
.career-card__meta span{padding:.42rem .65rem;border:1px solid rgba(247,211,152,.25);border-radius:999px;color:var(--gold-light);font-size:.65rem;letter-spacing:.08em;text-transform:uppercase}
.career-card h3{margin:clamp(1.5rem,3vw,2.5rem) 0 1.1rem;font-family:var(--display);font-size:clamp(2.25rem,4vw,3.8rem);font-weight:500;line-height:.98;text-transform:uppercase;overflow-wrap:anywhere;text-wrap:balance}
.career-card h3 a{color:inherit}
.career-card>p{max-width:52ch;margin:.8rem 0 1.8rem;font-size:.88rem;line-height:1.7}
.career-card__facts{display:flex;flex-wrap:wrap;gap:.8rem 2rem;margin:0 0 .5rem}
.career-card__facts div{min-width:120px}.career-card__facts dt{color:var(--dim);font-size:.62rem;letter-spacing:.08em;text-transform:uppercase}.career-card__facts dd{margin:.3rem 0 0;font-size:.84rem}
.career-card__link{min-height:44px;margin-top:auto;align-self:flex-start}
.careers-vacancies .archive-empty{grid-column:1/-1;padding:clamp(1.5rem,5vw,4rem);border-color:rgba(247,211,152,.28);background:linear-gradient(135deg,rgba(247,211,152,.07),rgba(245,244,239,.025))}
.careers-vacancies .archive-empty h3{max-width:18ch;margin:.5rem 0 1rem;font-family:var(--display);font-size:clamp(2rem,4vw,3.6rem);font-weight:500;line-height:1.02;text-transform:uppercase}
.job-page{padding-inline:clamp(1rem,7vw,6rem)}
.job-page>article{max-width:1040px;margin:auto}
.job-back,.job-footer-link{min-height:44px;display:inline-flex;align-items:center;gap:.55rem;color:var(--gold-light);font-size:.67rem;letter-spacing:.08em;text-transform:uppercase}
.job-back svg,.job-footer-link svg{width:1rem;transform:rotate(180deg)}
.job-header{position:relative;margin:clamp(2.2rem,5vw,4.8rem) 0 2.2rem;padding-bottom:clamp(2rem,4vw,3rem);border-bottom:1px solid var(--line)}
.job-header h1{max-width:12ch;margin:.8rem 0 1.5rem;font-size:clamp(3.6rem,8vw,7.5rem);line-height:.9;letter-spacing:-.035em;overflow-wrap:anywhere;text-wrap:balance}
.job-status{display:inline-flex;align-items:center;gap:.45rem;padding:.5rem .7rem;border-radius:999px;font-size:.67rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase}
.job-status:before{content:"";width:7px;height:7px;border-radius:50%;background:currentColor}.job-status.is-open{background:rgba(122,211,151,.12);color:#a8e6b9}.job-status.is-closed{background:rgba(255,167,167,.1);color:#ffb3b3}
.job-facts{margin:0 0 clamp(2.5rem,5vw,4.5rem);grid-template-columns:repeat(4,minmax(0,1fr));border-color:rgba(247,211,152,.24);background:rgba(245,244,239,.025)}
.job-facts>div{min-width:0;padding:1.25rem;border-color:rgba(247,211,152,.18)}
.job-facts dt{color:var(--dim);letter-spacing:.08em}.job-facts dd{font-size:.92rem;line-height:1.45;overflow-wrap:anywhere}
.job-summary{max-width:42ch;margin:0 0 clamp(3rem,6vw,5rem);font-family:var(--display);font-size:clamp(1.7rem,3.4vw,2.8rem);line-height:1.22!important;color:var(--text)!important;text-wrap:balance}
.job-closed{margin:0 0 2.5rem;padding:1.2rem 1.3rem;border:1px solid rgba(255,179,179,.28);border-radius:12px;background:rgba(255,179,179,.06)}
.job-section{display:grid;grid-template-columns:minmax(180px,.36fr) minmax(0,.64fr);gap:clamp(2rem,7vw,7rem);margin:0;padding:clamp(2rem,4vw,3.2rem) 0;border-top:1px solid rgba(247,211,152,.18)}
.job-section h2{margin:0;font-family:var(--display);font-size:clamp(1.8rem,3vw,2.7rem);font-weight:500;line-height:1.05;text-transform:uppercase}
.job-section>p,.job-section>div,.job-section>ul{margin:0;color:var(--muted);font-size:.98rem;line-height:1.75}
.job-section>div p{margin:0 0 1rem}.job-section>div p:last-child{margin-bottom:0}
.job-section ul{padding-left:1.2rem}.job-section li{margin-bottom:.8rem;padding-left:.35rem}.job-section li::marker{color:var(--gold)}
.job-apply{margin:clamp(2rem,5vw,4rem) 0;padding:clamp(1.5rem,4vw,2.5rem);border:1px solid rgba(247,211,152,.28);border-radius:14px;display:flex;align-items:center;justify-content:space-between;gap:2rem;background:linear-gradient(120deg,rgba(247,211,152,.09),rgba(245,244,239,.025))}
.job-apply p{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.1}
.job-apply .action{flex:none}.job-footer-link{margin-top:1rem}
@media(max-width:900px){.careers-hero{grid-template-columns:1fr}.careers-hero>.eyebrow,.careers-hero>h1,.careers-intro-copy{grid-column:1;grid-row:auto}.careers-intro-copy{margin-top:2.5rem}.career-list{grid-template-columns:1fr}.job-facts{grid-template-columns:repeat(2,minmax(0,1fr))}.job-facts>div:nth-child(2){border-right:0}.job-facts>div:nth-child(-n+2){border-bottom:1px solid rgba(247,211,152,.18)}}
@media(max-width:600px){.careers-archive,.job-page{padding-top:7.25rem;padding-bottom:5rem}.careers-hero{margin-bottom:4rem}.careers-hero>h1{font-size:clamp(3.7rem,19vw,5.4rem)}.careers-intro-copy{margin-top:1.75rem}.careers-intro-copy p{font-size:.92rem}.careers-intro-copy p:first-child{font-size:1.03rem}.careers-vacancies__heading{display:block}.careers-vacancies__heading h2{margin-top:.65rem;font-size:3rem}.career-card{min-height:330px!important;padding:1.35rem}.career-card h3{font-size:2.45rem}.career-card__facts{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.job-header{margin-top:2.2rem}.job-header h1{font-size:clamp(3.2rem,16vw,5rem)}.job-facts{grid-template-columns:1fr}.job-facts>div,.job-facts>div:nth-child(2){border-right:0;border-bottom:1px solid rgba(247,211,152,.18)}.job-facts>div:last-child{border-bottom:0}.job-section{grid-template-columns:1fr;gap:1.1rem}.job-section h2{font-size:2rem}.job-apply{display:block}.job-apply .action{width:100%;margin-top:1.25rem}.job-apply .action span{flex:1}.job-summary{font-size:1.7rem}}
@media(prefers-reduced-motion:reduce){.career-card{transition:none}}

/* 2026-09-27 — Val final homepage Hero adjustments. */
.hero-title-line--mobile{display:none!important}
.hero:has(.hero-image--oven):after{
  background:
    linear-gradient(90deg,rgba(3,8,7,.70) 0%,rgba(3,8,7,.54) 26%,rgba(3,8,7,.18) 44%,rgba(3,8,7,0) 58%),
    linear-gradient(180deg,rgba(3,8,7,.08) 0%,rgba(3,8,7,0) 46%,rgba(3,8,7,.12) 100%)
}
@media(max-width:767px){
  .hero-title-line--desktop{display:none!important}
  .hero-title-line--mobile{display:block!important;white-space:nowrap!important}
  .hero:has(.hero-image--oven):after{
    background:
      linear-gradient(90deg,rgba(3,8,7,.72) 0%,rgba(3,8,7,.60) 32%,rgba(3,8,7,.30) 52%,rgba(3,8,7,.08) 67%,rgba(3,8,7,0) 78%),
      linear-gradient(180deg,rgba(3,8,7,.10) 0%,rgba(3,8,7,0) 54%,rgba(3,8,7,.16) 100%)
  }
  .hero:has(.hero-image--oven) .hero-title{font-size:clamp(2.4rem,11.5vw,3.05rem);line-height:.92}
  .hero:has(.hero-image--oven) .hero-actions{max-width:100%;display:flex;flex-wrap:nowrap}
}
@media(max-width:340px){
  .hero:has(.hero-image--oven) .hero-actions{width:100%;display:grid}
  .hero:has(.hero-image--oven) .hero-actions .action{width:100%}
}
@media(min-width:1025px){.homepage-reviews .review-grid>article:nth-child(4){grid-column:2/4;display:grid!important;grid-template-columns:1.08fr .92fr}.homepage-reviews .review-grid>article:nth-child(4) .review-photo{height:100%}}

/* Last-in-file review wall overrides: keep the editorial treatment active after legacy QA rules. */
.homepage-reviews{padding-top:clamp(5.5rem,8vw,8rem);padding-bottom:clamp(6rem,9vw,9rem);background:radial-gradient(circle at 82% 10%,rgba(199,149,79,.13),transparent 28%),linear-gradient(145deg,#07110e 0%,#0a1914 62%,#06100d 100%);overflow:hidden}
.homepage-reviews:before{content:"";position:absolute;top:clamp(2rem,5vw,4rem);right:clamp(1rem,5vw,4rem);width:clamp(4rem,8vw,7rem);height:1px;background:var(--gold);opacity:.75}
.homepage-reviews .section-intro{margin-bottom:clamp(2.5rem,5vw,4.25rem)}
.homepage-reviews .section-intro h2{max-width:11ch;font-size:clamp(3.4rem,6.2vw,6.2rem);line-height:.93;letter-spacing:-.04em}
.homepage-reviews .review-intro-copy{max-width:42ch;margin-top:1.25rem;color:#bfc5bf;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.7}
.homepage-reviews .review-grid{height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1.22fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:1rem}
.homepage-reviews .review-grid>article{min-width:0;min-height:0;height:auto;padding:0;border:1px solid rgba(224,178,109,.24);border-radius:0;background:rgba(244,239,228,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden;display:flex;flex-direction:column;transition:transform .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease)}
.homepage-reviews .review-grid>article:hover{transform:translateY(-5px);border-color:rgba(224,178,109,.65);background:rgba(244,239,228,.075)}
.homepage-reviews .review-grid>article:first-child{grid-row:1/3;min-height:0}
.homepage-reviews .review-photo,.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(150px,15vw,230px);flex:0 0 auto;margin:0;border-radius:0;background:#111d18}
.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(240px,27vw,390px)}
.homepage-reviews .review-photo img{height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.homepage-reviews .review-grid>article:hover .review-photo img{transform:scale(1.035)}
.homepage-reviews .review-card-copy{display:flex;flex:1;flex-direction:column;padding:1.15rem 1.25rem 1.2rem}
.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.7rem 2rem 1.5rem}
.homepage-reviews blockquote{margin:0 0 1.5rem}.homepage-reviews blockquote p{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(1.3rem,1.8vw,2rem);line-height:1.16;letter-spacing:-.01em}.homepage-reviews .review-grid>article:first-child blockquote p{font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.04}
.homepage-reviews .review-person{margin-top:auto;align-items:center;gap:.7rem}.homepage-reviews .review-avatar{width:2.75rem;height:2.75rem;border:1px solid rgba(224,178,109,.6);border-radius:50%;background:#0a2018;box-shadow:0 0 0 4px rgba(199,149,79,.06)}.homepage-reviews .review-grid>article:first-child .review-avatar{width:3.4rem;height:3.4rem}.homepage-reviews .review-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.homepage-reviews .review-person h3{font-size:.82rem;letter-spacing:.03em}.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:1rem}.homepage-reviews .review-person small{font-size:.55rem;color:#aeb5ac}.homepage-reviews .stars{display:block;margin-top:.14rem;font-size:.68rem;letter-spacing:.13em;color:var(--gold-light)}
.homepage-reviews .review-source{position:static;align-self:flex-start;min-height:42px;margin-top:1.1rem;padding-top:.8rem;border-top:1px solid rgba(224,178,109,.18);display:flex;align-items:center;gap:.35rem;color:var(--gold-light);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.homepage-reviews .review-source:hover{color:var(--text)}.homepage-reviews .review-source span:last-child{font-size:.95rem;line-height:1}.homepage-reviews .dots{display:none}
@media(max-width:1024px) and (min-width:768px){.homepage-reviews .review-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.homepage-reviews .review-grid>article:first-child{grid-row:auto}.homepage-reviews .review-grid>article:first-child .review-photo{height:260px}}
@media(max-width:767px){
  .homepage-reviews{padding:4.75rem 1rem 5.5rem}.homepage-reviews:before{top:2rem;right:1rem;width:4.5rem}.homepage-reviews .section-intro{margin-bottom:2rem}.homepage-reviews .section-intro h2{max-width:10ch;font-size:clamp(2.75rem,14vw,4.4rem);line-height:.96}.homepage-reviews .review-intro-copy{max-width:33ch;margin-top:1rem;font-size:.82rem;line-height:1.6}
  .homepage-reviews .review-grid{display:grid!important;grid-template-columns:1fr;grid-template-rows:none;gap:.75rem;overflow:visible!important}.homepage-reviews .review-grid>article,.homepage-reviews .review-grid>article:first-child{grid-row:auto;min-width:0!important;min-height:0!important;height:auto!important;display:flex;padding:0}.homepage-reviews .review-grid>article:first-child .review-photo,.homepage-reviews .review-photo{height:220px}.homepage-reviews .review-card-copy,.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.2rem 1.1rem 1.1rem}.homepage-reviews blockquote{margin-bottom:1.2rem}.homepage-reviews blockquote p,.homepage-reviews .review-grid>article:first-child blockquote p{font-size:1.55rem;line-height:1.1}.homepage-reviews .review-grid>article:first-child .review-avatar,.homepage-reviews .review-avatar{width:2.7rem;height:2.7rem}.homepage-reviews .review-person h3,.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:.82rem}.homepage-reviews .review-source{margin-top:1rem}
}
@media(prefers-reduced-motion:reduce){.homepage-reviews .review-grid>article,.homepage-reviews .review-photo img{transition:none}}

/* Small final Hero refinement requested in the latest QA pass. */
.hero:has(.hero-image--oven) .hero-copy{width:min(560px,calc(100% - 8rem))}.hero:has(.hero-image--oven) .hero-title{font-size:clamp(3.7rem,5.65vw,5.6rem)}
@media(max-width:767px){.hero:has(.hero-image--oven) .hero-copy{width:calc(100% - 2.3rem)}.hero:has(.hero-image--oven) .hero-title{font-size:clamp(2.4rem,11.5vw,3.05rem)}.hero:has(.hero-image--oven) .hero-lead{max-width:270px;font-size:.78rem}}

/* 2026-09-26 premium guest stories: editorial review wall with verified Google avatars. */
.homepage-reviews{
  padding-top:clamp(5.5rem,8vw,8rem);
  padding-bottom:clamp(6rem,9vw,9rem);
  background:
    radial-gradient(circle at 82% 10%,rgba(199,149,79,.13),transparent 28%),
    linear-gradient(145deg,#07110e 0%,#0a1914 62%,#06100d 100%);
  overflow:hidden;
}
.homepage-reviews:before{
  content:"";
  position:absolute;
  top:clamp(2rem,5vw,4rem);
  right:clamp(1rem,5vw,4rem);
  width:clamp(4rem,8vw,7rem);
  height:1px;
  background:var(--gold);
  opacity:.75;
}
.homepage-reviews .section-intro{margin-bottom:clamp(2.5rem,5vw,4.25rem)}
.homepage-reviews .section-intro h2{max-width:11ch;font-size:clamp(3.4rem,6.2vw,6.2rem);line-height:.93;letter-spacing:-.04em}
.homepage-reviews .review-intro-copy{max-width:42ch;margin-top:1.25rem;color:#bfc5bf;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.7}
.homepage-reviews .review-grid{
  min-height:0;
  display:grid;
  grid-template-columns:minmax(0,1.22fr) repeat(2,minmax(0,1fr));
  grid-template-rows:repeat(2,minmax(0,1fr));
  gap:1rem;
}
.homepage-reviews .review-grid>article{
  min-height:0;
  height:auto;
  padding:0;
  border:1px solid rgba(224,178,109,.24);
  border-radius:0;
  background:rgba(244,239,228,.045);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.06);
  overflow:hidden;
  display:flex;
  flex-direction:column;
  transition:transform .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease);
}
.homepage-reviews .review-grid>article:hover{transform:translateY(-5px);border-color:rgba(224,178,109,.65);background:rgba(244,239,228,.075)}
.homepage-reviews .review-grid>article:first-child{grid-row:1/3;min-height:0}
@media(min-width:1025px){.homepage-reviews .review-grid>article:nth-child(4){grid-column:2/4;display:grid!important;grid-template-columns:1.08fr .92fr}.homepage-reviews .review-grid>article:nth-child(4) .review-photo{height:100%}}
.homepage-reviews .review-photo,.homepage-reviews .review-grid>article:first-child .review-photo{
  height:clamp(150px,15vw,230px);
  flex:0 0 auto;
  margin:0;
  border-radius:0;
  background:#111d18;
}
.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(240px,27vw,390px)}
.homepage-reviews .review-photo img{height:100%;object-fit:cover;transition:transform .7s var(--ease);}
.homepage-reviews .review-grid>article:hover .review-photo img{transform:scale(1.035)}
.homepage-reviews .review-card-copy{display:flex;flex:1;flex-direction:column;padding:1.15rem 1.25rem 1.2rem}
.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.7rem 2rem 1.5rem}
.homepage-reviews blockquote{margin:0 0 1.5rem}
.homepage-reviews blockquote p{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(1.3rem,1.8vw,2rem);line-height:1.16;letter-spacing:-.01em}
.homepage-reviews .review-grid>article:first-child blockquote p{font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.04}
.homepage-reviews .review-person{margin-top:auto;align-items:center;gap:.7rem}
.homepage-reviews .review-avatar{width:2.75rem;height:2.75rem;border:1px solid rgba(224,178,109,.6);border-radius:50%;background:#0a2018;box-shadow:0 0 0 4px rgba(199,149,79,.06)}
.homepage-reviews .review-grid>article:first-child .review-avatar{width:3.4rem;height:3.4rem}
.homepage-reviews .review-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}
.homepage-reviews .review-person h3{font-size:.82rem;letter-spacing:.03em}
.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:1rem}
.homepage-reviews .review-person small{font-size:.55rem;color:#aeb5ac}
.homepage-reviews .stars{display:block;margin-top:.14rem;font-size:.68rem;letter-spacing:.13em;color:var(--gold-light)}
.homepage-reviews .review-source{position:static;align-self:flex-start;min-height:42px;margin-top:1.1rem;padding-top:.8rem;border-top:1px solid rgba(224,178,109,.18);display:flex;align-items:center;gap:.35rem;color:var(--gold-light);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}
.homepage-reviews .review-source:hover{color:var(--text)}
.homepage-reviews .review-source span:last-child{font-size:.95rem;line-height:1}
.homepage-reviews .dots{display:none}
@media(max-width:1024px) and (min-width:768px){
  .homepage-reviews .review-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}
  .homepage-reviews .review-grid>article:first-child{grid-row:auto}
  .homepage-reviews .review-grid>article:first-child .review-photo{height:260px}
}
@media(max-width:767px){
  .homepage-reviews{padding:4.75rem 1rem 5.5rem}
  .homepage-reviews:before{top:2rem;right:1rem;width:4.5rem}
  .homepage-reviews .section-intro{margin-bottom:2rem}
  .homepage-reviews .section-intro h2{max-width:10ch;font-size:clamp(2.75rem,14vw,4.4rem);line-height:.96}
  .homepage-reviews .review-intro-copy{max-width:33ch;margin-top:1rem;font-size:.82rem;line-height:1.6}
  .homepage-reviews .review-grid{display:grid;grid-template-columns:1fr;grid-template-rows:none;gap:.75rem;overflow:visible}
  .homepage-reviews .review-grid>article,.homepage-reviews .review-grid>article:first-child{grid-row:auto;min-width:0;min-height:0;height:auto;display:flex;padding:0}
  .homepage-reviews .review-grid>article:first-child .review-photo,.homepage-reviews .review-photo{height:220px}
  .homepage-reviews .review-card-copy,.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.2rem 1.1rem 1.1rem}
  .homepage-reviews blockquote{margin-bottom:1.2rem}
  .homepage-reviews blockquote p,.homepage-reviews .review-grid>article:first-child blockquote p{font-size:1.55rem;line-height:1.1}
  .homepage-reviews .review-grid>article:first-child .review-avatar,.homepage-reviews .review-avatar{width:2.7rem;height:2.7rem}
  .homepage-reviews .review-person h3,.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:.82rem}
  .homepage-reviews .review-source{margin-top:1rem}
}
@media(prefers-reduced-motion:reduce){
  .homepage-reviews .review-grid>article,.homepage-reviews .review-photo img{transition:none}
}

/* Small final Hero refinement requested in the latest QA pass. */
.hero:has(.hero-image--oven) .hero-copy{width:min(560px,calc(100% - 8rem))}
.hero:has(.hero-image--oven) .hero-title{font-size:clamp(3.7rem,5.65vw,5.6rem)}
@media(max-width:767px){
  .hero:has(.hero-image--oven) .hero-copy{width:calc(100% - 2.3rem)}
  .hero:has(.hero-image--oven) .hero-title{font-size:clamp(2.4rem,11.5vw,3.05rem)}
  .hero:has(.hero-image--oven) .hero-lead{max-width:270px;font-size:.78rem}
}

/* 2026-09-24 Val feedback: branch clarity, new catering imagery and responsive QA. */
.footer{grid-template-columns:1.25fr .85fr .9fr 1fr;align-items:start}
.footer-locations a,.footer-connect a{line-height:1.45}
.footer-connect{min-width:0}
.outlet-socials>div{display:flex;flex-wrap:wrap;gap:.6rem .9rem;margin-top:.35rem}
.outlet-socials>div a{color:var(--gold-light);font-size:.78rem}
.homepage-reviews{position:relative}
.homepage-reviews .section-intro{max-width:760px;margin-bottom:2.5rem}
.homepage-reviews .section-intro h2{max-width:12ch;line-height:1.08}
.review-intro-copy{max-width:48ch;margin-top:1rem;color:var(--muted);font-size:.84rem;line-height:1.65}
.homepage-reviews .review-grid{height:auto;min-height:420px}
.homepage-reviews .review-grid>article{min-height:196px}
.homepage-reviews .review-grid>article:first-child{min-height:420px}
.homepage-reviews .review-grid article>p{line-height:1.55}
.homepage-reviews .stars{color:var(--gold-light);letter-spacing:.08em;font-size:.66rem;font-style:normal}
.homepage-reviews .review-source{font-size:.62rem}
.homepage-reviews .review-source:hover{color:var(--text)}
.awards .section-intro h2{line-height:1.12}
.hero:after,.detail-hero:before,.outlet-hero:after,.booking-finale:after{inset:-1px}
.outlet-story h2,.outlet-video-copy h2{line-height:1.28}
.story-detail .detail-hero h1{line-height:1.12}
.story-detail .timeline-heading h2{line-height:1.1}
.review-avatar{overflow:hidden;background:rgba(7,18,15,.45)}
.review-avatar img{width:100%;height:100%;display:block;object-fit:cover}
.format-grid article figure img{object-fit:cover}
.format-grid article:nth-child(1) figure img{object-position:center 48%}
.format-grid article:nth-child(2) figure img{object-position:center 50%}
.format-grid article:nth-child(4) figure img{object-position:center 55%}

@media(max-width:767px){
  .footer{grid-template-columns:1fr 1fr;gap:1.25rem 1rem}
  .footer-brand{grid-column:1/-1}
  .footer>div:nth-child(3){display:flex}
  .footer>small{grid-column:1/-1}
  .homepage-reviews .section-intro{margin-bottom:1.5rem}
  .homepage-reviews .section-intro h2{font-size:2.75rem;line-height:1.12}
  .homepage-reviews .review-grid{height:auto;min-height:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.35rem}
  .homepage-reviews .review-grid>article,.homepage-reviews .review-grid>article:first-child{display:block;min-width:84vw;min-height:300px;height:300px;scroll-snap-align:start;padding:1.3rem 1.3rem 3.2rem}
  .homepage-reviews .review-grid>article:first-child>p{font-size:1.55rem;line-height:1.2}
  .outlet-story h2,.outlet-video-copy h2{line-height:1.32;letter-spacing:-.01em}
  .outlet-socials>div a{min-height:40px;align-items:center}
  .format-grid article figure{height:280px;min-height:280px}
  .format-grid article figure img{object-position:center!important}
  .booking-finale:after{inset:-2px}
}

/* Final Val QA · v1.4.6: compact story collage, real photography and keyboard-safe cards */
.story-preview .story-era-collage{
  min-height:720px;
  padding:4rem 3.5rem 4rem 0;
  display:grid;
  grid-template-columns:minmax(0,1.48fr) minmax(150px,.72fr);
  grid-template-rows:repeat(3,minmax(0,1fr));
  gap:.75rem;
  align-content:stretch
}
.story-preview .story-era-collage figure,
.story-preview .story-era-collage figure:nth-child(2){
  position:relative;
  width:auto;
  height:auto;
  min-height:0;
  margin:0;
  padding:5px;
  justify-self:stretch;
  border-radius:14px
}
.story-era-collage__origin{grid-row:1/-1}
.story-preview .story-era-collage img{width:100%;height:100%;border-radius:9px;object-fit:cover}
.story-era-collage__origin img{object-position:center 48%}
.story-era-collage__home:nth-of-type(2) img{object-position:center 52%}
.story-era-collage__home:nth-of-type(3) img{object-position:center 50%}
.story-era-collage__home:nth-of-type(4) img{object-position:center 58%}
.story-era-collage figcaption{
  position:absolute;
  right:.8rem;
  bottom:.75rem;
  left:.8rem;
  z-index:1;
  color:#fff;
  font-size:.61rem;
  font-weight:700;
  letter-spacing:.08em;
  line-height:1.3;
  text-transform:uppercase;
  text-shadow:0 2px 14px rgba(0,0,0,.72)
}
.story-era-collage figure:after{content:"";position:absolute;inset:5px;border-radius:9px;background:linear-gradient(180deg,transparent 55%,rgba(1,12,8,.78));pointer-events:none}

.location-card-link:focus-visible{outline:3px solid var(--gold-light);outline-offset:-5px;border-radius:14px}
.location-grid article:focus-within{flex:1.75;border-color:rgba(237,195,130,.58)}
.location-grid article:focus-within img{transform:scale(1.035);filter:saturate(.9) brightness(.78)}
.location-grid article:focus-within p,
.location-grid article:focus-within address,
.location-grid article:focus-within .location-actions{opacity:1;transform:none}

.format-grid article:nth-child(1) figure img{object-position:center 46%}
.format-grid article:nth-child(2) figure img{object-position:center 50%}
.format-grid article:nth-child(3) figure img{object-position:center 48%}
.format-grid article:nth-child(4) figure img{object-position:center 52%}

@media(max-width:767px){
  .story-preview .story-era-collage{
    min-height:0;
    padding:0 1rem 3.75rem;
    grid-template-columns:repeat(3,minmax(0,1fr));
    grid-template-rows:minmax(320px,48vh) 132px;
    gap:.55rem
  }
  .story-era-collage__origin{grid-column:1/-1;grid-row:1}
  .story-preview .story-era-collage figure,
  .story-preview .story-era-collage figure:nth-child(2){height:auto;min-height:0;padding:4px}
  .story-era-collage figure:after{inset:4px}
  .story-era-collage figcaption{right:.55rem;bottom:.55rem;left:.55rem;font-size:.5rem;letter-spacing:.045em}
  .location-grid article:focus-within{height:330px;min-height:330px;flex:none}
}

/* Real-photo and desktop image-composition pass · v1.4.6 */
.booking-finale{
  background:
    linear-gradient(90deg,rgba(4,18,13,.95) 0%,rgba(4,18,13,.82) 38%,rgba(4,18,13,.34) 72%,rgba(4,18,13,.2) 100%),
    url('../images/val-thao-dien-after.webp') center 62%/cover
}
.booking-finale:after{background:linear-gradient(0deg,rgba(2,10,7,.44),transparent 62%)}

.detail-hero--story{background-image:url('../images/val-pitigliano.webp')}
.story-detail .detail-hero--story{background-position:center 52%}
.story-detail .detail-hero--story:before{
  background:
    linear-gradient(90deg,rgba(3,15,11,.97) 0%,rgba(3,15,11,.82) 38%,rgba(3,15,11,.28) 72%),
    linear-gradient(0deg,rgba(3,15,11,.78),transparent 60%)
}

@media(min-width:1025px){
  .format-grid article,.format-grid article:nth-child(n){
    display:flex;
    min-height:0;
    flex-direction:column
  }
  .format-grid article figure{
    width:100%;
    min-height:0;
    aspect-ratio:4/3;
    flex:0 0 auto
  }
  .format-grid article figure img{object-position:center!important}
  .format-card-copy{min-height:300px}
}

@media(min-width:768px){
  .live-stations-media{
    min-height:0;
    aspect-ratio:4/3;
    align-self:center
  }
  .live-stations-photo--main{inset:0 11% 7% 0}
  .live-stations-photo--detail{
    width:48%;
    height:auto;
    aspect-ratio:4/3
  }
  .live-stations-photo--detail img{object-position:center}
}

@media(max-width:767px){
  .booking-finale{
    background-position:58% center
  }
  .story-detail .detail-hero--story{background-position:52% center}
  .live-stations-media{aspect-ratio:auto}
}
@media(max-width:390px){
  .story-preview .story-era-collage{grid-template-rows:minmax(300px,44vh) 116px;gap:.45rem}
  .story-era-collage figcaption{font-size:.46rem}
}
@media(prefers-reduced-motion:reduce){
  .location-grid article,.location-grid img{transition:none}
}

/* Mobile location cards · v1.4.8: separate photography from longer bilingual copy. */
@media(max-width:767px){
  .location-grid{gap:1rem}
  .location-grid article,
  .location-grid article:hover,
  .location-grid article:focus,
  .location-grid article:focus-within{
    height:auto;
    min-height:0;
    display:grid;
    grid-template-columns:1fr;
    grid-template-rows:148px auto;
    flex:none;
    padding:6px;
    border-radius:14px;
    background:#07120f;
    overflow:hidden;
  }
  .location-grid article:after{display:none}
  .location-grid img,
  .location-grid article:hover img,
  .location-grid article:focus img,
  .location-grid article:focus-within img{
    position:static;
    grid-column:1;
    grid-row:1;
    width:100%;
    height:148px;
    border-radius:9px;
    object-fit:cover;
    filter:saturate(.82) brightness(.84);
    transform:none;
  }
  .location-grid article>div{
    position:static;
    grid-column:1;
    grid-row:2;
    min-width:0;
    height:auto;
    padding:1rem .85rem .85rem;
    background:#07120f;
  }
  .location-grid article>div>small{display:block;font-size:.58rem;line-height:1.25;letter-spacing:.1em}
  .location-grid h3{max-width:100%;margin:.35rem 0 .55rem;font-size:1.42rem;line-height:1.06;letter-spacing:-.01em}
  .location-grid p,
  .location-grid address,
  .location-grid article:focus-within p,
  .location-grid article:focus-within address{
    max-width:100%;
    margin:0 0 .7rem;
    color:#d0ccc2;
    font-size:.68rem;
    line-height:1.48;
    opacity:1;
    transform:none;
  }
  .location-grid address{display:block}
  .location-actions,
  .location-grid article:focus-within .location-actions{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:.2rem .75rem;
    opacity:1;
    transform:none;
  }
  .location-grid .location-actions a{min-width:44px;min-height:44px;padding:.25rem 0;font-size:.59rem}
}

/* Mobile media, branch navigation and inline menu reader · v1.5.0 */
.mobile-nav-group{flex:0 0 auto;border-bottom:1px solid var(--soft)}
.mobile-nav-row{display:grid;grid-template-columns:minmax(0,1fr) 58px;align-items:stretch}
.mobile-menu .mobile-nav-row>a{min-width:0;border:0}
.mobile-nav-toggle{
  min-width:58px;
  min-height:58px;
  border:0;
  background:transparent;
  color:var(--text);
  display:grid;
  place-items:center;
  cursor:pointer
}
.mobile-nav-toggle svg{width:1.05rem;transition:transform .2s var(--ease),color .2s var(--ease)}
.mobile-nav-group.is-open .mobile-nav-toggle{color:var(--gold-light)}
.mobile-nav-group.is-open .mobile-nav-toggle svg{transform:rotate(90deg)}
.mobile-nav-panel{padding:.2rem 0 .65rem 1rem}
.mobile-nav-panel[hidden]{display:none}
.mobile-menu .mobile-nav-panel a{
  min-height:48px;
  border:0;
  padding:0 .35rem 0 .8rem;
  color:#cbd5ce;
  font-family:var(--body);
  font-size:.92rem;
  font-weight:600;
  letter-spacing:.02em;
  text-transform:none
}
.mobile-menu .mobile-nav-panel a+a{border-top:1px solid rgba(224,178,109,.12)}
.mobile-menu .mobile-nav-panel a svg{width:.82rem;color:var(--gold-light)}
.mobile-nav-toggle:focus-visible,.mobile-menu .mobile-nav-panel a:focus-visible{outline:2px solid var(--gold-light);outline-offset:-2px}

.menu-mobile-reader{display:block;padding:0 clamp(1rem,7vw,6rem) 5.5rem;background:var(--panel)}
.menu-mobile-section{border-top:1px solid rgba(224,178,109,.3)}
.menu-mobile-section:last-child{border-bottom:1px solid rgba(224,178,109,.3)}
.menu-mobile-section summary{min-height:74px;padding:1rem 0;display:grid;grid-template-columns:minmax(0,1fr) auto 24px;align-items:center;gap:1rem;color:var(--text);cursor:pointer;list-style:none}
.menu-mobile-section summary::-webkit-details-marker{display:none}
.menu-mobile-section summary span{font-family:var(--display);font-size:clamp(1.35rem,2.3vw,2rem);line-height:1.15}
.menu-mobile-section summary small{color:var(--muted);font-size:.66rem;font-weight:600;text-transform:uppercase}
.menu-mobile-section summary svg{width:1rem;color:var(--gold-light);transition:transform .2s var(--ease)}
.menu-mobile-section[open] summary svg{transform:rotate(90deg)}
.menu-mobile-section summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
.menu-mobile-pages{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;padding:.25rem 0 1.5rem}
.menu-mobile-pages figure{margin:0;overflow:hidden;border:1px solid rgba(224,178,109,.26);border-radius:8px;background:#d9bd7a}
.menu-mobile-pages img{width:100%;height:auto;display:block}
.menu-page-viewer{display:none}
.document-actions .action{padding-inline:1.35rem}
.story-full-content>[data-collapse-story]{padding-inline:1.35rem}

@media(max-width:767px){
  .live-stations-media{
    min-height:0;
    margin-bottom:1.5rem;
    display:grid;
    grid-template-columns:1fr;
    gap:.75rem
  }
  .live-stations-photo,
  .live-stations-photo--main,
  .live-stations-photo--detail{
    position:relative;
    inset:auto;
    right:auto;
    bottom:auto;
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
    border:0;
    border-radius:10px
  }
  .live-stations-photo img{object-position:center;object-fit:cover}
  .event-services .event-services-visual{grid-template-columns:1fr;gap:.75rem}
  .event-services .event-services-photo,
  .event-services .event-services-photo--detail{
    width:100%;
    height:auto;
    aspect-ratio:4 / 3;
    margin:0;
    align-self:auto;
    border-radius:10px
  }
  .event-services .event-services-photo img{object-position:center;object-fit:cover}

  .menu-mobile-reader{padding:0 1rem 5.5rem}
  .menu-mobile-section summary{
    min-height:62px;
    padding:.85rem 0;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto 22px;
    align-items:center;
    gap:.65rem;
    color:var(--text);
    cursor:pointer;
    list-style:none
  }
  .menu-mobile-section summary::-webkit-details-marker{display:none}
  .menu-mobile-section summary span{font-family:var(--display);font-size:1.3rem;line-height:1.15}
  .menu-mobile-section summary small{color:var(--muted);font-size:.62rem;font-weight:600;text-transform:uppercase}
  .menu-mobile-section summary svg{width:1rem;color:var(--gold-light);transition:transform .2s var(--ease)}
  .menu-mobile-section[open] summary svg{transform:rotate(90deg)}
  .menu-mobile-section summary:focus-visible{outline:2px solid var(--gold-light);outline-offset:3px}
  .menu-mobile-pages{grid-template-columns:1fr;gap:.8rem;padding:.25rem 0 1.25rem}
  .menu-mobile-pages figure{margin:0;overflow:hidden;border:1px solid rgba(224,178,109,.26);border-radius:8px;background:#d9bd7a}
  .menu-mobile-pages img{width:100%;height:auto;display:block}
}

@media(prefers-reduced-motion:reduce){
  .mobile-nav-toggle svg,.menu-mobile-section summary svg{transition:none}
}
/* CMS-driven careers and per-location menu controls */
.careers-preview{padding:clamp(4rem,7vw,7rem) clamp(1.25rem,7vw,6rem);background:var(--red);color:var(--off-white)}
.careers-preview>div{max-width:760px}.careers-preview h2{margin:.35rem 0 1rem;font-family:var(--display);font-size:clamp(2.8rem,5vw,5.2rem);font-weight:500;line-height:1.02}.careers-preview p{max-width:56ch;line-height:1.7}.careers-preview ul{display:grid;gap:.55rem;margin:1.5rem 0;padding:0;list-style:none}.careers-preview li a{color:var(--off-white);text-decoration:underline;text-underline-offset:.2em}.menu-location-select{display:grid;gap:.45rem;max-width:360px;margin:1.25rem 0;color:var(--muted);font-size:.75rem;letter-spacing:.08em;text-transform:uppercase}.menu-location-select select{min-height:46px;padding:.7rem 2.4rem .7rem .9rem;border:1px solid rgba(247,211,152,.28);border-radius:4px;background:var(--deep);color:var(--off-white);font:inherit;letter-spacing:normal;text-transform:none}

/* Final responsive QA overrides */
.footer{grid-template-columns:1.25fr .85fr .9fr 1fr;align-items:start}
.footer-locations a,.footer-connect a{line-height:1.45}
.outlet-socials>div{display:flex;flex-wrap:wrap;gap:.6rem .9rem;margin-top:.35rem}
.outlet-socials>div a{color:var(--gold-light);font-size:.78rem}
.homepage-reviews{position:relative}
.homepage-reviews .section-intro{max-width:760px;margin-bottom:2.5rem}
.homepage-reviews .section-intro h2{max-width:12ch;line-height:1.08}
.review-intro-copy{max-width:48ch;margin-top:1rem;color:var(--muted);font-size:.84rem;line-height:1.65}
.homepage-reviews .review-grid{height:auto;min-height:420px}
.homepage-reviews .review-grid>article{min-height:196px}
.homepage-reviews .review-grid>article:first-child{min-height:420px}
.homepage-reviews .review-grid article>p{line-height:1.55}
.homepage-reviews .stars{color:var(--gold-light);letter-spacing:.08em;font-size:.66rem;font-style:normal}
.homepage-reviews .review-source{font-size:.62rem}
.awards .section-intro h2{line-height:1.12}
.hero:after,.detail-hero:before,.outlet-hero:after,.booking-finale:after{inset:-1px}
.outlet-story h2,.outlet-video-copy h2{line-height:1.28}
.format-grid article:nth-child(1) figure img{object-position:center 48%}
.format-grid article:nth-child(2) figure img{object-position:center 50%}
.format-grid article:nth-child(4) figure img{object-position:center 55%}
@media(max-width:767px){.footer{grid-template-columns:1fr 1fr;gap:1.25rem 1rem}.footer-brand{grid-column:1/-1}.footer>div:nth-child(3){display:flex}.homepage-reviews .section-intro{margin-bottom:1.5rem}.homepage-reviews .section-intro h2{font-size:2.75rem;line-height:1.12}.homepage-reviews .review-grid{height:auto;min-height:0;display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:.35rem}.homepage-reviews .review-grid>article,.homepage-reviews .review-grid>article:first-child{display:block;min-width:84vw;min-height:300px;height:300px;scroll-snap-align:start;padding:1.3rem 1.3rem 3.2rem}.homepage-reviews .review-grid>article:first-child>p{font-size:1.55rem;line-height:1.2}.outlet-story h2,.outlet-video-copy h2{line-height:1.32;letter-spacing:-.01em}.outlet-socials>div a{min-height:40px;align-items:center}.format-grid article figure{height:280px;min-height:280px}.format-grid article figure img{object-position:center!important}.booking-finale:after{inset:-2px}}
@media(max-width:767px){
  .footer>div:nth-child(2){order:2}
  .footer-locations{order:3}
  .footer>div:nth-child(3){order:4}
  .footer>small{order:10}
}
@media(max-width:767px){.story-detail .detail-hero h1{line-height:1.18}.story-detail .timeline-heading h2{line-height:1.14}}

/* Final visual QA fixes: remove the hairline under the homepage booking panel and use a distinct Food asset for the menu hero. */
.booking-finale{border-bottom:0!important}
.detail-hero--menu{background-image:url('../images/menu-seafood-pizza.jpg')}

/* 2026-09-26 final QA: review photos need room on phones; Consulate mark fills its tile. */
@media(max-width:767px){
  .homepage-reviews .review-grid>article,
  .homepage-reviews .review-grid>article:first-child{
    min-height:440px;
    height:440px;
  }
  .homepage-reviews .review-grid>article:first-child>p{font-size:1.4rem;line-height:1.22}
  .catering-clients .client-logo:nth-child(3) img{
    width:116%;
    height:108px;
    max-width:none;
    transform:scale(1.08);
  }
}

/* FINAL OVERRIDE 2026-09-26: premium guest stories, verified avatars and food photos. */
.homepage-reviews{padding-top:clamp(5.5rem,8vw,8rem);padding-bottom:clamp(6rem,9vw,9rem);background:radial-gradient(circle at 82% 10%,rgba(199,149,79,.13),transparent 28%),linear-gradient(145deg,#07110e 0%,#0a1914 62%,#06100d 100%);overflow:hidden}
.homepage-reviews:before{content:"";position:absolute;top:clamp(2rem,5vw,4rem);right:clamp(1rem,5vw,4rem);width:clamp(4rem,8vw,7rem);height:1px;background:var(--gold);opacity:.75}
.homepage-reviews .section-intro{margin-bottom:clamp(2.5rem,5vw,4.25rem)}
.homepage-reviews .section-intro h2{max-width:11ch;font-size:clamp(3.4rem,6.2vw,6.2rem);line-height:.93;letter-spacing:-.04em}
.homepage-reviews .review-intro-copy{max-width:42ch;margin-top:1.25rem;color:#bfc5bf;font-size:clamp(.88rem,1.1vw,1rem);line-height:1.7}
.homepage-reviews .review-grid{height:auto;min-height:0;display:grid;grid-template-columns:minmax(0,1.22fr) repeat(2,minmax(0,1fr));grid-template-rows:repeat(2,minmax(0,1fr));gap:1rem}
.homepage-reviews .review-grid>article{min-width:0;min-height:0;height:auto;padding:0;border:1px solid rgba(224,178,109,.24);border-radius:0;background:rgba(244,239,228,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.06);overflow:hidden;display:flex;flex-direction:column;transition:transform .35s var(--ease),border-color .35s var(--ease),background .35s var(--ease)}
.homepage-reviews .review-grid>article:hover{transform:translateY(-5px);border-color:rgba(224,178,109,.65);background:rgba(244,239,228,.075)}
.homepage-reviews .review-grid>article:first-child{grid-row:1/3;min-height:0}
.homepage-reviews .review-photo,.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(150px,15vw,230px);flex:0 0 auto;margin:0;border-radius:0;background:#111d18}
.homepage-reviews .review-grid>article:first-child .review-photo{height:clamp(240px,27vw,390px)}
.homepage-reviews .review-photo img{height:100%;object-fit:cover;transition:transform .7s var(--ease)}
.homepage-reviews .review-grid>article:hover .review-photo img{transform:scale(1.035)}
.homepage-reviews .review-card-copy{display:flex;flex:1;flex-direction:column;padding:1.15rem 1.25rem 1.2rem}
.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.7rem 2rem 1.5rem}
.homepage-reviews blockquote{margin:0 0 1.5rem}.homepage-reviews blockquote p{margin:0;color:var(--text);font-family:var(--display);font-size:clamp(1.3rem,1.8vw,2rem);line-height:1.16;letter-spacing:-.01em}.homepage-reviews .review-grid>article:first-child blockquote p{font-size:clamp(2rem,3.1vw,3.5rem);line-height:1.04}
.homepage-reviews .review-person{margin-top:auto;align-items:center;gap:.7rem}.homepage-reviews .review-avatar{width:2.75rem;height:2.75rem;border:1px solid rgba(224,178,109,.6);border-radius:50%;background:#0a2018;box-shadow:0 0 0 4px rgba(199,149,79,.06)}.homepage-reviews .review-grid>article:first-child .review-avatar{width:3.4rem;height:3.4rem}.homepage-reviews .review-avatar img{width:100%;height:100%;object-fit:cover;border-radius:50%}.homepage-reviews .review-person h3{font-size:.82rem;letter-spacing:.03em}.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:1rem}.homepage-reviews .review-person small{font-size:.55rem;color:#aeb5ac}.homepage-reviews .stars{display:block;margin-top:.14rem;font-size:.68rem;letter-spacing:.13em;color:var(--gold-light)}
.homepage-reviews .review-source{position:static;align-self:flex-start;min-height:42px;margin-top:1.1rem;padding-top:.8rem;border-top:1px solid rgba(224,178,109,.18);display:flex;align-items:center;gap:.35rem;color:var(--gold-light);font-size:.58rem;letter-spacing:.08em;text-transform:uppercase}.homepage-reviews .review-source:hover{color:var(--text)}.homepage-reviews .review-source span:last-child{font-size:.95rem;line-height:1}.homepage-reviews .dots{display:none}
@media(max-width:1024px) and (min-width:768px){.homepage-reviews .review-grid{grid-template-columns:1fr 1fr;grid-template-rows:auto}.homepage-reviews .review-grid>article:first-child{grid-row:auto}.homepage-reviews .review-grid>article:first-child .review-photo{height:260px}}
@media(max-width:767px){.homepage-reviews{padding:4.75rem 1rem 5.5rem}.homepage-reviews:before{top:2rem;right:1rem;width:4.5rem}.homepage-reviews .section-intro{margin-bottom:2rem}.homepage-reviews .section-intro h2{max-width:10ch;font-size:clamp(2.75rem,14vw,4.4rem);line-height:.96}.homepage-reviews .review-intro-copy{max-width:33ch;margin-top:1rem;font-size:.82rem;line-height:1.6}.homepage-reviews .review-grid{display:grid!important;grid-template-columns:1fr;grid-template-rows:none;gap:.75rem;overflow:visible!important}.homepage-reviews .review-grid>article,.homepage-reviews .review-grid>article:first-child{grid-row:auto;grid-column:auto!important;min-width:0!important;min-height:0!important;height:auto!important;display:flex;padding:0}.homepage-reviews .review-grid>article:first-child .review-photo,.homepage-reviews .review-photo{height:220px}.homepage-reviews .review-card-copy,.homepage-reviews .review-grid>article:first-child .review-card-copy{padding:1.2rem 1.1rem 1.1rem}.homepage-reviews blockquote{margin-bottom:1.2rem}.homepage-reviews blockquote p,.homepage-reviews .review-grid>article:first-child blockquote p{font-size:1.55rem;line-height:1.1}.homepage-reviews .review-grid>article:first-child .review-avatar,.homepage-reviews .review-avatar{width:2.7rem;height:2.7rem}.homepage-reviews .review-person h3,.homepage-reviews .review-grid>article:first-child .review-person h3{font-size:.82rem}.homepage-reviews .review-source{margin-top:1rem}}
@media(prefers-reduced-motion:reduce){.homepage-reviews .review-grid>article,.homepage-reviews .review-photo img{transition:none}}
