:root{--ink:#1f2b25;--moss:#465641;--sand:#eee9df;--paper:#f8f6f0;--line:#d7d6cc;--display:"Playfair Display",Georgia,serif;--sans:"DM Sans",Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.55}.wrap{width:min(1180px,calc(100% - 64px));margin:auto}.site-header{position:absolute;z-index:5;top:0;left:0;width:100%;padding:25px 5%;display:flex;align-items:center;justify-content:space-between;color:#fff}.brand{color:inherit;text-decoration:none;display:grid;grid-template-columns:auto auto;line-height:.9;width:90px}.brand span{font-size:9px;letter-spacing:.25em}.brand strong{font:600 30px/1 var(--display);grid-row:span 2}.brand i{font:italic 9px var(--display);letter-spacing:.03em}nav{display:flex;align-items:center;gap:27px}nav a{color:#fff;text-decoration:none;font-size:13px}.nav-cta,.button{border:1px solid currentColor;padding:12px 18px!important}.menu-toggle{display:none}.hero{min-height:760px;height:100vh;position:relative;overflow:hidden;color:white;background:#26342e}.hero-photo,.hero-photo:after,.hero-overlay{inset:0;position:absolute}.hero-photo img,.gallery-item img,.booking-image img{width:100%;height:100%;object-fit:cover}.hero-photo:after{content:"";position:absolute;background:linear-gradient(90deg,rgba(17,28,24,.7),rgba(17,28,24,.12) 70%),linear-gradient(0deg,rgba(17,28,24,.35),transparent 45%)}.hero-content{position:relative;z-index:2;padding-top:27vh}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:11px;font-weight:700;margin:0 0 20px;color:var(--moss)}.light{color:#d7dfd2}.hero h1,h2{font:600 clamp(45px,6.2vw,84px)/.98 var(--display);letter-spacing:-.055em;margin:0}.hero h1 em,h2 em{font-weight:500}.hero-lead{font-size:17px;max-width:475px;margin:30px 0}.hero-actions,.booking-actions{display:flex;align-items:center;gap:27px}.button{display:inline-flex;gap:23px;align-items:center;background:var(--ink);color:white;text-decoration:none;font-weight:600;font-size:13px}.button-light{background:white;color:var(--ink);border-color:white}.text-link{display:inline-flex;align-items:center;gap:14px;color:var(--ink);text-decoration:none;background:none;border:0;padding:0;font:600 13px var(--sans);cursor:pointer}.text-link.light{color:white}.hero-scroll{position:absolute;right:5%;bottom:25px;z-index:2;letter-spacing:.15em;text-transform:uppercase;font-size:9px}.hero-scroll span{font-size:18px;margin-left:8px}.section{padding:130px 0}.intro{display:grid;grid-template-columns:1.05fr .95fr;gap:12%;align-items:start}.intro h2,.section-heading h2,.experiences h2,.faq h2{font-size:clamp(40px,5vw,66px)}.intro-copy{font-size:18px;max-width:480px}.intro-copy p:first-child{margin-top:0}.intro-copy .text-link{margin-top:13px}.stats{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:32px 0}.stats div{padding:0 30px;border-right:1px solid var(--line)}.stats div:first-child{padding-left:0}.stats div:last-child{border:0}.stats strong{font:600 44px/1 var(--display);display:block}.stats span{font-size:12px;color:#69736b}.section-heading{display:flex;justify-content:space-between;align-items:end;margin-bottom:50px}.gallery{overflow:hidden}.gallery-grid{width:min(1300px,94%);margin:auto;display:grid;gap:12px;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:240px 240px}.gallery-item{padding:0;border:0;position:relative;overflow:hidden;background:#89968c;cursor:pointer;text-align:left}.gallery-item img{transition:transform .6s ease}.gallery-item:hover img{transform:scale(1.05)}.gallery-item span{position:absolute;bottom:15px;left:17px;color:#fff;font:italic 20px var(--display);text-shadow:0 1px 10px #000}.gallery-item.large{grid-row:span 2}.gallery-item.wide{grid-column:span 2}.amenities{background:var(--ink);color:#fff;padding:120px 0}.amenities-layout{display:grid;grid-template-columns:1fr 1fr;gap:10%}.amenities h2{font-size:clamp(42px,5vw,70px)}.amenities-layout>div>p:last-child{max-width:315px;color:#c5cec2;margin-top:27px}.amenities ul{margin:0;padding:0;list-style:none;border-top:1px solid #536059}.amenities li{font:500 21px var(--display);padding:17px 0;border-bottom:1px solid #536059}.amenities li span{font:11px var(--sans);color:#adbaab;display:inline-block;width:46px}.experience-grid{margin-top:55px;display:grid;grid-template-columns:repeat(4,1fr);gap:30px}.experience-grid article{border-top:1px solid var(--line);padding-top:18px}.experience-grid b{color:var(--moss);font-size:11px}.experience-grid h3{font:500 27px var(--display);margin:35px 0 10px}.experience-grid p{font-size:14px;color:#687169;margin:0}.review-section{background:#dfe6da;padding:105px 0}.review-card{display:grid;grid-template-columns:120px 1fr 160px;align-items:center;gap:35px}.quote-mark{font:110px/1 var(--display);color:#7f947e}.stars{letter-spacing:.15em;color:#a68145;font-size:13px}blockquote{font:500 clamp(26px,3.1vw,43px)/1.18 var(--display);max-width:730px;margin:22px 0}.review-author{font-size:13px;color:#63705f}.booking{padding:0;min-height:560px;display:grid;grid-template-columns:1fr 1fr;background:#ded9ce}.booking-image{min-height:560px;background:#778277}.booking-content{padding:90px min(8vw,120px);align-self:center}.booking-content h2{font-size:clamp(48px,5vw,70px)}.booking-content>p:not(.eyebrow){max-width:380px}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:12%}.faq-list{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line);padding:0 0 20px}summary{list-style:none;cursor:pointer;font:500 22px var(--display);padding:21px 0 10px;display:flex;justify-content:space-between}summary::-webkit-details-marker{display:none}summary span{font:23px var(--sans);font-weight:400}details[open] summary span{transform:rotate(45deg)}details p{max-width:500px;margin:0;color:#667068;font-size:14px}.contact{background:#465641;color:#fff;padding:105px 0}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.contact h2{font-size:clamp(45px,5vw,70px)}.contact-grid>div>p:last-child{color:#d9e0d5}.contact-links{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:13px}.contact-links a{font:500 clamp(23px,3vw,38px) var(--display);color:#fff;text-decoration:none;border-bottom:1px solid #82917d}.contact-links a:last-child{font:600 13px var(--sans);border:0;margin-top:18px}footer{background:var(--ink);color:#bec8bb;padding:30px 0;font-size:11px}footer .wrap{display:flex;align-items:center;justify-content:space-between}footer .brand{color:#fff}footer a{color:inherit;text-decoration:none}.lightbox{width:min(1000px,92vw);max-height:90vh;padding:0;border:0;background:#111}.lightbox::backdrop{background:rgba(0,0,0,.85)}.lightbox img{display:block;max-width:100%;max-height:90vh;margin:auto}.lightbox-close{position:absolute;right:9px;top:3px;background:#fff;border:0;width:34px;height:34px;border-radius:50%;font-size:25px;cursor:pointer}
@media(max-width:760px){.wrap{width:min(100% - 40px,1180px)}.site-header{padding:20px}.menu-toggle{display:grid;gap:4px;border:0;background:none;color:#fff;padding:5px}.menu-toggle span{display:block;width:22px;height:1px;background:white}.menu-toggle b{font:10px var(--sans);margin-top:3px}nav{display:none;position:absolute;top:0;left:0;width:100%;padding:90px 20px 25px;background:var(--ink);flex-direction:column;align-items:flex-start;gap:18px}nav.open{display:flex}.hero{min-height:660px}.hero-content{padding-top:28vh}.hero-lead{font-size:15px}.hero-scroll{display:none}.section{padding:85px 0}.intro,.faq,.amenities-layout,.contact-grid{grid-template-columns:1fr;gap:45px}.intro-copy{font-size:16px}.stats{grid-template-columns:1fr 1fr;gap:20px;padding:22px 0}.stats div{padding:0;border:0}.stats strong{font-size:34px}.section-heading{align-items:start;margin-bottom:30px}.section-heading .gallery-open{margin-top:12px}.gallery-grid{grid-template-columns:1fr 1fr;grid-template-rows:240px 170px 170px}.gallery-item.large{grid-column:span 2;grid-row:auto}.gallery-item.wide{grid-column:span 2}.amenities{padding:85px 0}.amenities li{font-size:19px}.experience-grid{grid-template-columns:1fr 1fr;gap:25px 18px;margin-top:38px}.experience-grid h3{font-size:23px;margin:25px 0 8px}.review-section{padding:70px 0}.review-card{grid-template-columns:1fr;gap:5px}.quote-mark{display:none}.review-card>a{margin-top:15px}.booking{grid-template-columns:1fr}.booking-image{min-height:350px}.booking-content{padding:70px 20px}.booking-actions{align-items:flex-start;flex-direction:column}.contact{padding:80px 0}footer .wrap{gap:20px;align-items:flex-end}footer p{max-width:130px}.brand{width:75px}.brand strong{font-size:25px}}
