:root {
  --forest:#4f6b4f; --forest-dark:#2f3a32; --sage:#8fa68e; --moss:#c8d3c0; --tan:#cdb89b;
  --sand:#e8dfd1; --cream:#f8f7f2; --white:#fff; --muted:#687368; --line:rgba(47,58,50,.14);
  --shadow:0 18px 50px rgba(47,58,50,.10); --radius-lg:28px; --radius-md:18px; --max:1120px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;color:var(--forest-dark);background:var(--cream);font-family:ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.6}
a{color:inherit}
.skip-link{position:absolute;left:-999px;top:12px;z-index:100;background:var(--forest-dark);color:white;padding:8px 12px;border-radius:10px}.skip-link:focus{left:12px}

.site-header{position:sticky;top:0;z-index:50;background:rgba(248,247,242,.92);backdrop-filter:blur(16px);border-bottom:1px solid var(--line)}
.nav-wrap{width:min(var(--max),calc(100% - 32px));margin:0 auto;min-height:72px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;font-weight:900;letter-spacing:-.03em;min-height:36px;max-width:280px;color:var(--forest-dark)}
.nav-links{display:flex;gap:10px;color:var(--muted);font-size:.92rem;align-items:center}
.nav-links a{text-decoration:none;white-space:nowrap;padding:9px 12px;border-radius:999px;border:1px solid transparent}
.nav-links a:hover{color:var(--forest);background:rgba(143,166,142,.12)}
.nav-links a.is-active{color:white;background:var(--forest);box-shadow:0 10px 22px rgba(79,107,79,.18)}
.menu-button{display:none;border:1px solid var(--line);background:var(--white);color:var(--forest-dark);border-radius:999px;padding:8px 12px;font-weight:850}

