  :root{
    --lime:#5AB531; --green:#3E9033; --forest:#226932; --deep:#12331B; --moss:#30521A;
    --paper:#F7F9F4; --card:#FFFFFF; --ink:#101A10; --soft:#5C6B58; --line:#E0E7DC;
    --font:'Archivo', system-ui, sans-serif;
  }
  *{margin:0;padding:0;box-sizing:border-box;}
  html{scroll-behavior:smooth;}
  body{background:var(--paper);color:var(--ink);font-family:var(--font);font-size:16px;line-height:1.62;-webkit-font-smoothing:antialiased;overflow-x:hidden;}
  a{color:inherit;text-decoration:none;}
  a:focus-visible,button:focus-visible{outline:2px solid var(--green);outline-offset:3px;}
  img{display:block;width:100%;}
  .wrap{max-width:1140px;margin:0 auto;padding:0 24px;}
  .eyebrow{font-size:10.5px;letter-spacing:.3em;text-transform:uppercase;font-weight:700;color:var(--green);}

  .lockup{display:flex;align-items:center;gap:11px;}
  .lockup .pt{width:28px;height:28px;flex:none;}
  .lockup .tx .m{font-weight:900;font-size:19px;letter-spacing:-.005em;line-height:1;display:block;}
  .lockup .tx .s{font-weight:600;font-size:8px;letter-spacing:.32em;text-transform:uppercase;color:var(--soft);margin-top:3px;display:block;}

  .nav{position:sticky;top:0;z-index:60;background:rgba(247,249,244,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
  .nav-inner{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;}
  .nav-links{display:flex;gap:26px;font-size:11px;letter-spacing:.16em;text-transform:uppercase;font-weight:600;color:var(--soft);}
  .nav-links a{padding-bottom:3px;border-bottom:2px solid transparent;transition:color .2s,border-color .2s;}
  .nav-links a:hover{color:var(--ink);border-color:var(--lime);}
  @media(max-width:820px){.nav-links a{display:none;}.nav-links a:last-child{display:inline;}}

  /* hero */
  .hero{position:relative;min-height:90svh;display:flex;align-items:flex-end;overflow:hidden;background:var(--deep);}
  .hero .ph{position:absolute;inset:0;}
  .hero .ph img{height:100%;object-fit:cover;object-position:center 42%;}
  .hero .tint{position:absolute;inset:0;
    background:linear-gradient(180deg,rgba(18,51,27,.42) 0%,rgba(18,51,27,.28) 40%,rgba(18,51,27,.9) 100%);}
  .hero .wrap{position:relative;padding:120px 24px 70px;color:#fff;}
  .hero .pt-big{width:72px;height:72px;margin-bottom:26px;}
  .hero h1{font-weight:900;font-size:clamp(40px,7.6vw,88px);line-height:.98;letter-spacing:-.025em;max-width:14ch;}
  .hero h1 .g{background:linear-gradient(100deg,#8BE05C,#5AB531 55%,#3E9033);
    -webkit-background-clip:text;background-clip:text;color:transparent;}
  .hero p.lede{max-width:540px;color:#CFE0C6;margin-top:22px;font-size:17px;}
  .status{position:absolute;top:96px;right:24px;z-index:3;font-size:9.5px;letter-spacing:.24em;text-transform:uppercase;font-weight:700;
    color:#fff;border:1px dashed rgba(255,255,255,.55);padding:8px 12px;}
  @media(max-width:640px){.status{top:80px;right:16px;}}
  .rise{opacity:0;transform:translateY(16px);animation:rise .9s ease forwards;}
  .d1{animation-delay:.1s}.d2{animation-delay:.24s}.d3{animation-delay:.38s}
  @keyframes rise{to{opacity:1;transform:none;}}

  /* statement */
  .stmt{background:linear-gradient(112deg,var(--lime),var(--green) 55%,var(--forest));color:#fff;}
  .stmt .in{display:grid;grid-template-columns:auto 1fr;gap:44px;align-items:center;}
  .stmt .pt-sp{width:96px;height:96px;animation:turn 80s linear infinite;transform-origin:center;}
  @keyframes turn{to{transform:rotate(360deg);}}
  .stmt p{font-size:clamp(19px,2.6vw,28px);line-height:1.4;font-weight:500;max-width:36ch;}
  .stmt .src{font-size:10.5px;letter-spacing:.24em;text-transform:uppercase;color:#DFF5D2;margin-top:16px;font-weight:700;}
  @media(max-width:760px){.stmt .in{grid-template-columns:1fr;gap:24px;}.stmt .pt-sp{width:64px;height:64px;}}

  section{padding:90px 0;}
  .sec-head{max-width:660px;margin-bottom:46px;}
  .sec-head .eyebrow{display:block;margin-bottom:14px;}
  .sec-head h2{font-weight:900;font-size:clamp(30px,4.6vw,50px);line-height:1.05;letter-spacing:-.02em;}
  .sec-head p{color:var(--soft);margin-top:14px;}

  /* focus areas */
  .focus{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line);border:1px solid var(--line);}
  @media(max-width:900px){.focus{grid-template-columns:1fr 1fr;}}
  @media(max-width:560px){.focus{grid-template-columns:1fr;}}
  .fc{background:var(--card);padding:32px 26px 36px;transition:background .25s;position:relative;}
  .fc:hover{background:#FBFDF9;}
  .fc .n{font-weight:900;font-size:11px;letter-spacing:.2em;color:var(--green);display:block;margin-bottom:16px;}
  .fc h3{font-weight:800;font-size:18.5px;letter-spacing:-.01em;margin-bottom:9px;}
  .fc p{color:var(--soft);font-size:14px;}
  .draft-note{margin-top:20px;font-size:12.5px;color:var(--soft);font-style:italic;}

  /* how we give */
  .give{background:var(--card);border-top:1px solid var(--line);border-bottom:1px solid var(--line);}
  .give .in{display:grid;grid-template-columns:1.05fr 1fr;gap:56px;align-items:center;}
  .give figure{overflow:hidden;background:var(--deep);}
  .give img{aspect-ratio:3/4;object-fit:cover;transition:transform .9s ease;}
  .give:hover img{transform:scale(1.03);}
  .give h2{font-weight:900;font-size:clamp(27px,4vw,42px);line-height:1.07;letter-spacing:-.02em;margin-bottom:16px;}
  .give p{color:var(--soft);max-width:48ch;}
  .give .pts{border-top:1px solid var(--line);margin-top:24px;}
  .give .pt-row{display:grid;grid-template-columns:30px 1fr;gap:14px;padding:16px 0;border-bottom:1px solid var(--line);}
  .give .pt-row .k{font-weight:900;font-size:11px;letter-spacing:.18em;color:var(--green);padding-top:3px;}
  .give .pt-row b{display:block;font-weight:700;font-size:16px;}
  .give .pt-row span{color:var(--soft);font-size:14px;}
  @media(max-width:880px){.give .in{grid-template-columns:1fr;gap:30px;}}

  /* quiet band */
  .quiet{position:relative;overflow:hidden;background:var(--deep);color:#fff;text-align:center;}
  .quiet .bg{position:absolute;inset:0;opacity:.34;}
  .quiet .bg img{height:100%;object-fit:cover;object-position:center 40%;}
  .quiet .in{position:relative;padding:26px 0;}
  .quiet .pill{display:inline-block;font-size:9.5px;letter-spacing:.26em;text-transform:uppercase;font-weight:700;
    border:1px dashed rgba(255,255,255,.5);padding:8px 13px;margin-bottom:22px;}
  .quiet h2{font-weight:900;font-size:clamp(28px,4.6vw,48px);line-height:1.12;max-width:19ch;margin:0 auto 16px;letter-spacing:-.02em;}
  .quiet p{color:#C7DCBE;max-width:52ch;margin:0 auto;}

  /* contact */
  .cta{background:linear-gradient(112deg,var(--green),var(--forest) 60%,var(--moss));color:#fff;}
  .cta .in{display:grid;grid-template-columns:1.1fr 1fr;gap:48px;align-items:center;}
  @media(max-width:820px){.cta .in{grid-template-columns:1fr;gap:26px;}}
  .cta h2{font-weight:900;font-size:clamp(26px,4vw,42px);line-height:1.08;letter-spacing:-.02em;}
  .cta p{color:#DDEFD3;margin-top:14px;max-width:44ch;}
  .mailbig{display:inline-block;font-weight:900;font-size:clamp(17px,2.8vw,25px);letter-spacing:-.01em;
    border-bottom:3px solid rgba(255,255,255,.6);padding-bottom:6px;word-break:break-word;}
  .mailbig:hover{border-color:#fff;}
  .subnote{margin-top:12px;font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#DDEFD3;}

  footer{border-top:1px solid var(--line);padding:34px 0 46px;}
  .foot{display:flex;justify-content:space-between;align-items:center;gap:16px;flex-wrap:wrap;color:var(--soft);font-size:12px;}
  .foot .up{border-bottom:1px solid var(--line);padding-bottom:2px;}
  .foot .up:hover{border-color:var(--green);color:var(--ink);}

  .reveal{opacity:0;transform:translateY(16px);transition:opacity .75s ease,transform .75s ease;}
  .reveal.in{opacity:1;transform:none;}
  @media (prefers-reduced-motion: reduce){
    .rise{animation:none;opacity:1;transform:none;}
    .stmt .pt-sp{animation:none;}
    .reveal{opacity:1;transform:none;transition:none;}
    html{scroll-behavior:auto;}
  }
