:root{--ink:#221a17;--paper:#f3eee5;--cream:#fff9ec;--red:#a33c2b;--gold:#e7aa46;--muted:#74685d;--rule:#c9bdae;--sans:'DM Sans',Arial,sans-serif;--serif:'Playfair Display',Georgia,serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:5rem}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:1rem;line-height:1.6;-webkit-font-smoothing:antialiased}
img{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}::selection{background:var(--gold);color:var(--ink)}
.wrap{width:min(100% - 7.5rem,1320px);margin-inline:auto}.section-pad{padding-block:clamp(5rem,10vw,9rem)}.skip-link{position:absolute;z-index:100;left:1rem;top:-5rem;padding:.6rem 1rem;background:var(--cream);color:var(--ink)}.skip-link:focus{top:1rem}
.site-header{position:absolute;z-index:20;inset:0 0 auto;color:#fff}.header-inner{height:106px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid rgb(255 255 255 / .25);gap:2rem}.brand{display:inline-flex;align-items:center;gap:.73rem;line-height:1;flex-shrink:0}.brand-symbol{font-family:var(--serif);font-size:2.75rem;font-weight:700;letter-spacing:-.17em;line-height:.8}.brand-dot{color:var(--gold);margin-left:.02em}.brand-text{display:flex;flex-direction:column;font-weight:700;font-size:1.07rem;letter-spacing:.18em;gap:.32rem}.brand-text small{font-size:.58rem;letter-spacing:.32em;font-weight:600}.nav{display:flex;align-items:center;gap:clamp(1.2rem,3.1vw,3.6rem);font-size:.84rem;font-weight:600;letter-spacing:.04em}.nav a:not(.nav-book){padding:.7rem 0;transition:color .2s}.nav a:hover{color:var(--gold)}.nav-book{border:1px solid rgb(255 255 255 / .65);padding:.75rem 1.05rem;display:inline-flex;gap:1.8rem;align-items:center;transition:background .2s,color .2s}.nav-book:hover{background:#fff;color:var(--ink)}.menu-toggle{display:none}
.hero{min-height:min(850px,100svh);height:max(680px,100svh);position:relative;display:flex;align-items:center;background:#221a17;color:white;overflow:hidden}.hero-image,.hero-shade{position:absolute;inset:0}.hero-image{background-image:url('./images/hero.webp');background-position:center;background-size:cover}.hero-shade{background:linear-gradient(90deg,rgba(13,11,10,.91) 0%,rgba(18,13,11,.71) 35%,rgba(18,13,11,.2) 69%,rgba(18,13,11,.15) 100%),linear-gradient(0deg,rgba(12,10,9,.43),transparent 34%)}.hero-inner{position:relative;z-index:1;padding-top:7rem}.eyebrow{display:flex;align-items:center;gap:.8rem;margin:0 0 1.7rem;text-transform:uppercase;letter-spacing:.24em;font-size:.72rem;font-weight:700}.eyebrow-line{display:inline-block;width:24px;height:1px;background:currentColor;opacity:.72}.hero-eyebrow{color:var(--gold)}h1,h2,h3,p{margin-top:0}.hero h1{font-family:var(--serif);font-weight:500;font-size:clamp(4.1rem,7.1vw,8rem);line-height:1.04;letter-spacing:-.055em;max-width:930px;margin:0 0 1.55rem}.hero h1 em{color:var(--gold);font-weight:500}.hero-intro{font-size:clamp(1rem,1.18vw,1.16rem);line-height:1.75;max-width:475px;color:#efe7dc;margin:0 0 2.1rem}.hero-actions{display:flex;align-items:center;gap:2.4rem;flex-wrap:wrap}.button{min-height:54px;display:inline-flex;align-items:center;justify-content:space-between;gap:1.8rem;padding:.9rem 1.25rem;font-size:.82rem;line-height:1.3;font-weight:700;letter-spacing:.025em;transition:transform .22s,background .22s,color .22s}.button:hover{transform:translateY(-3px)}.button-gold{background:var(--gold);color:var(--ink)}.button-gold:hover{background:#f4bd64}.text-link{display:inline-flex;align-items:center;gap:1.25rem;border-bottom:1px solid currentColor;padding:.35rem 0;font-size:.84rem;line-height:1.5;font-weight:700;transition:gap .2s,color .2s}.text-link:hover{gap:1.7rem;color:var(--red)}.text-link.light{color:white}.text-link.light:hover{color:var(--gold)}.hero-side{position:absolute;z-index:1;right:1.45rem;bottom:7.3rem;writing-mode:vertical-rl;transform:rotate(180deg);letter-spacing:.22em;font-size:.65rem;font-weight:700;color:#fff}.hero-down{position:absolute;z-index:1;right:max(3.75rem,calc((100% - 1320px)/2));bottom:2.1rem;width:54px;height:54px;border:1px solid rgb(255 255 255 / .55);border-radius:50%;display:grid;place-items:center;font-size:1.5rem;transition:background .2s}.hero-down:hover{background:rgb(255 255 255 / .2)}
.marquee{height:64px;background:var(--red);color:var(--cream);display:flex;align-items:center;overflow:hidden}.marquee-track{white-space:nowrap;display:flex;animation:marquee 30s linear infinite;font-family:var(--serif);font-weight:600;font-size:1.16rem;letter-spacing:.06em}.marquee-track span{padding-right:2.7rem}.marquee-track b{font-family:var(--sans);font-weight:400;color:var(--gold);padding-inline:1.35rem}@keyframes marquee{to{transform:translateX(-50%)}}
.intro{background:var(--paper)}.intro-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(280px,.7fr);gap:clamp(3rem,11vw,10rem);align-items:end}.dark-eyebrow{color:var(--red)}h2{font-family:var(--serif);font-weight:500;letter-spacing:-.045em;line-height:1.18;font-size:clamp(2.75rem,4.4vw,5.35rem);margin:0}h2 em{font-weight:500;color:var(--red)}.intro-copy{padding-bottom:.5rem}.intro-copy p,.experience-copy>p:not(.eyebrow),.visit-main>p:not(.eyebrow){color:#554c43;line-height:1.85;font-size:1.05rem}.intro-copy p{margin-bottom:1.6rem}
.food-section{padding:clamp(5rem,9vw,8rem) 0 clamp(6rem,10vw,9rem);background:var(--cream)}.food-heading{display:grid;grid-template-columns:1fr auto;align-items:end;column-gap:2rem;margin-bottom:3rem}.food-heading .eyebrow{grid-column:1/-1}.food-heading p:last-child{max-width:270px;margin:0 0 .4rem;color:var(--muted);line-height:1.65}.food-grid{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(2.8rem,7vw,7.6rem);align-items:stretch}.food-feature{height:600px;position:relative;background:#503521;overflow:hidden}.food-feature img{width:100%;height:100%;object-fit:cover;object-position:center 55%;transition:transform .5s}.food-feature:hover img{transform:scale(1.035)}.food-feature::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(0deg,rgba(12,10,9,.83),transparent)}.food-feature-label{position:absolute;z-index:1;color:#fff;bottom:2.2rem;left:2.4rem;right:1.5rem}.food-feature-label span,.food-number,.detail-label,.visual-caption{font-size:.7rem;letter-spacing:.2em;font-weight:700}.food-feature-label h3{font-family:var(--serif);font-size:3.2rem;font-weight:500;line-height:1.1;letter-spacing:-.04em;margin:.6rem 0}.food-feature-label p{margin:0;color:#ece4da}.food-list{display:flex;flex-direction:column;justify-content:center}.food-row{display:grid;grid-template-columns:45px 1fr 30px;align-items:start;gap:1.1rem;border-top:1px solid var(--rule);padding:1.7rem 0 2rem}.food-number{color:var(--red);padding-top:.5rem}.food-row h3{font-family:var(--serif);font-weight:500;font-size:clamp(1.7rem,2.5vw,2.5rem);line-height:1.2;margin:0 0 .4rem;letter-spacing:-.035em}.food-row p{color:var(--muted);margin:0;font-size:.94rem}.food-mark{font-size:1.4rem;color:var(--red);line-height:1.2}.food-list-footer{border-top:1px solid var(--rule);padding-top:2rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap}.food-list-footer p{font-family:var(--serif);font-size:1.2rem;max-width:250px;margin:0;line-height:1.45}.button-outline{border:1px solid var(--ink)}.button-outline:hover{background:var(--ink);color:white}
.experience{background:var(--paper)}.experience-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:clamp(3rem,9vw,8rem);align-items:center}.experience-visual{position:relative}.experience-visual img{width:100%;height:clamp(420px,47vw,610px);object-fit:cover}.visual-caption{position:absolute;bottom:-1px;right:0;background:var(--paper);padding:1.4rem 0 0 1.5rem;color:var(--red)}.experience-copy h2{margin-bottom:1.6rem}.experience-copy>p:not(.eyebrow){margin-bottom:2rem}.experience-points{display:flex;flex-wrap:wrap;gap:.6rem;margin:0 0 2.1rem}.experience-points span{border:1px solid var(--rule);padding:.55rem .8rem;color:#53473d;font-size:.77rem;font-weight:600;letter-spacing:.04em}
.social-proof{background:var(--red);color:var(--cream);padding:clamp(4.7rem,9vw,8rem) 0}.proof-inner{display:grid;grid-template-columns:70px minmax(0,1fr) auto;align-items:center;gap:2.5rem}.proof-symbol{color:var(--gold);font-size:3.2rem;line-height:1;align-self:start}.light-eyebrow{color:#ffda9b;margin-bottom:1.1rem}.social-proof h2{max-width:700px;font-size:clamp(2.7rem,4.5vw,5.3rem)}.social-proof h2 em{color:var(--gold)}.proof-inner>.text-link{align-self:end;white-space:nowrap}
.visit{background:var(--cream)}.visit-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(3rem,12vw,10rem)}.visit-main h2{margin-bottom:1.3rem}.visit-main>p:not(.eyebrow){max-width:440px;margin-bottom:2.3rem}.button-dark{background:var(--ink);color:var(--cream)}.button-dark:hover{background:var(--red)}.visit-details{border-top:1px solid var(--rule)}.detail-block{padding:1.5rem 0 1.7rem;border-bottom:1px solid var(--rule);display:grid;grid-template-columns:135px 1fr;gap:1.5rem}.detail-label{color:var(--red);padding-top:.35rem}.detail-block address,.detail-block p{font-style:normal;font-family:var(--serif);font-size:1.18rem;line-height:1.55;margin:0}.detail-block small{grid-column:2;font-size:.77rem;color:var(--muted);margin-top:-.8rem}.detail-block a{grid-column:2;justify-self:start;font-family:var(--serif);font-size:1.2rem;line-height:1.3;border-bottom:1px solid transparent}.detail-block a:hover{border-color:currentColor}.detail-block a+a{margin-top:-.7rem}
.site-footer{background:var(--ink);color:var(--cream);padding:4rem 0 1.4rem}.footer-top{display:flex;align-items:flex-start;justify-content:space-between;gap:2rem;padding-bottom:4rem}.footer-brand .brand-symbol{font-size:3.25rem}.footer-top p{color:#d8c9b7;margin:0}.back-to-top{font-size:.85rem;border-bottom:1px solid var(--gold);padding-bottom:.25rem}.footer-bottom{border-top:1px solid #645850;padding-top:1.4rem;color:#b4a596;display:flex;justify-content:space-between;gap:2rem;font-size:.75rem;line-height:1.5}
@media(max-width:1050px){.wrap{width:min(100% - 4rem,1320px)}.header-inner{height:88px}.hero{height:760px;min-height:640px}.hero h1{font-size:clamp(4.6rem,8vw,6.5rem)}.intro-grid{gap:4rem}.food-grid{gap:3.5rem}.food-feature{height:560px}.experience-grid{gap:4rem}.visit-grid{gap:4rem}.proof-inner{grid-template-columns:45px 1fr;gap:2rem}.proof-inner>.text-link{grid-column:2;justify-self:start}.hero-down{right:2rem}}
@media(max-width:740px){.wrap{width:min(100% - 2.5rem,600px)}.section-pad{padding-block:5.5rem}.header-inner{height:76px}.brand-symbol{font-size:2.35rem}.brand-text{font-size:.84rem}.brand-text small{font-size:.5rem}.menu-toggle{width:44px;height:44px;border:1px solid rgb(255 255 255 / .6);background:transparent;color:#fff;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:6px;position:relative;z-index:2}.menu-toggle span{width:18px;height:2px;background:currentColor;transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(4px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-4px) rotate(-45deg)}.nav{position:absolute;left:0;right:0;top:76px;background:var(--ink);display:none;flex-direction:column;align-items:stretch;gap:0;padding:1rem 1.25rem 1.4rem;box-shadow:0 12px 24px rgb(0 0 0 / .2)}.nav.is-open{display:flex}.nav a:not(.nav-book){padding:1rem .25rem;border-bottom:1px solid #574b42}.nav-book{margin-top:1rem;justify-content:space-between}.hero{height:auto;min-height:760px;align-items:flex-end}.hero-image{background-position:63% center}.hero-shade{background:linear-gradient(0deg,rgba(16,12,10,.94),rgba(16,12,10,.68) 52%,rgba(16,12,10,.25)),linear-gradient(90deg,rgba(16,12,10,.35),transparent)}.hero-inner{padding-top:12rem;padding-bottom:6.7rem}.hero h1{font-size:clamp(3.4rem,10.5vw,5.3rem);letter-spacing:-.055em}.hero-intro{font-size:1rem;max-width:390px}.hero-actions{gap:1.25rem}.hero-side{display:none}.hero-down{right:1.25rem;bottom:1.25rem;width:44px;height:44px}.marquee{height:54px}.marquee-track{font-size:1rem}.intro-grid,.food-grid,.experience-grid,.visit-grid{grid-template-columns:1fr;gap:2.5rem}.intro-copy{max-width:520px}.food-section{padding:5.5rem 0}.food-heading{display:block;margin-bottom:2rem}.food-heading h2{margin-bottom:1rem}.food-heading p:last-child{max-width:500px}.food-feature{height:min(100vw,600px)}.food-list{padding-top:.5rem}.experience-grid{gap:2.3rem}.experience-visual img{height:450px}.experience-copy{max-width:560px}.proof-inner{display:block}.proof-symbol{margin-bottom:1.4rem}.social-proof h2{margin-bottom:1.8rem}.visit-details{margin-top:1.5rem}.footer-top{display:grid;grid-template-columns:1fr auto;gap:2rem}.footer-top p{grid-row:2}.back-to-top{grid-column:2;grid-row:1}.footer-bottom{display:block}.footer-bottom span{display:block;margin-bottom:.5rem}}
@media(max-width:460px){.wrap{width:calc(100% - 2rem)}.hero{min-height:730px}.hero-inner{padding-bottom:6rem}.hero h1{font-size:clamp(3.2rem,11.4vw,4.1rem)}.hero-intro{line-height:1.62}.hero-actions{align-items:flex-start;flex-direction:column;gap:1rem}.button{min-height:52px}.eyebrow{font-size:.67rem;letter-spacing:.16em}.intro h2,.food-heading h2,.experience h2,.visit h2{font-size:clamp(2.6rem,11vw,3.5rem)}.food-feature{height:480px}.food-feature-label{left:1.3rem;bottom:1.4rem}.food-row{grid-template-columns:28px 1fr 20px;gap:.55rem}.food-row h3{font-size:1.7rem}.food-row p{font-size:.9rem}.food-list-footer{align-items:flex-start}.experience-visual img{height:340px}.visual-caption{font-size:.57rem;padding:1rem 0 0 .8rem}.experience-points span{font-size:.74rem}.detail-block{grid-template-columns:1fr;gap:.45rem}.detail-block small,.detail-block a{grid-column:1}.detail-block a+a{margin-top:0}.footer-top{grid-template-columns:1fr}.back-to-top{grid-row:auto;grid-column:1;justify-self:start}.footer-top p{grid-row:auto}.footer-bottom{font-size:.72rem}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.marquee-track{animation:none}.button,.food-feature img,.nav a,.text-link{transition:none}}
