:root{--ink:#233a31;--paper:#f8f7f2;--muted:#59635d;--line:#d5d9cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;color:var(--ink);background:var(--paper);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}img{display:block;width:100%;height:100%;object-fit:cover}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;background:var(--paper);position:relative;z-index:10}.brand{font-size:20px;letter-spacing:.14em;line-height:1.2;font-weight:600}.brand span{display:block;font-size:13px;letter-spacing:.4em;margin-top:8px;font-weight:400}nav{display:flex;gap:32px;align-items:center;font-size:14px}nav a:hover,.text-link:hover{opacity:.65}.nav-cta{border:1px solid var(--ink);padding:10px 23px}.menu{display:none}.hero{position:relative;height:calc(100svh - 100px);min-height:610px;max-height:960px;overflow:hidden}.hero>img{object-position:center 58%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,27,19,.48),rgba(10,27,19,.06)),linear-gradient(0deg,rgba(10,27,19,.3),transparent 70%)}.hero-copy{position:absolute;left:8%;top:50%;transform:translateY(-45%);color:#fff}.eyebrow{font-size:12px;letter-spacing:.19em;line-height:1.5;font-weight:500;margin:0 0 25px}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;letter-spacing:-.045em;line-height:1.09;margin:0}h1{font-size:clamp(62px,7.8vw,116px)}.hero-copy>p:not(.eyebrow){font-size:18px;margin:26px 0 33px}.light-link,.text-link{display:inline-block;border-bottom:1px solid;padding-bottom:7px;font-size:14px}.hero-note{position:absolute;right:5%;bottom:35px;color:white;font-size:12px;letter-spacing:.12em}.section{padding:120px 8%;max-width:1700px;margin:auto}h2{font-size:clamp(40px,4.6vw,68px)}.intro{display:grid;grid-template-columns:1.25fr 1fr;position:relative;gap:25px 9%;padding-top:140px;padding-bottom:140px}.intro>.eyebrow{grid-column:1/-1}.intro-copy{padding-top:5px;max-width:440px}.intro-copy p{margin-top:0;margin-bottom:23px;color:var(--muted)}.vertical{position:absolute;right:3%;top:155px;writing-mode:vertical-rl;letter-spacing:.35em;font-size:14px}.house{display:grid;grid-template-columns:1.2fr 1fr;gap:55px 9%;padding-top:0}.house-image{height:620px;position:relative}.house-image span{position:absolute;bottom:22px;left:25px;color:white;font-size:12px;letter-spacing:.16em;text-shadow:0 1px 4px black}.house-copy{align-self:center}.house-copy p:not(.eyebrow){max-width:400px;color:var(--muted);margin:27px 0}.detail-image{grid-column:2;height:290px;width:72%;margin-top:-155px;position:relative;justify-self:end;border:12px solid var(--paper)}.landscape{height:600px;position:relative}.landscape:after{content:'';position:absolute;inset:0;background:rgba(10,29,18,.28)}.landscape>div{position:absolute;z-index:1;left:8%;top:50%;transform:translateY(-50%);color:white}.section-head{display:flex;justify-content:space-between;gap:35px;align-items:flex-end;margin-bottom:55px}.section-head>p{color:var(--muted);margin:0}.experience-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:35px}.photo-wrap{height:385px;overflow:hidden;margin-bottom:28px}.photo-wrap img{transition:transform .6s}.experience-grid article:hover img{transform:scale(1.035)}.experience-grid .eyebrow{margin-bottom:15px}h3{font-size:30px;letter-spacing:-.03em}.experience-grid article>p:last-child{color:var(--muted);margin-top:18px}.journal{padding-top:35px}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:250px;gap:18px}.gallery button{padding:0;border:0;background:none;overflow:hidden;position:relative}.gallery button:first-child{grid-column:span 2;grid-row:span 2}.gallery button:nth-child(6){grid-column:span 2}.gallery img{transition:transform .6s}.gallery button:hover img{transform:scale(1.04)}.gallery button:after{content:'View photo';position:absolute;bottom:12px;left:15px;font-size:12px;color:white;opacity:0;text-shadow:0 1px 4px black}.gallery button:hover:after{opacity:1}.access{display:grid;grid-template-columns:1fr 1.15fr;gap:10%;border-top:1px solid var(--line)}.access p:not(.eyebrow){color:var(--muted);margin-top:30px}address{font-style:normal;margin:26px 0}.access-photo{height:470px;position:relative}.access-photo span{display:block;margin-top:14px;font-size:12px;letter-spacing:.15em}.stay{text-align:center;padding:120px 24px;background:var(--ink);color:var(--paper)}.stay>p:not(.eyebrow){margin:32px auto;opacity:.8}.coming{display:inline-block;border:1px solid #8b9a8e;padding:17px 28px;font-size:12px;letter-spacing:.15em}footer{padding:60px 8% 35px;display:grid;grid-template-columns:1fr 1fr auto;gap:30px;align-items:start}footer p{font-size:14px;margin:0;color:var(--muted)}footer>a:last-of-type{font-size:14px}footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:25px;font-size:12px;color:var(--muted)}dialog{border:0;background:#101c17;color:white;width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;padding:60px 5%;margin:0}dialog[open]{display:flex;align-items:center;justify-content:center;gap:20px}dialog::backdrop{background:#101c17}dialog figure{margin:0;flex:1;max-width:1100px;height:85%}dialog img{object-fit:contain;height:95%}dialog figcaption{text-align:center;font-size:14px;margin-top:12px}dialog button{background:transparent;color:white;border:1px solid #849087;padding:10px 15px;font-size:14px}#close-lightbox{position:absolute;right:25px;top:20px}:focus-visible{outline:3px solid #ae7839;outline-offset:5px}
@media(min-width:1500px){.hero>img{object-position:center 55%}}@media(max-width:900px){nav{gap:18px}.section{padding:85px 6%}.house{gap:35px 6%;padding-top:0}.house-image{height:500px}.detail-image{margin-top:-100px;height:220px}.experience-grid{gap:22px}.photo-wrap{height:300px}.gallery{grid-auto-rows:185px}.section-head{align-items:flex-start}.section-head>p{max-width:220px}.vertical{display:none}}
@media(max-width:650px){header{height:82px;padding:0 6%}.brand{font-size:17px}.menu{display:block;background:none;border:0;font-size:14px}nav{display:none;position:absolute;left:0;right:0;top:82px;padding:25px 6%;background:var(--paper);flex-direction:column;align-items:stretch;gap:18px}nav.open{display:flex}.hero{height:78svh;min-height:530px}.hero-copy{left:7%;right:6%}.hero-copy .eyebrow{font-size:12px}h1{font-size:61px}.hero-copy>p:not(.eyebrow){font-size:16px}.hero-note{right:7%;bottom:25px}.section{padding:70px 7%}.intro{display:block}.intro h2{margin-bottom:30px}.intro-copy{max-width:none}.house{display:flex;flex-direction:column;padding-top:0;gap:35px}.house-image{height:440px}.house-copy{align-self:start}.detail-image{margin:0;border:0;width:78%;height:300px;align-self:flex-end}.landscape{height:440px}.landscape>div{left:7%;right:7%}h2{font-size:43px}.section-head{display:block;margin-bottom:32px}.section-head>p{margin-top:25px;max-width:none}.experience-grid{grid-template-columns:1fr;gap:35px}.photo-wrap{height:390px}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:190px;gap:12px}.gallery button:first-child{grid-row:span 1}.gallery button:nth-child(6){grid-column:span 1}.journal{padding-top:0}.access{grid-template-columns:1fr;gap:45px}.access-photo{height:330px;margin-bottom:25px}.stay{padding:80px 7%}.stay h2{font-size:40px}footer{padding:45px 7% 25px;grid-template-columns:1fr auto}footer p{grid-column:1;grid-row:2}footer>a:last-of-type{grid-column:2;grid-row:1}dialog{padding:70px 12px 100px;gap:0}dialog figure{height:100%}dialog #previous,dialog #next{position:absolute;bottom:25px}dialog #previous{left:20px}dialog #next{right:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
.booking-heading{margin-bottom:45px}.booking-panel{max-width:1100px;margin:auto;text-align:left;background:var(--paper);color:var(--ink);padding:35px 40px}.preview-notice{font-size:14px;padding:16px 18px;border:1px solid var(--line);margin:0 0 32px;line-height:1.6}.booking-layout{display:grid;grid-template-columns:1fr 1fr;gap:55px}.booking-panel h3{font-size:29px;letter-spacing:-.02em;margin-bottom:17px}.booking-muted,.field-note,.booking-actions p,.review-note{color:var(--muted);font-size:14px}.booking-muted{margin:0 0 22px}.booking-panel label{display:block;font-size:14px;margin-bottom:18px}.booking-panel input,.booking-panel textarea{display:block;width:100%;min-width:0;border:1px solid #9ca69c;background:white;color:var(--ink);padding:12px;font:inherit;font-size:16px;margin-top:7px;border-radius:0}.booking-panel textarea{resize:vertical}.field-note{display:block;margin-top:6px;font-size:13px}.optional{color:var(--muted)}.date-fields{display:grid;grid-template-columns:1fr 1fr;gap:15px}.calendar-head{display:flex;align-items:center;justify-content:space-between;margin:5px 0 18px}.calendar-head button{width:42px;height:42px;border:1px solid var(--line);background:transparent;font-size:24px;color:var(--ink)}.weekdays,.booking-calendar{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:3px;text-align:center}.weekdays{font-size:13px;color:var(--muted);margin-bottom:8px}.booking-calendar button{min-height:42px;border:0;background:transparent;color:var(--ink);font-size:14px}.booking-calendar button:hover:not(:disabled){background:#dfe7da}.booking-calendar button.selected{background:var(--ink);color:white}.booking-calendar button.in-range{background:#e0e7da}.booking-panel button:disabled{cursor:not-allowed;opacity:.38}.stay-length{font-size:14px;min-height:48px;margin:20px 0 0}.booking-actions{display:flex;align-items:center;justify-content:space-between;gap:25px;border-top:1px solid var(--line);margin-top:25px;padding-top:25px}.booking-actions p{margin:0}.booking-primary,.booking-secondary{border:1px solid var(--ink);padding:14px 22px;font-size:14px}.booking-primary{background:var(--ink);color:white}.booking-secondary{background:transparent;color:var(--ink)}.booking-error{padding:12px 16px;background:#f8e9e6;color:#923729;font-size:14px}#booking-review .eyebrow{margin-bottom:15px}#booking-summary{display:grid;grid-template-columns:120px 1fr;gap:12px 24px;font-size:16px;margin:30px 0}#booking-summary dt{color:var(--muted)}#booking-summary dd{margin:0;white-space:pre-wrap;overflow-wrap:anywhere}.review-note{border-top:1px solid var(--line);padding-top:22px}[hidden]{display:none!important}@media(max-width:750px){.booking-panel{padding:25px 20px}.booking-layout{grid-template-columns:1fr;gap:35px}.booking-actions{flex-direction:column;align-items:stretch}.booking-actions button{width:100%}.booking-heading h2{font-size:40px}.date-fields{gap:10px}.booking-panel input[type=date]{font-size:14px;padding:12px 5px}#booking-summary{grid-template-columns:90px 1fr;gap:10px 16px}}
.booking-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.booking-calendar button.unavailable{text-decoration:line-through;color:#8a6259}.booking-calendar button.selected{color:white}#booking-reference{overflow-wrap:anywhere}#booking-received{max-width:720px;padding:20px 0}
