@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:wght@500;600;700&family=DM+Sans:wght@400;500;700&display=swap');
:root{--green:#79BC42;--green-deep:#5B9830;--green-soft:#EEF6E6;--navy:#2C4B4C;--charcoal:#243132;--text:#334140;--muted:#657574;--line:#DCE6DD;--bg:#FBFCF8;--white:#FFFFFF;--orange:#E77A24;--max:1160px;--radius:22px;--shadow:0 18px 40px rgba(36,49,50,.08)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:'DM Sans',sans-serif;background:var(--bg);color:var(--text);line-height:1.7;-webkit-font-smoothing:antialiased}img{max-width:100%;display:block}a{text-decoration:none;color:inherit}h1,h2,h3,h4{margin:0 0 .9rem;font-family:'Cormorant Garamond',serif;line-height:1.08;color:var(--charcoal)}h1{font-size:clamp(2.35rem,4.8vw,4.05rem)}h2{font-size:clamp(1.9rem,3.4vw,3rem)}h3{font-size:clamp(1.45rem,2.4vw,2.05rem)}h4{font-size:1.15rem}p{margin:0 0 1rem;color:var(--muted);font-size:1rem}ul{margin:0;padding-left:1.1rem;color:var(--muted)}.container{width:min(var(--max),calc(100% - 2.2rem));margin:0 auto}.section{padding:88px 0}.label{display:inline-block;margin-bottom:1rem;font-size:.75rem;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--green-deep)}.eyebrow{color:var(--green-deep);font-size:.84rem;font-weight:700;letter-spacing:.16em;text-transform:uppercase}.lead{font-size:1.08rem;max-width:760px}.btn-row{display:flex;gap:.9rem;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 1.3rem;border-radius:999px;font-weight:700;font-size:.88rem;letter-spacing:.01em;border:1px solid transparent;transition:.2s ease;background:var(--white)}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--green);color:white}.btn-secondary{background:var(--orange);color:white}.btn-outline{border-color:var(--green-deep);color:var(--green-deep);background:transparent}header{position:sticky;top:0;z-index:50;backdrop-filter:saturate(180%) blur(18px);background:rgba(251,252,248,.9);border-bottom:1px solid rgba(121,188,66,.12)}.header-inner{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:2rem}.logo-link{display:flex;align-items:center}.logo{height:52px;width:auto}nav.desktop-nav{display:flex;align-items:center;gap:1.55rem}nav.desktop-nav a{font-size:.95rem;color:var(--muted);font-weight:500}nav.desktop-nav a.active,nav.desktop-nav a:hover{color:var(--charcoal)}.nav-cta{padding:.82rem 1.15rem;border-radius:999px;background:var(--green-soft);color:var(--green-deep)!important;font-weight:700}.menu-btn{display:none;border:0;background:transparent;padding:0;cursor:pointer}.menu-btn span{display:block;width:24px;height:2px;background:var(--charcoal);margin:5px 0;border-radius:2px}.mobile-nav{display:none;padding:0 0 1rem}.mobile-nav.open{display:block}.mobile-nav a{display:block;padding:.9rem 0;border-top:1px solid var(--line);color:var(--muted)}.hero-banner{height:clamp(300px,48vw,620px);background:url('assets/home-hero.jpg') center 34%/cover no-repeat;border-bottom:1px solid rgba(121,188,66,.18)}.hero-intro{margin-top:-24px}.hero-card{max-width:860px;background:rgba(255,255,255,.98);border:1px solid rgba(121,188,66,.16);border-radius:28px;padding:2.1rem 2.1rem 1.9rem;box-shadow:var(--shadow)}.hero-card h1{font-size:clamp(2.2rem,4vw,3.45rem);max-width:14ch;margin-bottom:.8rem}.hero-card p{max-width:60ch}.hero-meta{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;margin-top:1.4rem;background:rgba(121,188,66,.18);border-radius:18px;overflow:hidden}.hero-meta div{background:rgba(238,246,230,.9);padding:1rem .9rem}.hero-meta strong{display:block;color:var(--green-deep);font-size:1.1rem}.hero-meta span{font-size:.82rem;color:var(--muted)}.grid-2{display:grid;grid-template-columns:1.1fr .9fr;gap:3rem;align-items:start}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:1.4rem}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:1.1rem}.card{background:var(--white);border:1px solid var(--line);border-radius:var(--radius);padding:1.6rem;box-shadow:0 10px 28px rgba(36,49,50,.04)}.card.soft{background:var(--green-soft)}.card h3,.card h4{margin-bottom:.7rem}.card p:last-child{margin-bottom:0}.statement-grid{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem}.statement{background:var(--white);border:1px solid var(--line);border-radius:24px;padding:1.55rem 1.45rem}.statement h3{font-size:1.8rem}.pillars{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.2rem}.pillar-section-head{display:flex;justify-content:space-between;align-items:end;gap:1.5rem;margin-top:2.2rem}.pillar-section-head h2{margin-bottom:.45rem}.pillar-section-head .lead{max-width:44rem}.pillar{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:1.25rem 1.1rem}.pillar .num{font-size:.82rem;font-weight:700;color:var(--green-deep);letter-spacing:.15em;text-transform:uppercase;margin-bottom:.55rem}.pillar h4{font-size:1.12rem;margin-bottom:.55rem}.pillars-tiered{margin-top:1.6rem;align-items:stretch}.pillar-card{position:relative;padding-top:1.85rem;border-color:rgba(121,188,66,.2);box-shadow:0 10px 28px rgba(36,49,50,.04)}.pillar-card h3{font-size:1.55rem;margin-bottom:.7rem}.pillar-card p{margin-bottom:0}.pillar-badge{position:absolute;top:-13px;left:1.35rem;background:var(--green);color:#fff;border-radius:999px;padding:.32rem .8rem;font-size:.75rem;font-weight:700;letter-spacing:.04em}.feature-band{background:linear-gradient(180deg, rgba(121,188,66,.12), rgba(121,188,66,.05));border-top:1px solid rgba(121,188,66,.18);border-bottom:1px solid rgba(121,188,66,.18)}.feature-panel{background:var(--white);border:1px solid rgba(121,188,66,.22);border-radius:28px;padding:2rem;box-shadow:var(--shadow)}.metric-row{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-top:1.25rem}.metric{border-top:1px solid rgba(121,188,66,.28);padding-top:1rem}.metric strong{display:block;color:var(--green-deep);font-size:1.4rem}.page-hero{padding:60px 0 44px;background:linear-gradient(180deg, rgba(121,188,66,.12), rgba(121,188,66,.04));border-bottom:1px solid rgba(121,188,66,.18)}.page-hero h1{max-width:18ch;font-size:clamp(1.5rem,2.8vw,2.2rem)}.page-hero p{max-width:58ch;font-size:.95rem}.split-media{background:var(--white);border:1px solid var(--line);border-radius:28px;overflow:hidden;box-shadow:var(--shadow)}.split-media img{width:100%;height:100%;object-fit:cover}.list-clean{list-style:none;padding:0;margin:0}.list-clean li{padding:.8rem 0;border-top:1px solid var(--line)}.list-clean li:first-child{border-top:0}.logo-panel{background:linear-gradient(180deg, rgba(121,188,66,.14), rgba(121,188,66,.06));border:1px solid rgba(121,188,66,.2);border-radius:28px;padding:1.8rem}.logo-panel img{width:min(320px,100%);margin:0 auto}.tier{position:relative;padding-top:1.8rem}.tier-badge{position:absolute;top:-13px;left:1.4rem;background:var(--green);color:#fff;border-radius:999px;padding:.32rem .8rem;font-size:.75rem;font-weight:700}.cta-strip{background:var(--charcoal);color:white;border-radius:30px;padding:2rem}.cta-strip h2,.cta-strip h3,.cta-strip p{color:white}.cta-strip p{color:rgba(255,255,255,.78)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:1rem}input,select,textarea{width:100%;padding:.95rem 1rem;border:1px solid var(--line);border-radius:16px;background:white;font:inherit;color:var(--text)}textarea{min-height:170px;resize:vertical}form .full{grid-column:1/-1}.note{font-size:.94rem;color:var(--muted);padding:1rem 1.1rem;background:var(--green-soft);border-radius:18px;border:1px solid rgba(121,188,66,.18)}.press-link{color:var(--green-deep);font-weight:700}footer{margin-top:64px;background:linear-gradient(180deg, #f3f8ef, #edf5e4);border-top:1px solid rgba(121,188,66,.18)}.footer-grid{padding:52px 0 34px;display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:2rem}.footer-logo{height:58px;width:auto;margin-bottom:1rem}.footer-title{font-size:.8rem;font-weight:700;text-transform:uppercase;letter-spacing:.14em;color:var(--green-deep);margin-bottom:1rem}.footer-links a,.footer-text{display:block;color:var(--muted);margin-bottom:.65rem;font-size:.95rem}.footer-bottom{border-top:1px solid rgba(121,188,66,.18);padding:1.1rem 0 1.7rem;color:var(--muted);font-size:.86rem}@media (max-width:980px){.grid-2,.grid-3,.grid-4,.statement-grid,.pillars,.metric-row,.footer-grid{grid-template-columns:1fr 1fr}.hero-meta{grid-template-columns:1fr 1fr}}@media (max-width:760px){nav.desktop-nav{display:none}.menu-btn{display:block}.hero-banner{height:260px;background-position:center 30%}.hero-intro{margin-top:-12px}.hero-card{padding:1.45rem}.grid-2,.grid-3,.grid-4,.statement-grid,.pillars,.metric-row,.footer-grid,.form-grid{grid-template-columns:1fr}.section{padding:68px 0}.header-inner{min-height:74px}.logo{height:46px}}
.intro-narrow{max-width:760px;}

/* ── Photo components ── */
.photo-frame{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.photo-frame img{width:100%;height:100%;object-fit:cover;display:block}
.photo-portrait{border-radius:var(--radius);overflow:hidden;border-left:4px solid var(--orange);box-shadow:var(--shadow)}
.photo-portrait img{width:100%;display:block;object-fit:cover;object-position:center top}
.photo-full{border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow);margin-top:1.6rem}
.photo-full img{width:100%;display:block;object-fit:cover}
.photo-banner{position:relative;border-radius:var(--radius);overflow:hidden;box-shadow:var(--shadow)}
.photo-banner img{width:100%;display:block;object-fit:cover;max-height:460px}
.photo-banner-caption{position:absolute;bottom:0;left:0;right:0;padding:.85rem 1.2rem;background:linear-gradient(to top,rgba(44,75,76,.82),transparent);color:rgba(255,255,255,.88);font-size:.75rem;letter-spacing:.1em;text-transform:uppercase}
.photo-inset{border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 28px rgba(36,49,50,.1);margin-top:1.4rem}
.photo-inset img{width:100%;display:block}
.quote-photo{position:relative;border-radius:var(--radius);overflow:hidden}
.quote-photo img{width:100%;display:block;object-fit:cover;max-height:380px;filter:brightness(.82) saturate(.9)}
.quote-photo-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:1.8rem;background:linear-gradient(to top,rgba(44,75,76,.75) 0%,transparent 60%)}
.quote-photo-overlay blockquote{font-family:'Cormorant Garamond',serif;font-style:italic;font-size:1.35rem;line-height:1.45;color:#fff;margin:0 0 .5rem}
.quote-photo-overlay cite{font-size:.72rem;letter-spacing:.12em;text-transform:uppercase;color:rgba(255,255,255,.65)}

/* ── Pillar detail layout ── */
.pillar-card .grid-2{margin-top:1.2rem}
.pillar-card .list-clean li{font-size:.93rem;padding:.55rem 0}
.pillar-card .note{font-size:.9rem}
@media(max-width:760px){.pillar-card .grid-2{grid-template-columns:1fr}}

/* ── Social icons ── */
.social-links{display:flex;gap:.75rem;margin-top:1rem;align-items:center}
.social-link{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:50%;background:rgba(121,188,66,.15);border:1px solid rgba(121,188,66,.25);color:var(--green-deep);transition:.2s ease}
.social-link:hover{background:var(--green);color:#fff;border-color:var(--green)}
.social-link svg{width:18px;height:18px;fill:currentColor}
