:root{--teal:#0F4C5C;--terracotta:#D9774B;--terracotta-d:#A9532B;--sand-brand:#D9B26F;--offwhite:#FAF6EE;--charcoal:#2B2B2B;--clay:var(--terracotta-d);--clay-d:var(--teal);--sand:#F3EBDD;--cream:var(--offwhite);--ink:var(--charcoal);--muted:#4F4F4F;--green:var(--teal);--line:#E6DCC8;--font:'Poppins','Helvetica Neue',Arial,sans-serif}
*{box-sizing:border-box}body{margin:0;font-family:var(--font);color:var(--ink);background:var(--cream);line-height:1.6}
a{color:var(--clay-d)}.wrap{max-width:1100px;margin:auto;padding:0 1.25rem}
.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;background:#fff;padding:.5rem;z-index:9}
header{background:#fff;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:5}
.nav{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;padding:.8rem 0}
.logo{display:inline-flex;align-items:center}.logo img{height:64px;width:auto;display:block}
nav ul{list-style:none;display:flex;flex-wrap:wrap;gap:1rem;margin:0;padding:0}nav a{text-decoration:none;color:var(--ink);font-weight:500}nav a:hover{color:var(--clay)}
.hero{background:linear-gradient(135deg,#F6E6D2,var(--offwhite) 60%,#E3EEF0);padding:5rem 0}
.hero h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.15;margin:.3rem 0 1rem;max-width:18ch}.eyebrow{color:var(--terracotta-d);font-weight:700;letter-spacing:.05em}
.lead{font-size:1.2rem;color:var(--muted);max-width:55ch}
.btn{display:inline-block;padding:.8rem 1.4rem;border-radius:999px;font-weight:700;text-decoration:none;margin:.4rem .5rem 0 0;border:2px solid var(--teal)}
.btn-p{background:var(--teal);border-color:var(--teal);color:#fff}.btn-p:hover{background:#0A3742;border-color:#0A3742;color:#fff}.btn-s{color:var(--teal);background:#fff}.btn:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid var(--teal);outline-offset:2px}
section{padding:4rem 0}section:nth-of-type(even){background:var(--sand)}h2{font-size:2rem;margin-top:0;color:var(--clay-d)}
.grid{display:grid;gap:1.25rem;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:1.5rem}.card h3{margin-top:0}
.ph{background:#fff3c4;border:1px dashed #b08900;padding:0 .3rem;border-radius:4px;font-size:.95em}
.stats .num{font-size:1.8rem;font-weight:800;color:var(--green)}
ol.steps{counter-reset:s;list-style:none;padding:0}ol.steps li{counter-increment:s;position:relative;padding:0 0 1.2rem 3.5rem}
ol.steps li::before{content:counter(s);position:absolute;left:0;top:0;width:2.4rem;height:2.4rem;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font-weight:700}
form{display:grid;gap:1rem;max-width:600px}label{font-weight:600;display:block}input,textarea,select{width:100%;padding:.7rem;border:1px solid #7A7A7A;border-radius:8px;font:inherit}
footer{background:var(--teal);color:var(--offwhite);padding:2.5rem 0}footer a{color:var(--sand-brand)}.footer-logo{height:56px;width:auto;margin-bottom:.5rem;display:block}
.imgph{aspect-ratio:16/9;background:#EADFCB;border-radius:12px;display:grid;place-items:center;color:var(--muted);margin-bottom:1rem}

@media (max-width:768px){.logo{margin-left:20px}.logo img{height:48px}nav{gap:.5rem;padding:.6rem 20px}nav ul{gap:.35rem 1rem}nav a{font-size:.95rem}}

.hero{position:relative;padding:0;background:#E3EEF0;overflow:hidden}
.hero-img img{display:block;width:100%;max-width:1600px;height:clamp(460px,48vw,720px);object-fit:cover;object-position:70% center;margin:0 auto}
.hero-txt{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:center;align-items:flex-start;left:0;right:0}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(250,246,238,.94) 0%,rgba(250,246,238,.85) 38%,rgba(250,246,238,0) 65%);pointer-events:none}
.hero-txt{z-index:1}.hero .lead{max-width:34ch}
.cardimg img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover;border-radius:12px;margin-bottom:1rem}
@media (max-width:760px){.hero-img img{height:260px;object-position:center}.hero::after{display:none}.hero-txt{position:static;padding:2rem 1.25rem}}
/* Our homes gallery */
.home-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:1.5rem;margin-top:1.5rem}
.home-card{background:#fff;border-radius:12px;padding:1.25rem;box-shadow:0 2px 10px rgba(0,0,0,.06)}
.home-card h3{margin:0;color:#0F4C5C}.home-cap{margin:.2rem 0 1rem;color:#2B2B2B}
.home-imgs{display:grid;grid-template-columns:1fr 1fr;gap:.5rem}
.home-imgs figure{margin:0;position:relative}.home-imgs figure:first-child{grid-column:1/-1}
.home-imgs img{width:100%;height:auto;display:block;border-radius:8px}
.home-imgs figcaption{position:absolute;left:.4rem;bottom:.4rem;background:rgba(43,43,43,.75);color:#fff;font-size:.7rem;padding:.15rem .45rem;border-radius:4px}
.home-note{font-size:.85rem;color:#555;margin-top:1rem}
.optin label{display:flex;gap:.5rem;align-items:flex-start;font-weight:400;font-size:.9rem}
.optin input{width:auto;margin-top:.25rem}
/* Whare Ahuru card */
.wa-card{background:#B0502A;color:#fff;border-radius:16px;padding:2rem;max-width:760px;margin:0 auto}
.wa-card h2{color:#fff}.wa-card a{color:#fff;text-decoration:underline}
.wa-card label,.wa-card legend{color:#fff;font-size:1.05rem}
.wa-card input:not([type=radio]):not([type=checkbox]),.wa-card textarea{font-size:1.05rem;padding:.75rem}
.wa-card fieldset{border:0;padding:0;margin:0 0 1rem}
.wa-safety{background:#fff;color:#2B2B2B;border-radius:10px;padding:1rem}
.wa-btn{background:#0F4C5C;color:#fff}.wa-small{font-size:.9rem}
.nav-need{color:#D9774B!important;font-weight:600}

.partner-logo{display:flex;align-items:center;height:64px;margin-bottom:1rem}.partner-logo img{max-height:64px;max-width:220px;width:auto;height:auto}

.wa-dialog{border:0;padding:0;background:transparent;max-width:640px;width:calc(100% - 2rem);max-height:90vh}
.wa-dialog::backdrop{background:rgba(43,43,43,.6)}
.wa-dialog .wa-card{position:relative;max-height:90vh;overflow:auto;margin:0}
.wa-close{position:absolute;top:.5rem;right:.75rem;background:none;border:0;color:#fff;font-size:2rem;line-height:1;cursor:pointer}
.wa-dialog:not([open]){display:none}

.wa-teaser{max-width:720px;margin-top:1.25rem}
.wa-pop{background:#FAF6EE;color:#2B2B2B;border-radius:12px;overflow:hidden;max-height:90vh;display:flex;flex-direction:column}
.wa-pop-head{background:#0F4C5C;color:#fff;display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem}
.wa-pop-head h2{margin:0;color:#fff;font-size:1.25rem}
.wa-pop-head .wa-close{position:static;color:#fff}
.wa-pop-body{padding:1.25rem;overflow:auto}
.wa-pop .wa-safety{background:#fff;color:#2B2B2B;border-left:4px solid #B0502A}
