:root{--cream:#f6f0e5;--gold:#dbc399;--ink:#27241e;--line:rgba(239,230,213,.35)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:0}body{margin:0;background:#332d24;color:var(--cream);font-family:Arial,sans-serif;font-size:16px}button,input,select,textarea{font:inherit}a{color:inherit;text-decoration:none}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid var(--gold);outline-offset:6px}.skip{position:fixed;left:20px;top:-100px;background:var(--cream);color:var(--ink);padding:15px;z-index:100}.skip:focus{top:15px}header{height:116px;padding:0 4.5%;position:fixed;top:0;left:0;width:100%;display:flex;align-items:center;justify-content:space-between;z-index:30;background:linear-gradient(#2c241c80,transparent);transition:background .6s,height .6s}header.scrolled{background:#332d24f2;height:94px}.brand{text-align:center;display:flex;flex-direction:column;gap:10px}.brand>span{font-family:Georgia,serif;font-size:26px;letter-spacing:.17em}.brand small{font-size:10px;letter-spacing:.5em;padding-left:.5em}.menu-trigger{display:flex;align-items:center;gap:17px;border:0;background:none;color:inherit;padding:16px 0;font-size:12px;letter-spacing:.16em;min-width:185px}.menu-icon{width:26px;display:grid;gap:7px}.menu-icon i{height:1px;background:var(--cream);transition:transform .3s}.menu-trigger[aria-expanded=true] .menu-icon i:first-child{transform:translateY(4px) rotate(45deg)}.menu-trigger[aria-expanded=true] .menu-icon i:last-child{transform:translateY(-4px) rotate(-45deg)}.reserve-top{min-width:185px;text-align:center;padding:15px 20px;border:1px solid var(--line);font-size:12px;letter-spacing:.12em}.reserve-top:hover{background:var(--cream);color:var(--ink)}nav{position:fixed;inset:0;background:#393127;z-index:25;padding:155px max(8%,calc((100vw - 1000px)/2)) 50px;overflow:auto}nav[hidden]{display:none}nav>a{display:flex;align-items:center;justify-content:space-between;font:clamp(30px,5vw,64px)/1.45 Georgia,serif;border-bottom:1px solid #ffffff22}nav a:hover{color:var(--gold)}nav a small{font:12px Arial;letter-spacing:.2em}nav p{color:var(--gold);margin-top:30px;font:italic 20px Georgia}.film{position:fixed;inset:0;z-index:-1}.film video{width:100%;height:100%;object-fit:cover}.film-shade{position:absolute;inset:0;background:linear-gradient(90deg,#20170f38,transparent 80%),linear-gradient(0deg,#21180f8c,transparent 60%,#291d1018)}.chapter{height:180vh;position:relative}.chapter.intro{height:160vh}.chapter-copy{position:sticky;top:22vh;width:calc(100% - 200px);max-width:1050px;margin:0 auto;padding-top:1px;opacity:0;transition:opacity .9s ease,transform 1.1s cubic-bezier(.22,1,.36,1);transform:translateY(12px)}.chapter-copy.visible{opacity:1;transform:none}.intro .chapter-copy{top:29vh;text-align:center;max-width:1100px}.eyebrow{font-size:12px;line-height:1.8;letter-spacing:.23em;font-weight:normal;margin:0 0 28px}h1,h2{font:normal clamp(48px,6.3vw,98px)/1.06 Georgia,'Times New Roman',serif;letter-spacing:-.045em;margin:0 0 30px}h1 em,h2 em{font-weight:normal;font-style:italic}h1{font-size:clamp(54px,6.7vw,104px)}.chapter-copy p:not(.eyebrow){max-width:410px;line-height:1.8;color:#f6f0e5ed;font-size:16px}.intro .lead{margin:0 auto 30px!important;line-height:1.7!important}.chapter-copy.left{margin-left:10%;max-width:780px}.chapter-copy.right{margin-left:42%;max-width:650px;width:50%}.text-link{display:inline-block;font-size:12px;letter-spacing:.15em;padding:14px 0;border:0;border-bottom:1px solid var(--gold);background:transparent;color:inherit;line-height:1.6;margin-top:15px}.text-link:hover{color:var(--gold)}.intro-bottom{position:absolute;top:calc(100svh - 95px);left:4.5%;right:4.5%;display:flex;align-items:center;justify-content:space-between;font-size:10px;letter-spacing:.15em}.intro-bottom a{display:flex;flex-direction:column;align-items:center;gap:17px}.scroll-line{height:35px;width:1px;background:#e8ddc7}.chapter-rail{position:fixed;right:3%;top:44%;z-index:20;display:grid;gap:22px}.chapter-rail a{font-size:11px;letter-spacing:.08em;opacity:.4;padding:5px;border-right:1px solid transparent;padding-right:12px}.chapter-rail a.active{opacity:1;border-color:var(--gold)}.film-controls{position:fixed;bottom:23px;left:4.5%;right:4.5%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.17em;z-index:20;transition:opacity .3s}.film-controls button{border:0;background:none;color:inherit;font-size:10px;letter-spacing:.13em;padding:8px 0}.progress{position:fixed;top:0;left:0;height:2px;width:100%;z-index:40}.progress span{display:block;height:100%;width:0;background:var(--gold)}body.booking-visible .film-controls,body.booking-visible .chapter-rail{opacity:0;pointer-events:none}.booking{position:relative;background:var(--cream);color:var(--ink);padding:110px 7% 120px;scroll-margin-top:94px}.booking-intro{display:grid;grid-template-columns:1.2fr 1fr;column-gap:8%;align-items:center}.booking-intro .eyebrow{grid-column:1/-1;color:#83704f}.booking h2{font-size:clamp(45px,5vw,73px)}.booking-intro>p:last-child{max-width:300px;line-height:1.8;color:#686155}.booking-layout{display:grid;grid-template-columns:1.1fr 1fr;gap:8%;margin-top:45px}.suite-photo{min-height:580px;position:relative}.suite-photo img{width:100%;height:100%;position:absolute;object-fit:cover;object-position:74% center}.suite-photo:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#19130a99)}.suite-photo>span{position:absolute;bottom:35px;left:35px;color:var(--cream);z-index:1;font-size:12px;letter-spacing:.18em;display:grid;gap:13px}.suite-photo i{font:italic 30px Georgia;letter-spacing:0}.form-title{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #b7aa95;margin-bottom:30px;padding-bottom:22px}.form-title .eyebrow{margin:0}.mini-mark{font:36px Georgia;color:#8c784f}.fields{display:grid;grid-template-columns:1fr 1fr;gap:25px}label{display:block;font-size:13px;color:#625a4e;margin-bottom:25px}input,select,textarea{color:var(--ink);border:0;border-bottom:1px solid #bfb4a3;border-radius:0;width:100%;padding:14px 0;background:transparent;outline-offset:2px!important}input,select{height:49px}textarea{resize:vertical;line-height:1.6}.optional{color:#807a71;font-size:12px}.solid{padding:21px 18px;background:#302b22;color:var(--cream);border:1px solid #302b22;width:100%;font-size:12px;letter-spacing:.14em;transition:background .2s}.solid:hover{background:#665438}.booking-note{text-align:center;color:#766d60;font-size:12px;line-height:1.8;margin:20px 0 0}.form-error{font-size:14px;color:#a33324;line-height:1.5}.form-error:empty{display:none}footer{position:relative;background:#393127;padding:75px 7% 30px;text-align:center}footer p{font:italic 24px Georgia;color:#bdad91;margin:30px 0}footer>a:not(.brand){font-size:10px;letter-spacing:.15em}.footer-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff20;padding-top:25px;margin-top:65px;font-size:10px;letter-spacing:.13em;color:#c5b99f}.footer-bottom button{font:inherit;color:inherit;border:0;background:transparent}dialog{width:min(620px,calc(100% - 30px));max-height:90svh;overflow:auto;border:0;padding:50px;background:var(--cream);color:var(--ink)}dialog::backdrop{background:#0c0909bb;backdrop-filter:blur(8px)}dialog h2{font-size:48px}dialog p{line-height:1.8}.close-dialog{position:absolute;right:17px;top:13px;background:none;border:0;font-size:28px;color:var(--ink)}#summary-content{border-top:1px solid #baaf9c;border-bottom:1px solid #baaf9c;padding:15px 0;line-height:1.9}.notice{font-size:14px;color:#746958}.edit-booking{display:block;margin:20px auto 0}body.modal-open{overflow:hidden}
@media(min-width:1700px){.chapter-copy.left{margin-left:15%}}@media(max-width:760px){header{height:90px;padding:0 22px}header.scrolled{height:80px}.brand>span{font-size:17px;letter-spacing:.12em}.brand small{font-size:9px}.menu-trigger{min-width:30px}.menu-word{display:none}.reserve-top{min-width:0;font-size:10px;padding:12px}.reserve-top span{display:none}.chapter{height:160svh}.chapter.intro{height:150svh}.chapter-copy,.chapter-copy.left,.chapter-copy.right{width:auto;max-width:none;margin:0 35px;top:26svh}.intro .chapter-copy{top:28svh;margin:0 25px}h1{font-size:52px}h2{font-size:46px}.eyebrow{font-size:10px;margin-bottom:24px}.chapter-copy p:not(.eyebrow){font-size:15px;max-width:330px}.chapter-rail{right:9px;gap:14px}.chapter-rail a{font-size:9px;padding-right:6px}.intro-bottom{top:calc(100svh - 110px);justify-content:center}.intro-bottom>span{display:none}.film-shade{background:linear-gradient(0deg,#24190f99,transparent),linear-gradient(90deg,#26190f4d,#26190f20)}.film-controls{left:23px;right:23px;bottom:15px}.film-controls,#motion{font-size:9px}.booking{padding:75px 24px;scroll-margin-top:80px}.booking-intro,.booking-layout{grid-template-columns:1fr;gap:20px}.booking-intro>p:last-child{margin:0}.booking h2{font-size:48px}.suite-photo{min-height:330px;margin:15px 0 30px}.booking-layout{margin-top:20px}.footer-bottom{gap:22px;flex-wrap:wrap;justify-content:center;line-height:1.8}footer{padding:55px 25px 30px}dialog{padding:45px 25px 30px}dialog h2{font-size:39px}nav{padding:135px 32px 40px}.suite-photo>span{left:25px;bottom:25px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}.chapter-copy{transform:none}}

#film-frames{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0}#film-frames.ready{opacity:1}.sound-toggle{position:fixed;bottom:15px;left:50%;transform:translateX(-50%);z-index:22;color:var(--cream);background:#272019c9;border:1px solid #cfb78766;padding:11px 16px;font:10px Arial,sans-serif;letter-spacing:.12em;backdrop-filter:blur(8px)}.sound-toggle[aria-pressed=true]{border-color:var(--gold)}.sound-toggle:before{content:'♫';margin-right:9px;font-size:15px}.footer-bottom{padding-bottom:35px}@media(max-width:760px){.sound-toggle{bottom:52px;font-size:9px;padding:8px 12px}.intro-bottom{top:calc(100svh - 150px)}}
.experiences{position:relative;background:#393127;padding:110px 7% 90px;scroll-margin-top:90px}.experience-heading{display:grid;grid-template-columns:1.5fr 1fr;align-items:end;gap:10%;margin-bottom:45px}.experience-heading h2{font-size:clamp(48px,5vw,76px);margin-bottom:0}.experience-heading>p{max-width:360px;color:#c9c0b1;line-height:1.8}.experience-heading .eyebrow{color:var(--gold)}.gallery-stage{position:relative;height:min(690px,76vw);min-height:530px;overflow:hidden;touch-action:pan-y}.gallery-slide{position:absolute;inset:0;opacity:0;visibility:hidden;transition:opacity 1.2s ease,visibility 1.2s}.gallery-slide.active{opacity:1;visibility:visible;z-index:1}.gallery-slide>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.gallery-slide:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#100c08bd,transparent 85%),linear-gradient(0deg,#100c08bf,transparent 75%)}.slide-caption{position:absolute;bottom:9%;left:6%;max-width:470px;z-index:1}.slide-caption .eyebrow{font-size:11px;color:#e1caa1}.slide-caption h3{font:normal clamp(38px,4vw,60px)/1.12 Georgia,serif;letter-spacing:-.035em;margin:18px 0}.slide-caption p{font-size:16px;line-height:1.75;max-width:355px}.slide-caption .text-link{font-size:11px}.gallery-controls{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #cbb38433;padding:23px 0}.gallery-pagination,.gallery-actions{display:flex;gap:20px}.gallery-controls button{color:#cfc3ad;background:transparent;border:0;padding:10px 4px;font-size:11px;letter-spacing:.1em}.gallery-pagination button{border-bottom:1px solid transparent;opacity:.45}.gallery-pagination button[aria-pressed=true]{opacity:1;border-color:var(--gold)}.gallery-actions button:hover{color:white}.extra-services{display:grid;grid-template-columns:repeat(3,1fr);gap:6%;padding-top:55px}.extra-services>div>span{font:12px Georgia;color:#b8a079}.extra-services h3{font:normal 25px Georgia;margin:20px 0}.extra-services p{color:#bdb3a1;font-size:14px;line-height:1.9}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:760px){.experiences{padding:75px 24px 60px;scroll-margin-top:80px}.experience-heading{grid-template-columns:1fr;gap:15px;margin-bottom:28px}.experience-heading h2{font-size:46px}.gallery-stage{min-height:590px;height:78svh;max-height:750px;margin:0 -24px}.gallery-slide>img{object-position:center}.slide-caption{left:26px;right:26px;bottom:35px;max-width:none}.slide-caption h3{font-size:40px}.slide-caption p{font-size:15px}.gallery-slide:after{background:linear-gradient(0deg,#100c08ed,transparent 100%)}.gallery-controls{flex-direction:column;gap:12px}.gallery-pagination{gap:27px}.gallery-actions{width:100%;justify-content:space-between}.extra-services{grid-template-columns:1fr;gap:23px;padding-top:36px}.extra-services>div{border-bottom:1px solid #cbb38422;padding-bottom:15px}.extra-services h3{margin:12px 0}.extra-services p{margin:0 0 10px}}


.film-controls{gap:18px;align-items:center}#auto-tour[hidden]{display:none}#auto-tour{border-bottom:1px solid var(--gold)}@media(max-width:760px){.film-controls{gap:10px}.film-controls #chapter-label{display:none}}
/* Keep scripted tour motion separate from smooth anchor navigation. */
html.tour-running{scroll-behavior:auto!important}
.progress span{width:100%;transform:scaleX(0);transform-origin:left center}

/* Give audio and visit controls separate rows at every viewport width. */
.sound-toggle{bottom:64px;max-width:calc(100vw - 40px)}
@media(max-width:760px){.sound-toggle{bottom:58px}}

body.intro-left .intro-bottom{opacity:0;pointer-events:none}
