/* UCan2 theme styles — cleaned (removed broken Tailwind v4 layer prefix that aborted parsing) */
:root{--navy:#021832;--navy-2:#06284b;--red:#c81d1e;--paper:#f4f1e8;--white:#fff;--ink:#16202b;--muted:#65707c;--gold:#b79a55;--line:#16202b29;--display:"Gilda Display", Georgia, serif;--sans:"Barlow", Arial, sans-serif;--label:"Montserrat", Arial, sans-serif;--shell:min(90vw, 1360px);--header-height:92px}*,:before,:after{box-sizing:border-box}html{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;scroll-behavior:smooth;scroll-padding-top:var(--header-height);background:var(--paper)}body{color:var(--ink);background:var(--paper);font-family:var(--sans);margin:0;font-size:16px;line-height:1.65;overflow-x:clip}body.nav-open{overflow:hidden}img,video{width:100%;display:block}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{border:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--display);font-weight:400;line-height:.98}:focus-visible{outline-offset:4px;outline:3px solid #ffd066}.skip-link{z-index:1000;color:var(--navy);background:var(--white);font-family:var(--label);text-transform:uppercase;padding:10px 16px;font-size:12px;font-weight:700;text-decoration:none;position:fixed;top:12px;left:12px;transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}.site-header{z-index:100;width:100%;min-height:var(--header-height);color:var(--white);border-bottom:1px solid #ffffff38;grid-template-columns:116px 1fr auto;align-items:center;gap:28px;padding:10px 4vw;transition:background-color .35s,min-height .35s,box-shadow .35s;display:grid;position:fixed;top:0;left:0}.site-header.is-scrolled{min-height:72px;color:var(--navy);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:#f4f1e8f5;border-bottom-color:#0218321f;box-shadow:0 14px 45px #02183214}.brand{align-self:stretch;align-items:center;width:82px;display:grid;position:relative}.brand img{object-fit:contain;filter:drop-shadow(0 8px 18px #0000002e);height:70px}.primary-nav{justify-self:center;align-items:center;gap:clamp(14px,1.5vw,28px);display:flex}.primary-nav a{font-family:var(--label);letter-spacing:.08em;text-transform:uppercase;font-size:10px;font-weight:600;text-decoration:none;position:relative}.primary-nav a:after{content:"";transform-origin:100%;background:currentColor;height:1px;transition:transform .3s;position:absolute;bottom:-8px;left:0;right:0;transform:scaleX(0)}.primary-nav a:hover:after,.primary-nav a:focus-visible:after{transform-origin:0;transform:scaleX(1)}.menu-toggle{display:none}.button{min-height:48px;font-family:var(--label);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;border:1px solid #0000;border-radius:0;justify-content:center;align-items:center;padding:0 24px;font-size:10px;font-weight:700;transition:color .25s,background-color .25s,border-color .25s,transform .25s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button--red{color:var(--white);background:var(--red)}.button--red:hover{background:#a91216}.button--outline{color:var(--white);background:0 0;border-color:#ffffff8c}.button--outline:hover{color:var(--navy);background:var(--white);border-color:var(--white)}.scene{isolation:isolate;position:relative}.layer{pointer-events:none;position:absolute;inset:0}.depth-0{z-index:0}.depth-1{z-index:1}.depth-2{z-index:2}.depth-3{z-index:3;position:relative}.depth-4{z-index:4;position:relative}.depth-5{z-index:5}.hero{min-height:100svh;color:var(--white);background:var(--navy);place-items:center;display:grid;overflow:hidden}.hero__media video{object-fit:cover;filter:saturate(.82)contrast(1.05);height:100%}.hero__media:after{content:"";background:linear-gradient(90deg,#010f21d1 0%,#0218325c 52%,#02183294 100%),linear-gradient(#0000 45%,#02183294);position:absolute;inset:0}.hero__wash{mix-blend-mode:screen;background:radial-gradient(circle at 0 40%,#b79a5547,#0000 65%);width:42vw;left:auto}.hero__rule{background:linear-gradient(#0000,#fff9,#0000);width:1px;inset:18% auto 18% 8.5vw}.eyebrow{color:var(--red);font-family:var(--label);letter-spacing:.22em;text-transform:uppercase;margin-bottom:22px;font-size:10px;font-weight:700}.hero .eyebrow{color:#f2d994}.hero h1{letter-spacing:-.045em;text-transform:uppercase;max-width:950px;margin-bottom:26px;font-size:clamp(74px,12vw,178px)}.hero__lede{color:#ffffffe0;max-width:420px;font-size:clamp(18px,1.6vw,26px)}.text-link{color:inherit;font-family:var(--label);letter-spacing:.12em;text-transform:uppercase;cursor:pointer;background:0 0;border-bottom:1px solid;align-items:center;gap:14px;margin-top:20px;padding:0 0 8px;font-size:10px;font-weight:700;display:inline-flex;position:relative}.text-link span{transition:transform .25s}.text-link:hover span{transform:translate(4px,2px)}.text-link--light{color:var(--white)}.hero__index{color:#ffffffb3;font-family:var(--label);align-items:baseline;gap:12px;display:flex;inset:auto 4vw 11vh auto}.hero__index span{font-family:var(--display);color:#0000;-webkit-text-stroke:1px #ffffff73;font-size:clamp(50px,6vw,90px)}.hero__index b{letter-spacing:.16em;font-size:9px}.scroll-cue{z-index:7;height:105px;color:var(--white);font-family:var(--label);letter-spacing:.18em;text-transform:uppercase;align-items:center;gap:16px;font-size:9px;text-decoration:none;display:flex;position:absolute;bottom:0;left:4vw}.scroll-cue i{background:#ffffffbf;width:58px;height:1px}.booking{z-index:10;width:min(94vw,1440px);min-height:150px;color:var(--white);background:var(--navy);grid-template-columns:minmax(220px,.8fr) 3fr;margin:-38px auto 0;display:grid;position:relative;box-shadow:0 26px 70px #0218323d}.booking__intro{border-right:1px solid #ffffff29;padding:30px 32px}.booking__intro .eyebrow{color:#f2d994;margin-bottom:8px}.booking__intro p{font-family:var(--display);margin:0;font-size:22px;line-height:1.1}.booking__fields{grid-template-columns:1.25fr repeat(3,1fr) auto;display:grid}.booking__fields label{border-right:1px solid #ffffff21;align-content:center;min-width:0;padding:22px;display:grid}.booking__fields label>span{color:#ffffff8c;font-family:var(--label);letter-spacing:.16em;text-transform:uppercase;font-size:8px;font-weight:700}.booking__fields input,.booking__fields select{width:100%;color:var(--white);background:0 0;border:0;outline:0;padding:8px 0 0}.booking__fields option{color:var(--ink)}.booking__fields .button{align-self:stretch;min-width:120px}.section{width:var(--shell);margin:0 auto;padding:clamp(100px,12vw,190px) 0}.section-heading{grid-template-columns:minmax(0,1.7fr) minmax(260px,.7fr);align-items:end;gap:8vw;margin-bottom:clamp(52px,7vw,100px);display:grid}.section-heading h2,.about h2,.reviews h2,.newsletter h2{letter-spacing:-.035em;margin-bottom:0;font-size:clamp(54px,7.2vw,112px)}.section-heading__copy{max-width:430px;color:var(--muted);font-size:18px}.section-heading__copy p{margin-bottom:0}.destination-list{grid-template-columns:1.15fr .85fr;align-items:start;gap:clamp(22px,4vw,64px);display:grid}.destination-card{min-height:470px;color:var(--white);background:var(--navy);text-decoration:none;display:block;position:relative;overflow:hidden}.destination-card:nth-child(2n){min-height:370px;margin-top:110px}.destination-card:nth-child(3){margin-top:-30px}.destination-card picture,.destination-card img{height:100%;position:absolute;inset:0}.destination-card img{object-fit:cover;transition:transform .8s cubic-bezier(.2,.7,.2,1),filter .5s}.destination-card:after{content:"";background:linear-gradient(#0000 36%,#021832d1);position:absolute;inset:0}.destination-card:hover img{filter:saturate(1.1);transform:scale(1.045)}.destination-card__number,.destination-card__name,.destination-card__arrow{z-index:2;position:absolute}.destination-card__number{font-family:var(--label);border-bottom:1px solid #fff9;padding-bottom:7px;font-size:9px;top:22px;left:24px}.destination-card__name{font-family:var(--display);font-size:clamp(30px,3.5vw,58px);line-height:1;bottom:30px;left:30px;right:68px}.destination-card__arrow{font-size:22px;bottom:32px;right:28px}.about{background:#ebe7dc;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);align-items:center;gap:clamp(50px,8vw,130px);width:100%;min-height:860px;margin:0;padding:clamp(110px,12vw,190px) max(5vw,50vw - 680px);display:grid;overflow:hidden}.about__frame{border:1px solid #0218321f;border-left:0;inset:8% 48% 8% 0}.about__media{min-height:680px;position:relative}.about__media picture,.about__media img{height:100%}.about__media img{object-fit:cover;position:absolute;inset:0}.about__media span{color:var(--white);background:var(--red);font-family:var(--label);letter-spacing:.14em;text-transform:uppercase;padding:12px 20px;font-size:8px;position:absolute;bottom:40px;right:-30px}.prose{color:#34404d}.prose h3{color:var(--navy);font-family:var(--label);letter-spacing:.15em;text-transform:uppercase;margin:44px 0 20px;font-size:12px;font-weight:700;line-height:1.5}.prose p{margin-bottom:22px}.about__monogram{color:#0000;font-family:var(--display);-webkit-text-stroke:1px #02183217;font-size:24vw;line-height:.75;inset:auto auto -5vw 47%}.properties{width:100%;color:var(--white);background:radial-gradient(circle at 84% 16%, #b79a551f, transparent 24%), var(--navy);padding-left:max(5vw,50vw - 680px);padding-right:max(5vw,50vw - 680px)}.section-heading--light .eyebrow{color:#f2d994}.section-heading--light .section-heading__copy{color:#ffffffa6}.property-list{border-top:1px solid #ffffff29}.property-card{border-bottom:1px solid #ffffff29;grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr);min-height:480px;display:grid}.property-card:nth-child(2n){grid-template-columns:minmax(320px,.65fr) minmax(0,1.35fr)}.property-card__media{min-height:480px;position:relative;overflow:hidden}.property-card__media picture,.property-card__media img{height:100%}.property-card__media img{object-fit:cover;transition:transform .75s;position:absolute;inset:0}.property-card:hover .property-card__media img{transform:scale(1.035)}.property-card__count{min-width:42px;color:var(--navy);background:var(--paper);font-family:var(--label);text-align:center;padding:8px 10px;font-size:9px;position:absolute;top:18px;left:18px}.property-card__body{flex-direction:column;justify-content:center;padding:clamp(34px,5vw,80px);display:flex}.property-card__body>span{color:#f2d994;font-family:var(--label);letter-spacing:.14em;text-transform:uppercase;font-size:9px}.property-card h3{max-width:430px;margin:24px 0 42px;font-size:clamp(34px,3.7vw,58px)}.property-card__meta{color:#ffffffbf;border-top:1px solid #ffffff2e;justify-content:space-between;align-items:center;gap:20px;padding-top:18px;display:flex}.property-card__meta strong{color:var(--white);font-size:15px}.reviews{text-align:center;width:100%;color:var(--white);background:#082440;padding-left:max(5vw,50vw - 610px);padding-right:max(5vw,50vw - 610px)}.reviews__heading{max-width:970px;margin:0 auto 70px}.reviews__heading .eyebrow{color:#f2d994}.reviews__rating{align-items:center;gap:18px;margin:42px auto 0;display:inline-flex}.reviews__rating strong{font-family:var(--display);font-size:58px;font-weight:400}.reviews__rating>span{color:var(--red);letter-spacing:.12em;text-align:left;font-size:12px;display:grid}.reviews__rating small{color:#ffffff8c;font-family:var(--label);letter-spacing:.12em;text-transform:uppercase;font-size:8px}.review-list{border-top:1px solid #ffffff2e}.review-card{text-align:left;border-bottom:1px solid #ffffff2e;grid-template-columns:220px 1fr;gap:60px;padding:44px 0;display:grid}.review-card__guest{align-items:center;gap:14px;display:flex}.review-card__guest img{object-fit:cover;border-radius:50%;width:50px;height:50px}.review-card__guest span{display:grid}.review-card__guest strong{font-family:var(--label);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.review-card__guest small{color:#ffffff85;font-size:11px}.review-card blockquote{font-family:var(--display);margin:0;font-size:clamp(22px,2.2vw,34px);line-height:1.35}.attraction-grid{grid-template-rows:1fr .8fr;grid-template-columns:1.15fr .85fr .8fr;gap:18px;min-height:880px;display:grid}.attraction-card{min-height:320px;color:var(--white);display:block;position:relative;overflow:hidden}.attraction-card--1{grid-row:1/3}.attraction-card--2{grid-column:2/4}.attraction-card picture,.attraction-card img{height:100%}.attraction-card img{object-fit:cover;transition:transform .8s,filter .5s;position:absolute;inset:0}.attraction-card:after{content:"";background:linear-gradient(#0000 38%,#021832d1);position:absolute;inset:0}.attraction-card>span{z-index:2;font-family:var(--display);justify-content:space-between;font-size:clamp(26px,2.5vw,42px);line-height:1;display:flex;position:absolute;bottom:24px;left:26px;right:26px}.attraction-card i{font-family:var(--sans);font-size:18px;font-style:normal}.attraction-card:hover img{filter:saturate(1.12);transform:scale(1.04)}.newsletter{min-height:620px;color:var(--navy);background:#ded8ca;grid-template-columns:1.1fr .9fr;align-items:center;gap:9vw;padding:clamp(100px,12vw,180px) max(5vw,50vw - 680px);display:grid;overflow:hidden}.newsletter__mark{color:#0000;font-family:var(--display);-webkit-text-stroke:1px #0218321a;font-size:21vw;line-height:.8;inset:auto auto -6vw -2vw}.newsletter h2{max-width:820px;margin-bottom:26px}.newsletter__copy>p:last-child{color:var(--muted)}.newsletter__form{gap:22px;display:grid}.newsletter__form label{font-family:var(--label);letter-spacing:.15em;text-transform:uppercase;gap:8px;font-size:9px;font-weight:700;display:grid}.newsletter__form input{width:100%;color:var(--navy);font-family:var(--sans);background:0 0;border:0;border-bottom:1px solid #02183273;border-radius:0;outline:0;padding:18px 0;font-size:18px}.newsletter__form .button{justify-self:start}.site-footer{color:var(--white);background:#011226;grid-template-columns:1.35fr .55fr .6fr;gap:8vw;padding:90px max(5vw,50vw - 680px) 32px;display:grid;position:relative}.footer__brand img{width:120px;margin-bottom:28px}.footer__brand div{color:#fff9;max-width:480px}.site-footer h2{color:#f2d994;font-family:var(--label);letter-spacing:.14em;text-transform:uppercase;margin-bottom:24px;font-size:10px;font-weight:700;line-height:1.5}.footer__links,.footer__contact{flex-direction:column;align-items:flex-start;display:flex}.footer__links a,.footer__contact a{color:#ffffffc2;margin-bottom:8px;text-decoration:none}.footer__contact p{color:#ffffff85;margin-top:22px}.footer__bottom{color:#ffffff73;font-family:var(--label);letter-spacing:.12em;text-transform:uppercase;border-top:1px solid #ffffff26;grid-column:1/-1;justify-content:space-between;margin-top:46px;padding-top:24px;font-size:8px;display:flex}.footer__bottom a{color:#ffffffb8;text-decoration:none}.motion-toggle{z-index:90;color:var(--white);font-family:var(--label);letter-spacing:.1em;text-transform:uppercase;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#021832e6;border:1px solid #ffffff38;align-items:center;gap:8px;padding:10px 12px;font-size:8px;font-weight:700;display:flex;position:fixed;bottom:18px;right:18px}.demo-status{z-index:120;max-width:min(360px,100vw - 36px);color:var(--white);background:var(--navy);border-left:4px solid var(--red);opacity:0;pointer-events:none;margin:0;padding:14px 18px;transition:opacity .2s,transform .2s;position:fixed;bottom:68px;right:18px;transform:translateY(10px);box-shadow:0 15px 40px #0218323d}.demo-status.is-visible{opacity:1;transform:translateY(0)}[hidden]{display:none!important}@media (width<=1180px){.site-header{grid-template-columns:92px 1fr auto}.primary-nav{gap:13px}.primary-nav a{font-size:8px}.header-book{padding-inline:16px}.booking{grid-template-columns:1fr}.booking__intro{display:none}.about{grid-template-columns:1fr 1fr;gap:6vw}}@media (width<=920px){:root{--header-height:74px;--shell:min(90vw, 760px)}.site-header{min-height:var(--header-height);grid-template-columns:1fr auto;padding-inline:5vw}.brand{width:68px}.brand img{height:56px}.menu-toggle{z-index:2;color:inherit;font-family:var(--label);letter-spacing:.12em;text-transform:uppercase;background:0 0;align-items:center;gap:10px;font-size:9px;font-weight:700;display:flex}.menu-toggle i{background:currentColor;width:24px;height:1px;position:relative}.menu-toggle i:after{content:"";background:currentColor;width:18px;height:1px;position:absolute;top:7px;left:0}.primary-nav{color:var(--white);background:var(--navy);flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;padding:100px 10vw;transition:transform .35s;display:flex;position:fixed;inset:0;transform:translate(100%)}.primary-nav.is-open{transform:translate(0)}.primary-nav a{font-family:var(--display);letter-spacing:0;text-transform:none;font-size:clamp(28px,6vw,48px);font-weight:400}.header-book{display:none}.hero__content{padding-inline:3vw}.hero__rule,.hero__index{display:none}.booking{width:90vw;margin-top:-28px}.booking__fields{grid-template-columns:1fr 1fr}.booking__fields label:first-child,.booking__fields .button{grid-column:1/-1}.section-heading{grid-template-columns:1fr;gap:30px}.destination-list{gap:18px}.destination-card,.destination-card:nth-child(2n){min-height:400px;margin-top:0}.about{grid-template-columns:1fr;min-height:0}.about__media{min-height:560px}.about__frame{inset:4% 6% 50% 0}.property-card,.property-card:nth-child(2n){grid-template-columns:1fr}.property-card:nth-child(2n) .property-card__media,.property-card:nth-child(2n) .property-card__body{grid-area:auto/1}.property-card__media{min-height:420px}.review-card{grid-template-columns:1fr;gap:24px}.attraction-grid{grid-template-rows:1.2fr 1fr 1fr;grid-template-columns:1fr 1fr;min-height:720px}.attraction-card--1{grid-area:1/1/auto/-1}.attraction-card--2{grid-column:1/-1}.newsletter{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}}@media (width<=600px){.hero{min-height:860px}.hero__content{padding-top:170px}.hero h1{font-size:clamp(46px,15vw,68px);line-height:.92}.scroll-cue{display:none}.booking__fields{grid-template-columns:1fr}.booking__fields label,.booking__fields label:first-child,.booking__fields .button{grid-column:1}.destination-list{grid-template-columns:1fr}.destination-card,.destination-card:nth-child(2n),.destination-card:nth-child(3){min-height:380px;margin-top:0}.about{padding-inline:5vw}.about__media{min-height:440px}.about__media span{bottom:18px;right:10px}.property-card__media{min-height:310px}.property-card__body{padding-inline:0}.reviews{text-align:left}.reviews__rating{margin-left:0}.attraction-grid{flex-direction:column;display:flex}.attraction-card{min-height:360px}.newsletter{padding-inline:5vw}.site-footer{grid-template-columns:1fr;gap:46px;padding-inline:5vw}.footer__brand,.footer__bottom{grid-column:1}.footer__bottom{flex-direction:column;align-items:flex-start;gap:12px}.motion-toggle{bottom:10px;right:10px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.layer,[data-reveal],.destination-card img,.property-card__media img,.attraction-card img{filter:none!important;opacity:1!important;transform:none!important}}html.no-motion *,html.no-motion :before,html.no-motion :after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation:none!important}html.no-motion .layer,html.no-motion [data-reveal]{filter:none!important;opacity:1!important;transform:none!important}.site-header{background:linear-gradient(#010e1c94,#0000);border-bottom-color:#ffffff24;grid-template-columns:104px minmax(0,1fr) auto;gap:clamp(18px,3vw,54px);min-height:86px;padding:8px max(4vw,50vw - 720px)}.brand{width:72px}.brand img{filter:none;height:58px}.site-header.is-scrolled{background:#f7f4edf0;min-height:68px}.site-header.is-scrolled .brand img{height:50px}.primary-nav{gap:clamp(12px,1.25vw,22px)}.primary-nav a{letter-spacing:.11em;font-size:9px}.header-book{min-height:40px;color:var(--navy);background:#f5e7b6;border-color:#f5e7b6;padding-inline:18px}.header-book:hover{color:var(--white);background:var(--red);border-color:var(--red)}.site-header.is-scrolled .header-book{color:var(--white);background:var(--navy);border-color:var(--navy)}.hero{min-height:min(900px,100svh)}.hero__media video{filter:saturate(.72)contrast(1.04)brightness(.8)}.hero__media:after{background:linear-gradient(90deg,#010f20db 0%,#010f2091 43%,#010f2029 72%,#010f205c 100%),linear-gradient(#0000 52%,#010f20b3)}.hero__wash{mix-blend-mode:normal;background:radial-gradient(circle at 0 42%,#c51d1e42,#0000 68%);width:38vw}.hero__rule{background:linear-gradient(#0000,#ffffff80,#0000);inset:19% auto 17% max(5vw,50vw - 680px)}.hero__content{width:min(88vw,1360px);padding:18vh 5vw 16vh}.hero .eyebrow{color:#f6dda0;align-items:center;gap:14px;margin-bottom:18px;display:flex}.hero .eyebrow:after{content:"CENTRAL TEXAS";color:#ffffffad;letter-spacing:.16em;font-size:8px}.hero h1{letter-spacing:-.06em;max-width:980px;margin-bottom:22px;font-size:clamp(68px,10.2vw,154px);line-height:.83}.hero__lede{max-width:470px;font-size:clamp(18px,1.55vw,24px)}.text-link{color:#fff;margin-top:26px}.hero__index{gap:8px;inset:auto max(5vw,50vw - 680px) 10vh auto}.hero__index span{font-size:clamp(48px,5vw,76px)}.scroll-cue{height:76px;left:max(5vw,50vw - 680px)}.booking{z-index:8;background:#f9f7f1fa;grid-template-columns:.78fr 1.22fr;width:min(92vw,1300px);margin:-54px auto 0;padding:22px 24px;position:relative;box-shadow:0 26px 65px #02183229}.booking__intro{padding-left:8px}.booking__intro .eyebrow{margin-bottom:8px}.booking__fields{gap:10px}.booking__fields label{background:#f0ede5;padding:8px 10px}.booking__fields .button{min-height:58px}.destinations{padding-top:clamp(110px,14vw,190px)}.section-heading{align-items:end;margin-bottom:clamp(48px,7vw,96px)}.section-heading h2,.about h2,.reviews h2,.newsletter h2{font-size:clamp(50px,6.2vw,98px);line-height:.9}.section-heading__copy{max-width:365px;font-size:17px}.destination-list{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;gap:22px}.destination-card,.destination-card:nth-child(2n),.destination-card:nth-child(3){min-height:470px;margin-top:0}.destination-card:nth-child(2),.destination-card:nth-child(3){min-height:390px}.destination-card:before{content:"";z-index:2;pointer-events:none;border:1px solid #ffffff47;position:absolute;inset:20px}.destination-card__name{font-size:clamp(32px,3.2vw,50px);bottom:36px;left:34px;right:78px}.destination-card__arrow{bottom:39px;right:34px}.about{background:#f0ece2;grid-template-columns:minmax(0,.94fr) minmax(390px,1.06fr);gap:clamp(42px,7vw,110px);min-height:0;padding-block:clamp(100px,12vw,170px)}.about__media{min-height:600px}.about__media:after{content:"";pointer-events:none;border:1px solid #ffffff80;position:absolute;inset:18px}.about__media span{max-width:210px;line-height:1.5;bottom:22px;right:22px}.about__copy{max-width:640px}.about h2{margin-bottom:34px}.about__monogram{display:none}.properties{padding-top:clamp(100px,12vw,170px);padding-bottom:clamp(100px,12vw,170px)}.property-list{border-top:0;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;display:grid}.property-card,.property-card:nth-child(2n){background:#ffffff09;border:1px solid #ffffff29;grid-template-columns:1fr;min-height:0}.property-card:nth-child(2n) .property-card__media{grid-column:1}.property-card:nth-child(2n) .property-card__body{grid-area:auto/1}.property-card__media{min-height:330px}.property-card__body{min-height:280px;padding:clamp(28px,3vw,48px)}.property-card h3{margin:18px 0 28px;font-size:clamp(31px,3vw,48px)}.property-card__count{background:#f5e7b6}.reviews{background:#072541;padding-top:clamp(100px,12vw,160px);padding-bottom:clamp(100px,12vw,160px)}.reviews__heading{max-width:820px;margin-bottom:54px}.review-list{max-width:1100px;margin:0 auto}.review-card{grid-template-columns:185px 1fr;gap:42px;padding:34px 0}.reviews__more{margin-top:42px}.attractions{padding-bottom:clamp(110px,13vw,180px)}.attraction-grid{grid-template-rows:none;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;min-height:0}.attraction-card,.attraction-card--1,.attraction-card--2{grid-area:auto;min-height:400px}.attraction-card:before{content:"";z-index:2;pointer-events:none;border:1px solid #ffffff42;position:absolute;inset:16px}.attraction-card>span{bottom:34px;left:36px;right:36px}.newsletter{grid-template-columns:1fr .86fr;gap:7vw;min-height:560px;padding-block:clamp(92px,11vw,150px)}.newsletter__mark{font-size:18vw;inset:auto auto -4vw -1vw}.site-footer{padding-top:76px}@media (width<=1100px){.site-header{grid-template-columns:78px 1fr auto;gap:18px;padding-inline:4vw}.primary-nav{gap:12px}.primary-nav a{font-size:8px}.header-book{padding-inline:14px}.booking{grid-template-columns:1fr}.booking__intro{display:none}.about{grid-template-columns:minmax(0,1fr) minmax(330px,.9fr)}}@media (width<=920px){.site-header{grid-template-columns:68px 1fr auto;min-height:72px}.brand{width:58px}.brand img{height:52px}.site-header.is-scrolled .brand img{height:46px}.header-book{display:none}.menu-toggle{z-index:2;color:inherit;font-family:var(--label);letter-spacing:.13em;text-transform:uppercase;background:0 0;align-items:center;gap:10px;font-size:9px;font-weight:700;display:inline-flex}.menu-toggle i{background:currentColor;width:24px;height:1px;position:relative}.menu-toggle i:after{content:"";background:currentColor;width:17px;height:1px;position:absolute;top:7px;right:0}.primary-nav{z-index:1;color:var(--white);background:#061b31;flex-direction:column;justify-content:center;align-items:flex-start;gap:18px;padding:110px 10vw;transition:transform .35s;display:flex;position:fixed;inset:0;transform:translate(100%)}.primary-nav.is-open{transform:translate(0)}.primary-nav a{font-family:var(--display);letter-spacing:0;text-transform:none;font-size:clamp(28px,6vw,48px);font-weight:400}.primary-nav a:after{bottom:-3px}.hero{min-height:820px}.hero__content{padding:180px 6vw 130px}.hero h1{max-width:720px;font-size:clamp(68px,12vw,120px)}.hero__index{display:none}.hero__rule{left:5vw}.booking{width:90vw;margin-top:-34px}.booking__fields{grid-template-columns:1fr 1fr}.booking__fields label:first-child,.booking__fields .button{grid-column:1/-1}.section-heading{grid-template-columns:1fr;gap:28px}.section-heading__copy{max-width:560px}.about{grid-template-columns:1fr}.about__copy{max-width:720px}.about__media{min-height:520px}.property-list{grid-template-columns:1fr}.property-card,.property-card:nth-child(2n){grid-template-columns:minmax(0,1.1fr) minmax(260px,.9fr)}.property-card:nth-child(2n) .property-card__media{grid-column:1}.property-card:nth-child(2n) .property-card__body{grid-area:1/2}.property-card__media,.property-card__body{min-height:360px}.review-card{grid-template-columns:150px 1fr}.newsletter{grid-template-columns:1fr}.site-footer{grid-template-columns:1fr 1fr}.footer__brand{grid-column:1/-1}}@media (width<=600px){.site-header{padding-inline:5vw}.hero{min-height:760px}.hero__content{width:90vw;padding:164px 4vw 96px}.hero h1{max-width:100%;font-size:clamp(48px,15vw,68px);line-height:.9}.hero__lede{font-size:17px}.hero .eyebrow{gap:9px;margin-bottom:14px;font-size:8px}.hero .eyebrow:after{font-size:7px}.hero__wash{width:58vw}.scroll-cue{display:none}.booking{width:92vw;margin-top:-24px;padding:12px}.booking__fields{grid-template-columns:1fr}.booking__fields label,.booking__fields label:first-child,.booking__fields .button{grid-column:1}.booking__fields label{min-height:64px}.destinations{padding-top:94px}.section-heading h2,.about h2,.reviews h2,.newsletter h2{font-size:clamp(42px,13vw,60px)}.destination-list,.attraction-grid{grid-template-columns:1fr}.destination-card,.destination-card:nth-child(2n),.destination-card:nth-child(3),.attraction-card,.attraction-card--1,.attraction-card--2{min-height:340px}.about{padding-inline:5vw}.about__media{min-height:370px}.about__media span{bottom:14px;right:14px}.property-card,.property-card:nth-child(2n){grid-template-columns:1fr}.property-card:nth-child(2n) .property-card__media,.property-card:nth-child(2n) .property-card__body{grid-area:auto/1}.property-card__media{min-height:300px}.property-card__body{min-height:0}.review-card{grid-template-columns:1fr;gap:22px}.review-card__guest{order:2}.attraction-card>span{bottom:24px;left:26px;right:26px}.newsletter{padding-inline:5vw}.site-footer{grid-template-columns:1fr;padding-inline:5vw}.footer__brand,.footer__bottom{grid-column:1}}.booking__intro p{color:var(--ink)}.booking__fields label>span{color:#0218329e}.booking__fields input,.booking__fields select{color:var(--ink);font-weight:600}.booking__fields input::placeholder{color:#0218328c;opacity:1}.booking-field{position:relative}.booking-field--location select{appearance:none;cursor:pointer;padding-right:32px}.booking-field--location:after{content:"";border-right:2px solid var(--ink);border-bottom:2px solid var(--ink);pointer-events:none;width:8px;height:8px;position:absolute;top:60%;right:16px;transform:translateY(-65%)rotate(45deg)}.booking-field--date input{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23021832' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3Crect x='3.5' y='5' width='17' height='16' rx='2'/%3E%3Cpath d='M3.5 10h17'/%3E%3C/svg%3E");background-position:right 14px center;background-repeat:no-repeat;background-size:18px 18px;padding-right:42px}.booking-field--date input::-webkit-calendar-picker-indicator{opacity:0;cursor:pointer;width:30px;height:30px;position:absolute;right:10px}.booking-field--date:after,.booking-field--date:before{content:none}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-space-x-reverse{syntax:"*";inherits:false;initial-value:0}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-leading{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-backdrop-blur{syntax:"*";inherits:false}@property --tw-backdrop-brightness{syntax:"*";inherits:false}@property --tw-backdrop-contrast{syntax:"*";inherits:false}@property --tw-backdrop-grayscale{syntax:"*";inherits:false}@property --tw-backdrop-hue-rotate{syntax:"*";inherits:false}@property --tw-backdrop-invert{syntax:"*";inherits:false}@property --tw-backdrop-opacity{syntax:"*";inherits:false}@property --tw-backdrop-saturate{syntax:"*";inherits:false}@property --tw-backdrop-sepia{syntax:"*";inherits:false}@property --tw-duration{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}@property --tw-content{syntax:"*";inherits:false;initial-value:""}@keyframes spin{to{transform:rotate(360deg)}}@keyframes ping{75%,to{opacity:0;transform:scale(2)}}@keyframes pulse{50%{opacity:.5}}@keyframes bounce{0%,to{animation-timing-function:cubic-bezier(.8,0,1,1);transform:translateY(-25%)}50%{animation-timing-function:cubic-bezier(0,0,.2,1);transform:none}}
/* Booking icon alignment overrides */
.booking__fields input,
.booking__fields select {
    box-sizing: border-box !important;
    min-width: 0 !important;
}

.booking-field--date input {
    position: relative !important;
    z-index: 1 !important;
    background-image: none !important;
    padding-right: 38px !important;
}

.booking-field--date::after {
    content: "" !important;
    pointer-events: none !important;
    width: 18px !important;
    height: 18px !important;
    position: absolute !important;
    top: 60% !important;
    right: 16px !important;
    transform: translateY(-50%) !important;
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' viewBox='0 0 24 24' fill='none' stroke='%23021832' stroke-width='2.4' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M8 2v4'/%3E%3Cpath d='M16 2v4'/%3E%3Crect x='3.5' y='5' width='17' height='16' rx='2'/%3E%3Cpath d='M3.5 10h17'/%3E%3C/svg%3E") !important;
    background-repeat: no-repeat !important;
    background-size: 18px 18px !important;
}

.booking-field--date::before {
    content: none !important;
}

.booking-field--date input::-webkit-calendar-picker-indicator {
    cursor: pointer !important;
    opacity: 0 !important;
    position: absolute !important;
    inset: 0 !important;
    width: auto !important;
    height: auto !important;
    z-index: 2 !important;
}

.menu-toggle__icon {
    display: inline-block;
}

.scroll-cue__line {
    display: block;
}

/* About image border cleanup */
.about__media::after {
    content: none !important;
    border: 0 !important;
    display: none !important;
}

/* Native guest review widget */
.guest-widget {
    background: #fff;
    color: #050505;
    padding-block: clamp(72px, 8vw, 116px);
    scroll-margin-top: 96px;
}

.guest-widget__inner {
    width: min(86vw, 1540px);
    margin: 0 auto;
}

.guest-widget__heading h2 {
    font-family: var(--label);
    font-size: clamp(30px, 3.1vw, 46px);
    font-weight: 800;
    line-height: 1.18;
    letter-spacing: 0;
    text-align: center;
    text-transform: none;
}

.guest-widget__rating-strip {
    width: 100%;
    min-height: 80px;
    margin: clamp(30px, 3vw, 42px) auto clamp(30px, 3.4vw, 44px);
    border-radius: 8px;
    background: #f4f4f4;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 10px;
    font-family: var(--label);
}

.guest-widget__score {
    font-size: 22px;
    line-height: 1;
}

.guest-widget__stars {
    color: #ffc400;
    font-size: 22px;
    letter-spacing: 2px;
    line-height: 1;
    white-space: nowrap;
}

.guest-widget__count {
    color: #7a828c;
    font-size: 13px;
    line-height: 1;
}

.guest-widget__grid {
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(4, minmax(0, 1fr));
    align-items: stretch;
    gap: clamp(18px, 2vw, 28px);
}

.guest-widget__card {
    min-height: 290px;
    border-radius: 28px;
    background: #f4f4f4;
    display: flex;
    flex-direction: column;
    padding: 18px 16px 16px;
    box-shadow: none;
    overflow: hidden;
}

.guest-widget__card[hidden] {
    display: none;
}

.guest-widget__copy {
    color: #020202;
    display: -webkit-box;
    font-family: var(--label);
    font-size: 14px;
    line-height: 1.78;
    margin-top: 8px;
    min-height: 74px;
    overflow: hidden;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 4;
}

.guest-widget__card.is-expanded .guest-widget__copy {
    display: block;
    min-height: 0;
    overflow: visible;
    -webkit-line-clamp: unset;
}

.guest-widget__meta {
    display: flex;
    align-items: flex-start;
    gap: 12px;
    margin-bottom: 18px;
}

.guest-widget__meta img,
.guest-widget__avatar {
    width: 56px;
    height: 56px;
    border-radius: 50%;
    flex: 0 0 56px;
    overflow: hidden;
}

.guest-widget__meta img {
    object-fit: cover;
}

.guest-widget__avatar {
    color: #fff;
    background: #182f3b;
    font-family: var(--label);
    font-size: 24px;
    font-weight: 800;
    line-height: 56px;
    text-align: center;
}

.guest-widget__meta strong,
.guest-widget__meta small {
    display: block;
}

.guest-widget__meta strong {
    font-family: var(--label);
    font-size: 14px;
    font-weight: 800;
    letter-spacing: 0;
    line-height: 1.15;
    text-transform: none;
}

.guest-widget__meta small {
    color: #020202;
    font-family: var(--label);
    font-size: 12px;
    letter-spacing: 0;
    line-height: 1.4;
    margin-top: 4px;
}

.guest-widget__stars--card {
    font-size: 19px;
    letter-spacing: 1px;
    margin-bottom: 4px;
}

.guest-widget__more {
    border: 0;
    background: transparent;
    color: #68c7bb;
    cursor: pointer;
    display: inline-flex;
    align-items: center;
    gap: 6px;
    align-self: flex-start;
    font-family: var(--label);
    font-size: 14px;
    line-height: 1.2;
    margin-top: 14px;
    padding: 0;
    text-align: left;
    width: auto;
}

.guest-widget__more:after {
    content: "";
    width: 6px;
    height: 6px;
    border-right: 1.8px solid currentColor;
    border-bottom: 1.8px solid currentColor;
    transform: rotate(45deg);
    flex: 0 0 6px;
    margin-top: -3px;
}

.guest-widget__brand {
    display: block;
    margin-top: 18px;
}

.guest-widget__brand img {
    width: 118px;
    height: auto;
}

.guest-widget__actions {
    display: flex;
    justify-content: center;
    margin-top: 32px;
}

.guest-widget__load {
    min-height: 48px;
    border-radius: 18px;
    background: #67c7bd;
    color: #fff;
    cursor: pointer;
    font-family: var(--label);
    font-size: 16px;
    line-height: 1;
    padding: 0 22px;
    transition: background .2s ease, transform .2s ease;
}

.guest-widget__load:hover {
    background: #50b7ac;
    transform: translateY(-1px);
}

@media (max-width: 920px) {
    .primary-nav {
        width: 100vw !important;
        max-width: none !important;
        transform: translateX(100vw) !important;
    }

    .primary-nav.is-open {
        transform: translateX(0) !important;
    }

    .guest-widget__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (max-width: 600px) {
    .guest-widget {
        padding-block: 64px 76px;
    }

    .guest-widget__inner {
        width: min(94vw, 430px);
    }

    .guest-widget__heading h2 {
        font-size: 28px;
    }

    .guest-widget__rating-strip {
        min-height: 72px;
        margin-block: 24px 28px;
    }

    .guest-widget__score,
    .guest-widget__stars {
        font-size: 18px;
    }

    .guest-widget__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .guest-widget__card {
        min-height: 278px;
        padding: 18px 16px 16px;
        border-radius: 24px;
    }
}

@media (min-width: 921px) {
    .booking__fields {
        grid-template-columns: minmax(220px, 1.65fr) minmax(158px, 1.08fr) minmax(158px, 1.08fr) minmax(82px, .62fr) auto !important;
    }
}

/* Internal static pages */
.subpage {
    background: #f7f4ed;
    color: var(--ink);
}

.subpage .site-header {
    background: linear-gradient(#010e1ccc, #010e1c18);
}

.subpage-hero {
    min-height: 620px;
    color: var(--white);
    isolation: isolate;
    position: relative;
    overflow: hidden;
}

.subpage-hero__media,
.subpage-hero__shade {
    position: absolute;
    inset: 0;
}

.subpage-hero__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(.78) brightness(.74);
}

.subpage-hero__shade {
    z-index: 1;
    background: linear-gradient(90deg, #010f20e8 0%, #010f20a8 45%, #010f202e 100%), linear-gradient(#0000 48%, #010f20c9);
}

.subpage-hero__content {
    z-index: 2;
    width: min(88vw, 1320px);
    min-height: 620px;
    margin: 0 auto;
    padding: 170px 0 92px;
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    position: relative;
}

.breadcrumb {
    color: #f6dda0;
    font-family: var(--label);
    font-size: 9px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 24px;
}

.subpage-hero h1 {
    font-family: var(--display);
    letter-spacing: 0;
    font-size: clamp(64px, 9vw, 132px);
    line-height: .88;
    max-width: 980px;
    margin: 0 0 24px;
}

.subpage-hero p:not(.eyebrow) {
    max-width: 620px;
    color: #ffffffe3;
    font-size: clamp(18px, 1.55vw, 24px);
    line-height: 1.5;
}

.subpage-section {
    width: min(88vw, 1320px);
    margin: 0 auto;
    padding-block: clamp(78px, 9vw, 132px);
}

.subpage-section--dark {
    width: 100%;
    max-width: none;
    color: var(--white);
    background: #072541;
    padding-inline: max(6vw, calc((100vw - 1320px) / 2));
}

.subpage-section--warm {
    width: 100%;
    max-width: none;
    background: #eee8dc;
    padding-inline: max(6vw, calc((100vw - 1320px) / 2));
}

.subpage-heading {
    max-width: 860px;
    margin-bottom: clamp(34px, 5vw, 66px);
}

.subpage-heading h2,
.split-feature__copy h2,
.contact-panel h2,
.blog-feature h2 {
    font-family: var(--display);
    letter-spacing: 0;
    font-size: clamp(38px, 5vw, 76px);
    line-height: .95;
    margin: 0 0 24px;
}

.subpage-heading h2 {
    margin-bottom: 0;
}

.subpage-kicker {
    color: var(--red);
    font-family: var(--label);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .14em;
    text-transform: uppercase;
    margin-bottom: 12px;
}

.split-feature {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .86fr);
    gap: clamp(34px, 6vw, 88px);
    align-items: center;
}

.split-feature--reverse {
    grid-template-columns: minmax(360px, .84fr) minmax(0, 1fr);
}

.split-feature__media {
    min-height: 560px;
    height: 100%;
    align-self: stretch;
    position: relative;
    overflow: hidden;
}

.split-feature__media img,
.blog-feature > img {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}

.split-feature__media span {
    color: var(--white);
    font-family: var(--label);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    background: var(--red);
    padding: 14px 16px;
    position: absolute;
    right: 18px;
    bottom: 18px;
}

.split-feature__copy p:not(.subpage-kicker),
.contact-panel p,
.blog-feature p {
    color: #26384a;
    font-size: 17px;
    line-height: 1.75;
    margin-bottom: 18px;
}

.story-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 18px;
}

.story-grid > article {
    min-width: 0;
}

.story-grid article,
.owner-card,
.contact-panel,
.service-list article,
.page-card,
.blog-feature {
    border: 1px solid #02183218;
    border-radius: 8px;
}

.story-grid article {
    min-height: 0;
    border-color: #ffffff29;
    padding: 28px 28px 32px;
}

.story-grid span,
.location-band__copy span {
    color: #f6dda0;
    font-family: var(--label);
    font-size: 10px;
    font-weight: 800;
    letter-spacing: .14em;
}

.story-grid p {
    color: #ffffffd6;
    margin-top: 32px;
    font-size: 17px;
    line-height: 1.7;
}

.subpage-heading h2 {
    overflow: visible;
    line-height: 1.05;
    padding-bottom: .08em;
}

.filter-strip {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-bottom: 34px;
}

.filter-strip a {
    color: var(--navy);
    font-family: var(--label);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    border: 1px solid #02183224;
    border-radius: 999px;
    padding: 12px 16px;
    background: #fffaf0;
}

.page-card-grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.page-card-grid--properties {
    grid-template-columns: repeat(2, minmax(0, 1fr));
}

.page-card {
    background: #fffaf4;
    overflow: hidden;
}

.page-card__media {
    aspect-ratio: 1.3 / 1;
    background: #d9d1c4;
    overflow: hidden;
}

.page-card__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform .5s;
}

