:root{--ink:#203637;--paper:#faf8f3;--muted:#5d6865;--line:#dcd7cc;--sand:#f0ede6;--brass:#8b7045}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:7rem}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.8 "Helvetica Neue",Arial,sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}a,button{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #bd7d34;outline-offset:5px}img{display:block;width:100%;object-fit:cover}header{display:flex;justify-content:space-between;align-items:center;gap:2rem;padding:1.9rem 5.5%;background:var(--paper);position:relative;z-index:5}.brand{display:inline-flex;flex-direction:column;line-height:1.4;flex-shrink:0}.brand-title{font:1.45rem Georgia,serif;letter-spacing:.12em}.brand-title b{font-weight:normal;color:#92703e}.brand-sub{font-size:.75rem;letter-spacing:.16em;margin-top:.5rem}nav{display:flex;flex-wrap:wrap;align-items:center;gap:2rem;font-size:.875rem}nav a{padding:.5rem 0}nav .nav-contact{border:1px solid var(--brass);padding:.65rem 1.2rem}nav a:hover,.text-link:hover{color:#9a632f}.hero{position:relative;height:min(760px,82svh);min-height:540px;color:#fff}.hero>img{height:100%;object-position:center 52%}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,30,28,.55),rgba(10,30,28,.07)),linear-gradient(0deg,rgba(10,30,28,.6),transparent 50%)}.hero-copy{position:absolute;left:7.5%;top:50%;transform:translateY(-50%)}.eyebrow{font-size:.75rem;font-weight:500;letter-spacing:.2em;line-height:1.6;margin:0 0 1.5rem}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:normal;letter-spacing:-.035em;line-height:1.1;margin:0}h1{font-size:clamp(3.6rem,6.6vw,6.4rem)}h2{font-size:clamp(2.3rem,4vw,3.9rem)}em{font-weight:normal}p{margin:1.4rem 0}.hero-copy>p:not(.eyebrow){font-size:1.1rem;line-height:1.6}.button{display:inline-flex;align-items:center;justify-content:center;gap:2.5rem;min-height:50px;padding:.85rem 1.4rem;font-size:.875rem;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.light{background:var(--paper);color:var(--ink);margin-top:.8rem}.dark{background:var(--ink);color:#fff}.outline{border:1px solid var(--ink)}.hero-foot{position:absolute;bottom:2rem;left:7.5%;right:7.5%;display:flex;justify-content:space-between;gap:1rem;font-size:.75rem;letter-spacing:.09em}.hero-foot a{letter-spacing:normal}.facts{display:flex;justify-content:center;gap:5%;padding:1.8rem 5%;border-bottom:1px solid var(--line);font-size:.875rem}.facts strong{font:1.7rem Georgia,serif;margin-right:.35rem}.section{padding:7.5rem 7.5%;max-width:1600px;margin:auto}.intro{display:grid;grid-template-columns:1.1fr 1fr;gap:8%}.intro-copy p:first-child{margin-top:.2rem}.intro-copy p,.feature-copy p:not(.eyebrow),.location-copy p:not(.eyebrow){color:var(--muted);max-width:37rem}.text-link{display:inline-block;padding:.4rem 0;border-bottom:1px solid var(--ink);font-size:.875rem;margin-top:1rem}.text-link span{margin-left:2rem}.feature{display:grid;grid-template-columns:1.2fr 1fr;align-items:center;gap:7%;padding-top:0}.feature>img{height:570px}.small-label{display:block;margin-top:2rem;font-size:.75rem;letter-spacing:.12em;color:var(--muted)}.photo-section{background:var(--sand);max-width:none}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:2rem;margin-bottom:2.6rem}.section-heading>p{font-size:.875rem;color:var(--muted);white-space:nowrap;margin-bottom:.3rem}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:1.8rem;max-width:1400px;margin:auto}.photo{border:0;padding:0;background:transparent;color:var(--ink);text-align:left;cursor:pointer;min-width:0}.photo.wide{grid-column:span 2}.photo img{height:315px;transition:filter .2s}.photo:hover img{filter:brightness(1.08)}.photo span{display:flex;justify-content:space-between;gap:1rem;padding:.7rem 0 1rem;font-size:.875rem}.photo span b{font-weight:normal}.amenities{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.amenities ul{padding:0;list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:0 2rem}.amenities li{border-bottom:1px solid var(--line);padding:1.2rem 0;font-size:.9375rem}.location{display:grid;grid-template-columns:1fr 1fr;background:#203637;color:var(--paper)}.location>img{height:100%;min-height:600px}.location-copy{padding:5rem 13%}.location address{font-style:normal;font-size:.875rem;line-height:1.8;margin:1.8rem 0}.contact{text-align:center;padding-top:7rem;padding-bottom:7rem}.contact>p:not(.eyebrow){max-width:32rem;margin:1.5rem auto;color:var(--muted)}.contact-actions{display:flex;justify-content:center;gap:1rem;margin-top:2rem}.contact .contact-note{font-size:.875rem}footer{padding:2.2rem 4.5%;border-top:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:2rem}footer p,footer>a:last-child{font-size:.75rem;color:var(--muted)}.skip{position:absolute;top:-100px;left:1rem;padding:1rem;background:white;z-index:20}.skip:focus{top:1rem}dialog{border:0;padding:1rem 1.3rem;background:#112a2c;color:white;width:min(1100px,94vw);max-height:95svh}dialog::backdrop{background:rgba(0,0,0,.85)}.lightbox-toolbar,.lightbox-bottom{display:flex;align-items:center;justify-content:space-between;gap:1rem}.lightbox-toolbar p{margin:.2rem 0 1rem;font-size:.9375rem}.lightbox-toolbar button,.lightbox-bottom button{background:transparent;border:1px solid #809392;color:white;padding:.5rem .8rem;cursor:pointer;min-height:44px}#large-photo{width:100%;height:min(65svh,750px);object-fit:contain}.lightbox-bottom{margin-top:1rem;font-size:.875rem}
@media(min-width:1600px){.hero-copy{left:calc((100vw - 1360px)/2)}}@media(max-width:900px){header{padding:1.1rem 5%;gap:1rem}.brand-title{font-size:1.1rem}.brand-sub{font-size:.75rem}nav{gap:1rem}nav a:first-child{display:none}.section{padding:4.5rem 6%}.hero-copy{left:6%}.hero-foot{left:6%;right:6%}.facts{gap:2.5%;flex-wrap:wrap}.facts span{white-space:nowrap}.intro{gap:5%}.feature{gap:5%;padding-top:0}.feature>img{height:420px}.gallery{gap:1rem}.photo img{height:250px}.amenities{gap:5%}.location-copy{padding:3.5rem 10%}.location>img{min-height:530px}footer{flex-wrap:wrap}.section-heading{align-items:start}.section-heading>p{white-space:normal}}
@media(max-width:600px){html{scroll-padding-top:1rem}header{flex-wrap:wrap;justify-content:center;gap:.85rem;padding:1rem 5%}.brand{text-align:center}.brand-title{font-size:1.25rem}.brand-sub{font-size:.75rem}nav{width:100%;justify-content:center;gap:1.3rem;font-size:.875rem}nav .nav-contact{border:0;padding:.35rem 0;font-weight:600}nav a{padding:.35rem 0}.hero{min-height:560px;height:74svh;max-height:730px}.hero>img{object-position:57% center}.hero-copy{left:7%;right:7%}.hero-copy .eyebrow{font-size:.75rem;letter-spacing:.12em}h1{font-size:3.65rem}h2{font-size:2.65rem}.hero-foot{left:7%;bottom:1.5rem}.hero-foot>span{font-size:.75rem;letter-spacing:.03em}.hero-foot>a{display:none}.facts{display:grid;grid-template-columns:1fr 1fr;padding:1.2rem 7%;gap:.75rem 1.2rem}.facts span{font-size:.875rem}.facts strong{font-size:1.6rem}.section{padding:3.7rem 7%}.intro{grid-template-columns:1fr;gap:1.5rem}.intro-copy p{margin-top:0}.feature{grid-template-columns:1fr;padding-top:0;gap:2rem}.feature>img{height:390px}.feature-copy .eyebrow{margin-bottom:1rem}.small-label{margin-top:1.4rem}.section-heading{display:block;margin-bottom:1.5rem}.section-heading>p{margin-top:1rem}.gallery{grid-template-columns:1fr 1fr;gap:.8rem}.photo.wide{grid-column:span 2}.photo img{height:180px}.photo.wide img{height:275px}.photo span{font-size:.875rem;line-height:1.4;padding:.65rem 0 1rem}.amenities{grid-template-columns:1fr;gap:1.1rem}.amenities ul{gap:0 1.25rem}.amenities li{font-size:.9375rem}.location{grid-template-columns:1fr}.location>img{min-height:0;height:320px}.location-copy{padding:3.7rem 7%}.contact-actions{flex-direction:column;align-items:stretch}.contact .eyebrow{font-size:.75rem;letter-spacing:.1em}footer{padding:2.3rem 7%;flex-direction:column;gap:1rem;text-align:center}footer p{margin:0}.lightbox-toolbar p{max-width:80%}.lightbox-bottom button{font-size:.875rem}dialog{padding:.9rem}#large-photo{height:60svh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Quiet coastal refinement across the residence. */
header{border-bottom:1px solid var(--line)}
.hero{height:min(820px,84svh)}
.hero-shade{background:linear-gradient(90deg,rgba(12,28,29,.64),rgba(12,28,29,.1) 78%),linear-gradient(0deg,rgba(12,28,29,.65),transparent 48%)}
.hero-copy{max-width:760px}
.hero-copy .eyebrow{color:#f2dfbd}
.hero-copy>p:not(.eyebrow){margin:1.8rem 0 2rem}
.hero-foot{padding-top:1.3rem;border-top:1px solid #ffffff45}
.button{padding:1rem 1.8rem;letter-spacing:.04em;min-height:54px}
.light{background:#faf8f3f5;border:1px solid #faf8f3}
.dark{background:var(--ink);border:1px solid var(--ink)}
.outline{border-color:#b8aa91}
.facts{padding:2rem 5%;background:#f3f0e9}
.facts span+span{border-left:1px solid var(--line);padding-left:3.5%}
.facts strong{font-size:2rem;color:var(--brass)}
.eyebrow,.small-label{color:var(--brass)}
.text-link{border-bottom-color:var(--brass);padding-bottom:.55rem;letter-spacing:.02em}
.feature-copy{padding:1rem 0}
.photo span{border-bottom:1px solid var(--line);padding:.9rem 0 1.2rem;letter-spacing:.02em}
.photo-section{padding-top:6.5rem;padding-bottom:6.5rem}
.location .eyebrow{color:#d8bd91}
.location-copy p:not(.eyebrow){color:#e0e4dc}
.location address{color:#d1d8d0}
.location .text-link{color:var(--paper);border-bottom-color:#b99b6c}
.location .text-link:hover{color:#e5c999}
.contact{padding-top:8rem;padding-bottom:8rem}
.contact h2{max-width:820px;margin:auto}
.contact .eyebrow{margin-bottom:2rem}
.contact-actions{margin-top:2.5rem}
footer{padding-top:2.8rem;padding-bottom:2.8rem}
@media(max-width:900px){.feature>img{height:450px}.facts span+span{padding-left:2.5%}.brand-title{font-size:1.15rem}nav{gap:.9rem}}
@media(max-width:600px){header{padding:1.4rem 5% 1.1rem}.brand-title{font-size:1.3rem}nav{gap:1.25rem}.hero{height:76svh}.hero-copy>p:not(.eyebrow){margin:1.4rem 0}.hero-foot{right:7%}.facts{padding:1.5rem 7%}.facts span+span{padding-left:0;border:0}.facts strong{font-size:1.6rem}.feature>img{height:390px}.feature-copy{padding:0}.photo-section{padding:4.5rem 7%}.contact{padding:5rem 7%}.contact h2{font-size:2.6rem}.photo span{padding-bottom:1rem}}
