@font-face{font-family:Cormorant;src:url('assets/cormorant-regular.woff2') format('woff2');font-style:normal;font-weight:400 600;font-display:swap}
@font-face{font-family:Cormorant;src:url('assets/cormorant-italic.woff2') format('woff2');font-style:italic;font-weight:400 600;font-display:swap}
@font-face{font-family:'DM Sans';src:url('assets/dm-sans.woff2') format('woff2');font-style:normal;font-weight:400 700;font-display:swap}
:root{--cream:#f6f4ed;--paper:#fdfcf8;--ink:#27392f;--forest:#253a2f;--muted:#60675e;--border:#d7dbcf;--sage:#e8ece2;--white:#fffdf6;--accent:#d9c6a1;--error:#9c302e;--display:Cormorant,Georgia,serif;--body:'DM Sans',Arial,sans-serif;--ease:cubic-bezier(.2,.65,.3,1);--gutter:clamp(24px,5vw,88px);--radius:2px}
*,*::before,*::after{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--body);font-size:16px;line-height:1.65;-webkit-font-smoothing:antialiased}body:has(dialog[open]){overflow:hidden}a{color:inherit;text-decoration:none}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button,a,input,select,summary{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button{border:0;background:none}button:active,.button:active{opacity:.75}img{display:block;max-width:100%;object-fit:cover}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:1.04}h2{font-size:clamp(40px,4.3vw,65px);letter-spacing:-1.7px;text-wrap:balance}h3{font-size:34px}em{font-weight:400}p{color:var(--muted)}[hidden]{display:none!important}::selection{background:var(--forest);color:var(--white)}:focus-visible{outline:3px solid #a97530;outline-offset:5px}section{scroll-margin-top:20px}.section-shell{width:100%;max-width:1600px;margin-inline:auto;padding-inline:var(--gutter)}.eyebrow{font-size:11px;letter-spacing:2px;line-height:1.5;font-weight:600;color:inherit}.icon{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.3;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0;vertical-align:middle}.svg-defs{position:absolute;width:0;height:0;overflow:hidden}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.skip-link{position:fixed;top:10px;left:10px;z-index:200;padding:12px 20px;color:var(--white);background:var(--forest);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;min-height:54px;padding:15px 25px;background:var(--forest);color:var(--white);border:1px solid var(--forest);font-size:13px;letter-spacing:.15px;transition:background .2s,color .2s,border-color .2s}.button:hover{background:#3e5642;border-color:#3e5642}.button .icon{width:19px;height:19px}.icon-button{display:inline-flex;align-items:center;justify-content:center;min-width:48px;min-height:48px;border:1px solid currentColor;transition:background .2s}.icon-button:hover{background:var(--sage)}.text-link{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;min-height:44px;border-bottom:1px solid var(--ink);font-size:13px;padding:8px 0;line-height:1.5;transition:gap .2s,color .2s}.text-link:hover{gap:32px;color:#64714d}.text-link .icon{width:18px;height:18px}
.site-header{position:absolute;inset:0 0 auto;z-index:30;min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:28px;padding:20px var(--gutter);color:var(--white);border-bottom:1px solid #fff4;transition:background .25s,padding .25s}.site-header.is-sticky{position:fixed;min-height:86px;background:var(--cream);color:var(--forest);border-bottom:1px solid var(--border);padding-block:12px;box-shadow:0 4px 24px #132c1808}.wordmark{font-family:var(--display);font-size:52px;line-height:.85;display:inline-flex;flex-direction:column;align-items:center;letter-spacing:-2px;min-height:62px;justify-content:center}.wordmark>span{font-family:var(--body);font-size:8px;letter-spacing:2px;line-height:1.5;margin-top:10px;font-weight:500}.desktop-nav{display:flex;align-items:center;gap:clamp(22px,2.6vw,42px);font-size:12px}.desktop-nav a{position:relative;padding:12px 0}.desktop-nav a::after{content:'';position:absolute;bottom:5px;left:0;width:0;height:1px;background:currentColor;transition:width .2s}.desktop-nav a:hover::after{width:100%}.header-actions{display:flex;align-items:center;gap:14px}.header-book{color:var(--forest);background:var(--cream);border-color:var(--cream);min-height:48px;padding:12px 22px}.header-book:hover{color:var(--forest);background:var(--accent);border-color:var(--accent)}.is-sticky .header-book{background:var(--forest);color:var(--white);border-color:var(--forest)}.menu-toggle{display:none;border:0}.mobile-menu{display:none}
.hero{position:relative;min-height:760px;height:min(900px,94svh);background:var(--forest);color:var(--white);display:flex;align-items:center;justify-content:center;text-align:center}.hero-image,.hero-shade{position:absolute;inset:0;width:100%;height:100%}.hero-image{object-position:center 55%}.hero-shade{background:linear-gradient(180deg,#0d241c88 0%,#11271d50 30%,#10231a52 60%,#0b201bd1 100%)}.hero-content{position:relative;padding:90px 24px 70px}.hero-content>.eyebrow{font-size:10px;letter-spacing:3.3px;margin-bottom:24px}.hero h1{font-size:clamp(76px,8.8vw,138px);line-height:.9;letter-spacing:-3px;text-shadow:0 2px 28px #17261a40}.hero h1 em{color:#ece3ce}.hero-content>p:not(.eyebrow){font-size:14px;color:var(--white);margin-top:26px;line-height:1.75}.hero-link{font-size:12px;display:inline-flex;align-items:center;gap:22px;border-bottom:1px solid #fffb;padding:12px 0;margin-top:20px;min-height:44px}.hero-link:hover .icon{transform:translateX(5px)}.hero-link .icon{transition:transform .2s;width:18px}.hero-caption{position:absolute;bottom:75px;left:var(--gutter);right:var(--gutter);display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:1.7px}.hero-caption>a{width:44px;height:44px;display:flex;align-items:center;justify-content:center;border:1px solid #fff7;border-radius:50%}.hero-caption span{flex:1;text-align:left}.hero-caption span:last-child{text-align:right}
.booking-wrap{position:relative;z-index:5;margin:-44px var(--gutter) 0}.booking-bar{max-width:1360px;margin:auto;display:grid;grid-template-columns:1.25fr 1fr 1fr .8fr auto;align-items:center;padding:26px 30px;gap:25px;background:var(--paper);border:1px solid var(--border);box-shadow:0 8px 40px #26382b07}.booking-intro .eyebrow{font-size:8px;letter-spacing:1.4px}.booking-intro p{font-family:var(--display);font-size:28px;color:var(--ink);line-height:1.2;margin-top:7px}.booking-bar label{display:flex;flex-direction:column;min-width:0;border-left:1px solid var(--border);padding-left:24px;gap:3px}.booking-bar label>span{font-size:10px;letter-spacing:.7px;color:var(--muted)}input,select{background:transparent;min-width:0;width:100%;border:0;border-radius:0;font-size:14px;min-height:32px;padding:2px 0;color:var(--ink)}input{color-scheme:light}input::-webkit-calendar-picker-indicator{opacity:.65;cursor:pointer}select{cursor:pointer}.booking-bar .button{white-space:nowrap}.form-error{grid-column:1/-1;font-size:13px;color:var(--error)}
.story{padding-top:112px;padding-bottom:108px;display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:9vw}.story .eyebrow{display:flex;align-items:center;gap:14px;margin-bottom:25px}.small-rule{display:inline-block;width:30px;height:1px;background:var(--ink)}.story h2{font-size:clamp(38px,3.8vw,58px)}.story-copy{max-width:450px;font-size:14px}.story-copy p+p{margin-top:16px}.story-copy .text-link{margin-top:20px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:40px}.section-heading .eyebrow{margin-bottom:18px}.section-heading>p{font-size:13px;line-height:1.8;flex-shrink:0;padding-bottom:4px}.stays{padding-top:14px;padding-bottom:105px}.stay-toolbar{display:flex;align-items:center;justify-content:space-between;margin-top:40px;margin-bottom:30px;border-bottom:1px solid var(--border);gap:24px}.filters{display:flex;align-items:center;gap:28px;flex-wrap:wrap}.filter{padding:14px 0;min-height:48px;color:var(--muted);font-size:12px;position:relative}.filter.active{color:var(--ink)}.filter::after{content:'';position:absolute;inset:auto 0 -1px;height:2px;background:var(--ink);transform:scaleX(0);transition:transform .2s;transform-origin:left}.filter.active::after{transform:scaleX(1)}.filter:hover{color:var(--ink)}.filter span{font-size:9px;margin-left:7px;opacity:.7}.collection-note{font-size:9px;letter-spacing:1.4px;color:var(--muted)}.stay-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px}.stay-photo{position:relative;width:100%;display:block;padding:0;aspect-ratio:1.04;overflow:hidden;background:var(--sage)}.stay-photo img{width:100%;height:100%;transition:transform .7s var(--ease)}.stay-photo:hover img{transform:scale(1.04)}.photo-label{position:absolute;left:16px;top:16px;background:var(--cream);font-size:8px;letter-spacing:1.1px;padding:7px 12px;line-height:1.5}.photo-arrow{position:absolute;right:16px;bottom:16px;display:flex;align-items:center;justify-content:center;width:44px;height:44px;background:var(--cream);border-radius:50%;color:var(--ink);transition:background .2s}.stay-photo:hover .photo-arrow{background:var(--white)}.stay-meta{display:flex;justify-content:space-between;gap:12px;font-size:9px;letter-spacing:1.35px;margin:23px 0 10px;color:var(--muted)}.stay-card h3{font-size:39px;margin-bottom:8px}.stay-card h3 button{font:inherit;padding:0;text-align:left;min-height:44px}.stay-card>p{font-size:13px;max-width:350px}.stay-card>.text-link{margin-top:13px;font-size:12px}.collection-footer{display:flex;align-items:center;justify-content:space-between;gap:20px;border-top:1px solid var(--border);margin-top:36px;padding-top:18px;font-size:12px;color:var(--muted)}.collection-footer .text-link{color:var(--ink);font-size:12px}
.experiences{background:var(--forest);color:var(--white);padding:86px 0 94px}.experience-inner{display:grid;grid-template-columns:1fr 1.4fr;column-gap:8vw}.experience-intro{grid-column:1;grid-row:1;align-self:start}.experience-intro .eyebrow{font-size:9px;color:var(--accent);margin-bottom:24px}.experience-intro h2{font-size:clamp(44px,4.7vw,70px);line-height:1.02}.experience-intro>p:last-child{color:#d0d7cb;font-size:14px;max-width:315px;margin-top:24px}.experience-layout{display:contents}.experience-controls{grid-column:1;grid-row:2;display:flex;flex-direction:column;align-self:end;margin-top:32px}.experience-tab{display:flex;align-items:center;gap:22px;min-height:99px;padding:20px 0;border-top:1px solid #c9d1c436;text-align:left;color:#cbd3c5;transition:color .2s}.experience-tab:last-child{border-bottom:1px solid #c9d1c436}.experience-tab.active{color:var(--white)}.experience-tab>span:nth-child(2){flex:1}.experience-number{font-size:10px;color:var(--accent);align-self:flex-start;margin-top:9px}.experience-tab strong{display:block;font-family:var(--display);font-size:29px;font-weight:400;line-height:1.2}.experience-tab small{font-size:8px;letter-spacing:1.4px;display:block;margin-top:6px}.experience-tab .icon{width:18px;height:18px;transition:transform .2s}.experience-tab.active .icon{transform:rotate(45deg)}.experience-tab.active strong{text-decoration:underline;text-underline-offset:7px;text-decoration-thickness:1px;text-decoration-color:#c9d1c480}.experience-tab:hover{color:var(--white)}.experience-panel{grid-column:2;grid-row:1/3;align-self:start;min-width:0}.experience-panel>img{width:100%;height:420px;object-position:center}.experience-caption{padding-top:27px;display:flex;align-items:center;justify-content:space-between;gap:28px}.experience-caption .eyebrow{font-size:8px;color:var(--accent);margin-bottom:10px}.experience-caption h3{font-size:32px}.experience-caption p:last-child{color:#d0d7cb;font-size:13px;line-height:1.8;margin-top:13px;max-width:440px}.circle-link{display:flex;align-items:center;justify-content:center;width:52px;height:52px;border:1px solid #d0d7cb88;border-radius:50%;flex-shrink:0;transition:background .2s}.circle-link:hover{background:#fff2}
.moments{padding-top:100px;padding-bottom:100px}.moments .section-heading .text-link{flex-shrink:0}.moments-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:18px;margin-top:38px}.moment{position:relative;overflow:hidden;padding:0;min-height:310px;height:26vw;max-height:430px;text-align:left;background:var(--sage)}.moment img{width:100%;height:100%;transition:transform .7s var(--ease)}.moment:hover img{transform:scale(1.035)}.moment::after{content:'';position:absolute;inset:40% 0 0;background:linear-gradient(transparent,#10251ad4);pointer-events:none}.moment>span{position:absolute;bottom:20px;left:22px;right:22px;color:var(--white);font-size:8px;letter-spacing:1.35px;display:flex;align-items:center;justify-content:space-between;gap:12px;z-index:1}.moment>span .icon{width:18px;height:18px}
.arrival{display:grid;grid-template-columns:1.15fr 1fr;background:var(--sage)}.arrival-image{position:relative;min-height:560px;overflow:hidden}.arrival-image>img{position:absolute;inset:0;width:100%;height:100%;object-position:45% center}.arrival-image>span{position:absolute;bottom:35px;left:var(--gutter);color:var(--white);font-size:9px;letter-spacing:1.9px}.arrival-copy{padding:76px clamp(36px,6vw,96px);align-self:center}.arrival-copy .eyebrow{font-size:9px;letter-spacing:1.4px;margin-bottom:22px}.arrival-copy h2{font-size:clamp(44px,4.7vw,72px)}.arrival-copy>p:not(.eyebrow){font-size:14px;margin-top:22px;max-width:350px}.arrival-copy .text-link{margin-top:15px}.arrival-divider{width:52px;height:1px;background:#83907d;margin-top:30px}.arrival-copy .arrival-question{font-family:var(--display);font-size:23px!important;color:var(--ink)}.arrival-copy .button{margin-top:19px}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw;padding-top:100px;padding-bottom:100px}.faq h2{font-size:48px}.faq .eyebrow{margin-bottom:20px}.faq>div>p:last-child{font-size:13px;margin-top:24px}.faq-list details{border-top:1px solid var(--border)}.faq-list details:last-child{border-bottom:1px solid var(--border)}summary{display:flex;align-items:center;justify-content:space-between;gap:20px;list-style:none;font-size:14px;min-height:76px;padding:20px 0;cursor:pointer}summary::-webkit-details-marker{display:none}summary .icon{width:18px;height:18px;transition:transform .2s}details[open] summary .icon{transform:rotate(45deg)}.faq-list details>p{font-size:13px;line-height:1.9;padding-bottom:22px;max-width:95%}
.site-footer{background:var(--forest);color:var(--white)}.footer-main{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:60px;padding-top:68px;padding-bottom:60px}.footer-brand .wordmark{font-size:65px;align-items:flex-start}.footer-brand .wordmark>span{font-size:8px}.footer-brand>p{font-family:var(--display);font-style:italic;color:#d0d7cb;font-size:25px;margin-top:25px}.footer-main>div:not(.footer-brand){padding-top:7px}.footer-main .eyebrow{font-size:9px;color:var(--accent);margin-bottom:18px}.footer-main>div>a:not(.wordmark){font-size:13px;display:block;min-height:40px;width:fit-content;padding-block:6px;color:#d0d7cb}.footer-main>div>a:hover{color:var(--white)}.footer-main .icon{width:14px;height:14px;margin-left:6px}.footer-bottom{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-block:23px;border-top:1px solid #c9d1c42e;color:#cbd3c5;font-size:10px}.footer-bottom>span:nth-child(2){font-size:8px;letter-spacing:1px}.footer-bottom>a{display:flex;align-items:center;gap:12px;min-height:44px}.footer-bottom .icon{width:14px}.mobile-booking{display:none}
dialog{border:0;background:var(--cream);color:var(--ink);padding:0;max-width:calc(100vw - 36px);max-height:calc(100dvh - 40px);overflow:auto;box-shadow:0 30px 100px #0004}dialog::backdrop{background:#11231cd6;backdrop-filter:blur(5px)}dialog h2{font-size:58px}dialog p{font-size:14px}.dialog-close{position:absolute;right:16px;top:16px;z-index:2;background:var(--cream);border:1px solid var(--border);border-radius:50%;color:var(--ink)}.room-dialog{width:850px}.room-dialog>img{width:100%;height:330px;object-position:center 54%}.room-dialog-copy{padding:34px 40px}.room-dialog-copy .eyebrow{font-size:9px;margin-bottom:13px}.room-dialog-copy h2{margin-bottom:16px}.room-dialog-copy>p{max-width:680px}.room-details{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.room-details span{border:1px solid var(--border);padding:6px 12px;font-size:12px}.dialog-actions{display:flex;align-items:center;gap:25px;margin-top:28px;flex-wrap:wrap}.fine-print{font-size:11px!important;line-height:1.7;color:var(--muted);margin-top:22px}.booking-dialog{width:520px;padding:48px}.booking-dialog>.eyebrow{font-size:9px;margin-top:18px;margin-bottom:20px}.booking-dialog h2{margin-bottom:22px}.booking-options{display:flex;align-items:flex-start;flex-direction:column;gap:15px;margin-top:26px}.booking-options .button{width:100%}.booking-options .text-link{font-size:12px}.booking-summary{border-block:1px solid var(--border);padding:18px 0;margin-top:22px}.booking-summary p{color:var(--ink);font-size:13px}.booking-summary p+p{margin-top:5px}.gallery-dialog{width:1100px;background:var(--forest);color:var(--white);overflow:hidden}.gallery-dialog>img{width:100%;height:min(70dvh,700px);object-fit:contain;background:#14251c}.gallery-controls{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:20px 25px}.gallery-controls>p{color:var(--white);font-size:12px;text-align:center}.gallery-controls .icon-button{border-color:#ffffff60;border-radius:50%}.gallery-controls .icon-button:hover{background:#fff2}
@media(min-width:1600px){.booking-wrap{max-width:1424px;margin-inline:auto}.hero-caption{max-width:1424px;margin-inline:auto}.site-header{padding-inline:max(var(--gutter),calc((100vw - 1424px)/2))}}
@media(max-width:1100px){.desktop-nav{gap:22px}.site-header{gap:20px}.header-book{gap:18px;padding-inline:18px}.booking-bar{gap:17px;padding:22px}.booking-intro{display:none}.booking-bar{grid-template-columns:1fr 1fr .7fr auto}.booking-bar label:first-of-type{border-left:0;padding-left:0}.booking-bar label{padding-left:18px}.section-heading h2{max-width:650px}.section-heading>p{display:none}.experience-inner{column-gap:5vw}.experience-panel>img{height:400px}.experience-caption h3{font-size:28px}.experience-tab strong{font-size:27px}.moment{min-height:280px}.moment>span{font-size:7px;left:16px;right:16px;letter-spacing:1px}.footer-main{gap:40px}}
@media(max-width:800px){html{scroll-padding-top:96px}.site-header{min-height:92px;padding-block:15px}.wordmark{font-size:46px}.wordmark>span{font-size:7px;letter-spacing:1.5px}.desktop-nav{display:none}.menu-toggle{display:flex}.header-actions{gap:8px}.header-book{min-height:44px;padding:11px 15px;font-size:11px}.site-header.menu-open{position:fixed;background:var(--cream);color:var(--ink);border-color:var(--border)}.mobile-menu:not([hidden]){position:fixed;inset:92px 0 0;z-index:25;background:var(--cream);display:flex;flex-direction:column;padding:35px var(--gutter) 100px;overflow-y:auto}.mobile-menu>.eyebrow{font-size:9px;margin-bottom:30px}.mobile-menu>a{font-family:var(--display);font-size:39px;min-height:74px;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--border)}.mobile-menu>a>span{font-family:var(--body);font-size:10px;color:var(--muted)}.mobile-menu>.button{margin-top:30px;align-self:flex-start}.hero{min-height:690px;height:85svh;max-height:850px}.hero h1{font-size:100px}.hero-content{padding-bottom:65px}.hero-caption span{font-size:8px;letter-spacing:1px}.booking-wrap{margin-top:-36px}.booking-bar{grid-template-columns:1fr 1fr;gap:18px 24px;padding:24px}.booking-bar label{padding:0;border:0;border-bottom:1px solid var(--border);padding-bottom:8px}.booking-bar .button{align-self:center}.story{gap:34px;padding-top:80px;padding-bottom:74px;grid-template-columns:1fr}.story-copy{max-width:600px;font-size:15px}.story h2{font-size:52px}.stays{padding-bottom:76px}.section-heading h2{font-size:49px}.collection-note{display:none}.stay-grid{gap:18px}.stay-photo{aspect-ratio:.76}.photo-label{font-size:7px;letter-spacing:.7px;padding:6px 8px;left:10px;top:10px}.photo-arrow{width:36px;height:36px;right:10px;bottom:10px}.stay-card h3{font-size:34px}.stay-meta{font-size:8px;letter-spacing:.7px;gap:6px}.stay-card>p{font-size:12px}.stay-card .text-link{font-size:11px;gap:15px}.stay-toolbar{margin-top:26px}.experiences{padding-block:70px}.experience-inner{grid-template-columns:1fr;gap:26px}.experience-intro{grid-row:auto;grid-column:auto;display:grid;grid-template-columns:1fr 1fr;column-gap:28px}.experience-intro>.eyebrow{grid-column:1/-1;margin-bottom:15px}.experience-intro h2{font-size:54px}.experience-intro>p:last-child{margin-top:0;align-self:center;font-size:13px}.experience-controls{grid-column:1;grid-row:2;flex-direction:row;margin-top:0;gap:20px}.experience-tab{flex:1;min-height:95px;padding:16px 0;gap:10px}.experience-tab strong{font-size:23px}.experience-tab small{font-size:7px;letter-spacing:.7px}.experience-number{font-size:9px}.experience-tab:last-child{border-bottom:0}.experience-tab .icon{display:none}.experience-panel{grid-row:3;grid-column:1}.experience-panel>img{height:400px}.experience-caption p:last-child{max-width:520px}.moments{padding-block:76px}.moments-grid{grid-template-columns:1.5fr 1fr}.moment-wide{grid-column:1/-1;height:360px}.moment:not(.moment-wide){height:290px}.moment>span{font-size:8px;letter-spacing:1px}.arrival{grid-template-columns:1fr 1fr}.arrival-image{min-height:570px}.arrival-copy{padding:52px 32px}.arrival-copy h2{font-size:50px}.arrival-copy .eyebrow{font-size:8px}.arrival-image>span{left:26px;right:26px;font-size:8px}.faq{gap:40px;padding-block:76px;grid-template-columns:1fr}.faq h2{font-size:50px}.faq>div>p:last-child{margin-top:18px}.footer-main{grid-template-columns:1fr 1fr;gap:40px;padding-top:52px}.footer-brand{grid-column:1/-1}.footer-brand>p{margin-top:20px}.footer-bottom{flex-wrap:wrap;justify-content:flex-start;gap:6px 25px}.footer-bottom>span:first-child{width:100%}}
@media(max-width:540px){:root{--gutter:24px}.header-book{display:none}.site-header{min-height:88px}.site-header.is-sticky{min-height:80px}.wordmark{font-size:45px;min-height:58px}.mobile-menu:not([hidden]){top:88px}.hero{min-height:685px;height:88svh;max-height:810px}.hero-image{object-position:47% center}.hero-shade{background:linear-gradient(180deg,#0d241c88,#11271d60 45%,#0b201bd6)}.hero-content{padding-top:70px;padding-bottom:85px;width:100%}.hero-content>.eyebrow{font-size:8px;letter-spacing:1.8px;margin-bottom:26px}.hero h1{font-size:clamp(48px,16vw,84px);letter-spacing:-1.5px}.hero-content>p:not(.eyebrow){font-size:13px;margin-top:25px}.hero-link{font-size:11px;margin-top:16px}.hero-caption{bottom:66px}.hero-caption span{font-size:7px;letter-spacing:.9px;max-width:108px;line-height:1.8}.hero-caption>a{width:38px;height:38px}.booking-wrap{margin-inline:16px;margin-top:-34px}.booking-bar{padding:20px;gap:18px 16px}.booking-bar .button{gap:12px;padding:13px 15px;font-size:11px;width:100%;min-height:48px}.booking-bar .button .icon{width:16px}.booking-bar label>span{font-size:10px}input,select{font-size:16px;min-height:36px}.story{padding-top:65px;padding-bottom:62px;gap:26px}.story h2{font-size:42px;letter-spacing:-1.4px}.story .eyebrow{font-size:9px;margin-bottom:20px}.story-copy{font-size:14px}.section-heading{display:block}.section-heading h2{font-size:45px;letter-spacing:-1.3px}.section-heading .eyebrow{font-size:9px;margin-bottom:16px}.filters{gap:20px;flex-wrap:nowrap;width:100%;justify-content:space-between}.filter{font-size:11px;padding-block:14px}.filter span{display:none}.stay-toolbar{margin-bottom:24px}.stay-grid{grid-template-columns:1fr;gap:36px}.stay-photo{aspect-ratio:1.05}.photo-label{font-size:8px;letter-spacing:1px;left:15px;top:15px;padding:7px 10px}.photo-arrow{width:44px;height:44px;right:15px;bottom:15px}.stay-meta{font-size:9px;letter-spacing:1px;margin-top:19px}.stay-card h3{font-size:40px;margin-bottom:5px}.stay-card>p{font-size:14px}.stay-card .text-link{font-size:12px;margin-top:12px}.collection-footer{flex-direction:column;align-items:flex-start;gap:8px;margin-top:30px;font-size:12px}.stays{padding-bottom:65px}.experiences{padding-block:62px}.experience-intro{display:block}.experience-intro h2{font-size:58px}.experience-intro>.eyebrow{font-size:8px;margin-bottom:22px}.experience-intro>p:last-child{font-size:14px;margin-top:22px;max-width:320px}.experience-controls{gap:10px}.experience-tab{gap:0;min-height:100px;padding:15px 0;align-items:flex-start}.experience-number{display:none}.experience-tab strong{font-size:23px;line-height:1.05;max-width:95px}.experience-tab small{font-size:7px;letter-spacing:.4px;line-height:1.7;max-width:100px;margin-top:10px}.experience-tab.active strong{text-underline-offset:4px}.experience-panel>img{height:280px}.experience-caption{gap:18px;padding-top:24px;align-items:flex-end}.experience-caption h3{font-size:29px}.experience-caption p:last-child{font-size:13px}.circle-link{width:44px;height:44px}.experience-caption .eyebrow{letter-spacing:1.2px}.moments{padding-block:65px}.moments .section-heading .text-link{margin-top:16px}.moments-grid{margin-top:25px;gap:12px;grid-template-columns:1fr 1fr}.moment-wide{height:270px;min-height:270px}.moment:not(.moment-wide){height:240px;min-height:240px}.moment>span{font-size:7px;letter-spacing:.7px;left:14px;right:14px;bottom:16px;line-height:1.8}.moment:not(.moment-wide)>span .icon{display:none}.arrival{grid-template-columns:1fr}.arrival-image{min-height:340px}.arrival-image>span{left:24px;font-size:8px;bottom:25px}.arrival-copy{padding:50px 24px 54px}.arrival-copy h2{font-size:58px}.arrival-copy>p:not(.eyebrow){max-width:340px}.arrival-copy .eyebrow{font-size:8px;letter-spacing:1.1px}.faq{padding-block:64px;gap:25px}.faq h2{font-size:43px}.faq .eyebrow{font-size:9px}summary{font-size:13px;min-height:74px;line-height:1.6}.faq-list details>p{font-size:13px}.footer-main{padding-top:48px;padding-bottom:35px;gap:28px 20px}.footer-brand .wordmark{font-size:64px}.footer-main .eyebrow{font-size:8px;letter-spacing:1.1px}.footer-main>div>a:not(.wordmark){font-size:11px;line-height:1.6;overflow-wrap:anywhere;min-height:44px;display:flex;align-items:center}.footer-bottom{font-size:9px;padding-top:20px;padding-bottom:100px}.footer-bottom>span:nth-child(2){font-size:7px}.mobile-booking{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;justify-content:space-between;align-items:center;gap:15px;padding:12px 20px max(12px,env(safe-area-inset-bottom));background:var(--cream);border-top:1px solid var(--border);box-shadow:0 -4px 24px #253a2f09}.mobile-booking>span{font-family:var(--display);font-size:19px;font-style:italic}.mobile-booking>.button{min-height:44px;padding:11px 15px;font-size:11px;gap:13px}.mobile-booking .icon{width:16px}.booking-dialog{padding:34px 26px}.booking-dialog h2{font-size:55px}.booking-dialog>.eyebrow{margin-top:28px}.room-dialog>img{height:260px}.room-dialog-copy{padding:28px 25px}.room-dialog h2{font-size:50px}.dialog-actions{gap:14px}.room-details span{font-size:11px}.gallery-dialog{max-width:calc(100vw - 24px)}.gallery-dialog>img{height:60dvh}.gallery-controls{gap:8px;padding:16px}.gallery-controls>p{font-size:10px}.gallery-controls .icon-button{min-width:44px;min-height:44px}}
@media(max-width:350px){:root{--gutter:20px}.hero h1{font-size:16vw}.hero-content>.eyebrow{font-size:7px;letter-spacing:1.4px}.filters{gap:12px}.filter{font-size:10px}.booking-bar{padding:16px;gap:15px 12px}.booking-bar .button{font-size:10px;padding:12px 10px;gap:5px}.mobile-booking>span{font-size:16px}.story h2{font-size:38px}.section-heading h2{font-size:40px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.stay-photo:hover img,.moment:hover img{transform:none}}
