:root{
  --ink:#0f2419; --muted:#66786c; --green:#1d6b4e; --line:rgba(18,48,33,.09);
  --glass:rgba(255,255,255,.66); --radius:28px;
}
*{box-sizing:border-box}
[hidden]{display:none!important}
html{background:#e9efea}
body{
  margin:0;color:var(--ink);
  font-family:-apple-system,BlinkMacSystemFont,"SF Pro Text","Helvetica Neue",sans-serif;
  -webkit-font-smoothing:antialiased;
  background:
    radial-gradient(55% 45% at 8% 4%, rgba(126,205,172,.5), transparent 62%),
    radial-gradient(50% 44% at 94% 2%, rgba(150,178,255,.42), transparent 64%),
    radial-gradient(55% 50% at 78% 90%, rgba(255,206,158,.4), transparent 62%),
    radial-gradient(45% 42% at 10% 96%, rgba(196,166,255,.34), transparent 66%),
    linear-gradient(180deg,#f4f7f2,#e9efe8);
  background-attachment:fixed;
}
.glow{position:fixed;inset:0;z-index:-1;pointer-events:none;background:radial-gradient(40% 28% at 50% -8%, rgba(255,255,255,.9), transparent 70%)}
a{color:inherit;text-decoration:none}
button{font:inherit;cursor:pointer}
.top{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:22px clamp(20px,5vw,72px);position:sticky;top:0;z-index:5;
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(255,255,255,.34));
  -webkit-backdrop-filter:blur(24px) saturate(180%);backdrop-filter:blur(24px) saturate(180%);
  border-bottom:1px solid rgba(255,255,255,.6)}
.brand{display:flex;gap:11px;align-items:center;font-size:23px;font-weight:650;letter-spacing:-.8px}
.brand-icon{display:grid;place-items:center;width:40px;height:44px;border-radius:14px;color:#eaf4e6;font-size:32px;
  background:linear-gradient(160deg,#2f8a66,#175740 70%,#12503b);
  box-shadow:0 10px 22px -12px rgba(15,80,55,.9), inset 0 1px 0 rgba(255,255,255,.35)}
.brand small{display:block;font-size:8px;letter-spacing:2.6px;color:#7f9186;margin-top:5px}
.top-nav{display:flex;align-items:center;gap:26px;font-size:13px;color:#5f7166}
.top-nav a:hover{color:#1f6b4e}
.ghost{background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.55));color:#37523f;border:1px solid rgba(255,255,255,.7);border-radius:12px;padding:10px 16px;font-size:12.5px;font-weight:600;
  box-shadow:0 8px 18px -16px rgba(12,50,32,.55), inset 0 1px 0 #fff}
main{max-width:1180px;margin:0 auto;padding:0 clamp(20px,5vw,56px)}
.eyebrow{font-size:9.5px;letter-spacing:.22em;color:#7d9184;font-weight:650;margin:0 0 12px}
.hero{padding:clamp(48px,8vw,96px) 0 24px;max-width:820px}
.hero h1{font-size:clamp(38px,6.4vw,68px);line-height:1.02;letter-spacing:-2.4px;font-weight:600;margin:0 0 20px}
.lead{font-size:clamp(15px,1.6vw,18px);line-height:1.6;color:#54685b;max-width:640px;margin:0 0 28px}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;align-items:center}
.primary{background:linear-gradient(180deg,#2f8a66,#1a5e46);color:#fff;border:0;border-radius:14px;padding:15px 24px;font-size:14px;font-weight:600;
  box-shadow:0 16px 30px -16px rgba(15,80,55,.85), inset 0 1px 0 rgba(255,255,255,.4);transition:transform .18s ease,filter .18s ease}
.primary:hover{transform:translateY(-1px);filter:brightness(1.05)}
.secondary{background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.55));color:#3c5a48;border:1px solid rgba(255,255,255,.7);border-radius:14px;padding:15px 22px;font-size:14px;font-weight:550;
  box-shadow:0 10px 22px -18px rgba(12,50,32,.5), inset 0 1px 0 #fff}
.hero-note{color:#7f9184;font-size:12px;margin:16px 0 0}
.tree-art{margin-top:38px;height:170px;opacity:.9}
.tree-art svg{width:100%;height:100%}
section{padding:clamp(48px,7vw,88px) 0}
.section-head{max-width:760px}
h2{font-size:clamp(28px,3.6vw,42px);letter-spacing:-1.4px;line-height:1.08;font-weight:600;margin:0 0 14px}
.section-lead{color:#5b6f61;font-size:15px;line-height:1.65;margin:0}
.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:34px}
.card{background:linear-gradient(170deg,rgba(255,255,255,.8),rgba(255,255,255,.46));border:1px solid rgba(255,255,255,.75);border-radius:24px;padding:26px;
  -webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);
  box-shadow:0 26px 54px -40px rgba(12,45,30,.5), inset 0 1px 0 #fff}
.card-icon{font-size:26px;color:#5f8a6f}
.card h3{font-size:17px;letter-spacing:-.3px;margin:14px 0 8px;font-weight:600}
.card p{font-size:13.5px;line-height:1.65;color:#5f7265;margin:0}
.steps{list-style:none;margin:34px 0 0;padding:0;display:grid;gap:12px;counter-reset:step}
.steps li{display:flex;gap:18px;align-items:flex-start;background:linear-gradient(170deg,rgba(255,255,255,.66),rgba(255,255,255,.34));border:1px solid rgba(255,255,255,.7);border-radius:20px;padding:22px 24px;
  -webkit-backdrop-filter:blur(16px) saturate(165%);backdrop-filter:blur(16px) saturate(165%);box-shadow:0 20px 44px -38px rgba(12,45,30,.5), inset 0 1px 0 #fff}
.steps li>span{flex:0 0 38px;height:38px;border-radius:50%;display:grid;place-items:center;font-weight:600;color:#1f6b4e;background:rgba(255,255,255,.8);box-shadow:inset 0 1px 0 #fff, 0 8px 18px -14px rgba(12,50,32,.5)}
.steps h3{margin:2px 0 4px;font-size:15.5px;letter-spacing:-.2px}
.steps p{margin:0;color:#5f7265;font-size:13px;line-height:1.6}
.quote{text-align:center;padding:clamp(36px,5vw,64px) 0}
blockquote{margin:0 auto;max-width:760px;font-family:Georgia,"Times New Roman",serif;font-size:clamp(19px,2.3vw,26px);line-height:1.5;color:#3d5747;letter-spacing:-.3px}
.start{display:grid;grid-template-columns:1.15fr .85fr;gap:20px;align-items:start;padding-bottom:clamp(56px,8vw,100px)}
.start-card{background:linear-gradient(175deg,rgba(255,255,255,.86),rgba(255,255,255,.6));border:1px solid rgba(255,255,255,.8);border-radius:32px;padding:clamp(24px,3.4vw,40px);
  -webkit-backdrop-filter:blur(28px) saturate(185%);backdrop-filter:blur(28px) saturate(185%);
  box-shadow:0 44px 90px -50px rgba(10,40,25,.6), inset 0 1px 0 #fff}
.start-card h2{font-size:clamp(24px,2.6vw,32px);margin-bottom:10px}
.tabs{display:inline-flex;background:rgba(255,255,255,.45);border-radius:12px;padding:4px;margin:18px 0 6px;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.tab{background:transparent;border:0;color:#788a7d;border-radius:9px;padding:9px 16px;font-size:12px;font-weight:600}
.tab.selected{background:linear-gradient(180deg,#fff,rgba(255,255,255,.82));color:#1f4a37;box-shadow:0 6px 14px -10px rgba(12,50,32,.55), inset 0 1px 0 #fff}
form label{display:block;font-size:12px;color:#5a6f60;margin:14px 0 0;font-weight:500}
form input{width:100%;margin-top:7px;padding:12px 13px;border-radius:12px;border:1px solid rgba(18,48,33,.1);color:#20392a;font-size:14px;background:linear-gradient(180deg,rgba(255,255,255,.9),rgba(255,255,255,.66));
  box-shadow:inset 0 1px 2px rgba(18,48,33,.05);transition:border-color .18s ease,box-shadow .18s ease,background .18s ease}
form input:focus{outline:none;border-color:rgba(60,140,100,.55);background:#fff;box-shadow:0 0 0 4px rgba(60,150,110,.16)}
.wide{width:100%;margin-top:20px}
.error{color:#ad4f40;font-size:12.5px;min-height:18px;margin:12px 0 0}
.fineprint{color:#8b9d8f;font-size:11px;line-height:1.6;margin:12px 0 0}
.aside-card{background:linear-gradient(175deg,rgba(255,255,255,.62),rgba(255,255,255,.34));border:1px solid rgba(255,255,255,.7);border-radius:26px;padding:26px;
  -webkit-backdrop-filter:blur(18px) saturate(170%);backdrop-filter:blur(18px) saturate(170%);box-shadow:0 28px 54px -44px rgba(12,45,30,.55), inset 0 1px 0 #fff}
.aside-card h3{font-size:14px;margin:0 0 12px;letter-spacing:-.2px}
.aside-card ul{margin:0;padding:0 0 0 18px;color:#5f7265;font-size:13px;line-height:1.9}
.foot{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding:26px clamp(20px,5vw,72px);color:#8b9c8f;font-size:11px;border-top:1px solid rgba(18,48,33,.07)}
.invite-banner{margin:14px 0 0;padding:12px 14px;border-radius:14px;background:rgba(255,255,255,.6);border:1px solid rgba(255,255,255,.8);color:#3f5a49;font-size:13px}
@media(max-width:900px){
  .cards{grid-template-columns:1fr}
  .start{grid-template-columns:1fr}
  .top-nav a{display:none}
  .tree-art{height:130px}
}
@media(prefers-reduced-motion:reduce){*{transition:none!important}}
