@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,600;1,600&display=swap');
:root{--green:#183a2b;--green-dark:#10291f;--cream:#f4efe3;--paper:#fffdf8;--gold:#d5ae62;--ink:#17231d;--muted:#68726c;--line:rgba(24,58,43,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.6}img{display:block;width:100%}a{color:inherit}button{font:inherit}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}
.site-header{height:84px;position:absolute;top:0;left:0;right:0;z-index:10;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(24px,5vw,72px);color:#fff;border-bottom:1px solid rgba(255,255,255,.22)}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;text-transform:uppercase;line-height:1}.brand-crown{font-size:30px;color:var(--gold)}.brand strong{font-family:'Playfair Display',serif;font-size:20px;letter-spacing:.04em}.brand small,.footer-brand small{display:block;margin-top:7px;font-size:10px;letter-spacing:.35em;font-weight:600}nav{display:flex;align-items:center;gap:28px}nav a{text-decoration:none;font-size:14px;font-weight:600;letter-spacing:.02em}.nav-call{padding:10px 20px;border:1px solid rgba(255,255,255,.5);border-radius:99px}.menu-toggle{display:none;background:none;border:0;padding:8px}.menu-toggle span:not(.sr-only){display:block;width:24px;height:2px;background:#fff;margin:5px}
.hero{min-height:760px;height:100svh;position:relative;display:grid;align-items:center;color:#fff;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,15,.88) 0%,rgba(8,20,15,.55) 52%,rgba(8,20,15,.12) 100%),linear-gradient(0deg,rgba(8,20,15,.48),transparent 45%)}.hero-content{position:relative;z-index:1;width:min(780px,90%);margin-left:clamp(24px,10vw,150px);padding-top:58px}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.2em;font-size:12px;font-weight:600;color:var(--gold)}.hero h1,.section h2{font-family:'Playfair Display',serif;font-weight:600;line-height:1.03;margin:.25em 0}.hero h1{font-size:clamp(58px,8vw,108px);letter-spacing:-.04em}.hero-intro{font-size:clamp(17px,2vw,21px);max-width:560px;color:rgba(255,255,255,.84)}.hero-actions{display:flex;gap:14px;margin-top:34px}.button{display:inline-flex;justify-content:center;align-items:center;min-height:52px;padding:0 26px;border-radius:2px;text-decoration:none;text-transform:uppercase;letter-spacing:.11em;font-size:12px;font-weight:600}.button-gold{background:var(--gold);color:#18251e}.button-gold:hover{background:#e1bf7c}.button-ghost{border:1px solid rgba(255,255,255,.55)}.scroll-cue{position:absolute;z-index:2;right:clamp(24px,5vw,72px);bottom:28px;color:#fff;text-decoration:none;font-size:12px;text-transform:uppercase;letter-spacing:.16em}.scroll-cue span{color:var(--gold);margin-left:9px}
.section{padding:clamp(72px,10vw,140px) clamp(24px,8vw,120px)}.welcome{display:grid;grid-template-columns:.45fr 1.25fr .8fr;gap:clamp(28px,5vw,76px);align-items:start}.welcome h2,.gallery h2,.find h2,.food h2{font-size:clamp(42px,5vw,68px);letter-spacing:-.035em}.welcome-copy>p{font-size:18px;color:#46534c;max-width:660px}.hours-card{background:var(--cream);padding:34px}.card-label{margin:0;color:#8e733e;text-transform:uppercase;letter-spacing:.16em;font-size:11px}.hours-card h3{font-family:'Playfair Display',serif;font-size:28px;margin:8px 0 20px}.hours-card dl{margin:0}.hours-card dl div{padding:13px 0;border-top:1px solid var(--line)}.hours-card dt{font-size:13px;color:var(--muted)}.hours-card dd{margin:2px 0 0;font-weight:600}.hours-card>a{display:flex;justify-content:space-between;margin-top:22px;padding-top:18px;border-top:1px solid var(--line);text-decoration:none;font-weight:600}
.food{background:var(--green);color:#fff;display:grid;grid-template-columns:1.05fr .95fr;padding:0}.food-photo{min-height:720px}.food-photo img{height:100%;object-fit:cover}.food-copy{padding:clamp(64px,8vw,120px);align-self:center}.section-kicker.light{color:#d9bd83}.food-copy>p{font-size:18px;color:rgba(255,255,255,.72);max-width:520px}.serving-time{border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18);padding:25px 0;margin:35px 0;display:grid;grid-template-columns:1fr auto;align-items:center}.serving-time span{font-size:12px;text-transform:uppercase;letter-spacing:.13em;color:#d9bd83}.serving-time strong{font-family:'Playfair Display',serif;font-size:24px}.serving-time small{grid-column:2;font-size:12px;color:rgba(255,255,255,.6)}.text-link{display:inline-flex;gap:20px;align-items:center;text-underline-offset:7px;font-size:14px;font-weight:600}.text-link span{color:var(--gold)}
.gallery-heading{display:grid;grid-template-columns:1fr 1fr;gap:40px;align-items:end;margin-bottom:48px}.gallery-heading h2{max-width:650px;margin-bottom:0}.gallery-heading>p{max-width:490px;color:var(--muted);font-size:17px}.gallery-grid{display:grid;grid-template-columns:1.25fr .75fr;grid-template-rows:320px 320px;gap:14px}.gallery-item{padding:0;border:0;background:#ddd;overflow:hidden;cursor:zoom-in}.gallery-item img{height:100%;object-fit:cover;transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.025)}.gallery-item.wide{grid-row:span 2}.gallery-item.tall{grid-column:2}
.find{background:var(--green-dark);color:#fff;display:grid;grid-template-columns:1fr 1fr;padding:0}.find-copy{padding:clamp(64px,8vw,120px)}.find-copy>p{font-size:18px;color:rgba(255,255,255,.68);max-width:470px}.find-copy address{font-style:normal;margin:28px 0;font-size:17px}.find-actions{display:flex;align-items:center;gap:28px;margin-top:32px}.light-link{color:#fff}.find-photo img{height:100%;min-height:650px;object-fit:cover}
footer{background:#0a1d15;color:rgba(255,255,255,.75);padding:55px clamp(24px,8vw,120px) 25px;display:grid;grid-template-columns:1fr auto;gap:38px;align-items:center}.footer-brand{color:#fff;text-transform:uppercase;line-height:1}.footer-brand strong{font-family:'Playfair Display',serif;font-size:20px;margin-left:8px}.footer-brand small{margin-left:40px}.footer-links{display:flex;gap:26px;font-size:13px}.footer-links a{text-underline-offset:5px}footer>p{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.12);padding-top:22px;margin:0;font-size:12px}
.lightbox{border:0;padding:0;background:transparent;max-width:min(90vw,1100px);max-height:90vh}.lightbox::backdrop{background:rgba(4,12,8,.92)}.lightbox img{max-height:86vh;object-fit:contain}.lightbox button{position:fixed;top:18px;right:24px;border:0;background:none;color:#fff;font-size:42px;cursor:pointer}
@media(max-width:900px){.site-header{height:72px}.menu-toggle{display:block;position:relative;z-index:2}.site-header nav{display:none;position:absolute;inset:0 0 auto;background:var(--green-dark);padding:90px 24px 32px;flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.hero{min-height:700px}.hero-shade{background:linear-gradient(90deg,rgba(8,20,15,.82),rgba(8,20,15,.3)),linear-gradient(0deg,rgba(8,20,15,.55),transparent)}.hero-content{margin-left:24px}.welcome{grid-template-columns:1fr}.hours-card{max-width:560px;width:100%}.food,.find{grid-template-columns:1fr}.food-photo{min-height:460px}.gallery-heading{grid-template-columns:1fr}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:420px 250px}.gallery-item.wide{grid-column:1/-1;grid-row:auto}.gallery-item.tall{grid-column:auto}.find-photo img{min-height:450px}footer{grid-template-columns:1fr}.footer-links{flex-wrap:wrap}}
@media(max-width:560px){.brand strong{font-size:16px}.hero h1{font-size:54px}.hero-actions{flex-direction:column;align-items:stretch;max-width:300px}.section{padding:70px 22px}.welcome h2,.gallery h2,.find h2,.food h2{font-size:43px}.food,.find{padding:0}.food-copy,.find-copy{padding:70px 24px}.food-photo{min-height:360px}.gallery-grid{grid-template-columns:1fr;grid-template-rows:360px 300px 300px}.gallery-item.wide,.gallery-item.tall{grid-column:auto}.gallery-item:nth-child(4){display:none}.find-actions{align-items:flex-start;flex-direction:column}.find-photo img{min-height:360px}.serving-time{grid-template-columns:1fr}.serving-time strong,.serving-time small{grid-column:1}.footer-links{flex-direction:column;gap:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery-item img{transition:none}}