.page-card:hover .page-card__media img {
    transform: scale(1.04);
}

.page-card__body {
    padding: 24px;
}

.page-card__body h2 {
    font-family: var(--display);
    font-size: clamp(28px, 2.6vw, 42px);
    letter-spacing: 0;
    line-height: 1;
    margin: 0 0 20px;
}

.page-card__body p:not(.subpage-kicker) {
    color: #2e3d4b;
    font-size: 15px;
    line-height: 1.65;
}

.page-card__meta {
    color: #021832b8;
    display: flex;
    flex-wrap: wrap;
    gap: 8px;
    margin-bottom: 24px;
}

.page-card__meta span {
    background: #f0ede5;
    border-radius: 999px;
    padding: 7px 10px;
    font-size: 12px;
    font-weight: 700;
}

.page-card__actions {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    border-top: 1px solid #02183212;
    padding-top: 18px;
}

.page-card__actions strong {
    color: var(--red);
    font-size: 24px;
}

.page-card__actions small {
    color: #021832a8;
    font-size: 12px;
    font-weight: 700;
    margin-left: 2px;
}

.location-stack {
    display: grid;
    gap: 22px;
}

.location-band {
    display: grid;
    grid-template-columns: minmax(0, .95fr) minmax(360px, .75fr);
    background: #fffaf4;
    border: 1px solid #02183218;
    border-radius: 8px;
    overflow: hidden;
}

