:root{--cream:#f3f1e9;--paper:#fcfbf6;--green:#283d33;--green-deep:#18271f;--ink:#263329;--muted:#687166;--line:#d3d6c9;--light-line:#5a6b5c;--gutter:clamp(24px,5vw,86px);--serif:'Cormorant Garamond',Georgia,serif;font-family:Onest,Arial,sans-serif;font-synthesis:none;color:var(--ink);background:var(--cream);color-scheme:light}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:22px}body{margin:0}body.modal-open{overflow:hidden}p,h1,h2,h3,figure{margin:0}p{line-height:1.65}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.03}h2{font-size:clamp(39px,4.2vw,66px);letter-spacing:-.025em}h3{font-size:30px}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{color:inherit;cursor:pointer;border:0}a,button,summary{touch-action:manipulation}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}img{max-width:100%;height:auto;display:block}small{font-size:inherit}em{font-style:normal}a,button{transition:background .2s,color .2s,opacity .2s}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:2px solid #b09556;outline-offset:5px}.icon{display:inline-block;width:20px;height:20px;vertical-align:middle;flex:none}.section{padding:88px var(--gutter)}.eyebrow{font-size:9px;letter-spacing:.11em;font-weight:400;line-height:1.5;text-transform:uppercase;margin-bottom:18px}.eyebrow>span{display:none}.muted{color:var(--muted)}.button{display:inline-flex;align-items:center;justify-content:center;gap:24px;min-height:48px;padding:14px 23px;font-size:12px;line-height:1.4;font-weight:400;background:var(--green);color:var(--cream);border:1px solid var(--green);border-radius:2px;white-space:nowrap}.button .icon{filter:invert(1);width:18px;height:18px}.button:hover{background:var(--green-deep);border-color:var(--green-deep)}.button-paper{background:var(--cream);border-color:var(--cream);color:var(--ink)}.button-paper .icon{filter:none}.button-paper:hover{background:#dedfd3;border-color:#dedfd3}.button-glass{color:var(--cream);background:#14251b50;border-color:#ffffff75;backdrop-filter:blur(8px)}.button-glass:hover{background:#20372bd4}.text-link{display:inline-flex;align-items:center;gap:18px;border-bottom:1px solid currentColor;min-height:40px;padding:6px 0;font-size:12px;background:none}.text-link .icon{width:17px;height:17px}.text-link:hover{opacity:.6}.icon-button{width:44px;height:44px;display:inline-flex;align-items:center;justify-content:center;background:transparent;border:1px solid var(--line);border-radius:2px}.skip-link{position:fixed;top:10px;left:16px;padding:14px;background:var(--cream);color:var(--ink);z-index:1000;transform:translateY(-180%)}.skip-link:focus{transform:none}[hidden]{display:none!important}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:35px;margin-bottom:42px}.section-heading h2{margin-bottom:18px}.section-heading p:not(.eyebrow){font-size:13px;line-height:1.6}.section-index{font-size:10px;letter-spacing:.12em;padding-bottom:5px}.asset-note{font-size:10px;line-height:1.7;color:var(--muted);margin-top:25px;max-width:760px}
/* The cream navigation panel and serif title follow the selected HAVEN reference. */
.site-header{position:absolute;z-index:20;top:0;left:0;width:100%;height:86px;padding:0 var(--gutter);display:flex;align-items:center;justify-content:space-between;gap:30px;color:var(--cream)}.brand{display:inline-flex;flex-direction:column;gap:4px;flex-shrink:0}.brand>span{font-family:var(--serif);font-size:23px;line-height:1.05;letter-spacing:-.02em}.brand small{font-size:7px;font-weight:300;letter-spacing:.16em}.desktop-nav{position:absolute;left:50%;top:0;transform:translateX(-50%);display:flex;align-items:center;justify-content:center;gap:32px;align-self:flex-start;min-height:60px;background:var(--cream);color:var(--ink);padding:12px 40px 18px;clip-path:polygon(0 0,100% 0,95% 100%,5% 100%)}.desktop-nav a{font-size:11px;white-space:nowrap;padding:9px 0;border-bottom:1px solid transparent}.desktop-nav a:hover{border-color:var(--ink)}.header-cta{font-size:11px;display:flex;align-items:center;gap:13px}.header-cta .icon{width:16px;height:16px;filter:invert(1)}.menu-toggle{display:none}.mobile-nav{position:absolute;left:0;right:0;top:100%;padding:18px var(--gutter) 28px;background:var(--cream);color:var(--ink);box-shadow:0 30px 50px #0005}.mobile-nav a{display:flex;align-items:center;justify-content:space-between;font-family:var(--serif);font-size:27px;padding:13px 0;border-bottom:1px solid var(--line)}
.hero{position:relative;isolation:isolate;min-height:800px;height:95svh;max-height:1000px;padding:145px var(--gutter) 28px;color:var(--cream);display:flex;flex-direction:column}.hero-photo,.house-hero-photo{position:absolute;z-index:-3;inset:0;width:100%;height:100%;object-fit:cover;object-position:50% 53%}.hero-shade{position:absolute;z-index:-2;inset:0;background:linear-gradient(180deg,#101c2280 0%,#1221191a 47%,#0a1a10a3 100%)}.hero-copy{width:100%;max-width:1160px;align-self:center}.hero-kicker{font-size:10px;letter-spacing:.17em;text-align:center;margin-bottom:16px}.hero h1{font-size:clamp(74px,8.65vw,148px);letter-spacing:-.04em;line-height:1.02;text-align:center;font-weight:400}.hero-subtitle{text-align:right;font-size:13px;line-height:1.5;padding-right:2%;margin-top:16px;font-weight:300}.hero-low{display:flex;align-items:flex-end;justify-content:space-between;margin-top:auto;margin-bottom:32px;gap:20px}.hero-low>p{font-family:var(--serif);font-size:27px;line-height:1.15}.hero-low .text-link{font-size:12px}.hero-low .icon{filter:invert(1)}
.about-section{display:grid;grid-template-columns:1fr 1.45fr 1fr;gap:50px;align-items:center;padding-left:0;padding-right:0;overflow:hidden}.about-copy{text-align:center}.about-copy .eyebrow{font-size:8px}.about-copy h2{font-size:clamp(35px,3.55vw,56px);margin-bottom:24px;white-space:nowrap}.about-copy>p:not(.eyebrow){font-size:13px;line-height:1.6}.about-copy .about-description{font-size:12px!important;color:var(--muted);margin-top:18px;max-width:450px;margin-left:auto;margin-right:auto}.about-photo{width:100%}.about-photo img{width:100%;object-fit:cover;border-radius:2px}.about-photo-left{align-self:start;padding-top:18px}.about-photo-left img{aspect-ratio:1.15/1;object-position:51% 50%}.about-photo-right{align-self:end;padding-top:90px}.about-photo-right img{aspect-ratio:1.15/1;object-position:57% 50%}
.houses-section,.more-houses{background:var(--green);color:var(--cream)}.houses-section .eyebrow,.more-houses .eyebrow{color:#c5cebf}.houses-section .section-heading p:not(.eyebrow){color:#c2ccbf}.houses-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}.house-card{min-width:0}.card-photo-link{display:block;overflow:hidden;border-radius:2px;aspect-ratio:4/3.6}.card-photo-link img{width:100%;height:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.6,.3,1)}.card-photo-link:hover img{transform:scale(1.035)}.card-kicker{display:flex;justify-content:space-between;gap:12px;font-size:8px;letter-spacing:.02em;color:#b9c5b5;margin-top:16px;margin-bottom:10px}.house-card h3{font-size:clamp(27px,2.5vw,40px);line-height:1.15;margin-bottom:12px}.card-meta{display:flex;flex-wrap:wrap;gap:5px 16px;font-size:10px;color:#c0cbbd;line-height:1.5}.card-meta>span+span{border-left:1px solid #86957e80;padding-left:16px}.card-bottom{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-top:27px}.card-price{display:flex;flex-direction:column;gap:7px;font-size:11px}.card-price>span{font-size:9px;color:#b9c5b5}.card-price strong{font-weight:400}.card-bottom .button{min-height:36px;padding:9px 13px;gap:14px;font-size:10px}.card-bottom .icon{width:14px;height:14px}.houses-section .asset-note{color:#b9c5b5;margin-top:36px;font-size:9px}.rest-section{padding-top:90px;padding-bottom:90px}.rest-layout{display:grid;grid-template-columns:1.05fr 1fr;gap:75px;align-items:center}.rest-photo img{width:100%;aspect-ratio:1.15;object-fit:cover;border-radius:2px}.rest-photo figcaption{font-size:9px;color:var(--muted);margin-top:12px}.amenity-list details{border-bottom:1px solid var(--line)}.amenity-list summary{display:flex;align-items:center;gap:24px;cursor:pointer;list-style:none;font-size:14px;min-height:62px;padding:17px 0}.amenity-number{font-size:10px;color:#8b9485;width:18px;flex-shrink:0}.disclosure-icon{display:inline-flex;align-items:center;justify-content:center;flex:none;margin-left:auto;width:25px;height:25px}.disclosure-icon .icon{width:15px;height:15px;transition:transform .2s}.amenity-list details[open] .disclosure-icon,.faq-list details[open] .disclosure-icon{transform:rotate(45deg)}.amenity-list details>p{font-size:12px;color:var(--muted);padding:0 25px 21px 42px;line-height:1.7}.amenity-list>.text-link{float:right;margin-top:24px;font-size:11px}.amenity-list:after{content:"";display:table;clear:both}summary::-webkit-details-marker{display:none}
/* Shared FAQ, travel and footer layouts. */

.faq-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.faq-photo img{width:100%;aspect-ratio:1/1.1;object-fit:cover;border-radius:2px;object-position:50% 52%}.faq-copy h2{margin-bottom:35px}.faq-list{display:flex;flex-direction:column;gap:8px}.faq-list details{background:var(--paper);border-radius:2px}.faq-list summary{display:flex;align-items:center;gap:15px;cursor:pointer;padding:15px 17px;min-height:53px;font-size:12px;line-height:1.5;list-style:none}.faq-list details>p{font-size:11px;line-height:1.7;color:var(--muted);padding:0 48px 18px 17px}.faq-list details[open]{box-shadow:0 0 0 1px var(--line)}.reviews-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;padding-top:42px;padding-bottom:70px;align-items:start}.reviews-section h2{font-size:clamp(37px,3.4vw,54px)}.reviews-empty{border-left:1px solid var(--line);padding-left:36px}.reviews-empty>p{font-family:var(--serif);font-size:32px;line-height:1.2;margin-bottom:17px}.reviews-empty>span{font-size:10px;line-height:1.7;display:block;color:var(--muted)}.location-section{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start;background:#e5e8dd}.location-section h2{font-size:clamp(38px,3.8vw,60px)}.location-name{font-family:var(--serif);font-size:30px;line-height:1.2;margin-bottom:18px}.location-copy>p:not(.location-name){font-size:12px;color:var(--muted);max-width:430px}.location-copy .text-link{font-size:11px;margin-top:23px}.site-footer{padding:52px var(--gutter) 22px;background:#121a15;color:var(--cream)}.footer-columns{display:grid;grid-template-columns:2fr 1fr 1fr;gap:80px;margin-bottom:45px}.footer-columns>.brand{margin-bottom:20px}.footer-columns>div{display:flex;flex-direction:column;align-items:flex-start;gap:13px}.footer-columns>div:first-child{gap:19px}.footer-columns p:not(.footer-label){font-size:10px;color:#b9c2b5;line-height:1.7}.footer-columns .footer-label{font-size:8px;letter-spacing:.08em;color:#bec9b7;margin-bottom:4px}.footer-columns a:not(.brand){font-size:11px;display:flex;align-items:center;gap:10px}.footer-columns .icon{width:14px;height:14px;filter:invert(1)}.footer-bottom{border-top:1px solid #5c6c5545;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:8px;line-height:1.5;color:#adbba5}.footer-bottom .icon{width:13px;height:13px;filter:invert(1);margin-left:7px}
/* House details retain complete galleries and confirmed content. */
.house-hero{position:relative;isolation:isolate;min-height:740px;height:90svh;max-height:940px;padding:110px var(--gutter) 38px;color:var(--cream);display:flex;flex-direction:column}.breadcrumbs{display:flex;align-items:center;flex-wrap:wrap;gap:13px;font-size:10px}.breadcrumbs a{border-bottom:1px solid #ffffff65}.house-hero-copy{text-align:center;margin-top:65px}.house-hero-copy>.eyebrow{font-size:10px;letter-spacing:.16em;margin-bottom:19px}.house-hero h1{font-size:clamp(75px,8.5vw,140px);letter-spacing:-.025em;line-height:1;text-transform:uppercase}.house-hero-copy>p:last-child{font-size:13px;margin-top:17px}.house-hero-bottom{display:flex;align-items:flex-end;gap:20px;margin-top:auto}.house-hero-bottom>div{margin-right:auto}.house-hero-bottom>div>span{font-size:8px;letter-spacing:.12em}.house-hero-bottom>div>p{font-size:12px;margin-top:10px}.house-hero-bottom .button{font-size:11px}.photo-section-heading{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:37px;gap:30px}.photo-section-heading>p{font-size:12px;color:var(--muted)}.house-gallery{display:grid;grid-template-columns:1.45fr 1fr 1fr;gap:24px}.gallery-tile{background:none;padding:0;text-align:left;min-width:0}.gallery-tile>img{width:100%;aspect-ratio:1.15;height:auto;object-fit:cover;border-radius:2px;transition:opacity .2s}.gallery-tile:first-child>img{aspect-ratio:1.67}.gallery-tile>span{display:flex;justify-content:space-between;align-items:center;font-size:11px;gap:15px;margin-top:13px}.gallery-tile>span .icon{width:16px;height:16px}.gallery-tile:hover>img{opacity:.85}.all-photos{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:34px}.all-photos>summary{display:flex;align-items:center;gap:14px;list-style:none;cursor:pointer;font-size:13px;padding:24px 0}.photo-summary-chevron{margin-left:auto}.all-photos[open] .photo-summary-chevron{transform:rotate(90deg)}.all-photos-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px;padding-bottom:30px}.photo-thumb{display:block;min-width:0;padding:0;text-align:left;background:transparent}.photo-thumb img{width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:2px}.photo-thumb>span{display:block;font-size:10px;line-height:1.5;margin-top:9px;color:var(--muted)}.photo-thumb:hover img{opacity:.8}.house-content{display:grid;grid-template-columns:1.65fr .8fr;gap:90px;padding-top:0;align-items:start}.house-description{min-width:0}.detail-block{padding:34px 0;border-top:1px solid var(--line)}.detail-block:first-child{padding-top:0;border:0}.detail-block h2{margin:20px 0 24px}.detail-block>p:not(.eyebrow){font-size:13px;color:var(--muted);line-height:1.8;max-width:660px}.detail-block h3{font-size:35px;margin-bottom:18px}.room-facts{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:32px 0 20px}.room-facts>div{border-top:1px solid var(--line);padding-top:17px}.room-facts span{font-size:10px;color:var(--muted)}.room-facts strong{display:block;font-size:15px;font-weight:400;color:var(--ink);margin-top:11px}.detail-list{margin:26px 0 0}.detail-list>div{display:grid;grid-template-columns:1fr 1.5fr;gap:25px;border-top:1px solid var(--line);padding:17px 0;font-size:12px;line-height:1.65}.detail-list dt{color:var(--muted)}.detail-list dd{margin:0}.detail-block .detail-caption{font-size:10px!important;margin-top:16px}.house-aside{position:sticky;top:30px;background:var(--green);color:var(--cream);border-radius:2px;padding:32px}.house-aside .eyebrow{color:#bfccb7;font-size:8px}.house-aside h3{font-size:36px;margin:20px 0 14px}.house-aside>p:not(.eyebrow){color:#bdc9b7;font-size:12px}.aside-price{display:flex;flex-direction:column;gap:12px;border-top:1px solid #bcc5b64d;margin-top:27px;padding-top:25px}.aside-price span,.aside-price small,.aside-note{font-size:10px;color:#bdc9b7;line-height:1.6}.aside-price strong{font-size:23px;font-weight:300}.house-aside .button{margin:26px 0 15px;width:100%;background:var(--cream);border-color:var(--cream);color:var(--ink)}.house-aside .button:hover{background:#d8dece}.aside-note{display:block;text-align:center}.more-houses .houses-grid{grid-template-columns:1fr 1fr;gap:38px}.more-houses .card-photo-link{aspect-ratio:4/2.8}.more-houses .text-link{font-size:11px}.more-houses .section-heading h2{margin-bottom:0}.gallery-dialog{background:var(--cream);color:var(--ink);border:1px solid var(--line);border-radius:3px;padding:23px;max-width:1200px;width:calc(100% - 48px);max-height:calc(100svh - 36px);overflow:auto}.gallery-dialog::backdrop{background:#101e17ed;backdrop-filter:blur(8px)}.gallery-dialog-header{display:flex;align-items:center;justify-content:space-between;gap:15px;padding-bottom:20px}.gallery-dialog-header h2{font-size:28px;line-height:1.2;letter-spacing:-.02em}.gallery-dialog-header p{font-size:10px;color:var(--muted);margin-top:7px}.gallery-stage{position:relative;height:min(68svh,800px);display:flex;align-items:center;justify-content:center;background:#dce0d5}.gallery-stage>img{width:100%;height:100%;object-fit:contain}.gallery-stage .icon-button{position:absolute;top:50%;transform:translateY(-50%);background:#f3f1e9eb;border-color:#ffffff65}.gallery-prev{left:12px}.gallery-prev .icon{transform:rotate(180deg)}.gallery-next{right:12px}.gallery-dialog-footer{display:flex;align-items:center;justify-content:space-between;gap:25px;font-size:12px;padding-top:20px}.gallery-dialog-footer>span{flex-shrink:0;color:var(--muted)}
@media(min-width:1700px){.section:not(.about-section){padding-left:max(var(--gutter),calc((100vw - 1500px)/2));padding-right:max(var(--gutter),calc((100vw - 1500px)/2))}.about-section{padding-left:max(0px,calc((100vw - 1700px)/2));padding-right:max(0px,calc((100vw - 1700px)/2))}}
@media(max-width:1150px){.site-header{gap:24px}.brand>span{font-size:20px}.desktop-nav{gap:22px;padding-left:30px;padding-right:30px}.desktop-nav a{font-size:10px}.header-cta{font-size:10px;gap:8px}.hero{min-height:750px;padding-top:140px}.about-section{gap:30px;grid-template-columns:1fr 1.6fr 1fr}.about-copy>p:not(.eyebrow){font-size:12px}.about-copy .about-description{font-size:11px!important}.houses-grid{gap:24px}.card-bottom{align-items:flex-start;flex-direction:column;gap:15px;margin-top:22px}.card-bottom .button{min-height:38px}.rest-layout,.faq-section{gap:45px}.house-content{gap:45px;grid-template-columns:1.5fr 1fr}.house-aside{padding:26px}.footer-columns{gap:45px}.house-gallery{gap:18px}.reviews-section,.location-section{gap:45px}}
@media(max-width:900px){.desktop-nav,.header-cta{display:none}.menu-toggle{display:inline-flex;border-color:#ffffff45}.menu-toggle .icon{filter:invert(1)}.site-header{height:80px}.brand>span{font-size:22px}.hero{height:95svh;min-height:780px;padding-top:135px}.hero h1{font-size:8.9vw}.hero-subtitle{font-size:12px;margin-top:12px;padding-right:0}.hero-low>p{font-size:25px}.section{padding-top:70px;padding-bottom:70px}.about-section{grid-template-columns:1fr 1.8fr;gap:28px;padding-right:var(--gutter)}.about-photo-left{padding-top:0;align-self:center}.about-photo-left img{aspect-ratio:.8;object-position:45% 50%}.about-photo-right{display:none}.about-copy h2{font-size:41px}.houses-grid{gap:18px}.card-photo-link{aspect-ratio:.8}.house-card h3{font-size:30px}.card-meta{font-size:9px;gap:5px}.card-meta>span+span{border:0;padding:0}.card-kicker{font-size:7px;flex-direction:column;gap:6px;margin-top:13px}.card-bottom{gap:17px}.card-bottom .button{font-size:9px;padding:10px 11px;gap:9px;width:100%;justify-content:space-between}.rest-layout{gap:28px;grid-template-columns:1fr 1.1fr}.rest-photo img{aspect-ratio:.8}.amenity-list summary{font-size:12px;gap:15px;min-height:55px;padding:14px 0}.amenity-list details>p{font-size:10px;padding-left:33px}.amenity-number{font-size:9px}.faq-section{gap:30px}.faq-copy h2{font-size:40px;margin-bottom:25px}.faq-photo img{aspect-ratio:.68}.faq-list summary{font-size:11px;padding:12px;gap:10px;min-height:54px}.faq-list details>p{padding:0 36px 16px 12px;font-size:10px}.reviews-section{gap:30px}.reviews-empty{padding-left:25px}.reviews-empty>p{font-size:29px}.location-section{gap:30px}.location-section h2{font-size:42px}.footer-columns{gap:28px;grid-template-columns:1.4fr 1fr 1fr}.site-footer .brand>span{font-size:23px}.house-hero{min-height:740px;height:92svh;padding-top:105px}.house-hero-copy{margin-top:60px}.house-hero h1{font-size:9.5vw}.house-hero-bottom{flex-wrap:wrap}.house-hero-bottom>div{width:100%;margin-bottom:4px}.house-content{grid-template-columns:1fr;gap:30px;padding-top:0}.house-aside{position:static;width:100%;max-width:580px;justify-self:center}.all-photos-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.photo-section-heading h2{font-size:42px}.photo-section-heading>p{font-size:11px}.house-gallery{gap:16px;grid-template-columns:1fr 1fr}.gallery-tile:first-child{grid-column:1/3}.gallery-tile>img{aspect-ratio:1.4}.gallery-tile:first-child>img{aspect-ratio:1.7}.more-houses .houses-grid{gap:28px}.more-houses .card-bottom{flex-direction:row;align-items:end}.more-houses .card-bottom .button{width:auto}}
@media(max-width:600px){:root{--gutter:20px}.section{padding:52px var(--gutter)}h2{font-size:42px}.eyebrow{font-size:8px;letter-spacing:.09em;margin-bottom:14px}.site-header{height:78px}.brand>span{font-size:22px}.brand small{font-size:6px;letter-spacing:.13em}.menu-toggle{width:41px;height:41px}.mobile-nav a{font-size:26px;padding:12px 0}.hero{min-height:830px;height:100svh;max-height:980px;padding:125px var(--gutter) 20px}.hero-photo{object-position:56% 51%}.hero-shade{background:linear-gradient(180deg,#10202c90 0%,#10251a05 53%,#102219b5 100%)}.hero h1{font-size:17vw;line-height:.94;letter-spacing:-.015em;max-width:370px;margin:0 auto}.hero-kicker{font-size:8px;letter-spacing:.11em;margin-bottom:18px}.hero-subtitle{font-size:11px;line-height:1.5;text-align:center;margin-top:20px;font-weight:300}.hero-low{margin-bottom:20px;gap:20px}.hero-low>p{font-size:21px;line-height:1.13}.hero-low .text-link{font-size:10px;gap:13px;min-height:44px}.hero-low .icon{width:16px;height:16px}.button{font-size:11px;min-height:46px;padding:13px 19px;gap:23px}.button .icon{width:17px;height:17px}.about-section{display:grid;grid-template-columns:1fr 1fr;gap:30px 17px;padding:52px var(--gutter)}.about-copy{grid-column:1/3;grid-row:1}.about-copy h2{font-size:42px;white-space:normal;margin-bottom:21px}.about-copy .eyebrow{font-size:8px}.about-copy>p:not(.eyebrow){font-size:12px}.about-copy .about-description{font-size:11px!important;max-width:325px;margin-top:18px}.about-photo-left{grid-column:1;grid-row:2;padding:0;align-self:start}.about-photo-right{display:block;grid-column:2;grid-row:2;padding:30px 0 0}.about-photo-left img,.about-photo-right img{aspect-ratio:.86;object-position:51% 50%}.section-heading{gap:20px;margin-bottom:28px;align-items:end}.section-heading h2{margin-bottom:14px}.section-heading p:not(.eyebrow){font-size:11px}.section-index{font-size:8px;padding-bottom:4px;white-space:nowrap}.houses-grid{grid-template-columns:1fr;gap:38px}.card-photo-link{aspect-ratio:4/3.45}.card-kicker{flex-direction:row;gap:12px;margin-top:14px;margin-bottom:10px;font-size:8px}.house-card h3{font-size:35px;margin-bottom:12px}.card-meta{font-size:10px;gap:5px 13px}.card-meta>span+span{border-left:1px solid #86957e80;padding-left:13px}.card-bottom{flex-direction:row;align-items:flex-end;gap:15px;margin-top:23px}.card-bottom .button{width:auto;font-size:10px;min-height:42px;padding:11px 14px;gap:17px}.card-price{font-size:12px;gap:5px}.card-price>span{font-size:9px}.houses-section .asset-note{font-size:8px;line-height:1.8;margin-top:33px}.rest-layout{grid-template-columns:1fr;gap:24px}.rest-photo img{aspect-ratio:1.22}.rest-photo figcaption{font-size:8px;margin-top:10px}.amenity-list summary{font-size:13px;gap:18px;min-height:56px;padding:15px 0}.amenity-list details>p{font-size:11px;padding-left:36px;padding-right:20px;line-height:1.7}.amenity-number{font-size:9px}.amenity-list>.text-link{margin-top:19px;min-height:44px}.faq-section{grid-template-columns:1fr;gap:30px}.faq-photo img{aspect-ratio:1.35;object-position:50% 46%}.faq-copy h2{font-size:43px;margin-bottom:24px}.faq-list{gap:7px}.faq-list summary{font-size:11px;min-height:55px;padding:13px 14px}.faq-list details>p{font-size:10px;line-height:1.75;padding:0 43px 17px 14px}.faq-list .disclosure-icon{width:20px;height:20px}.reviews-section{grid-template-columns:1fr;gap:24px;padding-top:8px;padding-bottom:45px}.reviews-section h2{font-size:40px}.reviews-empty{border-left:1px solid #b6c0ad;padding-left:22px}.reviews-empty>p{font-size:28px;margin-bottom:13px}.reviews-empty>span{font-size:9px}.location-section{grid-template-columns:1fr;gap:26px}.location-section h2{font-size:43px;max-width:300px}.location-name{font-size:28px;margin-bottom:15px}.location-copy>p:not(.location-name){font-size:11px}.location-copy .text-link{font-size:10px;margin-top:20px;min-height:44px}.site-footer{padding:42px var(--gutter) 20px}.footer-columns{grid-template-columns:1fr 1fr;gap:32px 24px;margin-bottom:31px}.footer-columns>div:first-child{grid-column:1/3;gap:16px}.site-footer .brand>span{font-size:28px}.site-footer .brand small{font-size:7px}.footer-columns>div{gap:13px}.footer-columns p:not(.footer-label){font-size:9px}.footer-columns .footer-label{font-size:7px;letter-spacing:.07em}.footer-columns a:not(.brand){font-size:10px;min-height:24px}.footer-bottom{flex-wrap:wrap;gap:14px 20px;font-size:8px;padding-top:20px}.footer-bottom>span:nth-child(2){order:3;width:100%;font-size:7px}.footer-bottom>a{margin-left:auto}.house-hero{min-height:730px;height:92svh;max-height:930px;padding:106px var(--gutter) 25px}.house-hero-photo{object-position:53% 50%}.breadcrumbs{font-size:8px;gap:9px}.house-hero-copy{margin-top:49px}.house-hero-copy>.eyebrow{font-size:8px;margin-bottom:18px;letter-spacing:.12em}.house-hero h1{font-size:17vw;line-height:.98}.house-hero-copy>p:last-child{font-size:11px;margin-top:18px;line-height:1.5}.house-hero-bottom{gap:12px;align-items:end}.house-hero-bottom>div{margin-bottom:7px}.house-hero-bottom>div>span{font-size:8px}.house-hero-bottom>div>p{font-size:11px;margin-top:8px}.house-hero-bottom .button{font-size:10px;min-height:45px;padding:12px 14px;gap:13px}.house-hero-bottom .button-glass{font-size:9px;gap:10px}.house-hero-bottom .button .icon{width:16px;height:16px}.photo-section-heading{margin-bottom:29px;gap:18px;align-items:start}.photo-section-heading h2{font-size:39px}.photo-section-heading>p{font-size:9px;max-width:80px;padding-top:29px}.house-gallery{gap:22px 16px}.gallery-tile>img{aspect-ratio:1.05}.gallery-tile:first-child>img{aspect-ratio:1.33}.gallery-tile>span{font-size:9px;gap:10px;margin-top:10px}.gallery-tile>span .icon{width:15px;height:15px}.all-photos{margin-top:30px}.all-photos>summary{font-size:12px;padding:22px 0}.all-photos-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 14px;padding-bottom:24px}.photo-thumb>span{font-size:8px}.asset-note{font-size:9px;line-height:1.7;margin-top:20px}.house-content{padding-top:0;gap:28px}.detail-block{padding:28px 0}.detail-block h2{font-size:45px;margin:18px 0 23px}.detail-block h3{font-size:31px;margin-bottom:17px}.detail-block>p:not(.eyebrow){font-size:12px}.room-facts{gap:14px;margin:26px 0 18px}.room-facts span{font-size:9px}.room-facts strong{font-size:12px;line-height:1.5}.detail-list>div{font-size:11px;gap:20px;padding:16px 0;grid-template-columns:1fr 1.4fr}.detail-block .detail-caption{font-size:9px!important}.house-aside{padding:26px}.house-aside h3{font-size:35px}.house-aside .button{margin-top:24px}.more-houses .section-heading{align-items:flex-end;gap:20px}.more-houses .section-heading h2{font-size:41px}.more-houses .section-heading .eyebrow{font-size:7px}.more-houses .text-link{font-size:9px;flex-shrink:0}.more-houses .houses-grid{grid-template-columns:1fr;gap:36px}.more-houses .card-photo-link{aspect-ratio:1.25}.gallery-dialog{width:calc(100% - 20px);max-height:calc(100svh - 20px);padding:15px}.gallery-dialog-header h2{font-size:24px;line-height:1.05}.gallery-dialog-header p{font-size:8px;line-height:1.5;max-width:225px}.gallery-dialog-header .icon-button{width:38px;height:38px;flex-shrink:0}.gallery-stage{height:58svh}.gallery-stage .icon-button{width:38px;height:38px}.gallery-prev{left:5px}.gallery-next{right:5px}.gallery-dialog-footer{font-size:10px;gap:18px;padding-top:15px;line-height:1.5}}
@media(max-width:360px){:root{--gutter:16px}.hero{min-height:830px;padding-top:125px}.hero h1{font-size:17.2vw}.hero-kicker{font-size:7px}.hero-low>p{font-size:19px}.hero-low .text-link{font-size:9px;gap:11px}.about-copy h2{font-size:37px}.card-meta{font-size:9px;gap:5px 10px}.card-meta>span+span{padding-left:10px}.faq-copy h2{font-size:40px}.house-hero{min-height:740px}.house-hero-bottom .button{font-size:9px;padding:11px 12px;gap:10px}.house-hero-bottom .button-glass{font-size:8px;gap:7px}.house-hero-bottom .button .icon{width:14px;height:14px}.photo-section-heading h2{font-size:35px}.room-facts{gap:10px}.room-facts strong{font-size:11px}.more-houses .section-heading h2{font-size:35px}.more-houses .text-link{font-size:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important;animation:none!important}}

/* Verified guest reviews and travel/contact information, 2026-10-08. */
.reviews-section{display:block;padding-top:88px;padding-bottom:88px;border-top:1px solid var(--line)}
.reviews-heading{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:42px}
.reviews-heading h2{font-size:clamp(39px,3.8vw,60px);max-width:760px}
.reviews-intro{font-size:13px;color:var(--muted);margin-top:20px}
.review-rating{display:flex;flex-direction:column;align-items:flex-start;gap:10px;flex-shrink:0;border-left:1px solid var(--line);padding-left:38px}
.rating-number{font-family:var(--serif);font-size:60px;line-height:1.15;color:var(--green)}
.rating-number small{font-family:Onest,Arial,sans-serif;font-size:14px;color:var(--muted)}
.rating-source{display:flex;align-items:center;gap:12px;font-size:11px;color:var(--muted)}
.rating-source .icon{width:15px;height:15px}
.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}
.review-card{display:flex;flex-direction:column;min-width:0;background:var(--paper);border:1px solid #dddcd2;padding:31px 30px 23px;border-radius:2px}
.review-topic{font-size:9px;letter-spacing:.09em;text-transform:uppercase;color:var(--muted);margin-bottom:25px}
.review-card blockquote{margin:0 0 28px;flex:1}
.review-card blockquote p{font-family:var(--serif);font-size:31px;line-height:1.2;color:var(--ink)}
.review-author{display:flex;flex-direction:column;gap:7px;font-size:12px;margin-bottom:22px}
.review-author time{font-size:10px;color:var(--muted)}
.review-source{display:flex;align-items:center;justify-content:space-between;gap:14px;border-top:1px solid var(--line);padding-top:17px;font-size:10px;color:var(--muted);min-height:40px}
.review-source .icon{width:16px;height:16px}
.review-source:hover,.review-rating:hover{color:var(--green);opacity:.75}
.reviews-bottom{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:25px}
.reviews-bottom p{font-size:9px;color:var(--muted);line-height:1.7;max-width:590px}
.reviews-bottom .text-link{font-size:11px;flex-shrink:0}
.location-section{grid-template-columns:minmax(0,.8fr) minmax(0,1.35fr);gap:64px;align-items:center}
.location-intro h2{font-size:clamp(39px,3.8vw,60px);max-width:500px}
.location-description{font-size:13px;color:var(--muted);max-width:350px;margin:27px 0 28px}
.location-intro>.button{min-height:48px}
.location-contact{margin-top:30px;padding-top:25px;border-top:1px solid var(--line);max-width:350px}
.location-contact>p{font-size:11px;color:var(--muted);margin-bottom:8px}
.location-contact .text-link{margin-top:0;font-size:12px}
.location-map{min-width:0;margin:0}
.map-frame{height:440px;background:#e0e4d6;border:1px solid #c5cebb;border-radius:2px;overflow:hidden}
.map-frame iframe{width:100%;height:100%;border:0;display:block}
.location-map figcaption{display:flex;align-items:center;justify-content:space-between;gap:18px;font-size:9px;color:var(--muted);line-height:1.7;margin-top:15px}
.location-map figcaption a{display:flex;align-items:center;gap:9px;flex-shrink:0;font-size:10px;min-height:35px;border-bottom:1px solid var(--line)}
.location-map figcaption .icon{width:15px;height:15px}
@media(max-width:1100px){.review-card{padding:26px 22px 20px}.review-card blockquote p{font-size:28px}.location-section{gap:35px}.reviews-heading h2{max-width:620px}}
@media(max-width:900px){.reviews-heading{gap:28px}.reviews-grid{gap:16px}.review-card{padding:22px 18px 18px}.review-card blockquote p{font-size:25px}.review-source{font-size:9px}.review-rating{padding-left:24px}.location-section{grid-template-columns:1fr;gap:34px}.location-intro{display:grid;grid-template-columns:1.2fr 1fr;gap:0 35px;align-items:start}.location-intro>.eyebrow,.location-intro>h2{grid-column:1}.location-description{grid-column:1;margin-bottom:0}.location-intro>.button{grid-column:2;grid-row:2;justify-self:start;margin-top:3px}.location-contact{grid-column:2;grid-row:3;margin-top:20px;padding-top:20px}.location-map figcaption{font-size:10px}}
@media(max-width:600px){.reviews-section{padding:52px var(--gutter)}.reviews-heading{align-items:flex-start;gap:24px;flex-direction:column;margin-bottom:28px}.reviews-heading h2{font-size:42px}.reviews-intro{font-size:11px;line-height:1.6;margin-top:16px;max-width:290px}.review-rating{padding:0;border:0;flex-direction:row;align-items:center;gap:21px}.rating-number{font-size:44px}.rating-number small{font-size:12px}.rating-source{font-size:10px}.reviews-grid{grid-template-columns:1fr;gap:15px}.review-card{padding:24px 23px 18px}.review-topic{font-size:8px;margin-bottom:18px}.review-card blockquote{margin-bottom:23px}.review-card blockquote p{font-size:30px;max-width:320px}.review-author{font-size:11px;margin-bottom:18px}.review-author time{font-size:9px}.review-source{font-size:10px;min-height:44px;padding-top:15px}.reviews-bottom{flex-direction:column;align-items:flex-start;gap:12px;margin-top:22px}.reviews-bottom p{font-size:8px;max-width:320px}.reviews-bottom .text-link{font-size:10px;min-height:44px}.location-intro{display:block}.location-intro h2{font-size:43px;max-width:350px}.location-description{font-size:11px;margin:22px 0 24px;max-width:320px}.location-contact{margin-top:25px;padding-top:20px;max-width:none}.location-contact>p{font-size:10px}.location-contact .text-link{font-size:11px;min-height:44px}.map-frame{height:350px}.location-map figcaption{font-size:8px;gap:13px;align-items:flex-start;flex-direction:column;margin-top:12px}.location-map figcaption a{font-size:10px;min-height:44px}.location-section{gap:28px}}
@media(max-width:360px){.reviews-heading h2{font-size:37px}.review-card blockquote p{font-size:28px}.location-intro h2{font-size:37px}.map-frame{height:320px}}

/* Confirmed A-frame tariffs and guest limits. */
.card-price small{font-size:9px;color:#c0cbbd;line-height:1.5}
.card-price strong{line-height:1.5}
.tariff-list{margin:0;display:grid;gap:10px}
.tariff-list>div{display:flex;justify-content:space-between;align-items:baseline;gap:15px}
.tariff-list dt{font-size:11px;color:#bdc9b7}
.tariff-list dd{margin:0;font-size:22px;font-weight:300;white-space:nowrap}
.aside-price .tariff-list+small{padding-top:7px}

/* Selected about facts: two house counts and one shared territory note. */
.about-facts{margin:30px auto 0;max-width:480px}
.about-house-counts{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0 0 22px;border-bottom:1px solid var(--line)}
.about-house-counts>div{display:flex;align-items:center;justify-content:center;gap:16px;min-width:0;padding:0 20px}
.about-house-counts>div+div{border-left:1px solid var(--line)}
.about-house-counts dt{font-family:var(--serif);font-weight:400;font-size:88px;line-height:.78;color:var(--green);flex-shrink:0}
.about-house-counts dd{font-size:14px;line-height:1.35;text-align:left;color:var(--muted);margin:0}
.about-territory{font-size:12px;line-height:1.6;color:var(--muted);margin:18px 0 0;text-wrap:balance}
@media(max-width:1150px){.about-house-counts>div{gap:12px;padding:0 14px}.about-house-counts dt{font-size:78px}.about-house-counts dd{font-size:12px}}
@media(max-width:600px){.about-facts{margin-top:26px;max-width:380px}.about-house-counts{padding-bottom:20px}.about-house-counts>div{gap:13px;padding:0 12px}.about-house-counts dt{font-size:80px}.about-house-counts dd{font-size:13px}.about-territory{margin-top:17px;font-size:12px}}
@media(max-width:360px){.about-house-counts>div{gap:10px;padding:0 10px}.about-house-counts dt{font-size:71px}.about-house-counts dd{font-size:12px}}

/* Current pool availability stays clear beside summer photographs. */
.seasonal-hero-note{display:block;margin-top:12px;font-size:12px;line-height:1.6;color:var(--paper)}
.card-season-note{font-size:11px;line-height:1.6;margin:12px 0 0;color:inherit}
.seasonal-photo-note{font-size:12px;line-height:1.7;color:var(--muted);margin:26px 0 0;max-width:650px}
@media(max-width:600px){.seasonal-hero-note{font-size:11px}.seasonal-photo-note{font-size:11px;margin-top:22px}}
/* Keep prices/buttons aligned when one house has an availability note. */
.house-card{display:flex;flex-direction:column}
.house-card .card-bottom{margin-top:auto;padding-top:28px}
@media(max-width:600px){.house-card .card-bottom{padding-top:23px}}
.tariff-list dt{min-width:0;max-width:58%;line-height:1.6}




/* A calm, legible title and one invitation to explore the houses. */
:root{--hero-font:'Golos Text',Onest,Arial,sans-serif}
.hero{height:90svh;min-height:680px;max-height:940px;padding-top:150px;padding-bottom:38px}
.hero-copy{max-width:1200px;margin-top:30px;text-align:center}
.hero h1{font-family:var(--hero-font);font-size:clamp(56px,7.5vw,116px);font-weight:400;line-height:1.16;letter-spacing:.025em;text-wrap:balance}
.hero h1 span{display:inline-block;white-space:nowrap}
.hero-kicker{margin-bottom:22px}
.hero-subtitle{text-align:center;padding:0;margin-top:26px;font-size:14px;line-height:1.65}
.hero-cta{min-height:56px;padding:17px 30px;gap:32px;margin-top:30px;border-radius:3px;font-size:13px;box-shadow:0 5px 20px #101d1920}
.hero-low{margin-bottom:0}
@media(max-width:900px){
 .hero{padding-top:140px;min-height:650px}
 .hero-copy{margin-top:45px}
 .hero h1{font-size:clamp(52px,7.5vw,76px)}
}
@media(max-width:600px){
 .hero{height:88svh;min-height:620px;max-height:850px;padding-top:126px;padding-bottom:30px}
 .hero-copy{margin-top:38px}
 .hero-kicker{font-size:8px;letter-spacing:.12em;margin-bottom:24px}
 .hero h1{font-size:clamp(40px,12.2vw,62px);line-height:1.23;letter-spacing:.025em}
 .hero h1 span{display:block}
 .hero-subtitle{font-size:12px;line-height:1.7;margin-top:25px}
 .hero-cta{margin-top:28px;font-size:12px;padding:16px 26px;min-height:54px;gap:30px}
 .hero-low>p{font-size:23px;line-height:1.3}
}
@media(max-width:360px){
 .hero{min-height:590px;padding-top:112px;padding-bottom:26px}
 .hero-copy{margin-top:30px}
 .hero-kicker{font-size:7px;margin-bottom:20px}
 .hero h1{font-size:clamp(36px,12.2vw,44px)}
 .hero-low>p{font-size:21px}
}

/* Readable text over sunset photography without an opaque text panel. */
.hero .hero-shade{background:linear-gradient(180deg,#08171285 0%,#08171230 23%,#08171266 53%,#08171220 73%,#081712ad 100%),radial-gradient(ellipse 55% 42% at 50% 38%,#07120d60 0%,transparent 100%)}
.hero-copy,.hero-low{color:#fffef8;text-shadow:0 2px 14px #0009}
.hero-kicker{font-size:12px;font-weight:600;line-height:1.6;letter-spacing:.14em}
.hero-subtitle{font-size:18px;font-weight:500;line-height:1.65;max-width:520px;margin-left:auto;margin-right:auto}
.hero-cta{text-shadow:none}
@media(max-width:600px){
 .hero-kicker{font-size:11px;letter-spacing:.1em}
 .hero-subtitle{font-size:16px;line-height:1.6;max-width:330px}
}
@media(max-width:360px){
 .hero-kicker{font-size:10px;letter-spacing:.08em}
 .hero-subtitle{font-size:15px}
}

/* Direct booking contacts replace the inquiry form. */
.contact-section{background:var(--green);color:var(--cream)}
.contact-inner{max-width:920px;margin:auto}
.contact-intro{text-align:center;margin-bottom:36px}
.contact-intro .eyebrow{color:#d2dccb;font-size:10px}
.contact-intro h2{font-size:clamp(42px,4.2vw,68px);margin-bottom:20px}
.contact-intro>p:not(.eyebrow){max-width:570px;margin:auto;font-size:15px;line-height:1.7;color:#e3e9dc}
.contact-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border:1px solid #82917b;gap:1px;background:#82917b}
.contact-card{min-width:0;min-height:136px;display:flex;flex-direction:column;justify-content:center;gap:14px;padding:26px 30px;background:var(--green);transition:background .2s}
.contact-card:hover{background:var(--green-deep)}
.contact-card small{font-size:10px;font-weight:500;letter-spacing:.12em;color:#d2dccb}
.contact-card strong{font-size:clamp(20px,2.3vw,26px);font-weight:400;line-height:1.5;display:flex;align-items:center;justify-content:space-between;gap:16px}
.contact-card .icon{width:20px;height:20px;filter:invert(1)}
@media(max-width:600px){
 .contact-intro{margin-bottom:28px}
 .contact-intro h2{font-size:44px;margin-bottom:18px}
 .contact-intro>p:not(.eyebrow){font-size:14px;max-width:330px}
 .contact-cards{grid-template-columns:1fr}
 .contact-card{min-height:112px;padding:22px 24px;gap:11px}
 .contact-card strong{font-size:22px}
}
@media(max-width:360px){
 .contact-intro h2{font-size:39px}
 .contact-card{padding:20px}
 .contact-card strong{font-size:20px}
}

/* Named telephone contacts share one source on every page. */
.named-phone{display:flex;flex-direction:column;align-items:flex-start;gap:4px}
.named-phone>span:first-child{font-weight:500}
.named-phone>span:last-child{white-space:nowrap}
.footer-columns a.named-phone{align-items:flex-start;gap:4px}
.contact-card-phone small{font-size:13px;letter-spacing:.03em}
.contact-card-max{grid-column:1/-1;min-height:112px}
.mobile-nav{max-height:calc(100svh - 86px);overflow-y:auto}
.mobile-nav .named-phone{flex-direction:column;align-items:flex-start;gap:4px;font-family:Onest,Arial,sans-serif;font-size:18px;line-height:1.5}
.mobile-nav .named-phone>span:first-child{font-size:13px}
.location-contact .named-phone{display:flex;align-items:flex-start;gap:4px;width:max-content;max-width:100%;border-bottom:0;margin-bottom:12px;line-height:1.5}
@media(max-width:720px){.contact-cards{grid-template-columns:1fr}}
@media(max-width:600px){.mobile-nav{max-height:calc(100svh - 78px)}}
