@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Libre+Caslon+Display&display=swap');
:root{--green:#243e32;--cream:#f7f5ee;--muted:#626b61;--line:#dcded4}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--cream);color:var(--green);font-family:'DM Sans',sans-serif;line-height:1.65}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Libre Caslon Display',Georgia,serif;font-weight:400;line-height:1.04;letter-spacing:-.025em}h2{font-size:clamp(42px,4.5vw,67px)}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #b98b46;outline-offset:5px}img{display:block;max-width:100%}.wrap{max-width:1180px;margin:auto;padding-left:40px;padding-right:40px}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:700;margin-bottom:23px}header{height:104px;display:flex;align-items:center;justify-content:space-between;padding:0 4.8%;gap:22px}.brand{display:flex;align-items:center;gap:11px;font-family:Georgia,serif;font-size:24px;white-space:nowrap}.brand small{display:block;font:8px 'DM Sans',sans-serif;letter-spacing:.24em;padding-top:4px}nav{display:flex;gap:28px;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--green);color:white;padding:16px 23px;font-size:12px;font-weight:500;border:1px solid var(--green);transition:background .2s,transform .2s}.button:hover{background:#365546;transform:translateY(-2px)}.button.small{padding:12px 18px}.button.light{background:var(--cream);color:var(--green);border-color:var(--cream)}.button.light:hover{background:#e5e8db}.button.outline{background:transparent;border-color:#96a89c}.hero{height:650px;position:relative;color:white;margin:0 22px;overflow:hidden}.hero>img{width:100%;height:100%;object-fit:cover;object-position:center 55%}.shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,28,20,.74),rgba(10,28,20,.13)),linear-gradient(0deg,rgba(10,28,20,.55),transparent 30%)}.hero-copy{position:absolute;top:13%;left:7%;max-width:700px}.hero h1{font-size:clamp(70px,8vw,112px);margin-bottom:24px}.hero em,.book em{font-weight:400;color:#d4ddbd}.hero-copy>p:not(.eyebrow){font-size:15px;color:#f1f2e9;margin-bottom:30px}.hero-bottom{position:absolute;bottom:28px;left:7%;right:6%;display:flex;justify-content:space-between;font-size:10px;letter-spacing:.13em}.hero-bottom span:last-child{letter-spacing:0;font-size:12px}.intro{padding-top:95px;padding-bottom:95px;border-bottom:1px solid var(--line)}.intro>div{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.intro p:not(.eyebrow){font-size:17px;color:var(--muted);max-width:465px}.stays{padding-top:90px;padding-bottom:100px}.section-head{display:flex;align-items:end;justify-content:space-between;margin-bottom:55px}.side-note{font-size:12px;color:var(--muted);border-left:1px solid #b4bcae;padding-left:20px}.property{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;margin-bottom:90px}.property:last-child{margin-bottom:0}.property.reverse{grid-template-columns:1fr 1.1fr}.reverse .property-photo{order:2}.property-photo{height:520px;position:relative;background:#e1e4d8;overflow:hidden}.property-photo>img{height:100%;width:100%;object-fit:cover;transition:transform .6s}.property-photo:hover>img{transform:scale(1.025)}.photo-label{position:absolute;top:20px;left:20px;background:var(--cream);font-size:8px;letter-spacing:.12em;padding:8px 12px}.property-photo button{position:absolute;bottom:20px;right:20px;border:0;background:var(--cream);color:var(--green);padding:10px 15px;font-size:11px}.property h3{font-size:61px;margin-bottom:23px}.property-copy>p:not(.eyebrow):not(.facts){font-size:14px;color:var(--muted);max-width:390px}.facts{font-size:11px;margin-top:23px;padding-bottom:19px;border-bottom:1px solid var(--line)}.property ul{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:18px 0 22px;margin:0;font-size:11px}.property li:before{content:'✧';margin-right:8px;font-size:15px}.moments{padding:90px 0 85px;background:#e9eddf}.moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:55px}.moment-grid article{border-top:1px solid #bac4ae;padding-top:24px}.moment-grid span{font-size:9px;letter-spacing:.13em}.moment-grid h3{font-size:32px;margin:23px 0 15px}.moment-grid p{font-size:13px;color:#596450}.host{display:grid;grid-template-columns:.75fr 1fr;gap:100px;align-items:center;padding-top:105px;padding-bottom:105px}.host-mark{width:240px;height:240px;border-radius:50%;background:#ece6d8;display:flex;flex-direction:column;align-items:center;justify-content:center;margin:auto;font:110px Georgia,serif;color:#67725b}.host-mark small{font:9px 'DM Sans',sans-serif;letter-spacing:.23em;padding-top:10px}.host p:not(.eyebrow){font-size:14px;color:var(--muted);margin:25px 0;max-width:455px}.text-link{font-size:12px;border-bottom:1px solid #7a8675;padding-bottom:7px}.faq{padding-top:65px;padding-bottom:100px;border-top:1px solid var(--line);display:grid;grid-template-columns:1fr 1.1fr;gap:60px}.faq h2{font-size:52px}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;list-style:none;font-size:13px;padding:20px 30px 20px 0;position:relative}summary:after{content:'+';position:absolute;right:5px;font-size:19px;top:14px}details[open] summary:after{content:'−'}details p{font-size:13px;color:var(--muted);padding:0 18px 22px 0}.book{text-align:center;padding:90px 25px;background:var(--green);color:var(--cream);margin:0 22px}.book h2{font-size:clamp(50px,6vw,80px)}.book>p:not(.eyebrow){font-size:14px;color:#c7d1c5;margin-top:25px}.booking-choices{display:flex;justify-content:center;gap:14px;flex-wrap:wrap;margin-top:30px}.book small{display:block;font-size:10px;color:#c7d1c5;margin-top:22px}footer{padding:48px 5%;display:grid;grid-template-columns:1fr 1fr;gap:14px;font-size:11px}footer .footer-brand{font:23px Georgia,serif}footer>p{text-align:right;color:var(--muted)}footer>div{display:flex;gap:25px}footer small{text-align:right;color:var(--muted);font-size:10px}dialog{border:0;background:var(--cream);color:var(--green);padding:20px;width:min(900px,92vw);max-height:94vh}dialog::backdrop{background:rgba(7,19,13,.86)}.dialog-top{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px}.dialog-top h2{font-size:28px}.dialog-top button,.gallery-controls button{background:transparent;border:1px solid var(--line);padding:4px 14px;font-size:22px;color:var(--green)}#gallery-image{width:100%;height:65vh;object-fit:contain;background:#e7e8de}.gallery-controls{display:flex;align-items:center;justify-content:space-between;margin-top:15px;font-size:12px}
@media(max-width:850px){header{height:86px;padding:0 24px}header nav{display:none}.wrap{padding-left:26px;padding-right:26px}.hero{margin:0 12px;height:620px}.hero-copy{top:16%}.hero h1{font-size:82px}.hero-bottom{display:block}.hero-bottom span{display:block;padding-top:7px}.intro>div{gap:35px}.property{gap:32px}.property-photo{height:460px}.property h3{font-size:48px}.moment-grid{gap:25px}.host{gap:40px}.host-mark{height:190px;width:190px}.faq{gap:35px}.book{margin:0 12px}}@media(max-width:600px){header{padding:0 18px;gap:12px}.brand{font-size:16px;gap:6px}.brand small{font-size:6px}.button.small{font-size:10px;padding:10px 12px}.hero{height:600px}.hero h1{font-size:72px}.hero-copy{left:24px;right:20px;top:17%}.hero-copy .eyebrow{font-size:8px}.hero-copy>p:not(.eyebrow){font-size:13px}.hero-bottom{left:24px}.intro{padding-top:65px;padding-bottom:65px}.intro>div{grid-template-columns:1fr;gap:25px}.intro p:not(.eyebrow){font-size:15px}.stays{padding-top:65px;padding-bottom:65px}.section-head{margin-bottom:32px}.section-head h2{font-size:41px}.side-note{display:none}.property,.property.reverse{grid-template-columns:1fr;gap:28px;margin-bottom:65px}.reverse .property-photo{order:0}.property-photo{height:380px}.property h3{font-size:50px}.property-copy .eyebrow{margin-bottom:14px}.property .button{width:100%}.moments{padding:65px 0}.moment-grid{grid-template-columns:1fr;gap:28px;margin-top:35px}.host{grid-template-columns:1fr;gap:35px;padding-top:65px;padding-bottom:65px}.host-mark{height:140px;width:140px;font-size:65px;margin:0}.faq{grid-template-columns:1fr;gap:25px;padding-top:50px;padding-bottom:65px}.faq h2{font-size:44px}.book{padding:65px 24px}.booking-choices{flex-direction:column}.book .button{width:100%}footer{grid-template-columns:1fr;padding:35px 26px}footer>p,footer small{text-align:left}footer>div{flex-wrap:wrap;gap:15px}.eyebrow{font-size:9px}#gallery-image{height:54vh}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Simplified collection and marketing landing pages */
.collection-intro{padding-top:55px;padding-bottom:45px;text-align:center}.collection-intro h1{font-size:clamp(55px,6vw,85px)}.collection-intro em{color:#71805b}.collection-intro>p:last-child{font-size:16px;color:var(--muted);margin-top:22px}.collection-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}.stay-card{background:#eeeede}.stay-card>a{display:block;overflow:hidden}.stay-card img{width:100%;height:310px;object-fit:cover}.stay-card>div{padding:28px}.stay-card h2{font-size:40px;margin-bottom:15px}.stay-card .eyebrow{margin-bottom:12px}.stay-card .facts{margin:16px 0 22px}.reassurance{text-align:center;padding-top:65px;padding-bottom:65px}.reassurance h2{font-size:36px}.reassurance p{max-width:620px;margin:18px auto 24px;color:var(--muted);font-size:14px}.property-top{padding-top:30px}.property-heading h1{font-size:clamp(46px,5.5vw,72px)}.property-heading .eyebrow{margin-bottom:12px}.property-heading>p:not(.eyebrow){font-size:18px;margin-top:14px}.property-heading .facts{margin-top:12px;border:0;padding-bottom:18px;font-size:13px}.property-lead{position:relative}.property-lead>img{width:100%;height:440px;object-fit:cover}.property-lead button{position:absolute;bottom:18px;right:18px;background:var(--cream);border:0;padding:12px 18px;color:var(--green);font-size:12px}.booking-summary{display:flex;justify-content:space-between;align-items:center;gap:40px;padding:25px 0 35px}.booking-summary>p{max-width:520px;font-size:16px;color:var(--muted)}.booking-summary>div{text-align:center;flex-shrink:0}.booking-summary small{display:block;font-size:10px;margin-top:7px;color:var(--muted)}.three-reasons{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding-top:20px;padding-bottom:45px}.three-reasons article{border-top:1px solid var(--line);padding-top:20px}.three-reasons h2{font-size:27px;line-height:1.15}.three-reasons p{font-size:13px;color:var(--muted);margin-top:12px}.simplified .faq{padding-top:45px;padding-bottom:45px}.simplified .faq h2{font-size:42px;margin-bottom:25px}.final-book{display:flex;justify-content:space-between;align-items:center;gap:25px;padding-top:35px;padding-bottom:35px;border-top:1px solid var(--line)}.final-book h2{font-size:35px}.final-book p{font-size:13px;margin-top:12px}.other-stay{font-size:12px;padding-top:15px;padding-bottom:35px;color:var(--muted)}@media(max-width:600px){.collection-intro{padding-top:30px;padding-bottom:30px}.collection-grid{grid-template-columns:1fr;gap:25px}.stay-card img{height:270px}.stay-card h2{font-size:34px}.stay-card>div{padding:23px}.collection-intro>p:last-child{font-size:14px}.property-heading h1{font-size:47px}.property-lead>img{height:300px}.booking-summary{display:block;padding-top:18px}.booking-summary>div{margin-top:20px}.booking-summary .button{width:100%}.three-reasons{grid-template-columns:1fr;gap:18px}.three-reasons article{padding-top:15px}.three-reasons h2{font-size:27px}.final-book{display:block}.final-book .button{width:100%;margin-top:22px}.reassurance{padding-top:45px;padding-bottom:45px}}

.photo-opening{margin-top:4px}.photo-mosaic{display:grid;grid-template-columns:2fr 1fr 1fr;grid-template-rows:205px 205px;gap:8px}.photo-tile{position:relative;padding:0;border:0;background:#e4e7dd;overflow:hidden;text-align:left}.photo-tile.tile-0{grid-row:span 2}.photo-tile img{width:100%;height:100%;object-fit:cover;transition:transform .3s}.photo-tile:hover img{transform:scale(1.025)}.photo-tile span{position:absolute;left:0;right:0;bottom:0;padding:25px 12px 9px;color:white;font-size:10px;line-height:1.4;background:linear-gradient(transparent,rgba(0,0,0,.72))}.photo-toolbar{display:flex;justify-content:flex-end;align-items:center;gap:12px;padding-top:10px}.photo-toolbar>button{background:transparent;border:1px solid #bac1b2;padding:8px 14px;font-size:11px;color:var(--green)}.swipe-hint{display:none}.simplified .property-heading>p:not(.eyebrow){max-width:700px}.simplified .booking-summary{padding-bottom:30px}.simplified .faq{margin-top:12px}@media(max-width:700px){.photo-mosaic{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;gap:8px;scrollbar-width:thin}.photo-tile{flex:0 0 90%;height:320px;scroll-snap-align:start}.photo-tile span{font-size:12px}.photo-toolbar{justify-content:space-between}.swipe-hint{display:inline;font-size:10px;color:var(--muted)}.photo-toolbar>button{font-size:10px;padding:8px 10px}.property-heading>p:not(.eyebrow){font-size:16px}}

:root{--ldg-bnb-background:#ffffff;--ldg-bnb-border-radius:.42em;--ldg-bnb-box-shadow:0px 24px 54px 0px rgba(0,0,0,.1);--ldg-bnb-padding:14px;--ldg-bnb-input-background:#ffffff;--ldg-bnb-button-border-radius:3.58em;--ldg-bnb-color-primary:#fac600;--ldg-bnb-color-primary-lighter:#fde380;--ldg-bnb-color-primary-darker:#7d6300;--ldg-bnb-color-primary-contrast:#333333;--ldg-component-calendar-cell-selection-bg-color:#fac600;--ldg-component-calendar-cell-selection-color:#333333;--ldg-component-calendar-cell-selected-bg-color:#fde380;--ldg-component-calendar-cell-selected-color:#333333;--ldg-bnb-font-family:inherit}#lodgify-book-now-box{width:100%}.embedded-booking{padding-top:20px;padding-bottom:35px}.embedded-booking h2{font-size:35px;margin-bottom:20px}.widget-fallback{font-size:12px;margin-top:15px}.widget-fallback a{text-decoration:underline}

/* Clear booking hierarchy and accessible controls */
.intro-booking{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-top:25px}.button.secondary{background:transparent;color:var(--green);border-color:var(--green)}.button.secondary:hover{background:#e9eddf}.card-actions{display:flex;align-items:center;gap:20px;flex-wrap:wrap}.card-actions .text-link{font-size:13px}.button{min-height:44px;font-size:14px}.button.small{font-size:13px}nav a,footer a{display:inline-flex;align-items:center;min-height:44px}nav{font-size:14px}.photo-toolbar>button,.gallery-controls button,.dialog-top button{min-height:44px;min-width:44px}summary{min-height:48px;font-size:14px}.text-link{display:inline-block;line-height:1.6}#booking-widget{scroll-margin-top:25px}.skip-link{position:fixed;left:15px;top:-100px;background:var(--green);color:white;padding:12px 20px;z-index:2000}.skip-link:focus{top:12px}.stay-card h2{font-size:clamp(30px,3vw,40px)}@media(max-width:600px){.card-actions{gap:16px}.card-actions .button{width:100%}.intro-booking{display:grid;grid-template-columns:1fr 1fr;gap:10px}.intro-booking .button{padding:12px 10px;font-size:13px}.collection-intro{padding-bottom:28px}}

.guest-review{padding-top:0;padding-bottom:30px}.guest-review blockquote{margin:0;font:28px/1.3 'Libre Caslon Display',Georgia,serif}.guest-review p{font-size:12px;margin-top:10px;color:var(--muted)}.guest-review a{text-decoration:underline}.booking-status{font-size:14px;color:var(--muted);padding:10px 0}.mobile-booking{display:none}.photo-tile span{font-size:12px}.simplified details p{font-size:14px}.simplified footer{font-size:12px}html{overflow-wrap:break-word}button,a{-webkit-tap-highlight-color:rgba(36,62,50,.15)}@media(max-width:600px){body:has(.mobile-booking){padding-bottom:76px}.mobile-booking{display:block;position:fixed;bottom:0;left:0;right:0;padding:10px 20px;background:var(--cream);border-top:1px solid var(--line);z-index:40}.mobile-booking .button{width:100%}.property-heading .facts{font-size:13px}.guest-review blockquote{font-size:26px}}

/* Walkthrough review: compact first screen, integrated booking, clear gallery controls */
:root{--ldg-bnb-color-primary:#243e32;--ldg-bnb-color-primary-lighter:#e2e9dc;--ldg-bnb-color-primary-darker:#182c23;--ldg-bnb-color-primary-contrast:#ffffff;--ldg-bnb-button-border-radius:.3em;--ldg-bnb-box-shadow:0 8px 28px rgba(20,45,30,.08);--ldg-component-calendar-cell-selection-bg-color:#243e32;--ldg-component-calendar-cell-selection-color:#ffffff;--ldg-component-calendar-cell-selected-bg-color:#e2e9dc;--ldg-component-calendar-cell-selected-color:#243e32}
.simplified header{height:84px;background:var(--cream);position:sticky;top:0;z-index:60;border-bottom:1px solid rgba(36,62,50,.1)}html{scroll-padding-top:104px}#booking-widget{scroll-margin-top:104px}.collection-intro{padding-top:32px;padding-bottom:32px}.collection-intro h1{font-size:clamp(48px,5vw,66px)}.collection-intro>p:last-of-type{margin-top:18px}.intro-booking{margin-top:20px}.stay-card img{height:280px}.property-top{padding-top:24px}.property-heading h1{font-size:clamp(42px,4.5vw,58px)}.property-heading>p:not(.eyebrow){font-size:17px;margin-top:10px}.property-heading .facts{padding-bottom:14px}.photo-mosaic{grid-template-rows:175px 175px}.cabin-cover img{object-position:50% 23%}.stay-card:first-child img{object-position:50% 23%}.booking-summary{padding:18px 0 24px}.embedded-booking{display:grid;grid-template-columns:1fr minmax(320px,440px);align-items:start;column-gap:48px;row-gap:10px;padding-top:30px;padding-bottom:40px;border-top:1px solid var(--line)}.booking-intro{grid-column:1;grid-row:1 / span 3}.booking-intro h2{font-size:44px;line-height:1.05}.booking-intro .eyebrow{margin-bottom:16px}.booking-intro p{font-size:14px;color:var(--muted);margin-top:20px}.booking-intro small{display:block;font-size:12px;margin-top:16px;color:var(--muted)}#booking-status,#lodgify-book-now-box,.widget-fallback{grid-column:2}.widget-fallback{margin-top:4px;font-size:12px}.booking-status[hidden]{display:none}.simplified dialog{width:min(1100px,94vw);padding:20px;max-height:94vh}.simplified #gallery-image{height:70vh}.dialog-top button{font-size:14px;min-height:44px}.gallery-controls{gap:16px}.gallery-controls button{font-size:14px;white-space:nowrap;min-height:44px}.gallery-controls #photo-count{font-size:13px;text-align:center}.photo-toolbar>button{font-size:12px}.simplified .faq h2{font-size:36px}.simplified .faq{padding-top:32px;padding-bottom:32px}.guest-review{padding-bottom:26px}@media(max-width:700px){.simplified header{height:76px}.collection-intro{padding-top:26px;padding-bottom:26px}.collection-intro h1{font-size:50px}.embedded-booking{display:block;padding-top:25px}.booking-intro{margin-bottom:22px}.booking-intro h2{font-size:36px}.booking-intro h2 br{display:none}.booking-intro p{margin-top:12px}.booking-intro small{margin-top:10px}.photo-tile{height:300px}.simplified #gallery-image{height:58vh}.gallery-controls{flex-wrap:wrap;gap:10px}.gallery-controls #photo-count{flex-basis:100%;order:-1}.gallery-controls button{flex:1}.simplified dialog{padding:14px}.stay-card img{height:270px}}

/* Water-led photography and decision-first facts */
.cabin-cover img{object-position:50% 82%}.stay-card:first-child img{object-position:50% 82%}.collection-intro h1{font-size:clamp(43px,4.4vw,62px)}.property-heading .facts{font-size:14px;line-height:1.8;max-width:760px}.photo-tile:first-child span{max-width:100%;font-size:12px}.stay-card .facts{font-size:12px}.booking-summary>p{font-size:17px}@media(max-width:600px){.collection-intro h1{font-size:42px}.property-heading .facts{font-size:13px}.photo-tile:first-child span{font-size:11px}}

.long-stay-essentials{padding-top:24px;padding-bottom:35px;border-top:1px solid var(--line)}.long-stay-essentials h2{font-size:38px}.long-stay-essentials>p:not(.eyebrow){font-size:15px;color:var(--muted);margin-top:16px}.long-stay-essentials ul{display:grid;grid-template-columns:1fr 1fr;gap:10px 25px;padding:20px 0 20px 18px;font-size:14px;max-width:700px}@media(max-width:600px){.long-stay-essentials ul{grid-template-columns:1fr}.long-stay-essentials h2{font-size:32px}}

/* Practical benefits visible before the monthly booking decision. */
.property-heading .essential-strip{font-size:14px;color:var(--muted);margin:0 0 18px;line-height:1.7}.photo-tile img{color:var(--green)}

.contact-page{padding-top:45px;padding-bottom:60px;min-height:65vh}.contact-page h1{font-size:clamp(38px,5vw,60px);max-width:800px}.contact-page>p:not(.eyebrow){max-width:650px;margin-top:20px;color:var(--muted)}.contact-card{max-width:700px;margin-top:32px;padding:28px;background:#eeeede}.contact-page h2{font-size:32px;margin-bottom:20px}.contact-card label{display:block;font-size:14px;margin-bottom:8px}.contact-card input{width:100%;min-width:0;padding:12px;border:1px solid #7a8675;background:var(--cream);color:var(--green);font:inherit;font-size:18px;border-radius:0}.contact-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:20px}.contact-card #contact-status{margin-top:18px;font-size:14px}.contact-dates{margin-top:38px}@media(max-width:600px){.contact-page{padding-top:28px}.contact-card{padding:20px}.contact-actions>*{width:100%}.contact-card input{font-size:16px}}

/* Keep mobile booking available without duplicating the header action. */
@media(max-width:600px){body:has(.mobile-booking) header>.button{display:none}body:has(.mobile-booking) header nav{display:flex}body:has(.mobile-booking) header nav a:first-child{display:none}body:has(.mobile-booking) header nav a:last-child{display:inline-flex;font-size:14px}}