.location-band__media {
    min-height: 430px;
}

.location-band__media img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.location-band__copy {
    padding: clamp(28px, 4vw, 58px);
    display: flex;
    flex-direction: column;
    justify-content: center;
}

.location-band__copy span {
    color: var(--red);
    margin-bottom: 20px;
}

.location-band__copy h2 {
    font-family: var(--display);
    font-size: clamp(38px, 4.5vw, 68px);
    line-height: .94;
    letter-spacing: 0;
    margin: 0 0 22px;
}

.location-band__copy p {
    color: #2e3d4b;
    font-size: 17px;
    line-height: 1.68;
    margin-bottom: 16px;
}

.blog-feature {
    display: grid;
    grid-template-columns: minmax(0, 1fr) minmax(360px, .82fr);
    background: #fffaf4;
    overflow: hidden;
}

.blog-feature > img {
    min-height: 480px;
}

.blog-feature > div {
    padding: clamp(30px, 5vw, 70px);
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
}

.service-list {
    display: grid;
    gap: 14px;
}

.service-list article {
    background: #fffaf4;
    display: grid;
    grid-template-columns: 60px 1fr;
    gap: 18px;
    align-items: start;
    padding: 20px;
}

.service-list img {
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.service-list h3 {
    color: var(--navy);
    font-family: var(--label);
    font-size: 13px;
    font-weight: 800;
    letter-spacing: .06em;
    text-transform: uppercase;
    margin-bottom: 8px;
}

.service-list p {
    color: #344351;
    font-size: 15px;
    line-height: 1.6;
}

.static-form {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 14px;
}

/* Hidden CSRF/spam/merge fields must not consume grid cells or the
   first/last + email/phone rows stagger (Chrome still grids type=hidden). */
.static-form > input[type="hidden"],
.static-form > .cf-turnstile {
    display: none;
}

.static-form > div[aria-hidden="true"] {
    position: absolute;
    width: 1px;
    height: 1px;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
}

.static-form__heading,
.static-form__errors,
.static-form__success {
    grid-column: 1 / -1;
}

.static-form label {
    background: #fffaf4;
    border: 1px solid #02183218;
    border-radius: 8px;
    padding: 14px 16px;
}

.static-form label span {
    color: #0218329e;
    display: block;
    font-family: var(--label);
    font-size: 8px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    margin-bottom: 7px;
}

.static-form input,
.static-form select,
.static-form textarea {
    width: 100%;
    color: var(--ink);
    background: transparent;
    outline: none;
    min-height: 34px;
}

.static-form textarea {
    resize: vertical;
}

.static-form__wide,
.static-form .button {
    grid-column: 1 / -1;
}

.static-form .button {
    justify-self: start;
}

.contact-layout {
    display: grid;
    grid-template-columns: minmax(320px, .75fr) minmax(0, 1fr);
    gap: clamp(30px, 5vw, 76px);
    align-items: start;
}

.contact-panel {
    background: #072541;
    color: var(--white);
    padding: clamp(28px, 4vw, 54px);
}

.contact-panel h2,
.contact-panel p {
    color: var(--white);
}

.contact-panel a,
.contact-strip a {
    display: block;
    color: #f6dda0;
    font-size: 20px;
    font-weight: 700;
    margin-bottom: 12px;
}

.owner-card {
    min-height: 420px;
    color: var(--white);
    background: linear-gradient(135deg, #072541, #0b3358);
    padding: clamp(34px, 5vw, 70px);
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
}

.owner-card span {
    font-family: var(--display);
    font-size: clamp(50px, 6vw, 88px);
    line-height: .9;
}

.owner-card p {
    color: #ffffffcf;
    margin-top: 20px;
}

@media (width <= 1050px) {
    .page-card-grid,
    .page-card-grid--properties {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .split-feature,
    .split-feature--reverse,
    .location-band,
    .blog-feature,
    .contact-layout {
        grid-template-columns: 1fr;
    }

    .story-grid {
        grid-template-columns: 1fr;
    }

    .split-feature__media,
    .location-band__media,
    .blog-feature > img {
        min-height: 420px;
    }
}

@media (width <= 700px) {
    .subpage-hero,
    .subpage-hero__content {
        min-height: 520px;
    }

    .subpage-hero__content {
        width: 90vw;
        padding-top: 128px;
        padding-bottom: 64px;
    }

    .subpage-hero h1 {
        font-size: clamp(48px, 14vw, 68px);
    }

    .subpage-section,
    .subpage-section--dark,
    .subpage-section--warm {
        width: 90vw;
        padding-inline: 0;
        padding-block: 68px;
    }

    .subpage-section--dark,
    .subpage-section--warm {
        width: 100%;
        padding-inline: 5vw;
    }

    .page-card-grid,
    .page-card-grid--properties,
    .story-grid,
    .static-form {
        grid-template-columns: 1fr;
    }

    .split-feature__media,
    .location-band__media,
    .blog-feature > img {
        min-height: 320px;
    }

    .page-card__actions {
        align-items: flex-start;
        flex-direction: column;
    }

    .filter-strip {
        gap: 8px;
    }

    .filter-strip a {
        padding: 10px 12px;
    }
}

/* Properties page grouped by location */
.properties-by-location {
    padding-top: clamp(78px, 9vw, 126px);
}

.property-location-nav {
    position: sticky;
    top: 82px;
    z-index: 8;
    background: #f7f4edf2;
    border-block: 1px solid #02183212;
    padding-block: 14px;
    margin-bottom: clamp(42px, 6vw, 78px);
    -webkit-backdrop-filter: blur(14px);
    backdrop-filter: blur(14px);
}

.property-location {
    scroll-margin-top: 118px;
}

.property-location + .property-location {
    margin-top: clamp(74px, 9vw, 132px);
}

.property-location__header {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: end;
    gap: 28px;
    border-bottom: 1px solid #02183218;
    margin-bottom: 24px;
    padding-bottom: 22px;
}

.property-location__header .subpage-kicker {
    grid-column: 1 / -1;
    margin-bottom: 0;
}

.property-location__header h2 {
    font-family: var(--display);
    font-size: clamp(34px, 4vw, 60px);
    line-height: .98;
    letter-spacing: 0;
    max-width: 820px;
    margin: 0;
}

.property-location__header span {
    color: #021832a8;
    font-family: var(--label);
    font-size: 9px;
    font-weight: 800;
    letter-spacing: .12em;
    text-transform: uppercase;
    white-space: nowrap;
}

.property-location__grid {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 20px;
}

.property-tile {
    display: flex;
    flex-direction: column;
    background: #fffaf4;
    box-shadow: 0 20px 50px #0218320d;
}

.property-tile .page-card__media {
    aspect-ratio: 16 / 10;
    max-height: 238px;
}

.property-tile .page-card__body {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 20px;
}

.property-tile .page-card__body h3 {
    color: var(--navy);
    font-family: var(--display);
    font-size: clamp(25px, 2vw, 34px);
    line-height: 1;
    letter-spacing: 0;
    min-height: 2.08em;
    margin: 0 0 14px;
}

.property-tile__rating {
    color: #846507;
    font-size: 14px;
    font-weight: 800;
    margin-bottom: 14px;
}

.property-tile__rating span {
    color: #f6bd0f;
    margin-right: 4px;
}

.property-tile .page-card__meta {
    margin-bottom: 18px;
}

.property-tile .page-card__meta span {
    font-size: 11px;
    padding: 6px 9px;
}

.property-tile .page-card__actions {
    margin-top: auto;
    gap: 14px;
}

.property-tile .page-card__actions strong {
    font-size: 22px;
    line-height: 1;
}

.property-tile__book {
    min-height: 42px;
    padding: 12px 16px;
    white-space: nowrap;
}

@media (width <= 1100px) {
    .property-location__grid {
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }
}

@media (width <= 760px) {
    .property-location-nav {
        position: static;
        overflow: visible;
        flex-wrap: wrap;
        padding-inline: 0;
        margin-inline: 0;
    }

    .property-location__header {
        grid-template-columns: 1fr;
        gap: 14px;
    }

    .property-location__header span {
        white-space: normal;
    }

    .property-location__grid {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .property-tile .page-card__media {
        max-height: none;
    }

    .property-tile .page-card__body h3 {
        min-height: 0;
    }

    .property-tile .page-card__actions {
        align-items: stretch;
    }

    .property-tile__book {
        width: 100%;
        justify-content: center;
    }
}
