:root{--ink:#20342c;--pine:#315343;--sand:#f6f1e8;--clay:#bf633f;--line:#d8d0c2;--paper:#fffdf9;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--sand);color:var(--ink);font:16px/1.6 Arial,sans-serif}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:9;background:#fff;padding:.6rem}.site-header{position:sticky;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:12px max(4vw,28px);background:rgba(255,253,249,.95);backdrop-filter:blur(12px);border-bottom:1px solid rgba(32,52,44,.1)}.brand{display:flex;gap:.6rem;align-items:center;text-decoration:none;color:var(--ink);font-size:.72rem;line-height:1.1;text-transform:uppercase;letter-spacing:.13em}.brand img{width:42px;height:42px;object-fit:contain}.brand strong{font-size:1rem;letter-spacing:.05em}.site-header nav{display:flex;align-items:center;gap:1.25rem}.site-header nav a,.text-link,footer a,footer button{color:inherit;text-decoration:none;font-size:.84rem;font-weight:bold}.site-header nav a:hover,.text-link:hover,footer a:hover{color:var(--clay)}.nav-contact,.button{display:inline-flex!important;align-items:center;justify-content:center;gap:.55rem;padding:.75rem 1.1rem!important;border-radius:999px;background:var(--pine);color:white!important;border:1px solid var(--pine);cursor:pointer}.nav-contact{font-size:.78rem!important}.menu-toggle{display:none;background:none;border:0;color:var(--ink);font-weight:bold}.hero{display:grid;grid-template-columns:1.06fr .94fr;min-height:calc(100vh - 67px);background:var(--paper)}.hero-photo{min-height:530px;overflow:hidden}.hero-photo img,.house-image img,.environment-photo img{width:100%;height:100%;object-fit:cover}.hero-copy{align-self:center;padding:clamp(3rem,8vw,8rem);padding-left:clamp(2rem,7vw,7rem)}.eyebrow{text-transform:uppercase;letter-spacing:.16em;font-weight:bold;color:var(--clay);font-size:.73rem;margin:0 0 .8rem}.hero h1,h2,h3{font-family:var(--serif);line-height:1.03}.hero h1{font-size:clamp(3rem,5vw,5.4rem);font-weight:normal;margin:.1rem 0 1.4rem}.intro{font-size:1.2rem;max-width:35rem;color:#496158}.hero-actions{display:flex;align-items:center;gap:1.2rem;margin-top:2rem}.button span{font-size:1.3em}.text-link{display:inline-flex;gap:.4rem;align-items:center;text-decoration:underline;text-underline-offset:4px}.section{padding:clamp(4rem,9vw,8rem) max(5vw,26px)}.section-heading{max-width:50rem;margin-bottom:3rem}.section-heading h2,.environment-card h2,.location-section h2,.contact-intro h2{font-size:clamp(2.4rem,4vw,4.3rem);font-weight:normal;margin:.1rem 0 1.2rem}.section-heading p{max-width:42rem;color:#53665e}.house-section{background:var(--sand)}.house-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(2rem,7vw,8rem);align-items:center}.house-image{aspect-ratio:1/.82;overflow:hidden;border-radius:2px}.house-copy>p{font:1.55rem/1.3 var(--serif);margin-top:0}.amenities{margin:2rem 0 0;padding:0;list-style:none;border-top:1px solid var(--line)}.amenities li{display:grid;grid-template-columns:10rem 1fr;gap:1rem;padding:1rem 0;border-bottom:1px solid var(--line)}.amenities strong{font-size:.9rem}.amenities span{color:#53665e}.environment-section{display:grid;grid-template-columns:.95fr 1.05fr;padding:0;background:var(--pine);color:#fdfaf3}.environment-card{padding:clamp(4rem,8vw,8rem);align-self:center}.environment-card .eyebrow{color:#e7b38d}.environment-card h2{font-size:clamp(2.6rem,4.3vw,4.6rem)}.environment-card p{max-width:42rem;color:#dce6dc}.environment-card .text-link{color:white;margin-top:1rem}.environment-photo{min-height:560px}.rates-section{background:var(--paper)}.narrow{max-width:38rem}.rates{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line)}.rates article{padding:2rem;min-height:240px;border-right:1px solid var(--line);display:flex;flex-direction:column}.rates article:last-child{border:0}.rates span{color:var(--clay);font:1.4rem var(--serif)}.rates h3{font-size:1.55rem;font-weight:normal;margin:1.5rem 0 .4rem}.rates strong{font:2.6rem var(--serif);margin-top:auto}.rates p{color:#5c6b64;margin:0}.rates-note{margin:1.3rem 0 0;color:#5c6b64}.gallery-section{background:#e8e1d6}.gallery{display:grid;grid-template-columns:repeat(4,1fr);grid-auto-rows:180px;gap:12px}.gallery button{overflow:hidden;border:0;padding:0;background:#ddd;cursor:zoom-in}.gallery button:first-child,.gallery button:nth-child(5){grid-row:span 2}.gallery button:nth-child(2){grid-column:span 2}.gallery img{width:100%;height:100%;object-fit:cover;transition:transform .35s}.gallery button:hover img{transform:scale(1.04)}.location-section{display:grid;grid-template-columns:1fr 1fr;gap:3rem;background:var(--sand)}.location-section>div:first-child{max-width:34rem}.location-section p{font-size:1.1rem}.outline{background:transparent;color:var(--pine)!important;margin-top:1rem}.location-art{display:grid;place-items:center;align-content:center;border:1px solid var(--line);min-height:330px;background:#dce4d7}.location-art span{font:clamp(5rem,12vw,10rem) var(--serif);color:var(--clay);line-height:.8}.location-art p{text-align:center;font:2rem var(--serif);line-height:1.1}.location-art small{font:1rem Arial,sans-serif;color:#52645a}.contact-section{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(3rem,8vw,10rem);background:#20342c;color:#fffdf9}.contact-section .eyebrow{color:#e7b38d}.contact-intro p{color:#d4e0d6}.phone,.email{display:block;color:#fffdf9;text-decoration:none;font:1.45rem var(--serif);margin:1rem 0}.email{font:1rem Arial,sans-serif;text-decoration:underline}.contact-form{background:#fffdf9;color:var(--ink);padding:clamp(1.5rem,4vw,3rem)}.field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.contact-form label{display:block;font-weight:bold;font-size:.82rem;margin:0 0 1.1rem}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:.4rem;padding:.72rem;border:1px solid #bfc7bd;background:white;font:inherit}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid #d47b58;outline-offset:1px}.consent{display:flex!important;gap:.6rem;align-items:flex-start;color:#52645a;font-weight:normal!important}.consent input{width:auto;margin:.3rem 0 0}.consent button,footer button{border:0;background:none;padding:0;color:inherit;text-decoration:underline;cursor:pointer;font:inherit}.honeypot{position:absolute;left:-9999px}.form-status{padding:2rem 0}.form-status h3{font-size:2rem;margin:0}.form-status .text-link{border:0;background:none;cursor:pointer;margin-top:1rem}footer{display:grid;grid-template-columns:1fr auto;gap:1rem;padding:2rem max(5vw,26px);background:#182820;color:#fffdf9}footer div{display:flex;flex-direction:column;gap:.25rem}footer div:last-of-type{align-items:flex-end}footer p{grid-column:1/-1;margin:1rem 0 0;color:#c4d1c6;font-size:.78rem}dialog{border:0;padding:0;max-width:min(680px,calc(100vw - 2rem));background:var(--paper);color:var(--ink);box-shadow:0 20px 60px #0008}dialog::backdrop{background:#182820bb}dialog article{padding:clamp(1.8rem,5vw,4rem);max-height:80vh;overflow:auto}dialog h2{font-size:2.6rem;margin:.2rem 0 1.5rem}dialog h3{font-size:1.3rem;margin:1.5rem 0 .3rem}.dialog-close{position:absolute;right:.8rem;top:.5rem;border:0;background:none;font-size:2rem;cursor:pointer;color:var(--ink)}#lightbox{background:#111;max-width:min(1000px,95vw);max-height:92vh}#lightbox .dialog-close{color:#fff;z-index:1}#lightbox img{display:block;max-width:95vw;max-height:88vh}.cookie-banner{position:fixed;z-index:4;left:1rem;right:1rem;bottom:1rem;max-width:650px;margin:auto;padding:1rem 1.25rem;display:flex;align-items:center;gap:1rem;background:#20342c;color:white;box-shadow:0 8px 25px #0004}.cookie-banner p{margin:0;font-size:.84rem}.cookie-banner button:not(.button){border:0;background:none;color:#fff;text-decoration:underline;padding:0;cursor:pointer}.button.small{padding:.45rem .8rem!important;white-space:nowrap;background:var(--clay);border-color:var(--clay)}@media(max-width:800px){.menu-toggle{display:block}.site-header nav{display:none;position:absolute;top:67px;left:0;right:0;flex-direction:column;align-items:stretch;padding:1rem 6vw;background:#fffdf9;border-bottom:1px solid var(--line)}.site-header nav.open{display:flex}.hero,.house-grid,.environment-section,.location-section,.contact-section{grid-template-columns:1fr}.hero{min-height:auto}.hero-photo{min-height:55vh;grid-row:1}.hero-copy{padding:4rem 7vw}.environment-photo{min-height:360px;grid-row:1}.rates{grid-template-columns:repeat(2,1fr)}.rates article:nth-child(2){border-right:0}.rates article:nth-child(-n+2){border-bottom:1px solid var(--line)}.gallery{grid-template-columns:repeat(2,1fr);grid-auto-rows:160px}.field-row{grid-template-columns:1fr}footer{grid-template-columns:1fr}footer div:last-of-type{align-items:flex-start}.cookie-banner{align-items:flex-start;flex-direction:column}.amenities li{grid-template-columns:1fr;gap:.2rem}}@media(max-width:420px){.hero h1{font-size:3rem}.rates{grid-template-columns:1fr}.rates article{border-right:0;border-bottom:1px solid var(--line);min-height:180px}.rates article:last-child{border-bottom:0}.gallery{grid-auto-rows:120px}}
