/* Shared editorial layouts */
:root{--accent:#806232}
h2,h3{font-family:var(--serif);font-weight:400}h2{font-size:clamp(30px,3.2vw,49px);letter-spacing:.075em;line-height:1.65;margin:0 0 30px}h3{font-size:26px;letter-spacing:.06em;line-height:1.6}p{margin:0 0 22px}figure{margin:0}figcaption{font-size:14px;letter-spacing:.1em;margin-top:14px;color:#676e62}button{cursor:pointer}button:disabled{cursor:default}.site-header{position:relative;z-index:10}.menu-toggle{display:none}.button{background:var(--ink);color:var(--paper);display:inline-flex;align-items:center;justify-content:space-between;gap:35px;padding:20px 27px;font-size:15px;border:1px solid var(--ink);letter-spacing:.09em;transition:background .25s}.button:hover{background:#38453f}.line-link span,.button span,.reserve span{transition:transform .25s}.line-link:hover span,.button:hover span,.reserve:hover span{transform:translate(3px,-2px)}.line-link:hover{color:var(--accent)}.note{font-size:14px;color:#676e62;line-height:1.8}.story{display:grid;grid-template-columns: .9fr 1fr;gap:13%;align-items:center;max-width:1500px;margin:auto;padding-top:145px;padding-bottom:145px}.story-picture{position:relative;padding-left:36px}.story-picture img{width:100%;height:530px;object-fit:cover;object-position:50% 60%}.picture-label{position:absolute;left:0;top:0;writing-mode:vertical-rl;font-family:var(--serif);letter-spacing:.22em;font-size:14px}.story-copy p:not(.eyebrow){line-height:2.3;letter-spacing:.04em}.section-title{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:60px}.section-title h2{margin:0}.section-title .eyebrow{margin-bottom:18px}.section-title>.line-link{margin-bottom:7px}.food-section{background:#ede8dc}.food-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px}.food-card figure{aspect-ratio:3/4;overflow:hidden}.food-card img{width:100%;height:100%;object-fit:cover;transition:transform .8s cubic-bezier(.2,.65,.3,1)}.food-card:hover img{transform:scale(1.04)}.food-card:nth-child(2){padding-top:75px}.food-card:nth-child(3){padding-top:150px}.food-card>div{padding-top:28px}.number{font-size:14px;font-family:Georgia,serif;color:var(--accent);letter-spacing:.15em}.food-card h3{margin:12px 0}.food-card p{font-size:15px;line-height:2;margin-bottom:22px}.card-link{font-size:14px;border-top:1px solid #b3b4a9;display:flex;justify-content:space-between;padding-top:15px;letter-spacing:.1em}.oden-feature{display:grid;grid-template-columns:1.12fr 1fr;background:var(--ink);color:var(--paper);overflow:hidden}.oden-picture{padding:100px 0;align-self:stretch}.oden-picture img{width:100%;height:100%;max-height:720px;min-height:480px;object-fit:cover;object-position:45% center}.oden-copy{padding:105px 14% 105px 13%;position:relative;align-self:center}.oden-copy h2{font-size:clamp(32px,3.7vw,56px)}.oden-copy p:not(.eyebrow,.season-label){line-height:2.1;color:#e2e4dc}.oden-copy .eyebrow{color:#d6bb8a;font-size:12px}.season-label{border:1px solid #b5a384;display:inline-block;padding:5px 14px;font-family:var(--serif);font-size:14px;letter-spacing:.17em;color:#e9d8b5}.space-teaser{padding-bottom:135px}.wide-space{display:block;position:relative;overflow:hidden;max-width:1500px;margin:auto}.wide-space img{width:100%;height:500px;object-fit:cover;object-position:50% 55%;transition:transform .8s}.wide-space:hover img{transform:scale(1.025)}.wide-space span{position:absolute;right:30px;bottom:30px;background:#202926e6;color:var(--paper);padding:14px 25px;font-family:var(--serif);font-size:20px;letter-spacing:.1em}.instagram-section{background:#e8e6df;display:grid;grid-template-columns:1fr 1.65fr;gap:7%;align-items:center}.instagram-title>svg{width:30px;height:30px;margin-bottom:28px}.instagram-title .eyebrow{margin-bottom:20px}.instagram-title h2{font-size:clamp(28px,2.7vw,40px)}.instagram-title p:not(.eyebrow){max-width:300px;line-height:2}.instagram-images{display:grid;grid-template-columns:1fr 1fr 1fr;gap:16px}.instagram-images a{overflow:hidden;aspect-ratio:2/3}.instagram-images a:nth-child(2){margin-top:50px}.instagram-images a:nth-child(3){margin-top:100px}.instagram-images img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.instagram-images a:hover img{transform:scale(1.045)}.reservation{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center;border-top:1px solid var(--line)}.reservation .eyebrow{margin-bottom:20px}.reservation h2{font-size:clamp(32px,3.3vw,49px)}.reservation-actions{max-width:430px;width:100%;justify-self:end}.reservation-actions .button{width:100%}.phone{display:block;font-family:Georgia,serif;font-size:34px;letter-spacing:.08em;padding:28px 0 20px;border-bottom:1px solid var(--line);margin-bottom:18px}.phone span{display:block;font-family:var(--sans);font-size:14px;letter-spacing:.06em;margin-bottom:6px}.reservation .note{margin-bottom:0}.footer{background:var(--ink);color:#e4e6de;padding:70px 5% 25px}.footer-top{display:flex;align-items:center;gap:7%}.footer .brand{margin-right:3%}.footer-top p{font-size:14px;margin:0 0 6px}.social-link{margin-left:auto;display:flex;align-items:center;gap:14px;font-size:15px}.social-link svg{width:24px;height:24px}.footer-bottom{border-top:1px solid #ffffff24;margin-top:55px;padding-top:25px;display:flex;align-items:center;justify-content:space-between;gap:30px}.footer-bottom nav{display:flex;gap:30px;font-size:14px}.footer small{font-family:var(--serif);font-size:12px;letter-spacing:.06em}.mobile-actions{display:none}.page-heading{padding:85px 7.7% 70px;background:var(--ink);color:var(--paper);position:relative}.page-heading .eyebrow{color:#d6bc88;margin-bottom:25px}.page-heading h1{font-family:var(--serif);font-size:clamp(44px,4.7vw,68px);font-weight:400;letter-spacing:.1em;line-height:1.5;margin:0 0 25px}.page-heading>p:last-child{font-size:16px;letter-spacing:.04em;color:#d1d7ce;margin-bottom:0}.menu-feature{display:grid;grid-template-columns:1fr 1fr;gap:12%;align-items:center;max-width:1400px;margin:auto}.menu-feature-image{max-height:600px;height:580px;overflow:hidden}.menu-feature-image img{height:100%;width:100%;object-fit:cover;object-position:50% 70%}.menu-feature-copy h2{font-size:clamp(34px,3.3vw,48px)}.menu-feature-copy h3{margin:25px 0 12px}.price{font-family:Georgia,serif;font-size:64px;letter-spacing:.015em;line-height:1.5;margin:18px 0 25px}.price span{font-family:var(--sans);font-size:15px;margin-left:15px}.menu-index{padding:22px 4%;display:flex;flex-wrap:wrap;justify-content:center;gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--paper)}.menu-index a{font-size:14px;padding:3px 26px;border-right:1px solid var(--line);letter-spacing:.08em}.menu-index a:last-child{border:0}.menu-index a:hover{color:var(--accent)}.menu-note{margin-bottom:65px}.menu-content{max-width:1450px;margin:auto;padding-top:70px}.menu-columns{display:grid;grid-template-columns:1fr 1fr;column-gap:12%;row-gap:80px}.menu-group{scroll-margin-top:35px}.menu-group .eyebrow{margin:0 0 12px}.menu-group h2{font-size:32px;border-bottom:1px solid #939a8d;padding-bottom:20px;margin-bottom:5px}.tagline{font-size:14px;color:#705432;margin:15px 0}.menu-list{margin:15px 0 0}.menu-list>div{display:flex;gap:24px;align-items:baseline;justify-content:space-between;border-bottom:1px solid var(--line);padding:14px 0;line-height:1.8}.menu-list dt{font-size:16px}.menu-list dd{margin:0;white-space:nowrap;font-size:16px;flex-shrink:0;font-variant-numeric:tabular-nums}.menu-group .note{margin-top:20px}.source-note{margin:70px 0 0;font-size:14px;color:#6b6c60}.source-note a{display:inline-block;text-decoration:underline;margin-left:20px;text-underline-offset:5px}.drink-section{background:#e8e6df;display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:center}.drink-image{max-width:380px;justify-self:end}.drink-image img{width:100%;max-height:610px;object-fit:cover}.drink-copy .line-link{margin-top:25px}.space-banner{height:500px;overflow:hidden}.space-banner img{height:100%;width:100%;object-fit:cover;object-position:50% 53%}.space-story{display:grid;grid-template-columns:1.1fr 1fr;gap:15%;align-items:center;max-width:1450px;margin:auto}.space-story p:not(.eyebrow){line-height:2.3}.counter-detail img{height:600px;width:100%;object-fit:cover}.table-section{display:grid;grid-template-columns:1.15fr 1fr;gap:10%;align-items:center;padding-top:40px}.table-section img{height:450px;width:100%;object-fit:cover}.table-section p{line-height:2.15}.visit-note{background:#ebe8de;max-width:900px;margin:0 auto 100px;padding:40px;text-align:center}.visit-note h2{font-size:24px;margin-bottom:16px}.visit-note p{font-size:15px;margin:0}.access-section{display:grid;grid-template-columns:1fr 1fr;align-items:start;gap:8%}.access-photo{position:sticky;top:40px}.access-photo img{width:100%;height:auto}.map-link{margin-top:28px;width:100%}.access-info .eyebrow{font-size:12px;margin-bottom:20px}.access-info h2{font-size:30px}.info-list{margin:20px 0 25px}.info-list>div{display:grid;grid-template-columns:115px 1fr;gap:20px;padding:19px 0;border-bottom:1px solid var(--line)}.info-list dt{font-size:14px;padding-top:2px}.info-list dd{margin:0;font-size:16px;line-height:1.9}.info-list dd span{font-size:14px;color:#656d60}.info-list a{text-decoration:underline;text-underline-offset:5px}.error-page{min-height:60vh}.error-page h1{font-family:var(--serif);font-size:32px;font-weight:400}.menu-open{overflow:hidden}dialog{border:0;background:var(--paper);color:var(--ink);padding:30px;max-width:460px;width:calc(100% - 32px);max-height:calc(100dvh - 32px)}dialog::backdrop{background:#13201ae6}.dialog-head{display:flex;align-items:center;justify-content:space-between;gap:15px;border-bottom:1px solid var(--line);padding-bottom:18px}.dialog-head p{font-family:var(--serif);font-size:20px;margin:0}.menu-close{padding:8px;border:0;background:none;font-size:14px;white-space:nowrap}dialog nav{display:flex;flex-direction:column;margin:20px 0 30px}dialog nav a{font-family:var(--serif);font-size:25px;line-height:2.4}dialog>.button{width:100%}.dialog-phone{display:block;font-family:Georgia,serif;font-size:26px;margin:24px 0 5px}dialog>p{font-size:14px}.reveal-ready{opacity:0;transform:translateY(22px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.65,.3,1)}.revealed{opacity:1;transform:none}.hero-photo img{animation:photo-arrive 1.6s ease-out both}.hero-text{animation:text-arrive .9s ease-out both}@keyframes photo-arrive{from{transform:scale(1.045);opacity:.4}to{transform:scale(1);opacity:1}}@keyframes text-arrive{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(min-width:1800px){.section{padding-left:max(7.7%,calc((100vw - 1520px)/2));padding-right:max(7.7%,calc((100vw - 1520px)/2))}.story,.space-story,.menu-feature,.menu-content{padding-left:80px;padding-right:80px}}
@media(max-width:1100px){.site-header nav{gap:20px}.site-header{gap:22px;padding-inline:4%}.site-header nav a{font-size:14px;letter-spacing:0}.brand strong{font-size:34px}.food-grid{gap:22px}.food-card h3{font-size:22px}.story{gap:8%}.story-picture img{height:470px}.oden-copy{padding:70px 11%}.oden-picture{padding:75px 0}.oden-copy h2{font-size:38px}.instagram-section{gap:5%}.instagram-images{gap:12px}.menu-index a{padding-inline:16px}.footer-top{gap:30px}.access-info h2{font-size:27px}.info-list>div{grid-template-columns:90px 1fr;gap:12px}.table-section{gap:6%}}
@media(max-width:900px){.site-header nav{display:none}.site-header .reserve{margin-left:auto}.menu-toggle{display:block;position:relative;background:none;color:inherit;border:0;width:45px;height:48px;padding:8px 5px;flex-shrink:0}.menu-toggle>span{display:block;width:28px;height:1px;background:currentColor;margin-bottom:7px}.menu-toggle small{display:block;font-size:10px;letter-spacing:.13em;line-height:1.4}.story-copy h2{font-size:34px}.story-copy br{display:none}.food-grid{gap:20px}.food-card:nth-child(2){padding-top:35px}.food-card:nth-child(3){padding-top:70px}.oden-feature{grid-template-columns:1fr 1fr}.oden-copy{padding:60px 10%}.oden-picture{padding:65px 0}.instagram-section{grid-template-columns:1fr}.instagram-title p:not(.eyebrow){max-width:none}.instagram-images{max-width:680px;margin-top:20px}.reservation{gap:6%}.footer-top{flex-wrap:wrap}.footer-top .social-link{margin-left:0}.footer-bottom{align-items:start}.footer-bottom nav{gap:15px;flex-wrap:wrap}.footer-bottom small{white-space:nowrap}.menu-feature{gap:8%}.menu-feature-image{height:490px}.menu-index{justify-content:start;flex-wrap:nowrap;overflow-x:auto;scrollbar-width:thin}.menu-index a{white-space:nowrap;padding-inline:20px}.menu-columns{column-gap:7%}.space-story{gap:8%}.counter-detail img{height:510px}.table-section{grid-template-columns:1fr 1fr}.access-section{gap:5%}.info-list>div{grid-template-columns:1fr;gap:7px}.info-list dt{color:#6b7267}}
@media(max-width:760px){body{padding-bottom:60px}.site-header{padding:0 22px;gap:20px}.site-header .reserve{display:none}.menu-toggle{margin-left:auto}.brand strong{font-size:32px}.brand span{font-size:12px}.hero{min-height:645px;height:calc(100svh - 146px)}.hero-text{padding-top:90px}.hero .eyebrow{margin-bottom:24px}.hero .line-link{margin-top:18px}.hero-bottom{height:62px}.hero-bottom>span{font-size:13px}.hero-photo{bottom:62px}.hero-photo img{object-position:57% center}.hero-side{display:none}.section{padding:78px 25px}.eyebrow{font-size:12px;letter-spacing:.18em;margin-bottom:24px}.story{display:flex;flex-direction:column-reverse;gap:45px}.story-copy{width:100%}.story-copy h2{font-size:34px}.story-copy p:not(.eyebrow){font-size:16px;line-height:2.15}.story-copy br{display:initial}.story-picture{width:100%;padding-left:29px}.story-picture img{height:400px;object-position:50% 65%}.picture-label{font-size:13px;letter-spacing:.16em}.section-title{display:block;margin-bottom:35px}.section-title h2{font-size:32px}.section-title .line-link{margin-top:24px}.food-grid{display:block}.food-card{display:block;margin-bottom:50px}.food-card:nth-child(2),.food-card:nth-child(3){padding-top:0}.food-card:last-child{margin-bottom:0}.food-card figure{aspect-ratio:4/4.3}.food-card img{object-position:50% 65%}.food-card h3{font-size:27px}.food-card p{font-size:16px}.food-card>div{padding-top:20px}.oden-feature{display:flex;flex-direction:column}.oden-picture{padding:0;width:100%}.oden-picture img{height:auto;min-height:0;max-height:none;aspect-ratio:4/3;object-fit:cover}.oden-copy{padding:60px 25px 75px}.oden-copy h2{font-size:38px}.oden-copy p:not(.eyebrow,.season-label){font-size:16px}.space-teaser .section-title>div+div{margin-top:28px}.space-teaser .section-title>div+div p{font-size:16px}.wide-space img{height:320px;object-position:50% center}.wide-space span{font-size:17px;right:15px;bottom:15px;padding:12px 15px}.instagram-title>svg{width:27px;height:27px;margin-bottom:22px}.instagram-title h2{font-size:32px}.instagram-images{gap:9px;margin-top:10px}.instagram-images a:nth-child(2){margin-top:25px}.instagram-images a:nth-child(3){margin-top:50px}.instagram-title .line-link{font-size:15px}.reservation{display:block}.reservation h2{font-size:35px}.reservation-actions{margin-top:35px;max-width:none}.phone{font-size:32px}.reservation .note{font-size:13px}.footer{padding:60px 25px 30px}.footer-top{display:block}.footer .brand{margin-bottom:30px;width:max-content}.footer-top p{font-size:14px}.footer-top .social-link{width:max-content;margin-top:25px}.footer-bottom{display:block;margin-top:35px}.footer-bottom nav{display:grid;grid-template-columns:1fr 1fr;gap:14px 20px}.footer-bottom small{display:block;margin-top:35px}.mobile-actions{position:fixed;bottom:0;left:0;right:0;z-index:15;background:var(--paper);display:grid;grid-template-columns:.85fr 1.4fr;border-top:1px solid #a6aa9d;padding-bottom:env(safe-area-inset-bottom)}.mobile-actions a{display:flex;align-items:center;justify-content:center;gap:24px;font-size:14px;min-height:60px;letter-spacing:.1em}.mobile-actions a:last-child{background:var(--ink);color:var(--paper)}.page-heading{padding:55px 25px 50px}.page-heading .eyebrow{font-size:12px;margin-bottom:18px}.page-heading h1{font-size:40px;letter-spacing:.07em;margin-bottom:24px}.page-heading>p:last-child{font-size:15px;line-height:2}.menu-feature{display:flex;flex-direction:column;gap:40px}.menu-feature-image{width:100%;height:430px}.menu-feature-copy{width:100%}.menu-feature-copy h2{font-size:34px}.menu-feature-copy h2 br{display:none}.menu-feature-copy h3{font-size:24px;margin-top:24px}.price{font-size:54px}.menu-index{padding:20px 5px;gap:0}.menu-index a{font-size:14px}.menu-content{padding-top:40px}.menu-note{margin-bottom:45px;font-size:14px}.menu-columns{display:block}.menu-group{margin-bottom:55px}.menu-group:last-child{margin-bottom:0}.menu-group h2{font-size:28px;padding-bottom:16px}.menu-list dt,.menu-list dd{font-size:15px}.menu-list>div{gap:18px;padding:13px 0}.menu-group .note{font-size:13px}.source-note{margin-top:45px;font-size:13px}.source-note a{margin:12px 0 0;display:block;width:max-content}.drink-section{display:flex;flex-direction:column;gap:35px}.drink-copy{width:100%}.drink-copy h2{font-size:32px}.drink-image{width:100%;max-width:none}.drink-image img{height:430px;width:100%;object-position:center 42%}.space-banner{height:310px}.space-story{display:flex;flex-direction:column;gap:35px}.space-story h2{font-size:32px}.space-story p br{display:none}.counter-detail{width:100%;padding-left:30px}.counter-detail img{height:460px;object-position:50% 65%}.table-section{display:flex;flex-direction:column-reverse;gap:35px;padding-top:0}.table-section h2{font-size:32px}.table-section>div,.table-section figure{width:100%}.table-section img{height:300px}.visit-note{margin:0 25px 70px;padding:30px 20px}.visit-note h2{font-size:23px}.visit-note p{font-size:14px}.visit-note p br{display:none}.access-section{display:flex;flex-direction:column;gap:50px}.access-photo{position:static;width:100%}.map-link{font-size:14px;padding:18px 20px}.access-info{width:100%}.access-info h2{font-size:28px}.info-list>div{grid-template-columns:95px 1fr;gap:15px}.info-list dt{font-size:14px}.info-list dd{font-size:15px}.info-list dd span{font-size:13px}.access-info .line-link{font-size:14px;gap:30px}.error-page h1{font-size:28px}}
@media(max-width:360px){.hero h1{font-size:29px}.hero-text{padding-inline:22px}.hero-copy{font-size:14px}.story-copy h2{font-size:30px}.story-copy br{display:none}.info-list>div{grid-template-columns:1fr;gap:7px}.reservation .button{font-size:14px;gap:15px}}
@media(prefers-reduced-motion:reduce){.reveal-ready{opacity:1;transform:none}.hero-photo img,.hero-text{animation:none}.food-card:hover img,.wide-space:hover img,.instagram-images a:hover img{transform:none}}
.oden-feature .line-link:hover{color:#e0c48c}.footer a:hover{color:#f7f3eb}.note,figcaption{color:#5b6456}
@media(max-width:760px){body{padding-bottom:calc(60px + env(safe-area-inset-bottom))}}
.menu-toggle small{font-size:12px;letter-spacing:.03em}
p{text-wrap:pretty}.instagram-title p:not(.eyebrow){text-wrap:balance}
@media(max-width:760px){.menu-list dt,.menu-list dd,.info-list dd,.page-heading>p:last-child{font-size:16px}}
