:root{--paper:#f7f5ef;--ink:#233b32;--muted:#5c655f;--line:#d8dcd3;--green:#254e3d;--cream:#e8e8dd;--white:#fff;--gold:#a97c40;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.7 var(--sans)}body.locked{overflow:hidden}img{display:block;width:100%;height:auto}a{color:inherit;text-underline-offset:5px}a:hover{color:var(--green)}button,input,textarea,select{font:inherit}button,a,input,textarea,summary{touch-action:manipulation}button{cursor:pointer}button:disabled{cursor:default}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.12}h1{font-size:clamp(2.8rem,6.4vw,6.6rem);letter-spacing:-.045em}h2{font-size:clamp(2.1rem,4vw,3.8rem);letter-spacing:-.035em}h3{font-size:1.6rem}p{margin-bottom:1.3em}small,.small{font-size:.875rem}a:focus-visible,button:focus-visible,summary:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #ba793a;outline-offset:5px}.skip{position:fixed;top:-100px;left:20px;z-index:200;background:white;padding:12px}.skip:focus{top:12px}.wrap{width:min(1280px,calc(100% - 96px));margin-inline:auto}.narrow{max-width:850px}.eyebrow{text-transform:uppercase;letter-spacing:.18em;font-size:.76rem;font-weight:650;margin-bottom:20px}.muted{color:var(--muted)}.lead{font-size:1.15rem;max-width:640px}.site-header{position:sticky;top:0;z-index:30;background:rgba(247,245,239,.98);border-bottom:1px solid var(--line)}.header-inner{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{text-decoration:none;display:flex;flex-direction:column;line-height:1.05;flex-shrink:0}.brand strong{font:400 1.85rem var(--serif);letter-spacing:-.035em}.brand span{font-size:.65rem;letter-spacing:.35em;text-transform:uppercase;margin-top:5px}.nav{display:flex;align-items:center;gap:24px}.nav a{text-decoration:none;font-size:.9rem;white-space:nowrap}.nav a[aria-current=page]{text-decoration:underline}.button{display:inline-flex;justify-content:center;align-items:center;gap:18px;min-height:52px;padding:13px 25px;background:var(--green);color:white;border:1px solid var(--green);text-decoration:none;font-size:.9rem;font-weight:600;line-height:1.4;border-radius:2px}.button:hover{background:#173f2e;color:white}.button.light{background:var(--paper);color:var(--ink);border-color:var(--paper)}.button.outline{background:transparent;border-color:var(--line);color:var(--ink)}.button.outline:hover{background:var(--cream)}.menu-toggle{display:none;background:transparent;border:1px solid var(--line);padding:10px 15px;min-height:44px}.hero{position:relative;min-height:620px;display:flex;align-items:center;color:white;overflow:hidden}.hero>img{position:absolute;inset:0;height:100%;object-fit:cover;object-position:center 53%}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(14,33,24,.76),rgba(14,33,24,.28) 65%,rgba(14,33,24,.04))}.hero-copy{position:relative;z-index:1;padding-block:75px}.hero h1{max-width:850px;margin-bottom:22px}.hero p:not(.eyebrow){max-width:490px;color:#f6f5ed}.hero .actions{margin-top:30px}.actions{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.hero-link{color:white!important;padding:12px}.hero-caption{position:absolute;right:42px;bottom:26px;z-index:2;font-size:.76rem;letter-spacing:.13em;text-transform:uppercase}.facts{display:grid;grid-template-columns:repeat(4,1fr);border-bottom:1px solid var(--line);padding:30px 0}.fact{padding:0 24px;border-right:1px solid var(--line);text-align:center}.fact:last-child{border:0}.fact strong{display:block;font:1.7rem var(--serif)}.fact span{font-size:.8rem;color:var(--muted)}.section-space{padding-block:95px}.split{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:80px}.split .portrait{height:610px;object-fit:cover}.split .landscape{aspect-ratio:5/4;object-fit:cover}.photo-note{font-size:.8rem;color:var(--muted);margin-top:12px}.text-link{font-size:.92rem;font-weight:600;display:inline-block;padding-block:9px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:35px}.section-heading h2{margin-bottom:0}.section-heading .eyebrow{margin-bottom:12px}.tinted{background:var(--cream)}.feature-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.feature-grid img{aspect-ratio:4/3;object-fit:cover}.feature-grid h3{margin:24px 0 14px}.feature-grid p{font-size:.96rem}.image-mosaic{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:18px}.image-mosaic img{height:340px;object-fit:cover}.quote{max-width:890px;margin:auto;text-align:center}.quote blockquote{font:clamp(1.7rem,3.4vw,2.6rem)/1.35 var(--serif);margin:24px 0}.stars{letter-spacing:.18em;color:#886127}.quote cite{font-style:normal;font-size:.85rem}.cta{background:var(--green);color:white;padding:70px 0}.cta-inner{display:flex;align-items:center;justify-content:space-between;gap:35px}.cta h2{margin-bottom:12px}.cta p{margin:0;color:#e1e8df}.site-footer{background:#1b3027;color:#e1e6df;padding:65px 0 30px}.footer-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}.site-footer a:hover{color:white}.footer-links{display:grid;gap:9px;align-content:start;font-size:.88rem}.site-footer .brand{margin-bottom:24px}.site-footer p{font-size:.88rem}.footer-bottom{border-top:1px solid #415247;margin-top:50px;padding-top:22px;display:flex;justify-content:space-between;gap:25px;font-size:.75rem}.visitor-count img{width:auto;height:15px;display:inline-block;vertical-align:middle}.mobile-book{display:none}.page-heading{padding:75px 0 52px;max-width:1000px}.page-heading h1{margin-bottom:25px}.page-heading .lead{margin-bottom:0}.page-photo{width:100%;height:450px;object-fit:cover}.breadcrumb{font-size:.8rem;margin-bottom:25px}.amenities{display:grid;grid-template-columns:repeat(2,1fr);gap:0 32px;list-style:none;padding:0}.amenities li{padding:14px 0;border-bottom:1px solid var(--line)}.amenities li:before{content:'✓';margin-right:12px}.content-section{margin-bottom:55px}.content-section h2{font-size:2.35rem}.content-section h3{margin-top:30px;font-size:1.45rem}.content-section li{margin-bottom:12px}.filters{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:32px}.filter{border:1px solid #a7b3a8;background:transparent;color:var(--ink);border-radius:30px;padding:10px 20px;min-height:44px;font-size:.88rem}.filter[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.gallery-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px 22px;padding-bottom:90px}.gallery-item{margin:0}.gallery-item[hidden]{display:none}.gallery-open{display:block;overflow:hidden;position:relative;background:var(--cream)}.gallery-open img{aspect-ratio:4/3;object-fit:cover;transition:transform .3s}.gallery-open:hover img{transform:scale(1.035)}.gallery-open:after{content:'↗';position:absolute;right:12px;bottom:12px;background:var(--paper);color:var(--ink);width:34px;height:34px;display:grid;place-items:center}.gallery-item figcaption{font-size:.8rem;padding-top:9px;color:var(--muted)}dialog{border:0;padding:0;background:#15261f;color:white;width:min(1280px,96vw);max-width:96vw;max-height:95dvh;overflow:auto}dialog::backdrop{background:rgba(5,15,10,.9)}.lightbox-top,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 24px}.lightbox-top p{margin:0;font-size:.9rem}.lightbox button{background:transparent;color:white;border:1px solid #69766d;min-width:48px;min-height:48px;padding:8px 16px}.lightbox-image{height:65dvh;object-fit:contain}.lightbox-bottom p{margin:0;text-align:center;font-size:.9rem}.thumbs{display:flex;gap:8px;padding:0 24px 20px;overflow-x:auto}.thumbs button{padding:0;min-width:64px;width:64px;height:48px;opacity:.6;border:2px solid transparent;flex-shrink:0}.thumbs button[aria-current=true]{opacity:1;border-color:white}.thumbs img{height:100%;object-fit:cover}.booking-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:start;padding-bottom:95px}.booking-aside{background:var(--cream);padding:34px}.booking-aside img{aspect-ratio:4/3;object-fit:cover;margin-bottom:28px}.booking-aside h2{font-size:2.2rem}.booking-aside .button{width:100%}.form-panel h2{font-size:2.3rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:20px}.field label{display:block;margin-bottom:7px;font-size:.9rem;font-weight:600}input,textarea,select{width:100%;min-width:0;padding:13px 15px;background:#fff;border:1px solid #9faa9e;border-radius:2px;color:var(--ink)}textarea{resize:vertical}form .honeypot{display:none}.form-status{padding:18px;margin-top:22px;border:1px solid var(--line);background:var(--cream)}.form-status:empty{display:none}.form-status p{margin-bottom:10px}.local-notice{padding:12px 15px;border-left:3px solid #a97c40;background:#ede8dd;font-size:.87rem;margin-bottom:25px}.detail-list{padding-left:20px}.detail-list li{padding-bottom:10px}details{border-top:1px solid var(--line);padding:20px 0}details:last-child{border-bottom:1px solid var(--line)}summary{cursor:pointer;font-weight:600;padding-right:10px}details>div{padding-top:18px}.review-grid{columns:3;column-gap:25px;padding-bottom:75px}.review{break-inside:avoid;background:white;border:1px solid var(--line);padding:27px;margin-bottom:25px}.review h2{font-size:1.55rem;margin-bottom:12px}.review .meta{font-size:.76rem;color:var(--muted);margin:12px 0 20px}.review p{font-size:.93rem}.review p:last-child{margin:0}.manual-layout{display:grid;grid-template-columns:240px 1fr;gap:65px;padding-bottom:90px}.manual-nav{position:sticky;top:120px;align-self:start;display:grid;gap:12px;font-size:.88rem}.manual-content .section{border-top:1px solid var(--line);padding-top:30px;margin-bottom:50px}.manual-content h2{font-size:2.3rem}.manual-content h3{font-size:1.45rem;margin-top:30px}.manual-content li{margin-bottom:12px}.map-frame{width:100%;height:440px;border:0;background:var(--cream);margin:20px 0 40px}.map-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;padding-bottom:80px}.map-grid img{aspect-ratio:4/3;object-fit:cover}.explore-section{display:grid;grid-template-columns:85px 1fr;gap:25px;border-top:1px solid var(--line);padding:40px 0}.explore-number{font:2.5rem var(--serif);color:#788878}.explore-section h2{font-size:2.3rem}.explore-section ul{padding-left:20px}.explore-section li{margin-bottom:20px}.thanks{padding:110px 0;min-height:60vh}.thanks h1{max-width:900px}.offscreen{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0,0,0,0)}
@media(min-width:1500px){.hero{min-height:720px}}@media(max-width:1150px){.wrap{width:calc(100% - 60px)}.nav{gap:15px}.nav a{font-size:.8rem}.nav .button{padding:12px 16px}.split{gap:40px}.split .portrait{height:520px}.header-inner{gap:18px}.brand strong{font-size:1.65rem}.booking-grid{gap:40px}}@media(max-width:950px){.menu-toggle{display:block}.header-inner{min-height:80px;flex-wrap:wrap;padding:15px 0;gap:12px}.nav{width:100%;display:none;flex-direction:column;align-items:stretch;padding:15px 0}.nav.open{display:flex}.nav a{font-size:1rem;padding:10px}.nav .button{margin-top:6px}.hero{min-height:560px}.hero h1{font-size:4.8rem}.review-grid{columns:2}.manual-layout{grid-template-columns:1fr}.manual-nav{position:static;display:flex;flex-wrap:wrap;border-bottom:1px solid var(--line);padding-bottom:20px}.feature-grid{gap:20px}.footer-grid{gap:30px}.mobile-book{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:25;padding:10px 20px calc(10px + env(safe-area-inset-bottom));background:var(--paper);border-top:1px solid var(--line);align-items:center;justify-content:space-between;gap:20px}.mobile-book span{font-size:.85rem}.mobile-book .button{min-height:45px;padding:10px 18px}.site-footer{padding-bottom:105px}.no-js .nav{display:flex}.no-js .menu-toggle{display:none}}@media(max-width:650px){.wrap{width:calc(100% - 40px)}body{font-size:16px}.hero{min-height:550px}.hero-copy{padding-block:55px}.hero h1{font-size:3.4rem;max-width:400px}.hero p:not(.eyebrow){max-width:310px}.hero:after{background:linear-gradient(90deg,rgba(14,33,24,.78),rgba(14,33,24,.32))}.hero>img{object-position:62% center}.hero-caption{display:none}.hero .actions{gap:10px}.hero-link{padding:10px}.facts{grid-template-columns:1fr 1fr;padding:10px 0}.fact{padding:16px 6px}.fact:nth-child(2){border:0}.fact strong{font-size:1.5rem}.section-space{padding-block:60px}.split,.booking-grid,.map-grid{grid-template-columns:1fr;gap:35px}.split .portrait{height:410px}.split .landscape{aspect-ratio:5/4}.feature-grid{grid-template-columns:1fr;gap:30px}.feature-grid h3{margin-top:20px}.feature-grid p{margin-bottom:0}.section-heading{align-items:start;flex-direction:column;gap:15px}.image-mosaic{grid-template-columns:1fr 1fr;gap:12px}.image-mosaic img{height:200px}.image-mosaic img:first-child{grid-column:1/-1;height:270px}.cta{padding:50px 0}.cta-inner{display:block}.cta .button{margin-top:28px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-direction:column;gap:12px}.page-heading{padding:48px 0 35px}.page-heading h1{font-size:3.3rem}.page-photo{height:280px}.gallery-grid{grid-template-columns:1fr 1fr;gap:22px 12px;padding-bottom:60px}.filters{gap:8px}.filter{padding:9px 14px;font-size:.8rem}.gallery-item figcaption{font-size:.76rem}.lightbox-image{height:50dvh}.lightbox-top,.lightbox-bottom{padding:12px;gap:10px}.lightbox-bottom p{font-size:.8rem}.booking-aside{padding:24px}.form-grid{grid-template-columns:1fr;gap:0}.review-grid{columns:1}.manual-layout{gap:25px}.explore-section{grid-template-columns:40px 1fr;gap:15px}.explore-number{font-size:1.8rem}.explore-section h2{font-size:1.9rem}.map-frame{height:330px}.amenities{grid-template-columns:1fr}.local-notice{font-size:.8rem}.thanks{padding:70px 0}.mobile-book span{font-size:.78rem}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}@media print{.site-header,.site-footer,.mobile-book,.manual-nav,.cta,.menu-toggle{display:none}.wrap{width:100%}.manual-layout{display:block}body{background:white;color:black;font-size:11pt}.section{break-inside:avoid}h1{font-size:30pt}a{color:black}}
