:root{--paper:#f5f2eb;--paper2:#fbfaf7;--ink:#1a1b18;--muted:#69675f;--dark:#17201d;--max:1380px;--pad:clamp(22px,5vw,76px)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper2);color:var(--ink);font-family:Arial,Helvetica,sans-serif;line-height:1.55}img{display:block;width:100%;height:100%;object-fit:cover}button,a{font:inherit}a{color:inherit}.skip-link{position:fixed;left:12px;top:-80px;background:#fff;padding:10px 14px;z-index:1000}.skip-link:focus{top:12px}.site-header{position:fixed;z-index:50;top:0;left:0;right:0;height:74px;display:flex;align-items:center;gap:28px;padding:0 var(--pad);background:rgba(20,27,24,.72);backdrop-filter:blur(14px);color:#fff;border-bottom:1px solid rgba(255,255,255,.13)}.wordmark{font-size:13px;letter-spacing:.22em;text-decoration:none;font-weight:700}.site-nav{margin-left:auto;display:flex;gap:24px}.site-nav a{text-decoration:none;font-size:12px;letter-spacing:.06em}.menu-toggle{display:none;margin-left:auto;background:none;border:1px solid rgba(255,255,255,.45);color:#fff;border-radius:999px;padding:7px 12px}.hero{position:relative;height:min(92vh,940px);min-height:650px;background:#111}.hero>img{position:absolute;inset:0}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.12),rgba(0,0,0,.06) 45%,rgba(0,0,0,.42))}.hero-copy{position:absolute;left:var(--pad);bottom:clamp(48px,8vh,100px);color:#fff}.hero h1,.section-heading h2,.intro h2,.place-copy h2,.stay h2{font-family:Georgia,"Times New Roman",serif;font-weight:400;letter-spacing:-.035em;line-height:.96;margin:.16em 0 .45em}.hero h1{font-size:clamp(54px,7.7vw,112px)}.eyebrow{font-size:11px;letter-spacing:.18em;font-weight:700;color:var(--muted);margin:0 0 22px}.light{color:rgba(255,255,255,.82)}.button{display:inline-flex;align-items:center;justify-content:center;border:1px solid currentColor;border-radius:999px;text-decoration:none;padding:13px 19px;background:none;cursor:pointer;font-size:12px;letter-spacing:.06em}.button-light{color:#fff}.section-pad{padding:clamp(76px,9vw,132px) var(--pad)}.intro{display:grid;grid-template-columns:minmax(280px,.82fr) minmax(520px,1.35fr);gap:clamp(48px,7vw,110px);max-width:var(--max);margin:auto}.intro h2,.section-heading h2,.place-copy h2{font-size:clamp(44px,5.1vw,76px)}.intro-copy>p:last-child,.section-heading>p:last-child,.place-copy p{max-width:760px;color:#45433e;font-size:clamp(16px,1.4vw,20px)}.intro-grid{display:grid;grid-template-columns:1fr 1fr;grid-template-rows:1.16fr .84fr;gap:12px;min-height:720px}.intro-main{grid-column:1/-1}figure{margin:0;overflow:hidden;background:#ddd;cursor:zoom-in}.section-light{background:var(--paper)}.section-heading{max-width:960px;margin:0 auto 54px}.house-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.house-grid figure{height:320px;grid-column:span 2}.house-grid .house-large{height:450px;grid-column:span 3}.bedrooms{max-width:var(--max);margin:auto}.bed-grid{display:grid;grid-template-columns:repeat(12,1fr);gap:12px}.bed-grid figure{height:290px;grid-column:span 3}.bed-grid figure:nth-child(-n+3){height:390px;grid-column:span 4}.water{background:var(--dark);color:#fff}.section-heading.inverse>p:last-child{color:rgba(255,255,255,.72)}.water-grid,.wellness-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:1fr 1fr;gap:14px}.water-grid figure{height:620px}.outdoor{background:var(--paper2)}.outdoor-grid{max-width:var(--max);margin:auto;display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.outdoor-grid figure{height:300px;grid-column:span 2}.outdoor-grid .outdoor-wide{height:470px;grid-column:span 3}.wellness{background:var(--paper)}.wellness-grid figure{height:600px}.place{display:grid;grid-template-columns:1.15fr .85fr;min-height:720px;background:var(--paper2)}.place-image{min-height:720px}.place-copy{align-self:center;padding:clamp(50px,7vw,105px)}.gallery-section{background:#efeae1}.gallery-heading{margin-left:0}.gallery-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;max-width:var(--max);margin:auto}.gallery-card{border:0;padding:0;background:#ddd;cursor:zoom-in;aspect-ratio:4/3;overflow:hidden}.gallery-card img{transition:transform .45s ease}.gallery-card:hover img{transform:scale(1.025)}.stay{background:var(--dark);color:#fff;text-align:center}.stay-inner{max-width:850px;margin:auto}.stay h2{font-size:clamp(54px,7vw,100px);margin-bottom:.25em}.stay p:not(.eyebrow){font-size:18px;color:rgba(255,255,255,.75);max-width:600px;margin:0 auto 30px}.stay-actions{display:flex;justify-content:center;align-items:center;gap:24px;flex-wrap:wrap}.text-link{text-underline-offset:5px;font-size:13px}.light-link{color:#fff}.footer{padding:50px var(--pad);background:#101613;color:#ddd;display:grid;grid-template-columns:1fr auto;gap:12px 30px}.footer p{margin:0;font-size:12px;color:#aaa}.footer-small{grid-column:2}.lightbox{width:100vw;height:100vh;max-width:none;max-height:none;padding:0;border:0;background:#0b0d0c;color:#fff}.lightbox::backdrop{background:#0b0d0c}.lightbox[open]{display:grid;grid-template-columns:90px 1fr 90px;grid-template-rows:70px 1fr}.lightbox-bar{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;padding:0 28px}.lightbox-count{font-size:12px;color:#bbb}.lightbox-close{border:0;background:none;color:#fff;cursor:pointer}.lightbox-arrow{border:0;background:none;color:#fff;font-family:Georgia,serif;font-size:52px;cursor:pointer;opacity:.72}.lightbox-figure{cursor:default;display:grid;grid-template-rows:1fr auto;min-width:0;min-height:0;background:transparent}.lightbox-image{object-fit:contain;min-width:0;min-height:0}.lightbox-caption{text-align:center;color:#bbb;font-size:12px;padding:12px 10px 20px}@media(max-width:900px){.site-header{height:64px}.menu-toggle{display:block}.site-nav{display:none;position:absolute;top:64px;left:0;right:0;background:rgba(20,27,24,.96);padding:20px var(--pad);flex-direction:column;align-items:flex-start}.site-nav.open{display:flex}.hero{height:86vh;min-height:600px}.intro{grid-template-columns:1fr}.intro-grid{min-height:570px}.house-grid{grid-template-columns:1fr 1fr}.house-grid figure,.house-grid .house-large{grid-column:auto;height:300px}.bed-grid{grid-template-columns:1fr 1fr}.bed-grid figure,.bed-grid figure:nth-child(-n+3){grid-column:auto;height:300px}.water-grid,.wellness-grid{grid-template-columns:1fr}.water-grid figure,.wellness-grid figure{height:440px}.outdoor-grid{grid-template-columns:1fr 1fr}.outdoor-grid figure,.outdoor-grid .outdoor-wide{grid-column:auto;height:330px}.place{grid-template-columns:1fr}.place-image{min-height:500px}.gallery-grid{grid-template-columns:repeat(3,1fr)}.footer{grid-template-columns:1fr}.footer-small{grid-column:1}}@media(max-width:600px){:root{--pad:20px}.hero h1{font-size:52px}.hero-copy{bottom:40px}.intro-grid{grid-template-columns:1fr;grid-template-rows:360px 260px 260px;min-height:auto}.intro-main{grid-column:auto}.house-grid,.bed-grid,.outdoor-grid,.water-grid,.wellness-grid{grid-template-columns:1fr}.house-grid figure,.house-grid .house-large,.bed-grid figure,.bed-grid figure:nth-child(-n+3),.outdoor-grid figure,.outdoor-grid .outdoor-wide,.water-grid figure,.wellness-grid figure{height:300px}.gallery-grid{grid-template-columns:repeat(2,1fr);gap:5px}.lightbox[open]{grid-template-columns:46px 1fr 46px}.lightbox-bar{padding:0 14px}.lightbox-arrow{font-size:38px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Strandville nav refinement */
.site-nav{gap:clamp(14px,1.35vw,24px);white-space:nowrap}
.site-nav .nav-enquire{font-weight:700;letter-spacing:.12em}
@media (max-width:1050px) and (min-width:901px){
  .site-header{padding-left:28px;padding-right:28px}
  .site-nav{gap:14px}
  .site-nav a{font-size:11px}
}

/* Final enquiry + footer refinements */
.nav-enquire-button{border:0;background:transparent;color:inherit;padding:0;cursor:pointer;font-size:12px;letter-spacing:.12em;font-weight:700}
.footer{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;padding:42px var(--pad);min-height:0}
.footer-right{text-align:right;display:flex;flex-direction:column;gap:12px}
.footer-right p{margin:0}
.footer-small{grid-column:auto}
@media(max-width:900px){.nav-enquire-button{font-size:11px}.footer{align-items:flex-start;flex-direction:column}.footer-right{text-align:left}}
