
:root{--forest:#092b23;--leaf:#20875e;--mint:#63cf93;--pale:#e9f8ee;--ink:#152a25;--gray:#587167}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font:16px/1.7 system-ui,-apple-system,Segoe UI,Arial,sans-serif}a{color:#17684c}a:focus-visible{outline:3px solid #53c894;outline-offset:3px}.wrap{max-width:1140px;margin:auto;padding:0 25px}.head{background:#092b23;color:#fff}.head .wrap{display:flex;align-items:center;justify-content:space-between;gap:18px;min-height:93px;flex-wrap:wrap;padding-top:12px;padding-bottom:12px}.logo img{width:min(260px,60vw);height:auto;max-height:75px;object-fit:contain}.nav{display:flex;gap:13px;align-items:center;flex-wrap:wrap}.nav a{font-weight:750;text-decoration:none;color:#fff;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;background:#20875e;color:white!important;border-radius:999px;padding:13px 24px;text-decoration:none;font-weight:800;box-shadow:0 9px 23px #1167432c}.btn:hover{background:#166c48}.btn.light{background:#fff;color:#14573f!important;box-shadow:none}.hero{background:radial-gradient(circle at 90% 12%,#b9f0ce 0,transparent 28%),linear-gradient(130deg,#f2fcf5,#e8f7ec)}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;gap:45px;padding-top:70px;padding-bottom:80px}.eyebrow{text-transform:uppercase;color:#17734b;font-size:12px;font-weight:850;letter-spacing:.14em}.hero h1{font-size:clamp(38px,5vw,64px);line-height:1.1;letter-spacing:-.045em;margin:15px 0 23px}.hero h1 em{font-style:normal;color:#228e60}.hero p{color:#516c5b;font-size:18px}.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.portrait-outer{position:relative;padding:30px 35px 35px 40px}.portrait-outer:before{content:'';position:absolute;inset:12px 0 5px 18px;border-radius:46% 54% 52% 48%;background:linear-gradient(150deg,#a0e4bc,#68cca1 60%,#c0f3d2)}.portrait{position:relative;max-width:380px;margin:auto;aspect-ratio:4/5;border-radius:25px;overflow:hidden;box-shadow:0 24px 55px #0a503a36;border:5px solid #fff}.portrait img{display:block;width:100%;height:100%;object-fit:cover}.portrait:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,#062e27a0)}.portrait-tag{position:absolute;bottom:55px;left:65px;z-index:2;color:white;font-weight:850;font-size:20px}.float-pill{position:absolute;z-index:3;background:#fff;border-radius:17px;padding:11px 16px;box-shadow:0 12px 28px #0a543528;color:#155f47;font-weight:800}.float-pill.one{left:0;top:45px}.float-pill.two{right:0;bottom:45px}.section{padding:72px 0}.section.soft{background:#f3faf5}.intro{max-width:780px}.section h2{font-size:clamp(28px,3.5vw,42px);line-height:1.2;letter-spacing:-.025em;margin:0 0 23px}.section p{max-width:850px;color:#54695d}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{border:1px solid #dfeee3;background:white;padding:28px;border-radius:21px;box-shadow:0 12px 30px #082e1d0a}.card h3{font-size:22px;line-height:1.3;margin-top:0}.card p{font-size:15px}.callout{border-radius:25px;padding:48px;text-align:center;background:linear-gradient(115deg,#e8f9ed,#d7f2df)}.callout p{margin:0 auto 24px}.directory{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.directory a{border:1px solid #d9e9dd;background:white;border-radius:12px;padding:11px 14px;font-size:14px;text-decoration:none}.directory a:hover{border-color:#57bb87;background:#f1fbf3}.copy h2{font-size:25px;margin:24px 0 10px}.copy p{margin-top:0}.sponsors{display:flex;gap:18px;flex-wrap:wrap}.sponsors a{color:#d1f3df}.foot{background:#092b23;color:#d7ebdf;padding:52px 0 22px}.foot .cols{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.foot h3{color:white}.foot a{display:block;color:#d7ebdf;margin:7px 0;text-decoration:none;font-size:14px}.foot .small{margin-top:28px;border-top:1px solid #36584a;padding-top:14px;color:#a8c4b3;font-size:12px}@media(max-width:800px){.hero-grid{grid-template-columns:1fr}.portrait-outer{width:min(100%,490px);margin:auto}.cards{grid-template-columns:1fr}.directory{grid-template-columns:repeat(2,minmax(0,1fr))}.foot .cols{grid-template-columns:1fr 1fr}}@media(max-width:480px){.wrap{padding:0 17px}.directory{grid-template-columns:1fr}.foot .cols{grid-template-columns:1fr}.portrait-outer{padding:20px}.portrait-tag{left:45px}.float-pill{font-size:12px}.callout{padding:35px 20px}}
