/* Editorial photography and a consistent brand system for every route. */
:root{--orange:#D96524;--ink:#241e19;--cream:#f7f1e5;--line:#d5c8b8}
body{background:var(--cream)}
.header{border-bottom:1px solid #d5c8b8}
.header nav a{position:relative;padding:8px 0}
.header nav a:after{content:"";position:absolute;left:0;right:100%;bottom:2px;height:1px;background:var(--orange);transition:right .2s}
.header nav a:hover:after{right:0}
.hero h1{font-size:clamp(3.45rem,5.7vw,5.8rem);line-height:1.16;max-width:720px}
.hero-copy{padding-top:84px}
.hero-copy>p{max-width:530px}
.hero-visual{background:#4b291d;display:block;min-height:650px}
.hero-visual .editorial-image{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}
.image-note{position:absolute;bottom:20px;left:24px;background:#f7f1e5ed;color:#32251e;padding:7px 11px;font-size:.72rem;letter-spacing:.06em;font-weight:700}
.intro{grid-template-columns:18% 56% 26%}
.intro h2{font-size:clamp(3rem,4.6vw,4.8rem);line-height:1.17}
.intro-side span{color:var(--orange)}
.dish-image{display:flex;align-items:flex-end;justify-content:space-between;gap:10px;padding:24px;aspect-ratio:1.33;overflow:hidden}
.dish-image span{align-self:flex-start;font-size:.8rem;font-weight:700;letter-spacing:.15em}
.dish-image b{font-family:'DM Sans',sans-serif;font-weight:700;font-size:clamp(1.6rem,3vw,3.2rem);letter-spacing:-.06em;line-height:1;text-align:right;max-width:90%;overflow-wrap:anywhere}
.dish h3{font-size:clamp(1.45rem,2vw,1.9rem);line-height:1.3}
.way-photo{position:relative;background:#562f23}
.way-photo img{height:100%;width:100%;object-fit:cover;filter:none;position:absolute;inset:0}
.brand-vision{background:#29221e;color:#f7f1e5;padding:95px 7%;display:grid;grid-template-columns:38% 1fr;column-gap:7%;align-items:start}
.brand-vision>.section-label{grid-column:1/-1;color:#e9ae87;margin-bottom:22px}
.brand-vision h2{font-size:clamp(3rem,5vw,5.6rem);line-height:1.13;margin:0}
.brand-vision h2 em{color:#D96524}
.brand-vision p{font-size:1.25rem;line-height:1.7;max-width:580px;margin:8px 0 0}
.brand-vision .under-link{grid-column:2;justify-self:start;color:#f7f1e5;margin-top:30px}
.inner-hero h1{line-height:1.17}
.editorial-hero{display:grid;grid-template-columns:52% 48%;padding:0;min-height:520px;overflow:hidden}
.editorial-hero>div{padding:80px 8% 90px 13%;align-self:center;position:relative;z-index:1}
.editorial-hero h1{font-size:clamp(3.3rem,5.4vw,6.3rem)}
.editorial-hero .inner-hero-photo{height:100%;width:100%;object-fit:cover;min-height:520px}
.editorial-hero .image-note{left:auto;right:20px}
.menu-grid{gap:18px;align-items:stretch}
.menu-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin:42px 0 12px}
.menu-feature-grid figure{margin:0;position:relative;overflow:hidden;background:#cfaa85;aspect-ratio:3/4}
.menu-feature-grid img{width:100%;height:100%;object-fit:cover;transition:transform .35s}
.menu-feature-grid figure:hover img{transform:scale(1.04)}
.menu-feature-grid figcaption{position:absolute;left:0;right:0;bottom:0;padding:35px 14px 15px;background:linear-gradient(transparent,#211a16bd);color:white;font:700 1rem 'DM Sans',sans-serif}
.category-intro{max-width:640px;font-size:1.07rem;line-height:1.6;margin:-8px 0 26px}
.menu-item{background:#f0e5d5;border:1px solid #d8c8b7;min-height:235px;padding:24px;display:flex;flex-direction:column;transition:transform .2s,box-shadow .2s}
.menu-item:hover{transform:translateY(-3px);box-shadow:0 12px 22px #241e1912}
.menu-item:nth-child(3n+2){background:#ead5c7}
.menu-item:nth-child(3n+3){background:#e8d8bd}
.menu-item-top{margin:0;color:#685749}
.menu-item h3{margin:35px 0 12px;font-size:clamp(1.35rem,1.8vw,1.8rem)}
.menu-item p{margin-top:auto;max-width:310px}
.menu-hero{background:#eac987}
.story-hero{background:#e2ad8b}
.story-image{position:relative;overflow:hidden;background:#64402e}
.story-image img{height:100%;width:100%;object-fit:cover;position:absolute;inset:0}
.story-manifesto{background:#29221e;color:#f7f1e5;display:grid;grid-template-columns:1fr 1fr;gap:0 8%;align-items:start}
.story-manifesto .section-label{grid-column:1/-1;margin-bottom:25px;color:#e9ae87}
.story-manifesto h2{font-size:clamp(2.8rem,4.7vw,5rem);line-height:1.16;margin:0}
.story-manifesto h2 em{color:#D96524}
.story-manifesto p{font-size:1.2rem;line-height:1.75;margin:4px 0 0}
.location-list>h2{font-size:clamp(2.8rem,4.5vw,4.8rem);margin:20px 0 45px}
.places{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.place-card{background:#edddc9;padding:35px;min-height:350px;display:flex;flex-direction:column;border:1px solid #c9b6a2}
.place-index{font-size:.78rem;letter-spacing:.16em;font-weight:700;color:#6f5445}
.place-card h2{font-size:clamp(2.4rem,4vw,4.2rem);margin:20px 0 10px}
.place-status{color:var(--orange);font-size:.8rem;letter-spacing:.12em;font-weight:700;text-transform:uppercase}
.place-card p{font-size:1.05rem;line-height:1.6;margin:25px 0 0}
.place-card .location-actions{margin-top:auto;padding-top:24px}
.place-card .button{gap:10px}
.location-future{background:#f0e4d5}
.location-future h2{font-size:clamp(2.7rem,5vw,5.2rem);margin:20px 0}
.location-future p{font-size:1.15rem;line-height:1.7;max-width:640px}
.location-future .under-link{display:inline-block;margin-top:15px}
.partnership-note{padding:85px 7%;background:#ecd4bb}
.partnership-note h2{font-size:clamp(2.6rem,4.5vw,4.8rem);margin:20px 0}
.partnership-note p{font-size:1.15rem;line-height:1.6;max-width:600px;margin-bottom:30px}
.contact-grid .button{margin-top:20px}
@media(max-width:900px){.hero h1{font-size:clamp(3.15rem,6.1vw,4.4rem)}.editorial-hero>div{padding:65px 8%}.editorial-hero h1{font-size:clamp(3rem,5.8vw,5rem)}.menu-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.menu-feature-grid figure{aspect-ratio:4/3}}
@media(max-width:650px){.hero h1{font-size:clamp(3.25rem,10vw,4.4rem)}.hero h1 em{white-space:normal}.hero-visual{min-height:360px}.hero-visual .editorial-image{object-position:center 35%}.intro{display:block}.way-photo{min-height:360px}.brand-vision{display:block;padding:75px 7%}.brand-vision h2{margin:22px 0 27px}.brand-vision p{font-size:1.08rem}.brand-vision .under-link{display:inline-block;margin-top:25px}.editorial-hero{display:flex;flex-direction:column-reverse}.editorial-hero>div{padding:50px 7% 70px}.editorial-hero .inner-hero-photo{height:285px;min-height:0}.menu-grid,.places,.story-manifesto{display:grid;grid-template-columns:1fr}.menu-item{min-height:205px}.story-manifesto p{margin-top:22px}.place-card{min-height:310px;padding:26px}.location-future h2,.story-manifesto h2{line-height:1.2}.menu-feature-grid{gap:8px}.menu-feature-grid figure{aspect-ratio:1}.menu-feature-grid figcaption{font-size:.82rem;padding:24px 9px 9px}}
@media(prefers-reduced-motion:reduce){.menu-item,.header nav a:after{transition:none}}
