*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fffdf8;color:#0b2b40;font-family:'DM Sans',sans-serif;font-size:16px;line-height:1.55;overflow-x:hidden}body.modal-open,body.menu-open{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-decoration:none}button,input,select{font:inherit}.skip-link{position:fixed;z-index:999;left:1rem;top:-100px;background:#fff;color:#0b2b40;padding:.75rem 1rem}.skip-link:focus{top:1rem}.announcement{height:34px;background:#0b2b40;color:#fff;display:flex;align-items:center;justify-content:center;gap:1.2rem;font-size:11px;text-transform:uppercase;letter-spacing:.14em}.announcement span:nth-child(2){color:#f3c84b}.site-header{height:82px;padding:0 clamp(1.2rem,4vw,5rem);display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:2rem;position:absolute;top:34px;left:0;right:0;z-index:50;color:#fff;transition:.3s}.site-header.scrolled{position:fixed;top:0;background:rgba(11,43,64,.96);box-shadow:0 12px 35px rgba(7,27,39,.16);backdrop-filter:blur(14px);height:68px}.brand{display:flex;align-items:center;gap:.7rem;justify-self:start}.brand-mark{width:44px;height:44px;background:#f3c84b;color:#0b2b40;display:grid;place-items:center;font-family:'Fraunces',serif;font-size:25px;font-weight:700;border-radius:45% 55% 50% 50%/55% 45% 58% 42%;transform:rotate(-6deg);box-shadow:inset 0 0 0 2px rgba(11,43,64,.12)}.brand>span:last-child{display:flex;flex-direction:column;line-height:1}.brand strong{font-family:'Fraunces',serif;font-size:21px;letter-spacing:-.03em}.brand small{font-size:9px;text-transform:uppercase;letter-spacing:.18em;margin-top:5px}.desktop-nav{display:flex;gap:2rem;font-size:14px;font-weight:600}.desktop-nav a{position:relative}.desktop-nav a:after{content:'';position:absolute;left:0;bottom:-7px;height:2px;width:0;background:#f3c84b;transition:.25s}.desktop-nav a:hover:after{width:100%}.button{display:inline-flex;align-items:center;justify-content:center;gap:.7rem;border:0;border-radius:99px;padding:1rem 1.35rem;font-weight:700;cursor:pointer;transition:transform .2s,box-shadow .2s}.button:hover{transform:translateY(-2px);box-shadow:0 14px 30px rgba(0,0,0,.14)}.button-small{padding:.75rem 1.1rem;font-size:13px;justify-self:end}.button-sun{background:#f3c84b;color:#0b2b40}.button-coral{background:#f26b55;color:#fff}.button-ink{background:#0b2b40;color:#fff}.menu-button{display:none;background:transparent;border:0;justify-self:end}.menu-button span{display:block;width:24px;height:2px;background:#fff;margin:6px}.mobile-menu{position:fixed;z-index:45;inset:0;background:#0b2b40;color:#fff;padding:120px 2rem 3rem;flex-direction:column;gap:1.5rem;font-family:'Fraunces',serif;font-size:30px}.mobile-menu:not([hidden]){display:flex}.mobile-menu .button{font-family:'DM Sans',sans-serif;font-size:16px;margin-top:1rem}.hero{min-height:920px;background:#0b2b40;color:#fff;position:relative;padding:170px clamp(1.2rem,5vw,6rem) 0;display:grid;grid-template-columns:minmax(340px,.8fr) minmax(520px,1.2fr);gap:clamp(2rem,5vw,6rem);overflow:visible}.hero:before{content:'';position:absolute;width:620px;height:620px;border:1px solid rgba(255,255,255,.1);border-radius:50%;left:-330px;top:90px}.hero-grain{position:absolute;inset:0;opacity:.08;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.4'/%3E%3C/svg%3E")}.hero-copy{position:relative;z-index:2;padding-top:60px}.eyebrow{font-size:11px;font-weight:700;letter-spacing:.17em;text-transform:uppercase;margin:0 0 1.2rem;color:#f3c84b}.eyebrow span{color:#f26b55;margin:0 .45rem}.eyebrow.dark{color:#187f79}.hero h1,.section-heading h2,.direct-copy h2,.story-copy h2,.guide h2,.final-cta h2{font-family:'Fraunces',serif;font-weight:600;line-height:.97;letter-spacing:-.045em;margin:0}.hero h1{font-size:clamp(4rem,6.2vw,7.4rem);max-width:800px}.hero h1 em,.guide h2 em{font-weight:500;color:#f3c84b}.hero-lede{font-size:clamp(1rem,1.3vw,1.25rem);max-width:590px;color:#d8e3e5;margin:1.6rem 0 2.2rem}.hero-actions{display:flex;align-items:center;gap:1.5rem;flex-wrap:wrap}.text-button,.text-link{background:none;border:0;padding:.4rem 0;color:inherit;font-weight:700;cursor:pointer}.play{display:inline-grid;place-items:center;background:#fff;color:#0b2b40;border-radius:50%;width:38px;height:38px;font-size:11px;margin-right:.6rem}.hero-gallery{position:relative;z-index:1;min-height:620px;align-self:start}.hero-photo{position:absolute;margin:0;overflow:hidden;box-shadow:0 30px 80px rgba(0,0,0,.25)}.hero-photo img{height:100%;object-fit:cover}.hero-photo figcaption{position:absolute;left:1rem;bottom:1rem;background:rgba(255,253,248,.94);color:#0b2b40;border-radius:13px;padding:.7rem .9rem;font-size:12px;font-weight:700;box-shadow:0 6px 20px rgba(0,0,0,.15)}.hero-photo figcaption span{display:block;text-transform:uppercase;color:#187f79;font-size:9px;letter-spacing:.12em}.hero-photo-main{width:66%;height:520px;right:4%;top:35px;border-radius:48% 52% 12% 12%/26% 24% 10% 10%;transform:rotate(1.5deg)}.hero-photo-left{width:39%;height:290px;left:0;top:0;border-radius:46% 54% 18% 14%/20% 24% 16% 18%;transform:rotate(-4deg)}.hero-photo-right{width:38%;height:270px;left:5%;top:320px;border-radius:16% 50% 18% 42%/18% 24% 16% 28%;transform:rotate(3deg)}.stone-note{position:absolute;right:1%;top:490px;z-index:3;width:155px;height:150px;background:#f3c84b;color:#0b2b40;border-radius:50% 44% 48% 52%/44% 55% 45% 56%;display:flex;align-items:center;justify-content:center;gap:.5rem;transform:rotate(-7deg);box-shadow:0 20px 50px rgba(0,0,0,.2)}.stone-note strong{font-family:'Fraunces',serif;font-size:60px;line-height:1}.stone-note span{font-size:11px;font-weight:700;line-height:1.2;text-transform:uppercase}.stay-finder{position:absolute;z-index:5;left:50%;bottom:0;transform:translateX(-50%) translateY(50%);width:min(1180px,92vw);background:#fffdf8;color:#0b2b40;border-radius:22px;padding:1.1rem;display:grid;grid-template-columns:1.25fr 1.1fr .8fr .8fr .72fr .9fr;align-items:center;gap:.4rem;box-shadow:0 24px 80px rgba(7,30,42,.18)}.finder-intro{display:flex;align-items:center;gap:.7rem;padding:.4rem .6rem}.finder-intro>span:last-child{display:flex;flex-direction:column}.finder-intro small{font-size:10px;color:#647881}.finder-intro strong{font-family:'Fraunces',serif;font-size:16px}.finder-icon{display:grid;place-items:center;width:38px;height:38px;background:#e5f2ef;color:#187f79;border-radius:50%;font-size:24px}.stay-finder label{display:flex;flex-direction:column;border-left:1px solid #dfe5e2;padding:.2rem .75rem}.stay-finder label span{font-size:10px;text-transform:uppercase;letter-spacing:.1em;color:#6d7f86;font-weight:700}.stay-finder input,.stay-finder select{border:0;background:transparent;color:#0b2b40;min-width:0;padding:.35rem 0;font-weight:600;outline:0}.finder-submit{border:0;border-radius:15px;background:#f26b55;color:#fff;padding:1rem;display:flex;justify-content:space-between;font-weight:700;cursor:pointer}.proof-bar{background:#f7f1e7;padding:6.2rem clamp(1.2rem,5vw,6rem) 2.7rem;display:grid;grid-template-columns:repeat(4,1fr);gap:1px}.proof-bar div{display:flex;align-items:center;justify-content:center;gap:.7rem;border-right:1px solid #d8d2c8}.proof-bar div:last-child{border:0}.proof-bar strong{font-family:'Fraunces',serif;font-size:31px}.proof-bar span{max-width:130px;font-size:11px;text-transform:uppercase;letter-spacing:.08em;font-weight:700;color:#61727a}.section-pad{padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,7rem)}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:3rem;margin-bottom:2.5rem}.section-heading h2{font-size:clamp(3rem,5vw,6rem);max-width:800px}.section-heading>p{max-width:430px;color:#5d6f76}.mood-tabs{display:flex;gap:.75rem;flex-wrap:wrap;margin-bottom:4rem}.mood{border:1px solid #b7c4c4;border-radius:99px;background:transparent;color:#0b2b40;padding:.8rem 1.1rem;cursor:pointer;font-weight:600}.mood:hover,.mood.active{background:#0b2b40;color:#fff;border-color:#0b2b40}.property-list{display:flex;flex-direction:column;gap:5rem}.property-card{display:grid;grid-template-columns:1.18fr .82fr;background:#f7f1e7;border-radius:34px;overflow:hidden;min-height:590px;transition:opacity .3s,transform .3s,max-height .4s}.property-card.reverse{grid-template-columns:.82fr 1.18fr}.property-card.reverse .property-image{order:2}.property-card.filtered-out{display:none}.property-image{position:relative;min-height:520px;overflow:hidden}.property-image img{height:100%;object-fit:cover;transition:transform .7s}.property-card:hover .property-image img{transform:scale(1.025)}.image-badge,.gallery-button{position:absolute;background:rgba(255,253,248,.94);color:#0b2b40;border:0;border-radius:99px;padding:.7rem 1rem;font-size:11px;font-weight:700}.image-badge{top:1.2rem;left:1.2rem}.gallery-button{right:1.2rem;bottom:1.2rem;cursor:pointer}.property-copy{padding:clamp(2rem,5vw,5rem);display:flex;flex-direction:column;justify-content:center}.property-location{font-size:11px;text-transform:uppercase;letter-spacing:.14em;color:#187f79;font-weight:700}.property-copy h3{font-family:'Fraunces',serif;font-size:clamp(2.7rem,4vw,5rem);line-height:.98;letter-spacing:-.04em;margin:.4rem 0 1rem}.property-tagline{font-size:17px;color:#53676f;max-width:560px}.stats{display:flex;gap:1.2rem;list-style:none;margin:1rem 0 1.5rem;padding:0;flex-wrap:wrap}.stats li{font-size:12px;border-right:1px solid #c9d0ce;padding-right:1.2rem}.stats li:last-child{border:0}.stats strong{font-family:'Fraunces',serif;font-size:23px}.signature{border-left:3px solid #f26b55;padding-left:1rem;margin-bottom:1.8rem}.signature span{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;color:#f26b55}.signature p{margin:.25rem 0 0;font-size:13px}.property-actions{display:flex;align-items:center;gap:1.4rem;flex-wrap:wrap}.text-link{font-size:13px;border-bottom:1px solid currentColor}.direct-section{display:grid;grid-template-columns:1fr 1fr;background:#187f79;color:#fff;min-height:800px}.direct-art{position:relative;overflow:hidden;min-height:650px}.direct-art img{height:100%;object-fit:cover;clip-path:ellipse(72% 72% at 42% 46%)}.sun-shape{position:absolute;width:520px;height:520px;background:#f3c84b;border-radius:50%;left:-130px;top:-130px}.direct-stamp{position:absolute;right:7%;bottom:8%;width:190px;height:180px;border-radius:50% 44% 48% 52%/44% 55% 45% 56%;background:#0b2b40;color:#fff;display:grid;place-content:center;text-align:center;transform:rotate(6deg);text-transform:uppercase;font-size:11px;letter-spacing:.1em}.direct-stamp strong{font-family:'Fraunces',serif;font-size:25px;text-transform:none;letter-spacing:0}.direct-copy{padding:clamp(4rem,8vw,9rem);display:flex;flex-direction:column;justify-content:center}.direct-copy h2{font-size:clamp(3.2rem,5vw,6rem)}.direct-copy>p{font-size:18px;color:#d9efeb}.direct-benefits{margin:1.5rem 0 2rem}.direct-benefits>div{display:grid;grid-template-columns:44px 1fr;column-gap:1rem;padding:1rem 0;border-top:1px solid rgba(255,255,255,.25)}.direct-benefits span{grid-row:1/3;color:#f3c84b;font-family:'Fraunces',serif}.direct-benefits p{grid-column:2;margin:.2rem 0;color:#d9efeb;font-size:13px}.direct-copy .button{align-self:flex-start}.reviews{background:#fffdf8;overflow:hidden}.review-controls{display:flex;gap:.5rem}.review-controls button{border:1px solid #9babad;background:transparent;border-radius:50%;width:48px;height:48px;cursor:pointer}.review-track{display:flex;gap:1.2rem;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:1rem;scrollbar-width:none}.review-track::-webkit-scrollbar{display:none}.review-track blockquote{flex:0 0 min(520px,78vw);scroll-snap-align:start;margin:0;border-radius:25px;background:#f7f1e7;padding:2.2rem}.review-track blockquote:nth-child(2n){background:#e5f2ef}.stars{color:#e2a80d;letter-spacing:.13em}.review-track p{font-family:'Fraunces',serif;font-size:clamp(1.5rem,2.2vw,2.2rem);line-height:1.25}.review-track footer{font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:700}.story-section{display:grid;grid-template-columns:.9fr 1.1fr;background:#0b2b40;color:#fff;padding:clamp(5rem,9vw,9rem) clamp(1.2rem,6vw,7rem);gap:clamp(3rem,8vw,9rem);align-items:center}.story-copy h2{font-size:clamp(3.2rem,5.4vw,6rem)}.story-copy p{color:#cfdbdf;font-size:17px}.text-link.light{color:#f3c84b}.story-collage{position:relative;height:620px}.story-collage img{position:absolute;object-fit:cover;box-shadow:0 30px 70px rgba(0,0,0,.3)}.story-collage img:nth-of-type(2){width:48%;height:43%;right:0;top:0;border-radius:50% 50% 12% 18%/35% 35% 10% 12%;transform:rotate(4deg)}.story-collage img:nth-of-type(3){width:43%;height:44%;left:3%;bottom:0;border-radius:18% 50% 18% 40%/18% 26% 14% 30%;transform:rotate(-4deg)}.story-collage .family-photo{z-index:2;width:62%;height:62%;left:19%;top:19%;border-radius:48% 52% 12% 12%/25% 28% 12% 14%;object-position:center 42%;transform:rotate(-1deg)}.family-photo-needed{position:absolute;z-index:2;width:58%;height:60%;left:22%;top:22%;border:2px dashed rgba(255,255,255,.45);background:#187f79;border-radius:48% 52% 12% 12%/25% 28% 12% 14%;display:grid;place-content:center;text-align:center;box-shadow:0 30px 70px rgba(0,0,0,.25);transform:rotate(-1deg)}.family-photo-needed span{font-family:'Fraunces',serif;font-size:30px}.family-photo-needed small{color:#f3c84b;margin-top:.5rem}.guide{background:#f7f1e7;display:grid;grid-template-columns:.7fr 1.3fr;gap:5rem}.guide h2{font-size:clamp(3.5rem,6vw,7rem)}.guide h2 em{color:#187f79}.guide-intro>p:last-child{max-width:420px;color:#5d7077}.guide-columns{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.guide-card{border-radius:32px;padding:2.3rem;display:flex;flex-direction:column;min-height:500px}.city-card{background:#f3c84b}.coast-card{background:#187f79;color:#fff}.guide-card>p{text-transform:uppercase;font-size:10px;letter-spacing:.14em;font-weight:700}.guide-card h3{font-family:'Fraunces',serif;font-size:35px;margin:.5rem 0 1rem}.guide-card ul{list-style:none;padding:0;margin:0 0 auto}.guide-card li{padding:1rem 0;border-top:1px solid rgba(11,43,64,.22);display:flex;gap:.8rem}.coast-card li{border-color:rgba(255,255,255,.25)}.guide-card li span{font-family:'Fraunces',serif;opacity:.65}.guide-card a{font-weight:700;margin-top:2rem}.final-cta{position:relative;overflow:hidden;background:#f3c84b;text-align:center;padding:clamp(6rem,11vw,11rem) 1rem}.final-cta .eyebrow{color:#0b2b40}.final-cta h2{font-size:clamp(4rem,7vw,8rem);margin-bottom:2rem}.final-cta small{display:block;margin-top:1rem;font-weight:700}.pebble{position:absolute;border:2px solid rgba(11,43,64,.18);border-radius:50%}.pebble-one{width:370px;height:320px;left:-160px;top:-80px;transform:rotate(25deg)}.pebble-two{width:300px;height:280px;right:-120px;bottom:-80px}.footer{background:#071f2e;color:#fff;padding:5rem clamp(1.2rem,6vw,7rem) 2rem;display:grid;grid-template-columns:2fr repeat(3,1fr);gap:3rem}.footer>div{display:flex;flex-direction:column;gap:.6rem;font-size:13px;color:#bfced2}.footer>div strong{color:#fff;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.copyright{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.16);padding-top:1.5rem;font-size:11px;color:#91a6ad}.gallery-modal,.story-modal{width:min(1180px,94vw);max-height:92vh;border:0;border-radius:28px;padding:0;background:#fffdf8;color:#0b2b40;box-shadow:0 35px 100px rgba(0,0,0,.35)}dialog::backdrop{background:rgba(3,20,29,.82);backdrop-filter:blur(6px)}.modal-close{position:sticky;z-index:10;float:right;top:1rem;margin:1rem;border:0;border-radius:50%;width:46px;height:46px;background:#0b2b40;color:#fff;font-size:25px;cursor:pointer}.modal-head{padding:3rem 3rem 1rem}.modal-head p{text-transform:uppercase;letter-spacing:.12em;font-size:10px;color:#187f79;font-weight:700}.modal-head h2{font-family:'Fraunces',serif;font-size:clamp(2.5rem,5vw,5rem);margin:0}.modal-grid{padding:1rem 2rem 3rem;display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem}.modal-grid img{height:380px;object-fit:cover;border-radius:14px}.modal-grid img:nth-child(3n){grid-column:1/-1;height:500px}.story-video-placeholder{min-height:600px;background:#0b2b40;color:#fff;display:grid;place-content:center;text-align:center;padding:2rem}.story-video-placeholder span{font-size:60px;color:#f3c84b}.story-video-placeholder h2{font-family:'Fraunces',serif;font-size:45px}.reveal{opacity:1;transform:none}.reveal.visible{opacity:1;transform:none}:focus-visible{outline:3px solid #f26b55;outline-offset:3px}
@media (max-width:1050px){.desktop-nav{display:none}.site-header{grid-template-columns:1fr auto auto}.menu-button{display:block}.hero{grid-template-columns:1fr;padding-top:140px;min-height:1200px}.hero-copy{padding-top:30px}.hero-gallery{min-height:610px}.stay-finder{grid-template-columns:1.2fr 1fr 1fr 1fr}.finder-intro,.stay-finder label:nth-of-type(1){grid-column:span 2}.finder-submit{grid-column:span 2}.proof-bar{grid-template-columns:1fr 1fr;row-gap:1.5rem}.proof-bar div:nth-child(2){border-right:0}.property-card,.property-card.reverse{grid-template-columns:1fr}.property-card.reverse .property-image{order:0}.direct-section{grid-template-columns:1fr}.story-section{grid-template-columns:1fr}.guide{grid-template-columns:1fr}.footer{grid-template-columns:1.5fr 1fr 1fr}.footer>div:last-of-type{grid-column:2/4}.footer-brand{grid-row:1/3}}
@media (max-width:700px){.announcement span:last-child,.site-header>.button{display:none}.site-header{grid-template-columns:1fr auto;height:70px}.hero{padding:125px 1.2rem 0;min-height:1120px}.hero h1{font-size:clamp(3.5rem,16vw,5rem)}.hero-lede{font-size:1rem}.text-button{font-size:12px}.hero-gallery{min-height:540px;margin-top:1rem}.hero-photo-main{width:80%;height:390px}.hero-photo-left{width:46%;height:190px}.hero-photo-right{width:46%;height:180px;top:340px}.stone-note{width:115px;height:110px;top:400px}.stone-note strong{font-size:45px}.stay-finder{bottom:0;grid-template-columns:1fr 1fr;padding:.8rem;border-radius:18px}.finder-intro{grid-column:1/-1}.stay-finder label{grid-column:span 1!important;border-left:0;border-top:1px solid #dfe5e2}.stay-finder label:nth-of-type(1){grid-column:1/-1!important}.finder-submit{grid-column:1/-1}.proof-bar{padding-top:11.5rem;grid-template-columns:1fr 1fr}.proof-bar div{display:block;text-align:center}.proof-bar strong{display:block}.section-heading{display:block}.section-heading h2{font-size:clamp(2.8rem,13vw,4.5rem)}.section-heading>p{margin-top:1.2rem}.mood-tabs{flex-wrap:nowrap;overflow:auto;padding-bottom:.5rem}.mood{white-space:nowrap}.property-card{border-radius:23px}.property-image{min-height:330px}.property-copy{padding:2rem 1.4rem}.property-copy h3{font-size:3rem}.stats{gap:.8rem}.stats li{padding-right:.8rem}.direct-copy{padding:4rem 1.4rem}.direct-art{min-height:480px}.direct-stamp{width:140px;height:135px}.story-section{padding:5rem 1.2rem}.story-collage{height:480px}.family-photo-needed,.story-collage .family-photo{width:72%;left:14%}.guide-columns{grid-template-columns:1fr}.guide-card{min-height:430px}.footer{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}.footer>div:last-of-type{grid-column:1/-1}.modal-head{padding:2rem 1.2rem 1rem}.modal-grid{grid-template-columns:1fr;padding:1rem}.modal-grid img,.modal-grid img:nth-child(3n){grid-column:auto;height:260px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.property-image img,.button{transition:none}}

/* Property landing pages */
.property-page{background:#fffdf8}.property-header{top:34px}.property-hero{height:min(850px,92vh);min-height:680px;position:relative;display:flex;align-items:flex-end;overflow:hidden;background:#0b2b40}.property-hero>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.property-hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,25,37,.22) 18%,rgba(5,25,37,.83) 100%)}.property-hero-copy{position:relative;z-index:2;color:#fff;max-width:900px;padding:0 clamp(1.2rem,7vw,7rem) 7rem}.property-hero-copy h1{font-family:'Fraunces',serif;font-size:clamp(4rem,8vw,8.5rem);line-height:.88;letter-spacing:-.055em;margin:.55rem 0 1.4rem}.property-hero-copy>p:last-of-type{font-size:clamp(1rem,1.8vw,1.35rem);max-width:720px}.property-hero-actions{display:flex;gap:1.4rem;align-items:center;margin-top:2rem}.property-hero-badge{position:absolute;z-index:3;left:auto;top:auto;right:clamp(1.2rem,5vw,5rem);bottom:3rem}.property-intro{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(300px,.7fr);gap:clamp(3rem,8vw,9rem);align-items:center}.property-intro h2,.property-features h2,.property-gallery h2,.property-booking h2{font-family:'Fraunces',serif;font-size:clamp(3rem,6vw,6rem);line-height:.98;letter-spacing:-.045em;margin:.7rem 0 1.5rem}.property-intro>div>p:last-child{font-size:1.12rem;max-width:760px;color:#385263}.property-big-stats{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,1fr);background:#f3c84b;border-radius:34px;overflow:hidden;box-shadow:0 25px 65px rgba(11,43,64,.12)}.property-big-stats li{padding:2.6rem 1rem;text-align:center;border-right:1px solid rgba(11,43,64,.15);font-size:12px;text-transform:uppercase;letter-spacing:.1em}.property-big-stats li:last-child{border-right:0}.property-big-stats strong{display:block;font-family:'Fraunces',serif;font-size:3rem;line-height:1;margin-bottom:.5rem}.property-booking{background:#0b2b40;color:#fff;display:grid;grid-template-columns:1fr 1fr;gap:clamp(3rem,7vw,8rem);padding:clamp(4rem,8vw,8rem) clamp(1.2rem,6vw,6rem);align-items:center}.property-booking-copy>p:last-child{color:#bed0d8;max-width:650px}.property-booking-form{background:#fff;color:#0b2b40;border-radius:30px;padding:2rem;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.property-booking-form label{display:flex;flex-direction:column;gap:.45rem}.property-booking-form label span{font-size:11px;text-transform:uppercase;letter-spacing:.12em;font-weight:700}.property-booking-form input,.property-booking-form select{border:1px solid #cbd6d9;border-radius:12px;padding:.9rem;background:#fff;color:#0b2b40;min-width:0}.property-booking-form label:nth-child(3),.property-booking-form .button,.property-booking-form small,.property-booking-form .booking-error{grid-column:1/-1}.property-booking-form small{text-align:center;color:#667e89}.booking-error{color:#a62b22;font-size:13px;margin:0;min-height:1.2em}.stay-finder>.booking-error{position:absolute;left:1rem;bottom:-1.7rem;color:#fff}.property-features{display:grid;grid-template-columns:1.15fr .85fr;gap:clamp(3rem,8vw,9rem);align-items:start}.feature-checks,.nearby-card ul{list-style:none;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:1rem}.feature-checks li,.nearby-card li{position:relative;padding:1rem 1rem 1rem 2.7rem;border-bottom:1px solid #dfe6e4}.feature-checks li:before,.nearby-card li:before{content:'✓';position:absolute;left:.7rem;color:#dd5d49;font-weight:700}.nearby-card{background:#dd5d49;color:#fff;padding:clamp(2rem,4vw,4rem);border-radius:34px}.nearby-card h3{font-family:'Fraunces',serif;font-size:clamp(2.5rem,5vw,4.7rem);line-height:1;margin:.8rem 0 2rem}.nearby-card li{border-color:rgba(255,255,255,.25)}.nearby-card li:before{color:#f3c84b}.nearby-card>p:last-child{margin-top:2rem;font-size:13px;color:#ffe4dd}.property-gallery{background:#f1f5f3}.property-photo-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:1rem}.property-photo-grid figure{margin:0;grid-column:span 4;height:320px;overflow:hidden;border-radius:20px}.property-photo-grid figure:nth-child(1),.property-photo-grid figure:nth-child(6){grid-column:span 8;height:480px}.property-photo-grid img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.property-photo-grid figure:hover img{transform:scale(1.025)}.property-review{padding:clamp(4rem,8vw,8rem) clamp(1.2rem,12vw,12rem);background:#f3c84b;color:#0b2b40}.property-review blockquote{margin:0;max-width:1000px}.property-review blockquote p{font-family:'Fraunces',serif;font-size:clamp(2.2rem,4vw,4rem);line-height:1.08;letter-spacing:-.035em;margin:1rem 0}.property-review footer{font-weight:700}.property-page .footer-brand{grid-row:auto}
@media(max-width:900px){.property-intro,.property-booking,.property-features{grid-template-columns:1fr}.property-hero-copy{padding-bottom:5rem}.property-hero-badge{bottom:1.4rem}.property-photo-grid figure,.property-photo-grid figure:nth-child(1),.property-photo-grid figure:nth-child(6){grid-column:span 6;height:320px}}
@media(max-width:600px){.property-hero{min-height:720px}.property-hero-copy{padding-bottom:6rem}.property-hero-copy h1{font-size:clamp(3.5rem,16vw,5rem)}.property-hero-actions{align-items:flex-start;flex-direction:column}.property-hero-badge{left:1.2rem;right:auto}.property-intro{padding-top:4rem}.property-big-stats{grid-template-columns:1fr}.property-big-stats li{border-right:0;border-bottom:1px solid rgba(11,43,64,.15);padding:1.4rem}.property-big-stats li:last-child{border-bottom:0}.property-booking-form{grid-template-columns:1fr;padding:1.25rem}.property-booking-form label{grid-column:1/-1}.feature-checks,.nearby-card ul{grid-template-columns:1fr}.property-photo-grid{grid-template-columns:1fr}.property-photo-grid figure,.property-photo-grid figure:nth-child(1),.property-photo-grid figure:nth-child(6){grid-column:1;height:280px}}

/* Clear three-step booking flow */
.hero{min-height:820px;padding-bottom:5rem}
.booking-flow{background:#f6efe3;border-top:1px solid rgba(11,43,64,.1);border-bottom:1px solid rgba(11,43,64,.1)}
.booking-flow-heading{display:grid;grid-template-columns:auto minmax(0,1fr);gap:1.25rem;align-items:start;max-width:900px;margin-bottom:2.5rem}
.booking-flow-heading h2{font-family:'Fraunces',serif;font-size:clamp(3.25rem,7vw,6.5rem);line-height:.92;letter-spacing:-.05em;margin:.35rem 0 1rem}
.booking-flow-heading p:last-child{font-size:1.08rem;color:#385263;margin:0}
.step-label{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#f3c84b;color:#0b2b40;font-weight:800;font-size:1.05rem;line-height:1;margin:0;flex:0 0 auto}
.simple-booking-form{display:grid;gap:2.4rem;max-width:1280px}
.simple-booking-form fieldset{border:0;padding:0;margin:0;min-width:0}
.simple-booking-form legend{display:flex;align-items:center;gap:1rem;font-family:'Fraunces',serif;font-size:clamp(1.8rem,3vw,2.7rem);font-weight:700;margin-bottom:1.25rem;color:#0b2b40}
.home-options{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:1rem}
.home-option{position:relative;display:grid;grid-template-columns:112px minmax(0,1fr);align-items:center;gap:1rem;background:#fff;border:2px solid transparent;border-radius:18px;padding:.75rem;cursor:pointer;box-shadow:0 12px 35px rgba(11,43,64,.08);transition:.2s}
.home-option:hover{transform:translateY(-2px);box-shadow:0 16px 40px rgba(11,43,64,.13)}
.home-option:has(input:checked){border-color:#0b2b40;box-shadow:0 0 0 3px #f3c84b}
.home-option:has(input:focus-visible){outline:3px solid #2675a6;outline-offset:3px}
.home-option input{position:absolute;opacity:1;pointer-events:auto;appearance:none;width:22px;height:22px;right:12px;top:12px;border:2px solid #0b2b40;border-radius:50%;background:#fff;z-index:2;cursor:pointer}.home-option input:checked{box-shadow:inset 0 0 0 5px #fff;background:#0b2b40}
.home-option img{width:112px;height:82px;object-fit:cover;border-radius:12px}
.home-option span{display:flex;flex-direction:column;gap:.35rem;min-width:0}
.home-option strong{font-family:'Fraunces',serif;font-size:1.2rem;line-height:1.15}
.home-option small{color:#597080}
.date-fields{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr)) auto;gap:1rem;align-items:end;background:#0b2b40;padding:1.25rem;border-radius:20px;color:#fff}
.date-fields label{display:flex;flex-direction:column;gap:.45rem;font-size:.78rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.date-fields input,.date-fields select{width:100%;height:52px;border:1px solid rgba(255,255,255,.35);border-radius:10px;background:#fff;color:#0b2b40;padding:0 .85rem}
.date-fields .button{height:52px;border:0;white-space:nowrap}
.date-picker>small{display:block;color:#597080;margin-top:.75rem}
.booking-error{color:#b43535;font-weight:700;margin:.65rem 0 0}

@media(max-width:1050px){
  .hero{min-height:auto;padding-bottom:5rem}
  .home-options{grid-template-columns:1fr}
  .home-option{grid-template-columns:150px minmax(0,1fr)}
  .home-option img{width:150px;height:100px}
  .date-fields{grid-template-columns:1fr 1fr}
}
@media(max-width:700px){
  .hero{min-height:auto;padding-bottom:3.5rem}
  .proof-bar{padding-top:3rem}
  .booking-flow{padding-top:4rem;padding-bottom:4rem}
  .booking-flow-heading{grid-template-columns:1fr;gap:.9rem}
  .booking-flow-heading h2{font-size:3.5rem}
  .home-option{grid-template-columns:94px minmax(0,1fr);padding:.65rem}
  .home-option img{width:94px;height:76px}
  .home-option strong{font-size:1.05rem}
  .date-fields{grid-template-columns:1fr;padding:1rem}
  .date-fields .button{width:100%}
  .simple-booking-form legend{font-size:2rem}
}
