:root{--green:#56704f;--deep:#2f4430;--cream:#f6f3ec;--ink:#1f2620;--muted:#5d665d;--line:#e2ddd2}
*{box-sizing:border-box}html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font:17px/1.6 Inter,system-ui,sans-serif}
img{max-width:100%;display:block}a{color:var(--green)}
h1,h2,h3{font-family:"Cormorant Garamond",Georgia,serif;font-weight:600;line-height:1.15;color:var(--deep);margin:0 0 .5em}
h1{font-size:clamp(2.3rem,5vw,3.6rem)}h2{font-size:clamp(1.9rem,3.5vw,2.6rem)}h3{font-size:1.45rem}
.wrap{max-width:1180px;margin:0 auto;padding:0 20px}
.top{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:16px;padding:10px 24px;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line)}
.brand img{height:54px;width:auto}
nav{display:flex;align-items:center;gap:22px;font-weight:500;font-size:.95rem}nav a{color:var(--ink);text-decoration:none}nav a:hover{color:var(--green)}
nav .cta{background:var(--green);color:#fff;padding:9px 16px;border-radius:999px}nav .cta:hover{color:#fff;background:var(--deep)}
.hero{position:relative;min-height:78vh;background:center/cover;display:flex;align-items:flex-end}
.veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(15,24,15,.72),rgba(15,24,15,.35) 55%,rgba(15,24,15,.1)),linear-gradient(180deg,transparent 50%,rgba(15,24,15,.5))}
.herotext{position:relative;color:#fff;padding-bottom:8vh}.herotext h1{color:#fff;max-width:14ch;text-shadow:0 2px 18px rgba(0,0,0,.35)}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.82rem;font-weight:600;margin:0 0 .6em}
.lead{font-size:1.18rem;max-width:58ch}
.btns{display:flex;flex-wrap:wrap;gap:12px;margin-top:1.4em}
.btn{display:inline-block;background:var(--green);color:#fff;text-decoration:none;font-weight:600;padding:13px 24px;border-radius:999px;border:2px solid var(--green)}
.btn:hover{background:var(--deep);border-color:var(--deep)}.btn.ghost{background:transparent;border-color:#fff;color:#fff}.btn.ghost:hover{background:#fff;color:var(--deep)}
.btn.big{font-size:1.4rem;padding:16px 34px}
section{padding:72px 0}.band{background:var(--cream)}.intro{max-width:820px;text-align:center}.intro p{font-size:1.15rem}
.cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:28px}
.card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:24px}.card p{margin:0;color:var(--muted)}
.split{display:grid;grid-template-columns:1fr 1fr;gap:48px;align-items:center}
.ticks{columns:2;padding:0;list-style:none}.ticks li{padding:4px 0 4px 26px;position:relative}.ticks li:before{content:"✓";position:absolute;left:0;color:var(--green);font-weight:700}
.ph{display:block;overflow:hidden;border-radius:12px;background:var(--line)}.ph img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.ph:hover img{transform:scale(1.03)}
.ph.tall{aspect-ratio:4/3}.ph.wide{aspect-ratio:16/9;margin:24px 0}
.sub{color:var(--muted);margin-top:-.4em}
.homes{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:22px;margin-top:24px}
.home{background:#fff;border-radius:14px;overflow:hidden;text-decoration:none;color:var(--ink);border:1px solid var(--line);transition:box-shadow .2s}
.home:hover{box-shadow:0 10px 30px rgba(0,0,0,.12)}.home img{aspect-ratio:3/2;object-fit:cover;width:100%}.home div{padding:16px 20px}.home h3{margin:0}.home p{margin:.2em 0 0;color:var(--muted)}
.map{width:100%;aspect-ratio:4/3;border:0;border-radius:14px}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px;margin:22px 0}.grid .ph{aspect-ratio:3/2}
.center{text-align:center}.contact{text-align:center}
.page{padding-top:36px}.crumb{font-size:.9rem;color:var(--muted)}.crumb a{color:var(--muted)}
.status{display:inline-block;background:var(--cream);color:var(--deep);font-weight:600;padding:4px 12px;border-radius:999px;font-size:.9rem}
.facts{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin:8px 0 36px}
.facts div{border:1px solid var(--line);border-radius:12px;padding:14px 18px}.facts span{display:block;font-size:.8rem;text-transform:uppercase;letter-spacing:.1em;color:var(--muted)}.facts strong{font-size:1.1rem}
.pn{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:36px}
footer{background:var(--deep);color:#e8eee6;padding:48px 0}footer a{color:#fff}.foot{display:flex;gap:32px;align-items:center;flex-wrap:wrap}.foot img{height:70px;width:auto}.small{font-size:.85rem;opacity:.8}
.lb{position:fixed;inset:0;z-index:50;background:rgba(10,14,10,.94);display:flex;align-items:center;justify-content:center}.lb[hidden]{display:none}
.lb img{max-width:92vw;max-height:88vh;border-radius:6px}.lb button{position:absolute;background:none;border:0;color:#fff;font-size:3rem;cursor:pointer;padding:12px 18px}
.lbx{top:8px;right:12px}.lbp{left:6px}.lbn{right:6px}
@media (max-width:820px){nav a:not(.cta){display:none}.brand img{height:42px}.split{grid-template-columns:1fr;gap:28px}.ticks{columns:1}section{padding:52px 0}.hero{min-height:70vh}.homes{grid-template-columns:1fr}}
