:root{--paper:#f4f0e8;--surface:#fbf9f5;--ink:#25211e;--brown:#665d54;--olive:#7d8065;--terra:#b86745;--line:rgba(37,33,30,.15);--serif:"Fraunces",Georgia,serif;--sans:"Inter",Arial,sans-serif;--shell:min(1380px,calc(100vw - 80px));--header-h:92px}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6;overflow-x:hidden}
body.modal-open,body.menu-open{overflow:hidden}
img{display:block;width:100%;height:100%;object-fit:cover}
a{color:inherit;text-decoration:none}
button,input,textarea{font:inherit;color:inherit}
button{cursor:pointer}
.shell{width:var(--shell);margin-inline:auto}
.section{padding:clamp(100px,10vw,160px) 0}
.skip-link{position:fixed;z-index:9999;left:16px;top:16px;transform:translateY(-150%);background:var(--ink);color:var(--surface);padding:10px 16px}
.skip-link:focus{transform:none}
.scroll-progress{position:fixed;z-index:1100;inset:0 auto auto 0;height:2px;width:100%;background:var(--terra);transform:scaleX(0);transform-origin:left}
.eyebrow,.overline{margin:0;font-size:12px;font-weight:600;line-height:1.2;letter-spacing:.14em;text-transform:uppercase}
.overline{color:var(--terra);margin-bottom:26px}
.site-header{position:fixed;z-index:1000;top:0;left:0;width:100%;color:#fff;transition:background .45s ease,color .45s ease,border .45s ease,transform .45s ease}
.site-header.is-scrolled,.site-header.menu-active{background:rgba(244,240,232,.94);color:var(--ink);border-bottom:1px solid var(--line);backdrop-filter:blur(12px)}
.nav{height:var(--header-h);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;transition:height .45s ease}
.is-scrolled .nav{height:72px}
.wordmark{justify-self:start;display:inline-flex;align-items:flex-start;gap:12px;line-height:1}
.wordmark span{font-family:var(--serif);font-size:27px;letter-spacing:.12em}
.wordmark small{font-size:8px;line-height:1.3;letter-spacing:.13em;text-transform:uppercase;max-width:78px;padding-top:3px}
.nav-links{display:flex;gap:34px;font-size:12px;font-weight:500;letter-spacing:.04em}
.nav-links a,.footer-links a{position:relative}
.nav-links a::after,.footer-links a::after,.text-link::after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:1px;background:currentColor;transition:right .3s ease}
.nav-links a:hover::after,.nav-links a:focus-visible::after,.footer-links a:hover::after,.text-link:hover::after{right:0}
.nav-cta{justify-self:end;border-bottom:1px solid currentColor;padding:8px 0;font-size:12px;font-weight:600;letter-spacing:.05em}
.nav-cta span,.button span,.contact-strip a span{display:inline-block;margin-left:8px;transition:transform .25s ease}
.nav-cta:hover span,.button:hover span,.contact-strip a:hover span{transform:translate(4px,-1px)}
.menu-toggle,.mobile-menu{display:none}
.hero{position:relative;height:230svh;min-height:1750px;color:#fff;background:var(--paper)}
.hero-stage{position:sticky;top:0;height:100svh;min-height:720px;overflow:hidden;background:var(--ink);transform-origin:center center;will-change:transform,border-radius}
.hero-media,.hero-media img,.hero-wash{position:absolute;inset:0}
.hero-media{overflow:hidden;will-change:transform}
.hero-media img{filter:saturate(.8) contrast(.96);transform:scale(1.08);will-change:transform}
.hero-wash{background:linear-gradient(90deg,rgba(25,20,17,.48) 0%,rgba(25,20,17,.12) 56%,rgba(25,20,17,.27) 100%),linear-gradient(0deg,rgba(25,20,17,.45),transparent 50%)}
.hero-content{position:relative;height:100%;padding-top:calc(var(--header-h) + 82px);display:flex;flex-direction:column}
.hero-eyebrow{display:flex;gap:30px;align-items:center;margin-left:7px}
.hero-eyebrow span{opacity:.62}
.hero-title{font-family:var(--serif);font-size:clamp(70px,9vw,150px);font-weight:300;line-height:.82;letter-spacing:-.055em;margin:clamp(72px,9vh,112px) 0 0;max-width:1100px}
.hero-title span{display:block;overflow:hidden;padding-bottom:.1em}
.hero-title span:last-child{margin-left:clamp(54px,9vw,142px);font-style:italic}
.hero-bottom{margin-top:auto;margin-bottom:78px;display:grid;grid-template-columns:minmax(270px,380px) 1fr;gap:40px;align-items:end}
.hero-bottom>p{margin:0;max-width:380px;font-size:15px;color:rgba(255,255,255,.83)}
.hero-actions{display:flex;gap:28px;align-items:center}
.button{appearance:none;border:1px solid var(--ink);border-radius:2px;background:var(--ink);color:var(--surface);padding:14px 19px;display:inline-flex;align-items:center;justify-content:center;font-size:12px;font-weight:600;letter-spacing:.04em;line-height:1.2;transition:background .25s ease,color .25s ease,transform .25s ease}
.button:hover{background:#3b332e;transform:translateY(-1px)}
.button-light{background:var(--surface);border-color:var(--surface);color:var(--ink)}
.button-light:hover{background:var(--paper)}
.button-outline{background:transparent;color:var(--ink)}
.button-outline:hover{background:var(--ink);color:var(--surface)}
.text-link{position:relative;font-size:12px;font-weight:600;letter-spacing:.04em}
.scroll-cue{position:absolute;right:0;bottom:78px;margin:0;font-size:10px;letter-spacing:.14em;text-transform:uppercase;writing-mode:vertical-rl}
.scroll-cue span{margin-top:9px}
.hero-scroll-story{position:absolute;z-index:3;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;pointer-events:none;opacity:0;visibility:hidden}
.hero-scroll-label{margin:0 0 35px;font-size:10px;font-weight:600;letter-spacing:.2em;text-transform:uppercase}
.hero-scroll-statement{font-family:var(--serif);font-size:clamp(62px,7.6vw,124px);font-weight:300;line-height:.88;letter-spacing:-.05em;margin:0}
.hero-scroll-statement span{display:block;transform:translateY(70px);opacity:0}
.hero-scroll-statement span:nth-child(2){padding-left:10vw;font-style:italic}
.hero-scroll-statement span:nth-child(3){padding-right:5vw;color:#e3ded5}
.hero-scroll-meta{position:absolute;left:40px;right:40px;bottom:38px;display:flex;justify-content:space-between;font-size:9px;letter-spacing:.16em;opacity:0}
.hero-scroll-meter{position:absolute;z-index:4;right:38px;top:50%;width:1px;height:150px;background:rgba(255,255,255,.28);transform:translateY(-50%);opacity:0}
.hero-scroll-meter span{position:absolute;inset:0;background:#fff;transform:scaleY(0);transform-origin:top}
.hero-scroll-meter b,.hero-scroll-meter em{position:absolute;right:12px;font-size:9px;font-style:normal;font-weight:500;letter-spacing:.1em}
.hero-scroll-meter b{top:-5px}.hero-scroll-meter em{bottom:-5px}
.manifesto{padding-top:clamp(120px,14vw,220px)}
.manifesto-grid{display:grid;grid-template-columns:24% 1fr;gap:6%}
.section-mark{display:flex;flex-direction:column;justify-content:space-between;min-height:380px;border-top:1px solid var(--line);padding-top:18px;color:var(--brown)}
.small-note{font-size:10px;letter-spacing:.15em}
.manifesto-title{font-family:var(--serif);font-size:clamp(58px,7vw,112px);font-weight:300;line-height:.94;letter-spacing:-.045em;margin:0;max-width:1000px}
.manifesto-title span,.dark-intermission h2 span,.editorial-quote blockquote span{display:block}
.manifesto-title span:last-child{padding-left:12%}
.manifesto-copy{max-width:600px;margin:72px 8% 0 auto;display:grid;grid-template-columns:68px 1fr;gap:26px;color:var(--brown)}
.manifesto-copy p{margin:0;line-height:1.8}
.fine-rule{height:1px;background:var(--ink);margin-top:12px}
.menu-section{background:var(--surface)}
.menu-layout{display:grid;grid-template-columns:minmax(320px,.7fr) 1.3fr;gap:clamp(60px,9vw,140px);align-items:start}
.menu-intro{position:sticky;top:112px}
.menu-intro h2,.daily-heading h2,.gallery-head h2,.testimonials-head h2,.visit-title h2{font-family:var(--serif);font-size:clamp(55px,6vw,92px);font-weight:300;line-height:.95;letter-spacing:-.045em;margin:24px 0}
.menu-intro>p:last-of-type{color:var(--brown);margin-bottom:44px}
.menu-image-wrap{height:min(47vw,540px);max-height:540px;position:relative;overflow:hidden}
.menu-image{transition:opacity .22s ease,transform .55s ease}
.menu-image.is-changing{opacity:.25;transform:scale(1.02)}
.menu-image-wrap>span{position:absolute;left:14px;bottom:12px;color:#fff;font-size:10px;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.menu-list{border-top:1px solid var(--line)}
.menu-item{display:grid;grid-template-columns:42px 1fr auto;gap:16px;align-items:start;padding:24px 0;border-bottom:1px solid var(--line);transition:padding .3s ease,border-color .3s ease}
.menu-item:hover{padding-left:7px;border-color:var(--terra)}
.menu-no{font-size:10px;color:var(--brown);padding-top:7px}
.menu-item h3{font-family:var(--serif);font-size:27px;font-weight:400;line-height:1.2;margin:0 0 5px;transition:color .25s ease}
.menu-item:hover h3{color:var(--terra)}
.menu-item p{margin:0;color:var(--brown);font-size:13px}
.menu-item strong{font-size:13px;font-weight:500;padding-top:6px}
.menu-list-footer{display:flex;justify-content:space-between;align-items:center;margin-top:36px;gap:20px}
.menu-list-footer p,.demo-note{font-size:11px;color:var(--brown);letter-spacing:.04em}
.photo-break{position:relative;height:clamp(630px,80vh,900px);overflow:hidden;background:var(--ink);color:#fff}
.photo-break-media,.photo-break-media img{position:absolute;inset:-5% 0;width:100%;height:110%}
.photo-break-media::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(30,25,20,.56),rgba(30,25,20,.06) 70%)}
.photo-break-copy{position:relative;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:80px}
.photo-break-copy p{font-family:var(--serif);font-size:clamp(50px,6vw,92px);font-weight:300;line-height:.98;letter-spacing:-.04em;margin:0 0 24px}
.photo-break-copy span{font-size:11px;letter-spacing:.14em;text-transform:uppercase}
.story-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:clamp(70px,10vw,160px);align-items:start}
.story-visuals{position:relative;min-height:890px}
.story-main{width:78%;height:760px;margin:0;overflow:hidden}
.story-detail{position:absolute;right:0;bottom:0;width:46%;height:300px;margin:0;border:14px solid var(--paper);overflow:hidden}
.story-copy{padding-top:80px}
.story-copy h2{font-family:var(--serif);font-size:clamp(54px,5.4vw,84px);font-weight:300;line-height:.97;letter-spacing:-.045em;margin:28px 0 50px}
.story-copy p{max-width:540px;color:var(--brown);margin:0 0 25px}
.story-copy .lead{font-family:var(--serif);font-size:25px;line-height:1.45;color:var(--ink)}
.story-sign{display:block;border-top:1px solid var(--line);margin-top:65px;padding-top:17px;font-size:10px;letter-spacing:.16em}
.daily{padding-top:40px}
.daily-heading{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid var(--line);padding-bottom:40px}
.daily-heading h2{margin:0}
.daily-grid{display:grid;grid-template-columns:1fr 1.2fr 1fr;grid-template-rows:auto auto;min-height:760px}
.daily-item{padding:42px 30px 60px 0;border-bottom:1px solid var(--line);display:flex;flex-direction:column}
.daily-item:nth-of-type(2){grid-column:3;grid-row:1;padding-left:30px}
.daily-item:nth-of-type(3){grid-column:3;grid-row:2;padding-left:30px;border-bottom:0}
.daily-item>span{font-size:10px;color:var(--brown)}
.daily-item h3{font-family:var(--serif);font-size:42px;font-weight:300;margin:auto 0 10px}
.daily-item p{max-width:280px;color:var(--brown);margin:0}
.daily-photo{grid-column:2;grid-row:1/3;margin:0;height:700px;align-self:center;overflow:hidden}
.dark-intermission{background:var(--ink);color:var(--surface);padding:clamp(120px,13vw,200px) 0}
.dark-grid{display:grid;grid-template-columns:22% 1fr;position:relative}
.dark-intermission h2{font-family:var(--serif);font-size:clamp(60px,8vw,126px);font-weight:300;line-height:.88;letter-spacing:-.05em;margin:0}
.dark-intermission h2 span:nth-child(2){padding-left:12%}
.dark-intermission h2 span:nth-child(3){padding-left:2%;font-style:italic;color:#d6d1c8}
.dark-note{position:absolute;right:0;bottom:0;font-size:11px;color:#b9b1a8;letter-spacing:.08em}
.gallery{background:var(--surface)}
.gallery-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:85px}
.gallery-head h2{margin:20px 0 0}
.gallery-head>p{color:var(--brown);margin:0;max-width:400px}
.gallery-grid{display:grid;grid-template-columns:repeat(12,1fr);grid-auto-rows:85px;gap:20px}
.gallery-item{position:relative;margin:0;overflow:hidden;background:#ddd}
.gallery-item img{transition:transform .8s cubic-bezier(.2,.7,.2,1)}
.gallery-item:hover img{transform:scale(1.025)}
.gallery-item figcaption{position:absolute;left:12px;bottom:10px;color:#fff;font-size:10px;letter-spacing:.13em;text-transform:uppercase;opacity:0;transform:translateY(6px);transition:.3s ease;text-shadow:0 1px 8px rgba(0,0,0,.4)}
.gallery-item:hover figcaption{opacity:1;transform:none}
.gallery-a{grid-column:1/7;grid-row:1/6}.gallery-b{grid-column:8/12;grid-row:2/7}.gallery-c{grid-column:2/6;grid-row:7/10}.gallery-d{grid-column:7/13;grid-row:8/14}.gallery-e{grid-column:1/7;grid-row:11/16}.gallery-f{grid-column:8/12;grid-row:15/18}
.editorial-quote{padding-block:clamp(130px,15vw,240px)}
.editorial-quote .eyebrow{margin-bottom:50px;color:var(--terra)}
.editorial-quote blockquote{font-family:var(--serif);font-size:clamp(51px,6vw,100px);font-weight:300;line-height:1.04;letter-spacing:-.045em;margin:0;max-width:1250px}
.editorial-quote blockquote span:last-child{padding-left:9%;font-style:italic;color:var(--brown)}
.testimonials{border-top:1px solid var(--line);padding-top:100px}
.testimonials-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:60px}
.testimonials-head h2{font-size:56px;margin:0}
.quotes-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line)}
.quote{margin:0;padding:45px 38px 30px 0;border-right:1px solid var(--line);min-height:300px;display:flex;flex-direction:column}
.quote+ .quote{padding-left:38px}.quote:last-child{border-right:0}
.quote blockquote{font-family:var(--serif);font-size:25px;line-height:1.45;margin:0}
.quote figcaption{margin-top:auto;font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}
.visit{background:var(--surface);padding-bottom:90px}
.visit-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:10vw;margin-bottom:90px}
.visit-title h2{font-size:clamp(60px,7vw,106px);margin:28px 0 45px}
.visit-title>p:last-child{font-family:var(--serif);font-size:24px;line-height:1.45;color:var(--brown)}
.visit-details{display:grid;grid-template-columns:1fr 1fr;gap:0;border-top:1px solid var(--line)}
.detail-block{padding:23px 20px 28px 0;border-bottom:1px solid var(--line);font-size:14px}
.detail-block:nth-child(even){padding-left:25px;border-left:1px solid var(--line)}
.detail-block>span{display:block;margin-bottom:16px;font-size:10px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--terra)}
.detail-block p,.detail-block address{font-style:normal;margin:0 0 15px}.detail-block b{font-weight:500}
.visit-actions{grid-column:1/-1;display:flex;gap:10px;padding-top:28px}
.map-wrap{position:relative;height:470px;padding:12px;background:var(--paper)}
.map-wrap iframe{width:100%;height:100%;border:0;filter:grayscale(1) sepia(.12) contrast(.85)}
.map-label{position:absolute;right:28px;bottom:26px;background:var(--paper);padding:8px 11px;display:flex;gap:18px;font-size:9px;letter-spacing:.12em}
.contact-strip{display:grid;grid-template-columns:repeat(3,1fr);margin-top:40px;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.contact-strip a{display:flex;justify-content:space-between;padding:24px 28px 24px 0;font-family:var(--serif);font-size:22px;border-right:1px solid var(--line);transition:color .25s ease,padding .25s ease}
.contact-strip a+a{padding-left:28px}.contact-strip a:last-child{border-right:0}.contact-strip a:hover{color:var(--terra);padding-right:21px}
.site-footer{background:var(--ink);color:var(--surface);padding:80px 0 26px}
.mobile-quick-actions{display:none}
.footer-top{display:flex;justify-content:space-between;align-items:start;padding-bottom:80px}
.footer-wordmark span{font-size:58px}.footer-wordmark small{font-size:9px;line-height:1.6;max-width:120px}
.footer-links{display:flex;gap:30px;font-size:12px}
.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid rgba(255,255,255,.16);padding-top:22px;font-size:9px;letter-spacing:.08em;color:#b9b2ab}
.modal{position:fixed;z-index:2000;inset:0;display:grid;place-items:center;padding:28px;visibility:hidden;opacity:0;transition:opacity .3s ease,visibility .3s ease}
.modal.is-open{visibility:visible;opacity:1}
.modal-backdrop{position:absolute;inset:0;background:rgba(22,18,16,.72);backdrop-filter:blur(4px)}
.modal-panel{position:relative;background:var(--paper);width:min(1050px,100%);max-height:calc(100vh - 56px);overflow:auto;padding:42px 50px;transform:translateY(20px);transition:transform .35s cubic-bezier(.2,.7,.2,1);box-shadow:0 24px 80px rgba(0,0,0,.2)}
.is-open .modal-panel{transform:none}
.modal-head{display:flex;justify-content:space-between;align-items:flex-start;border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:35px}
.modal-head h2{font-family:var(--serif);font-size:58px;font-weight:300;line-height:1;margin:14px 0 0}
.modal-close{appearance:none;border:0;background:transparent;padding:8px;font-size:11px;letter-spacing:.08em;text-transform:uppercase}
.modal-close span{font-size:22px;margin-left:8px;vertical-align:-2px}
.full-menu{display:grid;grid-template-columns:repeat(2,1fr);gap:42px 70px}
.full-menu section{border-top:1px solid var(--ink);padding-top:13px}.full-menu h3{font-family:var(--serif);font-size:29px;font-weight:400;margin:0 0 20px}
.full-menu p{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);margin:0;padding:9px 0;font-size:13px}.full-menu b{font-weight:500}
.modal-disclaimer{font-size:10px;color:var(--brown);margin:35px 0 0}
.reservation-panel{width:min(760px,100%)}
.form-intro{color:var(--brown);max-width:620px;margin-bottom:30px}
#reservation-form{display:grid;grid-template-columns:repeat(2,1fr);gap:24px 28px}
.field{display:flex;flex-direction:column}.field-wide{grid-column:1/-1}.field label{font-size:11px;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.field label span{color:var(--brown);font-weight:400;text-transform:none}
.field input,.field textarea{border:0;border-bottom:1px solid var(--line);background:transparent;border-radius:0;padding:10px 0;outline:0;transition:border .2s ease}.field input:focus,.field textarea:focus{border-color:var(--terra)}
.field.is-invalid input,.field.is-invalid textarea{border-color:#a33}.field-error{min-height:18px;color:#8e382d;font-size:10px;padding-top:3px}
.submit-button{grid-column:1/-1;justify-self:start;margin-top:8px}
:focus-visible{outline:2px solid var(--terra);outline-offset:4px}
@media(max-width:1100px){:root{--shell:min(100% - 48px,1380px)}.nav{grid-template-columns:1fr auto}.nav-links,.nav-cta{display:none}.menu-toggle{justify-self:end;display:flex;align-items:center;gap:13px;border:0;background:transparent;color:inherit;padding:10px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}.menu-toggle i,.menu-toggle i::before{display:block;width:22px;height:1px;background:currentColor;transition:.3s}.menu-toggle i{position:relative}.menu-toggle i::before{content:"";position:absolute;top:6px}.menu-toggle[aria-expanded="true"] i{transform:rotate(45deg)}.menu-toggle[aria-expanded="true"] i::before{top:0;transform:rotate(90deg)}.mobile-menu{display:block;position:absolute;left:0;top:100%;width:100%;background:var(--paper);color:var(--ink);border-bottom:1px solid var(--line);visibility:hidden;opacity:0;transform:translateY(-8px);transition:.3s}.menu-active .mobile-menu{visibility:visible;opacity:1;transform:none}.mobile-menu-inner{display:flex;flex-direction:column;padding-block:24px}.mobile-menu a{font-family:var(--serif);font-size:32px;border-bottom:1px solid var(--line);padding:12px 0}.hero-title{font-size:clamp(68px,11vw,120px)}.menu-layout{gap:60px}.story-grid{gap:70px}.daily-grid{grid-template-columns:.85fr 1.3fr .85fr}.gallery-grid{grid-auto-rows:70px}.visit-grid{gap:6vw}}
@media(max-width:800px){:root{--shell:calc(100% - 36px);--header-h:76px}.section{padding:80px 0}.hero{height:100svh;min-height:690px}.hero-content{padding-top:118px}.hero-title{font-size:clamp(58px,15vw,90px);line-height:.9;margin-top:62px}.hero-title span:last-child{margin-left:0}.hero-bottom{grid-template-columns:1fr;margin-bottom:46px;gap:18px}.hero-bottom>p{max-width:320px}.scroll-cue{display:none}.manifesto-grid{grid-template-columns:1fr}.section-mark{min-height:0;flex-direction:row;margin-bottom:55px}.manifesto-title{font-size:clamp(52px,14vw,78px)}.manifesto-title span:last-child{padding-left:0}.manifesto-copy{margin:38px 0 0;grid-template-columns:38px 1fr}.menu-layout{grid-template-columns:1fr}.menu-intro{position:relative;top:0}.menu-image-wrap{height:65vw}.menu-item{padding:20px 0}.menu-list-footer{align-items:flex-start;flex-direction:column}.photo-break{height:620px}.story-grid{grid-template-columns:1fr}.story-visuals{min-height:600px}.story-main{height:520px}.story-detail{height:200px}.story-copy{padding-top:0}.daily{padding-top:20px}.daily-heading{align-items:flex-start;flex-direction:column}.daily-heading h2{margin-top:20px}.daily-grid{display:grid;grid-template-columns:1fr 1fr;min-height:0}.daily-photo{grid-column:1/3;grid-row:1;height:520px}.daily-item{grid-row:auto!important;grid-column:auto!important;padding:30px 20px 40px 0!important}.daily-item:nth-of-type(3){grid-column:1/-1!important;border-bottom:0}.daily-item h3{margin:60px 0 8px}.dark-grid{grid-template-columns:1fr}.dark-grid>.eyebrow{margin-bottom:48px}.dark-intermission h2{font-size:clamp(55px,14vw,90px)}.dark-intermission h2 span:nth-child(n){padding-left:0}.dark-note{position:static;margin-top:55px}.gallery-head{align-items:flex-start;flex-direction:column;gap:30px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;grid-auto-rows:auto;gap:12px}.gallery-item{grid-column:auto!important;grid-row:auto!important;height:56vw}.gallery-item:nth-child(3n){grid-column:1/-1!important;height:68vw}.gallery-item figcaption{opacity:1;transform:none}.editorial-quote blockquote span:last-child{padding-left:0}.quotes-grid{grid-template-columns:1fr}.quote,.quote+.quote{border-right:0;border-bottom:1px solid var(--line);padding:32px 0;min-height:220px}.visit-grid{grid-template-columns:1fr}.visit-details{margin-top:20px}.contact-strip{grid-template-columns:1fr}.contact-strip a,.contact-strip a+a{border-right:0;border-bottom:1px solid var(--line);padding:20px 0}.footer-top{flex-direction:column;gap:55px}.footer-links{flex-wrap:wrap}.site-footer{padding-bottom:94px}.mobile-quick-actions{position:fixed;z-index:1050;left:12px;right:12px;bottom:12px;display:grid;grid-template-columns:.8fr 1.2fr;padding:5px;background:rgba(244,240,232,.94);border:1px solid var(--line);box-shadow:0 10px 35px rgba(37,33,30,.18);backdrop-filter:blur(14px)}.mobile-quick-actions a{display:flex;align-items:center;justify-content:center;min-height:48px;font-size:12px;font-weight:600;letter-spacing:.04em}.mobile-quick-actions a:last-child{background:var(--ink);color:var(--surface)}.mobile-quick-actions span{margin-left:8px}.modal{padding:12px}.modal-panel{max-height:calc(100vh - 24px);padding:28px 22px}.full-menu{grid-template-columns:1fr}.modal-head h2{font-size:42px}.modal-close{font-size:0}.modal-close span{font-size:28px}.map-wrap{height:390px}}
@media(max-width:480px){.hero-title{font-size:16vw}.hero-actions{flex-wrap:wrap}.hero-bottom{margin-bottom:42px}.menu-item{grid-template-columns:28px 1fr auto;gap:8px}.menu-item h3{font-size:22px}.photo-break-copy{padding-bottom:45px}.story-visuals{min-height:520px}.story-main{width:88%;height:465px}.story-detail{height:170px;border-width:8px}.daily-photo{height:450px}.daily-grid{grid-template-columns:1fr}.daily-photo{grid-column:1}.daily-item:nth-of-type(n){grid-column:1!important}.dark-intermission{padding:110px 0}.gallery-grid{grid-template-columns:1fr}.gallery-item,.gallery-item:nth-child(3n){grid-column:1!important;height:110vw}.gallery-item:nth-child(even){height:80vw}.editorial-quote blockquote{font-size:12vw}.testimonials-head{align-items:flex-start;flex-direction:column;gap:25px}.visit-details{grid-template-columns:1fr}.detail-block:nth-child(even){padding-left:0;border-left:0}.visit-actions{flex-direction:column;align-items:stretch}.footer-bottom{flex-direction:column;gap:12px}.footer-wordmark span{font-size:46px}#reservation-form{grid-template-columns:1fr}.field,.field-wide{grid-column:1}.submit-button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.hero-media{transform:none!important}}

@media(max-width:800px){
  .hero{height:170svh;min-height:1180px}
  .hero-stage{height:100svh;min-height:690px}
  .hero-scroll-story{padding-inline:18px}
  .hero-scroll-statement{font-size:clamp(46px,12.8vw,64px);line-height:.94}
  .hero-scroll-statement span:nth-child(n){padding:0}
  .hero-scroll-meta{left:18px;right:18px;bottom:24px}
  .hero-scroll-meter{right:15px;height:110px}
}

@media(prefers-reduced-motion:reduce){
  .hero{height:100svh;min-height:720px}
  .hero-stage{position:relative}
  .hero-media,.hero-media img{transform:none!important}
  .hero-scroll-story,.hero-scroll-meter{display:none}
}
