:root{--olive:#3f4725;--teal:#4f8591;--gold:#d8a84e;--ink:#23302d;--muted:#65706d;--cream:#f5f1e7;--sand:#e9dfc9;--white:#fff;--line:#23302d26;--shadow:0 24px 70px #182a2521;--shadow-soft:0 12px 35px #1c322c17;--radius-sm:8px;--radius-lg:18px;--container:1180px;--space-section:110px;--serif:Georgia, "Times New Roman", serif;--sans:"Helvetica Neue", Arial, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);font-family:var(--sans);background:#fff;margin:0;font-size:16px;line-height:1.65;overflow-x:hidden}body,button,input,select,textarea{font-family:var(--sans)}img{max-width:100%;display:block}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}:focus-visible{outline:3px solid var(--gold);outline-offset:3px}h1,h2,h3{font-family:var(--serif);margin:0;font-weight:400;line-height:1.08}p{margin:0}.shell{width:min(var(--container), calc(100% - 48px));margin-inline:auto}.section{padding-block:var(--space-section)}.section--cream{background:var(--cream)}.center{text-align:center}.eyebrow{color:var(--teal);letter-spacing:.18em;text-transform:uppercase;margin-bottom:16px;font-size:.72rem;font-weight:700}.eyebrow--light{color:#e8d6a7}.button{cursor:pointer;letter-spacing:.08em;text-transform:uppercase;border:1px solid #0000;border-radius:999px;justify-content:center;align-items:center;min-height:48px;padding:0 24px;font-size:.75rem;font-weight:700;transition:all .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--accent{background:var(--gold);color:#253025}.button--accent:hover{background:#e5b95d;box-shadow:0 10px 28px #d8a84e47}.button--outline{color:var(--olive);background:0 0;border-color:#3f472573}.button--outline:hover{background:var(--olive);color:#fff}.button--ghost{color:#fff;border-color:#ffffff8c}.button--ghost:hover{color:var(--ink);background:#fff}.button--ghost-dark{border-color:#23302d4d}.button--light{color:var(--olive);background:#fff}.button--small{min-height:42px;padding-inline:18px}.text-link,.text-button{color:var(--olive);cursor:pointer;letter-spacing:.08em;text-transform:uppercase;background:0 0;border:0;font-size:.78rem;font-weight:700}.text-link span{color:var(--gold);margin-left:7px;transition:transform .2s;display:inline-block}.text-link:hover span{transform:translate(5px)}.announcement{background:var(--olive);color:#fff;letter-spacing:.04em;z-index:60;justify-content:center;align-items:center;min-height:38px;padding:5px 48px;font-size:.76rem;display:flex;position:relative}.announcement a{color:#f3d48f;text-underline-offset:3px;margin-left:12px;font-weight:700;text-decoration:underline}.announcement button{color:#fff;cursor:pointer;background:0 0;border:0;font-size:1.3rem;position:absolute;right:18px}.site-header{z-index:50;-webkit-backdrop-filter:blur(15px);backdrop-filter:blur(15px);background:#fffffff5;border-bottom:1px solid #3f47251a;grid-template-columns:190px 1fr auto;align-items:center;min-height:86px;padding:8px 4vw;transition:box-shadow .25s,min-height .25s;display:grid;position:sticky;top:0}.site-header.is-scrolled{min-height:76px;box-shadow:0 8px 28px #182a251a}.brand img{object-fit:contain;width:170px;height:66px}.main-nav{justify-content:center;gap:clamp(12px,1.7vw,27px);display:flex}.main-nav a{color:#3e4a46;letter-spacing:.08em;text-transform:uppercase;padding-block:12px;font-size:.74rem;font-weight:700}.main-nav a:hover{color:var(--teal)}.main-nav a.active{color:var(--olive);position:relative}.main-nav a.active:after{background:var(--gold);content:"";height:2px;position:absolute;bottom:4px;left:0;right:0}.header-actions{align-items:center;gap:8px;display:flex}.header-select select{appearance:none;color:var(--olive);cursor:pointer;background:0 0;border:0;padding:8px 2px;font-size:.68rem;font-weight:800}.icon-button,.menu-button{cursor:pointer;color:var(--olive);background:0 0;border:0}.icon-button{font-family:var(--serif);width:42px;font-size:1.8rem;line-height:1}.menu-button{width:42px;display:none}.menu-button span{background:var(--olive);width:24px;height:2px;margin:5px 0;display:block}.hero{color:#fff;min-height:700px;position:relative;overflow:hidden}.hero__image,.hero__shade{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.hero__shade{background:linear-gradient(90deg,#0e282ac2 0%,#0e282a52 55%,#0e282a14 100%),linear-gradient(#0000 50%,#091e1f40)}.hero__content{z-index:2;padding-top:135px;position:relative}.hero__badge{letter-spacing:.16em;text-transform:uppercase;border:1px solid #ffffff73;border-radius:999px;padding:8px 14px;font-size:.7rem;display:inline-block}.hero h1{letter-spacing:-.045em;max-width:840px;margin:28px 0 24px;font-size:clamp(4rem,8vw,7.8rem)}.hero__content>p{font-family:var(--serif);max-width:610px;font-size:1.3rem;line-height:1.55}.hero__actions{gap:12px;margin-top:38px;display:flex}.hero__scroll{letter-spacing:.12em;text-transform:uppercase;z-index:2;align-items:center;gap:10px;font-size:.69rem;display:flex;position:absolute;bottom:38px;right:5vw}.hero__scroll span{font-size:1.2rem}.booking-wrap{z-index:5;margin-top:-38px;position:relative}.booking-bar{box-shadow:var(--shadow);background:#fff;border-radius:14px;grid-template-columns:1fr 1fr .72fr .72fr .68fr .9fr auto;align-items:end;gap:0;padding:15px;display:grid}.booking-bar label{border-right:1px solid var(--line);flex-direction:column;gap:4px;padding:0 18px;display:flex}.booking-bar label span,.filter-bar label span,.contact-form label>span{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;font-size:.67rem;font-weight:700}.booking-bar input,.booking-bar select,.filter-bar select{color:var(--ink);background:0 0;border:0;outline:none;width:100%;min-height:34px}.booking-bar .button{align-self:center}.form-message{color:var(--olive);grid-column:1/-1;padding:9px 12px 0;font-size:.82rem;font-weight:700}.form-message[data-tone=error]{color:#9c3d31}.price-breakdown{border-top:1px solid var(--line);background:#fff;grid-column:1/-1;margin-top:12px;padding:16px 4px 2px}.price-breakdown p{justify-content:space-between;padding:6px 0;font-size:.8rem;display:flex}.price-breakdown .price-total{border-top:1px solid var(--line);font-family:var(--serif);margin-top:6px;padding-top:12px;font-size:1.05rem}.price-breakdown small{color:var(--muted);margin-top:6px;font-size:.68rem;display:block}.add-ons{border:0;border-top:1px solid var(--line);grid-column:1/-1;gap:7px;margin:12px 0 0;padding:14px 3px 3px;display:grid}.add-ons legend{color:var(--muted);letter-spacing:.1em;text-transform:uppercase;padding:0;font-size:.67rem;font-weight:700}.add-ons label{grid-template-columns:auto 1fr auto;align-items:center;gap:8px;font-size:.74rem;display:grid;border:0!important;padding:3px 0!important}.add-ons input{accent-color:var(--olive)}.add-ons strong{font-weight:700}.booking-bar--compact{border:1px solid var(--line);box-shadow:none;margin-bottom:75px}.intro-section{grid-template-columns:.85fr 1.15fr;align-items:center;gap:9vw;display:grid}.intro-copy h2,.section-heading h2,.dining-feature h2,.map-cta h2,.split-feature h2,.story-grid h2,.rooms-heading h2,.contact-layout h2{letter-spacing:-.035em;font-size:clamp(2.6rem,5vw,4.7rem)}.intro-copy>p:not(.eyebrow){color:var(--muted);max-width:520px;margin:28px 0;font-size:1.05rem}.image-collage{min-height:570px;position:relative}.image-collage>img:first-child{object-fit:cover;width:72%;height:485px}.image-collage>img:nth-child(2){object-fit:cover;border:12px solid #fff;width:48%;height:310px;position:absolute;bottom:0;right:0}.collage-note{background:var(--gold);flex-direction:column;justify-content:center;align-items:center;width:142px;height:115px;display:flex;position:absolute;bottom:20px;left:-28px}.collage-note strong{font-family:var(--serif);font-size:2rem;line-height:1}.collage-note span{letter-spacing:.08em;text-transform:uppercase;margin-top:7px;font-size:.65rem}.section-heading{justify-content:space-between;align-items:end;gap:40px;margin-bottom:48px;display:flex}.section-heading h2{max-width:800px}.section-heading p:not(.eyebrow){color:var(--muted);max-width:630px;margin-top:18px}.room-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.room-card{border-radius:var(--radius-sm);box-shadow:var(--shadow-soft);background:#fff;transition:transform .25s;overflow:hidden}.room-card:hover{transform:translateY(-5px)}.media-frame{height:270px;display:block;position:relative;overflow:hidden}.media-frame img{object-fit:cover;width:100%;height:100%;transition:transform .6s}.room-card:hover .media-frame img{transform:scale(1.04)}.availability{color:#3b6338;text-transform:uppercase;background:#eaf3e8;border-radius:999px;padding:7px 11px;font-size:.68rem;font-weight:700;position:absolute;top:16px;left:16px}.availability--limited{color:#8a5a1b;background:#fff1dc}.room-card__body{padding:25px}.card-kicker{color:var(--teal);letter-spacing:.12em;text-transform:uppercase;font-size:.67rem;font-weight:700}.room-card h3{margin:10px 0;font-size:1.75rem}.room-card__body>p{color:var(--muted);min-height:73px;font-size:.9rem}.room-meta{border-bottom:1px solid var(--line);border-top:1px solid var(--line);flex-wrap:wrap;gap:8px 15px;margin:20px 0;padding:13px 0;display:flex}.room-meta span{color:#56615e;font-size:13px}.price-row{align-items:center;width:100%;display:flex}.price-row small{color:var(--muted);text-transform:uppercase;font-size:.64rem;display:block}.price-row strong{font-family:var(--serif);font-size:1.55rem;font-weight:400}.price-row s{color:#8c9592;margin-left:4px}.card-actions{align-items:center;gap:150px;display:flex}.benefits{border-bottom:1px solid var(--line);grid-template-columns:repeat(4,1fr);display:grid}.benefits>div{border-right:1px solid var(--line);padding:65px 34px}.benefits>div:last-child{border-right:0}.benefits span{color:var(--gold);font-family:var(--serif);font-style:italic}.benefits h3{margin:18px 0 4px;font-size:1.4rem}.benefits p{color:var(--muted);font-size:.83rem}.offer-grid{grid-template-columns:repeat(3,1fr);gap:24px;display:grid}.offer-card{min-height:520px;position:relative;overflow:hidden}.offer-card img{object-fit:cover;width:100%;height:100%;transition:transform .6s;position:absolute;inset:0}.offer-card:hover img{transform:scale(1.04)}.offer-card:after{content:"";background:linear-gradient(#152a260d 30%,#152a26eb);position:absolute;inset:0}.offer-card>div{color:#fff;z-index:2;padding:32px;position:absolute;bottom:0}.offer-tag{background:var(--gold);color:var(--ink);text-transform:uppercase;border-radius:99px;padding:7px 10px;font-size:.65rem;font-weight:800}.offer-card h3{margin:18px 0 8px;font-size:2rem}.offer-card p{opacity:.9;font-size:.88rem}.offer-card small{opacity:.75;margin:10px 0 20px;display:block}.offer-card .text-link{color:#fff}.offer-actions{flex-wrap:wrap;align-items:center;gap:18px;display:flex}.split-feature{grid-template-columns:1.15fr .85fr;min-height:680px;display:grid}.split-feature__image img{object-fit:cover;width:100%;height:100%}.split-feature__content{background:var(--olive);color:#fff;flex-direction:column;justify-content:center;align-items:flex-start;padding:10vw;display:flex}.split-feature__content h2{max-width:570px}.split-feature__content>p:not(.eyebrow){opacity:.78;max-width:500px;margin:26px 0 36px}.activity-grid{grid-template-columns:repeat(4,1fr);gap:20px;display:grid}.activity-card{position:relative;overflow:hidden}.activity-card img{aspect-ratio:.8;object-fit:cover;width:100%;transition:transform .45s}.activity-card:hover img{transform:scale(1.03)}.activity-card div{background:#fff;min-height:270px;margin:-54px 14px 0;padding:20px;position:relative}.activity-card h3{font-size:1.45rem}.activity-card p{color:var(--muted);margin:6px 0 13px;font-size:.75rem}.activity-card .activity-summary{color:var(--ink);font-size:.82rem}.activity-card ul{color:var(--muted);margin:0 0 15px;padding:0;font-size:.7rem;list-style:none}.activity-card li:before{color:var(--gold);content:"✓";margin-right:6px}.activity-card a{color:var(--olive);letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:700}.dining-feature{grid-template-columns:1.2fr .8fr;align-items:center;gap:8vw;display:grid}.dining-feature>img{object-fit:cover;width:100%;height:580px}.dining-feature>div>p:not(.eyebrow){color:var(--muted);margin:25px 0 35px}.chip-row{flex-wrap:wrap;gap:8px;margin-bottom:30px;display:flex}.chip{border:1px solid var(--line);color:var(--muted);cursor:pointer;background:#fff;border-radius:99px;padding:9px 16px;font-size:.72rem;font-weight:700}.chip.active,.chip:hover{background:var(--olive);color:#fff}.gallery-grid{grid-template-columns:repeat(4,1fr);gap:12px;display:grid}.gallery-item{cursor:zoom-in;background:0 0;border:0;grid-column:span 1;padding:0;position:relative;overflow:hidden}.gallery-item:first-child,.gallery-item:nth-child(6),.gallery-item:nth-child(11){grid-column:span 2}.gallery-item img{object-fit:cover;width:100%;height:285px;transition:transform .5s}.gallery-item:hover img{transform:scale(1.05)}.gallery-item span{color:#fff;text-align:left;background:linear-gradient(#0000,#0f1f1cbf);width:100%;padding:35px 15px 12px;font-size:.76rem;position:absolute;bottom:0;left:0}.gallery-preview{grid-template-columns:repeat(12,1fr);gap:12px;display:grid}.gallery-preview a{grid-column:span 4;overflow:hidden}.gallery-preview a:first-child,.gallery-preview a:nth-child(5){grid-column:span 8}.gallery-preview img{object-fit:cover;width:100%;height:300px;transition:transform .5s}.gallery-preview a:hover img{transform:scale(1.04)}.lightbox{z-index:100;background:#0c1916f0;justify-content:center;align-items:center;padding:70px;display:flex;position:fixed;inset:0}.lightbox figure{max-width:1050px;margin:0}.lightbox figure img{object-fit:contain;max-height:78vh}.lightbox figcaption{color:#fff;text-align:center;margin-top:12px}.lightbox button{color:#fff;cursor:pointer;font-family:var(--serif);background:0 0;border:0;font-size:3rem;position:absolute}.lightbox__close{top:15px;right:25px}.lightbox__prev{left:25px}.lightbox__next{right:25px}.review-grid{grid-template-columns:repeat(3,1fr);gap:22px;display:grid}.review-grid blockquote{background:var(--cream);margin:0;padding:34px}.stars{color:var(--gold);letter-spacing:.15em}.review-grid blockquote>p{font-family:var(--serif);margin:25px 0 35px;font-size:1.25rem;line-height:1.55}.review-grid footer{flex-direction:column;display:flex}.review-grid footer strong{text-transform:uppercase;font-size:.8rem}.review-grid footer span,.review-grid footer small{color:var(--muted);font-size:.7rem}.review-grid footer small{color:var(--teal);margin-top:6px}.final-cta{max-width:850px}.final-cta h2{font-size:clamp(2.8rem,5vw,4.7rem)}.final-cta>p:not(.eyebrow){color:var(--muted);max-width:650px;margin:24px auto 34px}.final-cta>div{justify-content:center;gap:12px;display:flex}.map-cta{background:linear-gradient(90deg,#f4efe2f7,#f4efe2c7),url(https://images.unsplash.com/photo-1524661135-423995f22d0b?auto=format&fit=crop&w=1800&q=80) 50%/cover;padding:120px 0}.map-cta p:not(.eyebrow){color:var(--muted);max-width:550px;margin:25px 0 35px}.map-cta .button+.button{margin-left:10px}.site-footer{color:#fff;background:#23332f;padding:90px 5vw 25px}.footer-grid{grid-template-columns:1.6fr repeat(3,1fr);gap:60px;max-width:1180px;margin:auto;display:grid}.footer-grid h3{color:#e7c67f;font-family:var(--sans);letter-spacing:.14em;text-transform:uppercase;margin-bottom:20px;font-size:.72rem}.footer-grid>div{flex-direction:column;gap:9px;display:flex}.footer-grid a,.footer-grid p{color:#ffffffb8;font-size:.82rem}.footer-grid a:hover{color:#fff}.footer-brand img{object-fit:contain;background:#fff;width:230px;height:90px}.footer-brand p{max-width:330px}.socials{gap:18px;margin-top:10px;display:flex}.newsletter{border-top:1px solid #ffffff24;border-bottom:1px solid #ffffff24;max-width:1180px;margin:70px auto 0;padding:30px 0}.newsletter label{font-family:var(--serif);margin-bottom:13px;font-size:1.3rem;display:block}.newsletter>div{max-width:600px;display:flex}.newsletter input{color:#fff;background:0 0;border:1px solid #ffffff59;border-radius:99px 0 0 99px;width:100%;min-height:48px;padding:0 19px}.newsletter .button{border-radius:0 99px 99px 0}.newsletter small{color:#e7c67f;margin-top:8px;display:block}.trust-row{border-bottom:1px solid #ffffff24;justify-content:space-between;align-items:center;max-width:1180px;margin:28px auto 0;padding-bottom:24px;display:flex}.trust-row>div{flex-wrap:wrap;gap:7px;display:flex}.trust-row span{color:#fff;letter-spacing:.05em;text-transform:uppercase;border:1px solid #ffffff47;border-radius:4px;padding:6px 9px;font-size:.66rem;font-weight:800}.trust-row p{color:#ffffff9e;text-align:right;font-size:.7rem}.footer-bottom{opacity:.62;justify-content:space-between;max-width:1180px;margin:25px auto 0;font-size:.7rem;display:flex}.footer-bottom div{gap:20px;display:flex}.floating-actions{z-index:45;align-items:center;gap:8px;display:flex;position:fixed;bottom:20px;left:20px}.floating-book,.floating-call,.back-to-top{text-transform:uppercase;border:0;border-radius:99px;padding:12px 16px;font-size:.7rem;font-weight:800;box-shadow:0 10px 35px #0003}.floating-book{background:var(--gold);color:var(--ink)}.floating-call{color:var(--olive);background:#fff}.back-to-top{background:var(--olive);color:#fff;cursor:pointer;min-width:42px;padding-inline:12px;display:none}.back-to-top.visible{display:block}.search-layer{z-index:90;background:#10211dd1;justify-content:center;align-items:flex-start;padding:10vh 24px;display:flex;position:fixed;inset:0}.search-panel{background:var(--cream);width:100%;max-width:700px;padding:48px;position:relative}.search-panel h2{margin-bottom:25px;font-size:2.5rem}.search-panel>input{border:1px solid var(--line);background:#fff;width:100%;min-height:56px;padding:0 17px}.search-close{cursor:pointer;font-family:var(--serif);background:0 0;border:0;font-size:2rem;position:absolute;top:15px;right:22px}.search-results{margin-top:14px;display:grid}.search-results a{border-bottom:1px solid var(--line);justify-content:space-between;padding:14px 3px;font-size:.9rem;display:flex}.search-results a>span{flex-direction:column;display:flex}.search-results small{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-size:.62rem;font-weight:800}.search-results b{color:var(--gold)}.search-empty{padding:24px 2px}.search-empty p{color:var(--muted);margin-top:4px;font-size:.82rem}.toast{background:var(--olive);border-left:4px solid var(--gold);box-shadow:var(--shadow);color:#fff;z-index:120;max-width:430px;padding:16px 20px;position:fixed;bottom:24px;right:24px}.toast[data-tone=error]{background:#84382f;border-left-color:#f2b6ad}.page-hero{color:#fff;min-height:530px;position:relative}.page-hero>img,.page-hero__shade{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.page-hero__shade{background:linear-gradient(90deg,#122f2dcc,#122f2d24)}.page-hero__content{z-index:2;padding-top:150px;position:relative}.page-hero h1{letter-spacing:-.045em;max-width:880px;font-size:clamp(3.5rem,6.5vw,6.8rem)}.page-hero__content>p:last-child{font-family:var(--serif);max-width:660px;margin-top:24px;font-size:1.2rem}.story-grid{grid-template-columns:1fr 1fr;gap:10vw;display:grid}.story-grid>div:last-child p{color:var(--muted);margin-bottom:20px;font-size:1.05rem}.value-grid{grid-template-columns:repeat(3,1fr);gap:0;display:grid}.value-grid article{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:35px 40px}.value-grid article:nth-child(3n){border-right:0}.value-grid article:nth-last-child(-n+3){border-bottom:0}.value-grid span{color:var(--gold);font-family:var(--serif)}.value-grid h2{margin:20px 0 13px;font-size:1.8rem}.value-grid p{color:var(--muted)}.image-story{grid-template-columns:1.15fr .85fr;align-items:center;gap:8vw;display:grid}.image-story img{object-fit:cover;width:100%;height:530px}.image-story h2{font-size:3.4rem}.image-story p:not(.eyebrow){color:var(--muted);margin:22px 0 30px}.rooms-heading{margin-bottom:28px}.filter-bar{border-bottom:1px solid var(--line);border-top:1px solid var(--line);flex-wrap:wrap;align-items:end;gap:18px 26px;margin-bottom:20px;padding:22px 0;display:flex}.filter-bar label{flex-direction:column;min-width:170px;display:flex}.view-buttons{align-items:center;gap:6px;display:flex}.check-label{flex-direction:row!important;align-items:center!important;gap:9px!important;display:flex!important}.check-label input{accent-color:var(--olive);width:17px;height:17px}.result-count{color:var(--muted);margin-bottom:20px;font-size:.8rem}.empty-state{background:var(--cream);text-align:center;padding:55px}.room-grid--list{grid-template-columns:1fr}.room-grid--list .room-card{grid-template-columns:minmax(280px,38%) 1fr;display:grid}.room-grid--list .media-frame{height:100%;min-height:320px}.room-grid--list .room-card:last-child{grid-column:auto;max-width:none}.room-detail-hero{grid-template-rows:250px 250px;grid-template-columns:2fr 1fr;gap:10px;padding-top:30px;display:grid}.room-gallery-button{cursor:zoom-in;background:0 0;border:0;padding:0;position:relative;overflow:hidden}.room-detail-hero img{object-fit:cover;width:100%;height:100%;transition:transform .45s}.room-gallery-button:hover img{transform:scale(1.03)}.room-gallery-button>span{color:#fff;background:#142622b8;padding:5px 8px;font-size:.7rem;position:absolute;bottom:12px;right:12px}.room-detail-hero__main{grid-row:span 2}.video-tour{box-shadow:var(--shadow-soft);color:var(--olive);cursor:pointer;text-transform:uppercase;z-index:3;background:#fff;border:0;border-radius:99px;padding:11px 17px;font-size:.72rem;font-weight:800;position:absolute;bottom:18px;right:18px}.room-detail-hero{position:relative}.detail-layout{grid-template-columns:1fr 410px;align-items:start;gap:8vw}.detail-layout h1{font-size:4.5rem}.detail-layout .lead{color:var(--muted);font-family:var(--serif);margin:20px 0 30px;font-size:1.25rem}.detail-layout article h2{margin:50px 0 15px;font-size:2rem}.detail-layout article>p:not(.eyebrow):not(.lead){color:var(--muted)}.detail-facts{border-bottom:1px solid var(--line);border-top:1px solid var(--line);flex-wrap:wrap;gap:18px 30px;padding:19px 0;display:flex}.detail-facts span{font-size:.78rem;font-weight:700}.amenity-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.amenity-grid span{color:var(--muted);font-size:.82rem}.policy-list{grid-template-columns:repeat(2,1fr);gap:0;display:grid}.policy-list p{border-top:1px solid var(--line);flex-direction:column;padding:15px 0;display:flex}.booking-card{background:var(--cream);padding:32px;position:sticky;top:120px}.booking-card>span{color:var(--muted);text-transform:uppercase;font-size:.72rem}.booking-card__price{font-family:var(--serif);font-size:2.4rem}.booking-card__price small{font-family:var(--sans);font-size:.75rem}.booking-card>p{color:var(--muted);margin-bottom:18px;font-size:.74rem}.booking-card .booking-bar{flex-direction:column;margin:0;display:flex}.booking-card .booking-bar label{border-bottom:1px solid var(--line);border-right:0;width:100%;padding:12px 0}.booking-card .booking-bar .button{width:100%;margin-top:15px}.mini-room-grid{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.mini-room-grid a{background:#fff;grid-template-columns:170px 1fr;display:grid}.mini-room-grid img{object-fit:cover;width:100%;height:130px}.mini-room-grid div{align-self:center;padding:20px}.mini-room-grid h3{font-size:1.4rem}.mini-room-grid span{color:var(--muted);font-size:.74rem}.terms-note{background:var(--cream);border-left:3px solid var(--gold);margin-top:45px;padding:24px}.terms-note p{color:var(--muted);margin-top:5px}.cta-panel{background:var(--cream);justify-content:space-between;align-items:center;margin-top:70px;padding:45px;display:flex}.cta-panel h2{font-size:2.4rem}.dining-venues{grid-template-columns:repeat(3,1fr);display:grid}.dining-venues article{border-bottom:1px solid var(--line);border-right:1px solid var(--line);padding:38px 45px}.dining-venues article:nth-child(3n){border-right:0}.dining-venues article:nth-last-child(-n+3){border-bottom:0}.dining-venues span{color:var(--gold)}.dining-venues h2{margin:18px 0;font-size:2rem}.dining-venues p{color:var(--muted);margin-bottom:22px}.menu-section{background:var(--olive);color:#fff;padding:100px 0}.menu-section h2{max-width:600px;font-size:4rem}.menu-grid{border-top:1px solid #fff3;grid-template-columns:repeat(4,1fr);gap:35px;margin-top:45px;padding-top:35px;display:grid}.menu-grid h3{color:#e7c67f;font-size:1.4rem}.menu-grid p{opacity:.7;margin-top:12px}.attraction-grid{grid-template-columns:repeat(2,1fr);gap:25px;display:grid}.attraction-grid article{border:1px solid var(--line);grid-template-columns:230px 1fr;display:grid}.attraction-grid img{object-fit:cover;width:100%;height:100%;min-height:220px}.attraction-grid article>div{padding:25px}.attraction-grid span{color:var(--teal);text-transform:uppercase;font-size:.68rem;font-weight:700}.attraction-grid h3{margin:8px 0;font-size:1.7rem}.attraction-grid p{color:var(--muted);margin-bottom:15px;font-size:.84rem}.attraction-grid small{color:var(--muted);margin-bottom:16px;font-size:.7rem;display:block}.contact-layout{grid-template-columns:.7fr 1.3fr;gap:9vw;display:grid}.contact-details{border-top:1px solid var(--line);margin-top:35px}.contact-details p{border-bottom:1px solid var(--line);flex-direction:column;padding:17px 0;display:flex}.contact-details span{color:var(--teal);letter-spacing:.1em;text-transform:uppercase;font-size:.67rem;font-weight:700}.contact-form{grid-template-columns:repeat(2,1fr);gap:20px;display:grid}.contact-form label{flex-direction:column;gap:7px;display:flex}.contact-form input,.contact-form select,.contact-form textarea{border:1px solid var(--line);background:#fbfaf7;border-radius:3px;padding:13px}.contact-form .span-2{grid-column:span 2}.map-placeholder{text-align:center;background:linear-gradient(120deg,#dde3d3,#cddedc);justify-content:center;align-items:center;min-height:450px;display:flex}.map-placeholder span{color:var(--teal);letter-spacing:.13em;font-size:.7rem;font-weight:700}.map-placeholder h2{margin:15px 0;font-size:3.3rem}.map-placeholder p{color:var(--muted);margin-bottom:25px}.faq-layout{grid-template-columns:320px 1fr;align-items:start;gap:9vw;display:grid}.faq-layout aside{position:sticky;top:120px}.faq-layout aside h2{font-size:2.4rem}.faq-layout aside>p:not(.eyebrow){color:var(--muted);margin:17px 0 25px}.faq-list details{border-top:1px solid var(--line)}.faq-list details:last-child{border-bottom:1px solid var(--line)}.faq-list summary{cursor:pointer;font-family:var(--serif);justify-content:space-between;align-items:center;padding:23px 0;font-size:1.35rem;list-style:none;display:flex}.faq-list summary span{color:var(--gold);font-size:1.8rem}.faq-list details[open] summary span{transform:rotate(45deg)}.faq-list details p{color:var(--muted);padding:0 50px 25px 0}.legal-content{max-width:900px}.legal-content article{border-bottom:1px solid var(--line);padding:30px 0}.legal-content h2{margin-bottom:12px;font-size:2rem}.legal-content p{color:var(--muted)}@media (width<=1080px){.site-header{grid-template-columns:160px 1fr}.main-nav{box-shadow:var(--shadow);background:#fff;flex-direction:column;padding:25px 5vw;display:none;position:absolute;top:100%;left:0;right:0}.main-nav.open{display:flex}.header-actions{justify-self:end}.menu-button{display:block}.header-contact{display:none}.room-grid{grid-template-columns:repeat(2,1fr)}.room-card:last-child{grid-column:span 2;max-width:calc(50% - 11px)}.offer-grid,.review-grid{grid-template-columns:repeat(2,1fr)}.review-grid blockquote:last-child{grid-column:span 2}.activity-grid{grid-template-columns:repeat(2,1fr)}.detail-layout{grid-template-columns:1fr 360px;gap:5vw}.footer-grid{grid-template-columns:1.4fr repeat(2,1fr)}.footer-grid>div:last-child{grid-column:2/-1}.booking-bar{grid-template-columns:repeat(3,1fr)}.booking-bar .button{grid-column:span 3;margin-top:10px}}@media (width<=760px){.shell{width:min(100% - 32px,1180px)}.section{padding-block:72px}.announcement{justify-content:flex-start;padding:7px 45px 7px 16px}.announcement a{display:none}.site-header{min-height:74px;padding:4px 16px}.brand img{width:145px;height:58px}.header-actions>.button,.header-select{display:none}.hero{min-height:650px}.hero__content{padding-top:105px}.hero h1{font-size:clamp(3.6rem,17vw,5rem)}.hero__content>p{font-size:1.05rem}.hero__actions{flex-direction:column;align-items:stretch;max-width:260px}.hero__scroll{display:none}.booking-wrap{margin-top:-25px}.booking-bar,.booking-bar--compact{grid-template-columns:repeat(2,1fr)}.booking-bar label{border-bottom:1px solid var(--line);border-right:0;padding:10px 8px}.booking-bar .promo-field{display:none}.booking-bar .button{grid-column:span 2;margin-top:10px}.intro-section,.dining-feature,.story-grid,.image-story,.contact-layout,.faq-layout{grid-template-columns:1fr}.intro-copy h2,.section-heading h2,.dining-feature h2,.map-cta h2,.split-feature h2,.story-grid h2,.rooms-heading h2,.contact-layout h2{font-size:2.7rem}.image-collage{min-height:440px}.image-collage>img:first-child{width:80%;height:360px}.image-collage>img:nth-child(2){height:230px}.collage-note{left:0}.section-heading{flex-direction:column;align-items:flex-start}.room-grid,.offer-grid,.review-grid{grid-template-columns:1fr}.room-card:last-child,.review-grid blockquote:last-child{grid-column:auto;max-width:none}.room-card__body>p{min-height:auto}.benefits{grid-template-columns:repeat(2,1fr)}.benefits>div{padding:35px 18px}.benefits>div:nth-child(2){border-right:0}.split-feature{grid-template-columns:1fr}.split-feature__image{height:420px}.split-feature__content{padding:70px 24px}.activity-grid{grid-template-columns:1fr 1fr}.activity-card div{margin:-25px 8px 0}.dining-feature>img{height:400px}.gallery-grid,.gallery-preview{grid-template-columns:repeat(2,1fr)}.gallery-preview a,.gallery-preview a:first-child,.gallery-preview a:nth-child(5){grid-column:auto}.gallery-preview img{height:220px}.gallery-item,.gallery-item:first-child,.gallery-item:nth-child(6),.gallery-item:nth-child(11){grid-column:auto}.gallery-item img{height:210px}.lightbox{padding:55px 16px}.map-cta{padding:85px 0}.map-cta .button{width:100%;display:flex;margin:8px 0!important}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:span 2}.footer-grid>div:last-child{grid-column:auto}.footer-bottom{gap:10px}.trust-row{flex-direction:column;align-items:flex-start;gap:16px}.trust-row p{text-align:left}.page-hero{min-height:480px}.page-hero__content{padding-top:110px}.page-hero h1{font-size:3.7rem}.value-grid,.dining-venues{grid-template-columns:1fr}.value-grid article,.dining-venues article{border-bottom:1px solid var(--line);border-right:0;padding:30px 0}.image-story img{height:390px}.filter-bar{flex-direction:column;align-items:stretch;gap:12px}.filter-bar label{min-width:0}.room-grid--list .room-card{grid-template-columns:1fr}.room-grid--list .media-frame{min-height:260px}.room-detail-hero{grid-template-rows:340px 130px}.room-detail-hero__main{grid-area:auto/span 2}.detail-layout{grid-template-columns:1fr}.detail-layout h1{font-size:3.5rem}.booking-card,.faq-layout aside{position:static}.amenity-grid{grid-template-columns:repeat(2,1fr)}.mini-room-grid{grid-template-columns:1fr}.cta-panel{flex-direction:column;align-items:flex-start;gap:25px}.menu-section h2{font-size:3rem}.menu-grid{grid-template-columns:repeat(2,1fr)}.attraction-grid{grid-template-columns:1fr}.attraction-grid article{grid-template-columns:145px 1fr}.contact-form{grid-template-columns:1fr}.contact-form .span-2{grid-column:auto}.value-grid article,.value-grid article:nth-child(3n),.dining-venues article,.dining-venues article:nth-child(3n){border-bottom:1px solid var(--line);border-right:0}.value-grid article:last-child,.dining-venues article:last-child{border-bottom:0}.final-cta>div{flex-direction:column;align-items:stretch}.toast{max-width:none;bottom:82px;left:16px;right:16px}}@media (width<=480px){.booking-bar,.booking-bar--compact{grid-template-columns:1fr}.booking-bar .button{grid-column:auto}.booking-bar .promo-field{display:flex}.activity-grid,.benefits{grid-template-columns:1fr}.benefits>div{border-bottom:1px solid var(--line);border-right:0}.gallery-grid{gap:7px}.gallery-item img{height:165px}.footer-grid{grid-template-columns:1fr}.footer-brand,.footer-grid>div:last-child{grid-column:auto}.newsletter>div{flex-direction:column;gap:8px}.newsletter input,.newsletter .button{border-radius:99px}.footer-bottom{flex-direction:column;align-items:flex-start}.search-panel{padding:38px 24px 25px}.menu-grid,.attraction-grid article{grid-template-columns:1fr}.attraction-grid img{height:220px}.policy-list{grid-template-columns:1fr}.price-row{flex-direction:column;align-items:flex-start;gap:18px}.card-actions{width:100%}.card-actions .button{flex:1}.floating-actions{left:12px;right:12px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important}}.price-row .book-now{margin-left:auto}.skip-link{z-index:200;background:#fff;padding:.75rem 1rem;position:fixed;top:-5rem;left:1rem}.skip-link:focus{top:1rem}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}[hidden]{display:none!important}.form-message:empty{display:none}.configurable-form input:invalid:not(:placeholder-shown),.contact-form input:invalid:not(:placeholder-shown),.contact-form textarea:invalid:not(:placeholder-shown){border-color:#a43b2f}