.container{width:min(var(--max),calc(100% - 32px));margin:0 auto}
.app-main{min-height:calc(100vh - 72px)}
.site-hero{position:relative;overflow:hidden;background:radial-gradient(circle at 12% 0%,rgba(200,211,192,.58),transparent 30%),linear-gradient(180deg,#fbfaf6 0%,var(--cream) 100%);border-bottom:1px solid var(--line)}
.hero-bg{position:absolute;inset:auto 0 0 0;pointer-events:none;opacity:.32;max-height:220px;overflow:hidden}
.hero-bg img{width:100%;min-width:980px;display:block;transform:translateY(52%)}
.hero-shell{position:relative;z-index:2;display:grid;grid-template-columns:auto minmax(0,1fr);gap:24px;align-items:center;min-height:250px;padding:48px 0}
.hero-logo{
  width:112px;
  height:112px;
  max-width:112px;
  max-height:112px;
  object-fit:contain;
  object-position:center center;
  margin:0;
  display:block;
  border-radius:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
.eyebrow{margin:0 0 12px;color:var(--forest);font-size:.78rem;font-weight:850;letter-spacing:.16em;text-transform:uppercase}
h1,h2,h3{margin:0;line-height:1.05;letter-spacing:-.045em}
h1{font-size:clamp(2.6rem,7vw,5.5rem)}
h2{font-size:clamp(2rem,4vw,4rem)}
h3{font-size:1.35rem;letter-spacing:-.02em}
.hero-copy{max-width:720px;margin:18px 0 0;font-size:clamp(1.04rem,2vw,1.28rem);color:var(--muted)}

.status-strip{background:var(--white);border-bottom:1px solid var(--line)}
.status-card{padding:14px 0;color:var(--muted);font-size:.94rem}.status-card[hidden]{display:none}

.view-shell{position:relative;min-height:540px}
.view-section{display:none;padding:72px 0 88px;animation:fadeIn 180ms ease-out}
.view-section.is-active{display:block}
@keyframes fadeIn{from{opacity:.35;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}

.section-heading{margin-bottom:34px}.section-heading p:not(.eyebrow){color:var(--muted);max-width:780px;font-size:1.05rem}
.two-col{display:grid;grid-template-columns:minmax(0,.95fr) minmax(0,1.05fr);gap:42px;align-items:start}
.statement-card,.signup-card,.empty-state{border:1px solid var(--line);border-radius:var(--radius-lg);background:rgba(255,255,255,.86);box-shadow:var(--shadow)}
.statement-card{padding:30px}.statement-card h3{margin-bottom:14px;color:var(--forest)}.statement-card p{margin:0;font-size:1.12rem}
.pillar-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pillar-card{min-height:110px;padding:20px;border-radius:22px;background:white;border:1px solid var(--line);box-shadow:0 10px 26px rgba(47,58,50,.06);display:flex;align-items:flex-end;font-weight:850}

.threats-section{background:linear-gradient(180deg,#f8f7f2 0%,#efe6d7 100%);overflow:hidden}
.stream-divider{width:100%;opacity:.95;margin-top:-72px;margin-bottom:40px}
.stream-divider img{width:100%;min-width:900px;display:block}
.overview-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-bottom:28px}
.overview-card{padding:18px;min-height:130px;border-radius:22px;background:rgba(255,255,255,.84);border:1px solid var(--line);box-shadow:0 10px 24px rgba(47,58,50,.06)}
.overview-card h3{font-size:1rem;margin-bottom:8px}.overview-card p{color:var(--muted);margin:0;font-size:.94rem}
.issue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}
.issue-card{padding:28px;border-radius:var(--radius-lg);background:white;border:1px solid var(--line);box-shadow:var(--shadow)}
.issue-card h3{color:var(--forest);margin-bottom:14px}.issue-card p{color:var(--muted)}
.check-list,.issue-list{margin:0;padding:0;list-style:none}.check-list li,.issue-list li{position:relative;padding-left:26px;margin:10px 0;color:var(--muted)}
.check-list li:before,.issue-list li:before{content:"";position:absolute;left:0;top:.58em;width:10px;height:10px;border-radius:50%;background:var(--sage)}

.resource-list,.action-grid,.faq-list{display:grid;gap:12px}
.resource-card{display:grid;grid-template-columns:1fr auto;gap:18px;align-items:center;padding:18px 20px;border-radius:var(--radius-md);background:rgba(255,255,255,.84);border:1px solid var(--line);box-shadow:0 10px 26px rgba(47,58,50,.06)}
.resource-card h3{font-size:1.08rem;margin:0 0 4px}.resource-card p{margin:0;color:var(--muted);font-size:.96rem}
.resource-meta{color:var(--muted);font-size:.82rem;margin-bottom:4px;text-transform:uppercase;letter-spacing:.08em;font-weight:850}

.get-involved-section{background:#fbfaf6}.involvement-layout{grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr)}
.action-card{padding:22px;border-radius:var(--radius-md);background:white;border:1px solid var(--line);box-shadow:0 10px 26px rgba(47,58,50,.06)}
.action-card h3{margin-bottom:8px}.action-card p{color:var(--muted);margin:0 0 12px}
.signup-card{padding:30px;background:var(--forest-dark);color:white}.signup-card .eyebrow{color:var(--moss)}.signup-card p,.signup-card li,.signup-card .muted{color:rgba(255,255,255,.78)}.signup-card .button{background:white;color:var(--forest-dark);margin-top:18px}

.news-section{background:white;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.update-card{position:relative;min-height:240px;padding:24px;border-radius:var(--radius-lg);background:#fbfaf6;border:1px solid var(--line);box-shadow:var(--shadow);overflow:hidden}
.update-card:before{content:"";position:absolute;inset:0 0 auto 0;height:8px;background:linear-gradient(90deg,var(--forest),var(--sage),var(--tan))}
.update-date{display:inline-flex;margin-bottom:18px;color:var(--muted);font-size:.82rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.update-card h3{margin-bottom:12px}.update-card p{color:var(--muted);margin:0 0 18px}
.text-link{color:var(--forest);font-weight:850;text-decoration:none}.text-link:hover{text-decoration:underline}
.faq-item{border-radius:var(--radius-md);background:white;border:1px solid var(--line);box-shadow:0 10px 26px rgba(47,58,50,.06);overflow:hidden}
.faq-item summary{cursor:pointer;padding:18px 20px;font-weight:850}.faq-item div{padding:0 20px 20px;color:var(--muted)}
.empty-state{padding:24px;color:var(--muted);background:rgba(255,255,255,.64);box-shadow:none}

.button{display:inline-flex;justify-content:center;align-items:center;min-height:48px;padding:0 20px;border-radius:999px;text-decoration:none;font-weight:850;border:1px solid transparent;transition:transform 160ms ease}
.button:hover{transform:translateY(-1px)}.button.primary{color:white;background:var(--forest);box-shadow:0 14px 26px rgba(79,107,79,.22)}.button.secondary{color:var(--forest-dark);background:rgba(255,255,255,.72);border-color:var(--line)}


.form-embed-wrap{
  margin-top:18px;
  border-radius:18px;
  overflow:hidden;
  background:white;
  border:1px solid rgba(255,255,255,.28);
  box-shadow:0 14px 30px rgba(0,0,0,.14);
}
.signup-form-frame{
  display:block;
  width:100%;
  min-height:680px;
  border:0;
  background:white;
}
.form-fallback-link{
  display:inline-flex;
  margin-top:14px;
  color:white;
  text-decoration:none;
  font-weight:850;
}
.form-fallback-link:hover{
  text-decoration:underline;
}
.form-note{
  margin:10px 0 0;
  font-size:.86rem;
  color:rgba(255,255,255,.7)!important;
}
@media(max-width:760px){
  .signup-form-frame{
    min-height:760px;
  }
}

.site-footer{padding:32px 0;background:var(--forest-dark);color:rgba(255,255,255,.78)}
.footer-inner{display:flex;justify-content:space-between;gap:24px;align-items:center}.site-footer strong{color:white}.site-footer p{margin:4px 0 0}.site-footer a{color:white;text-decoration:none;font-weight:850}

@media(max-width:1040px){.nav-links{gap:4px;font-size:.86rem}.nav-links a{padding:8px 9px}.overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){
  .menu-button{display:inline-flex}.nav-wrap{min-height:68px;padding:12px 0;align-items:center;flex-wrap:wrap}.nav-links{display:none;width:100%;flex-direction:column;align-items:stretch;gap:4px;padding:8px 0 12px}.nav-links.open{display:flex}.nav-links a{padding:9px 0;border-radius:0;border-top:1px solid var(--line)}.nav-links a.is-active{border-radius:12px;padding-left:12px}
  .hero-shell{grid-template-columns:1fr;text-align:center;justify-items:center;min-height:310px;padding:40px 0}.hero-copy{margin-left:auto;margin-right:auto}.hero-bg{opacity:.24}
  .view-section{padding:56px 0 72px}.stream-divider{margin-top:-56px}.two-col,.issue-grid,.overview-grid,.card-grid,.pillar-grid{grid-template-columns:1fr}.resource-card{grid-template-columns:1fr}.footer-inner{align-items:flex-start;flex-direction:column}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}.view-section{animation:none}}
