:root{--forest:#173f33;--forest-dark:#0d2b22;--cream:#f5f0e5;--paper:#fcfaf5;--rust:#9f4935;--ink:#20261f;--line:rgba(32,38,31,.18)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:"Helvetica Neue",Arial,sans-serif;font-size:16px;line-height:1.6}img{display:block;width:100%;height:100%;object-fit:cover}a{color:inherit;text-decoration:none}
.site-header{height:104px;padding:0 clamp(22px,5vw,76px);display:flex;align-items:center;justify-content:space-between;background:var(--paper);position:relative;z-index:10}.brand{display:flex;align-items:center;gap:15px;text-transform:uppercase;font-size:13px;font-weight:600;letter-spacing:.11em;line-height:1.2}.brand-logo{width:164px;height:88px;object-fit:contain}.brand-location{font-size:9px;font-weight:600;opacity:.62;letter-spacing:.15em;max-width:110px}.site-header nav{display:flex;align-items:center;gap:30px;font:400 15px/1.2 Georgia,serif;color:var(--forest);letter-spacing:.01em}.site-header nav>a:not(.nav-cta){padding:8px 0;border-bottom:1px solid transparent;transition:.2s}.site-header nav>a:not(.nav-cta):hover{color:var(--rust);border-bottom-color:currentColor}.nav-cta{background:var(--forest);color:var(--paper);padding:11px 18px;border-radius:2px;font-size:14px}.menu-button{display:none;border:0;background:transparent;color:var(--forest);font:400 15px Georgia,serif}
.hero{min-height:calc(100vh - 104px);position:relative;color:white;display:flex;align-items:flex-end;overflow:hidden}.hero>img{position:absolute;inset:0;filter:saturate(.82);object-position:center 45%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,29,23,.88) 0%,rgba(10,29,23,.43) 52%,rgba(10,29,23,.05) 100%),linear-gradient(0deg,rgba(0,0,0,.35),transparent 45%)}.hero-copy{position:relative;z-index:1;padding:clamp(60px,8vw,120px) clamp(24px,8vw,120px);max-width:920px}.eyebrow,.section-label{text-transform:uppercase;letter-spacing:.18em;font-size:12px;font-weight:600}.eyebrow{color:#ecd8bd;margin-bottom:24px}.hero h1,.statement h2,.story h2,.location h2,.booking h2,.amenities h2{font-family:Georgia,serif;font-weight:400;line-height:.97;letter-spacing:-.035em;margin:0}.hero h1{font-size:clamp(58px,8.4vw,124px)}.intro{font:400 clamp(18px,2vw,25px)/1.5 Georgia,serif;max-width:650px;margin:28px 0 38px;color:#f4ecdf}.hero-actions{display:flex;flex-direction:column;align-items:stretch;gap:14px;width:max-content}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;padding:15px 20px;font-size:13px;font-weight:600;border-radius:2px;transition:.2s}.button-light{background:var(--paper);color:var(--ink)}.button:hover{transform:translateY(-2px)}.hero-discover{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:12px 2px 2px;border-top:1px solid rgba(255,255,255,.42);color:#f4ecdf;font:400 17px/1.2 Georgia,serif;transition:.2s}.hero-discover:hover{color:white;padding-left:5px}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid currentColor;padding-bottom:3px}.hero-facts{position:absolute;right:clamp(24px,5vw,76px);bottom:42px;z-index:1;display:flex;border:1px solid rgba(255,255,255,.35);background:rgba(15,42,33,.5);backdrop-filter:blur(8px)}.hero-facts span{padding:17px 25px;border-right:1px solid rgba(255,255,255,.25);font-size:12px}.hero-facts span:last-child{border:0}.hero-facts strong{font:500 27px Georgia,serif;margin-right:5px}
.statement{padding:clamp(95px,14vw,190px) clamp(24px,13vw,195px);display:grid;grid-template-columns:1fr 1.3fr;gap:7vw;align-items:start}.section-label{color:var(--rust);margin:0 0 24px}.statement h2{font-size:clamp(48px,6vw,86px);grid-column:1/-1}.statement>p:last-child{grid-column:2;font:400 clamp(19px,2vw,27px)/1.65 Georgia,serif;margin:20px 0 0}
.gallery{display:grid;grid-template-columns:1.7fr 1fr;grid-template-rows:390px 390px;gap:12px;padding:0 12px}.gallery figure{position:relative;margin:0;overflow:hidden}.gallery-main{grid-row:1/3}.gallery img{transition:transform .7s}.gallery figure:hover img{transform:scale(1.025)}.gallery figcaption{position:absolute;left:20px;bottom:18px;background:rgba(252,250,245,.92);padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.amenities{padding:clamp(90px,12vw,165px) clamp(24px,9vw,135px);display:grid;grid-template-columns:1fr 1.25fr;gap:10vw;background:var(--cream)}.amenities h2{font-size:clamp(50px,6vw,80px)}.amenities ul{list-style:none;padding:0;margin:0;border-top:1px solid var(--line)}.amenities li{padding:17px 0;border-bottom:1px solid var(--line);font:400 clamp(18px,2vw,25px) Georgia,serif}.amenities li span{font:500 10px "Helvetica Neue",Arial,sans-serif;color:var(--rust);margin-right:22px}
.story{display:grid;grid-template-columns:1fr 1fr;min-height:850px}.story-image{min-height:600px}.story-copy{background:var(--forest);color:white;padding:clamp(70px,9vw,140px);display:flex;flex-direction:column;justify-content:center}.story h2{font-size:clamp(52px,6vw,82px);margin-bottom:36px}.story-copy>p:not(.section-label){font:400 19px/1.7 Georgia,serif;color:#e6eadf}.story aside{font-size:12px;color:#d4dbc9;border-top:1px solid rgba(255,255,255,.22);padding-top:22px;margin-top:26px}.story-text{display:block;min-height:0;background:var(--forest)}.story-text .story-copy{max-width:1080px;margin:0 auto}.story-media{display:grid;grid-template-columns:repeat(2,minmax(0,576px));justify-content:center;gap:12px;padding:12px;background:var(--paper)}.story-media figure{width:100%;max-width:576px;aspect-ratio:3/4;margin:0;position:relative;overflow:hidden}.story-media figcaption{position:absolute;left:20px;bottom:18px;background:rgba(252,250,245,.92);padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.review{padding:clamp(95px,14vw,185px) clamp(24px,11vw,165px);text-align:center;background:var(--rust);color:#fff4e8}.rating{display:flex;justify-content:center;align-items:center;gap:15px;margin-bottom:44px}.rating strong{font:400 48px Georgia,serif}.rating span{text-align:left;font-size:11px;text-transform:uppercase;letter-spacing:.13em;line-height:1.4}.review blockquote{font:400 clamp(31px,4.5vw,64px)/1.25 Georgia,serif;max-width:1100px;margin:0 auto 34px}.review>p{font-size:11px;text-transform:uppercase;letter-spacing:.13em}
.location{display:grid;grid-template-columns:1.1fr .9fr;min-height:760px}.location-copy{padding:clamp(80px,9vw,140px);display:flex;flex-direction:column;justify-content:center}.location h2{font-size:clamp(54px,7vw,96px);margin-bottom:35px}.location-copy>p:not(.section-label){font:400 20px/1.7 Georgia,serif;max-width:620px}.distances{display:flex;gap:35px;margin:32px 0 38px;padding:23px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.distances span{font-size:12px}.distances strong{display:block;font:400 29px Georgia,serif}.dark{align-self:flex-start;color:var(--forest)}.location-image{margin:0;position:relative;min-width:0}.location-image figcaption{position:absolute;left:20px;bottom:18px;background:rgba(252,250,245,.92);padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
.booking{text-align:center;background:var(--cream);padding:clamp(95px,13vw,180px) 24px}.booking h2{font-size:clamp(58px,7vw,102px)}.booking>p:not(.section-label):not(.booking-note){font:400 20px/1.6 Georgia,serif;margin:30px auto;max-width:700px}.button-dark{background:var(--forest);color:white}.button-outline{border:1px solid var(--forest);color:var(--forest)}.booking-actions{display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.booking-note{max-width:650px;margin:22px auto 0!important;font-size:12px!important;line-height:1.65!important;color:#616a61}.hosts{display:flex;justify-content:center;gap:60px;margin:55px auto 0;padding-top:28px;border-top:1px solid var(--line);max-width:720px}.hosts p{margin:0}.hosts strong,.hosts span{display:block}.hosts strong{font:400 19px Georgia,serif}.hosts span{margin-top:4px;font-size:10px;text-transform:uppercase;letter-spacing:.14em;color:#687168}
footer{background:var(--forest-dark);color:white;padding:48px clamp(24px,6vw,90px);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:25px;font-size:12px;text-align:center}footer p{opacity:.7}.footer-brand .brand-logo{background:var(--paper);border-radius:2px}.footer-brand .brand-location{color:white}footer>div:last-child{display:flex;justify-content:center;gap:25px;flex-wrap:wrap;opacity:.7}
@media (max-width:800px){.site-header{height:84px}.brand-logo{width:124px;height:68px}.brand-location{display:none}.menu-button{display:block}.site-header nav{display:none;position:absolute;left:0;right:0;top:84px;padding:25px;background:var(--paper);flex-direction:column;align-items:flex-start}.site-header nav.open{display:flex}.hero{min-height:calc(100svh - 84px)}.hero-copy{padding-bottom:135px}.hero h1{font-size:clamp(50px,16vw,76px)}.hero-facts{left:24px;right:auto;bottom:28px}.hero-facts span{padding:12px 15px}.statement{grid-template-columns:1fr}.statement>p:last-child{grid-column:1}.gallery{grid-template-columns:1fr;grid-template-rows:520px 360px 360px}.gallery-main{grid-row:auto}.amenities,.story,.location{grid-template-columns:1fr}.story-copy,.location-copy{padding-left:25px;padding-right:25px}.story-media{grid-template-columns:1fr}.story-media figure{justify-self:center}.location-image{height:600px}.distances{gap:18px;flex-wrap:wrap}.review blockquote{font-size:34px}.hosts{gap:25px;flex-direction:column}.footer-brand{margin-bottom:10px}}
@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.gallery img,.button{transition:none}}
.warmth{display:grid;grid-template-columns:1fr 1fr;background:var(--forest-dark);color:white}.warmth-copy{padding:clamp(80px,10vw,150px);display:flex;flex-direction:column;justify-content:center}.warmth h2{font:400 clamp(50px,6vw,84px)/1 Georgia,serif;letter-spacing:-.035em;margin:0 0 34px}.warmth-copy>p:not(.section-label){font:400 20px/1.7 Georgia,serif;color:#e8e5d9}.warmth .warmth-note{font:500 12px/1.6 "Helvetica Neue",Arial,sans-serif!important;text-transform:uppercase;letter-spacing:.13em;color:#d7bda6!important;margin-top:22px}.warmth figure{margin:0;min-height:720px;position:relative}.warmth figure img{object-position:center}.warmth figcaption{position:absolute;right:18px;bottom:18px;background:rgba(13,43,34,.9);padding:8px 12px;font-size:10px;text-transform:uppercase;letter-spacing:.1em}
@media (max-width:800px){.warmth{grid-template-columns:1fr}.warmth-copy{padding-left:25px;padding-right:25px}.warmth figure{min-height:590px}}
.faq{padding:clamp(90px,12vw,165px) clamp(24px,9vw,135px);display:grid;grid-template-columns:.8fr 1.2fr;gap:10vw;background:var(--paper)}.faq-heading{position:sticky;top:40px;align-self:start}.faq h2{font:400 clamp(50px,6vw,82px)/1 Georgia,serif;letter-spacing:-.035em;margin:0 0 28px}.faq-heading>p:last-child{font:400 18px/1.6 Georgia,serif;max-width:360px}.faq-list{border-top:1px solid var(--line)}.faq details{border-bottom:1px solid var(--line);padding:0}.faq summary{cursor:pointer;list-style:none;padding:24px 42px 24px 0;font:400 clamp(19px,2vw,25px)/1.3 Georgia,serif;position:relative}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";position:absolute;right:4px;top:20px;font:300 28px Arial,sans-serif;color:var(--rust)}.faq details[open] summary:after{content:"–"}.faq details p{max-width:680px;margin:0;padding:0 45px 25px 0;color:#555f57}
.faq-garden{height:clamp(420px,55vw,760px);margin:0;position:relative}.faq-garden img{object-position:center}.faq-garden figcaption{position:absolute;left:20px;bottom:18px;background:rgba(252,250,245,.92);padding:8px 12px;font-size:11px;text-transform:uppercase;letter-spacing:.1em}
@media (max-width:800px){.faq{grid-template-columns:1fr}.faq-heading{position:static}.faq{gap:45px}}
.legal-page{background:var(--cream)}.legal-content{max-width:920px;margin:0 auto;padding:clamp(80px,10vw,140px) 24px}.legal-content h1{font:400 clamp(64px,9vw,118px)/.95 Georgia,serif;letter-spacing:-.04em;margin:0 0 70px}.terms-page .legal-content h1{font-size:clamp(48px,7.5vw,92px);hyphens:manual}.legal-content section{display:grid;grid-template-columns:260px 1fr;gap:45px;padding:28px 0;border-top:1px solid var(--line)}.legal-content h2{font:400 22px/1.3 Georgia,serif;margin:0}.legal-content p{margin:0;color:#465048}.legal-content a{text-decoration:underline;text-underline-offset:3px}.legal-page footer a{text-decoration:none}
@media (max-width:700px){.legal-content section{grid-template-columns:1fr;gap:12px}.legal-page .site-header .nav-cta{font-size:11px;padding:9px 11px}.legal-content h1{margin-bottom:45px}}
