:root{
  --green:#00c805;--green-br:#4bf07a;--green-dp:#0a8f28;--gold-br:#ffd23f;--gold-dp:#f2a300;--gold-sh:#b8790a;
  --cream:#f6f1e4;--oat:#e9e0cc;--oat2:#dccfad;
  --wall:#153f22;--wall2:#0e2e18;--wall3:#0a2412;
  --ink:#123018;--ink2:#4a5b4f;--light:#eafff0;--mut:#9fd0b1;--feather:#d8b784;
  --fD:'Fredoka',system-ui,sans-serif;--fB:'Nunito',system-ui,sans-serif;
  --noise:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='240' height='240'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}
*{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{font-family:var(--fB);background:var(--wall2);color:var(--light);overflow-x:hidden;line-height:1.45;-webkit-user-select:none;user-select:none}
.ca-mini code{-webkit-user-select:text;user-select:text}
img{display:block;max-width:100%}
a{color:inherit;text-decoration:none}
b,strong{font-weight:800}
em{font-style:normal;color:var(--green-br)}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0)}

/* cursor */
.cursor{position:fixed;top:0;left:0;width:24px;height:24px;z-index:9999;pointer-events:none;border-radius:50% 50% 50% 3px;background:radial-gradient(circle at 40% 35%,#fff,#efe6cf 60%,#d8cbaa);transform:translate(-4px,-4px) rotate(-20deg);box-shadow:0 2px 6px rgba(0,0,0,.25)}
.cursor.down{width:30px;height:30px}
@media(hover:none){.cursor{display:none}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;font-family:var(--fD);font-weight:600;font-size:18px;background:linear-gradient(180deg,var(--green-br),var(--green-dp));color:#04240f;padding:14px 30px;border-radius:100px;cursor:none;transition:transform .18s,box-shadow .18s;box-shadow:0 8px 0 #067a1e}
.btn:hover{transform:translateY(-3px);box-shadow:0 11px 0 #067a1e}
.btn:active{transform:translateY(2px);box-shadow:0 4px 0 #067a1e}
.btn-lg{font-size:22px;padding:18px 42px}
.btn-ghost{background:transparent;color:var(--light);box-shadow:inset 0 0 0 2px rgba(120,255,160,.4)}
.btn-ghost:hover{box-shadow:inset 0 0 0 2px var(--green-br);transform:translateY(-3px)}
.light .btn-ghost{color:var(--ink);box-shadow:inset 0 0 0 2px rgba(10,60,25,.25)}

/* topbar */
.topbar{position:fixed;top:0;left:0;right:0;z-index:60;display:flex;align-items:center;justify-content:space-between;padding:14px clamp(16px,4vw,46px);transition:.3s}
.topbar.scrolled{background:rgba(245,240,228,.93);backdrop-filter:blur(12px);padding-top:16px;padding-bottom:16px}
.tb-brand{display:flex;align-items:center;gap:10px;font-family:var(--fD);font-weight:700;font-size:26px}
.tb-brand img{width:38px;border-radius:50%}
.tb-links{display:flex;align-items:center;gap:26px;font-family:var(--fD);font-weight:500;font-size:16px}
.tb-links a{color:var(--mut);transition:.2s}.tb-links a:hover{color:#fff}
.tb-cta{background:linear-gradient(180deg,var(--green-br),var(--green-dp));color:#04240f!important;padding:10px 20px;border-radius:100px;box-shadow:0 4px 0 #067a1e}
.tb-chart{background:transparent!important;color:#eafff0!important;box-shadow:inset 0 0 0 2px rgba(120,255,160,.5)!important}

/* ===================== HERO ===================== */
.hero{position:relative;min-height:clamp(560px,58vw,880px);display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;text-align:center;padding:118px 20px 72px;
  background:radial-gradient(70% 42% at 50% 14%,rgba(120,255,160,.18),transparent 60%),radial-gradient(130% 85% at 50% 112%,#2f6a3d 0%,transparent 52%),linear-gradient(180deg,#1b4c29 0%,#123a20 58%,#0e2e18 100%);cursor:none}
.hero::before{content:"";position:absolute;inset:0;pointer-events:none;opacity:.8;mix-blend-mode:overlay;background-image:var(--noise);background-size:180px}
.orb{position:absolute;border-radius:50%;filter:blur(70px);pointer-events:none;z-index:0}
.o1{width:520px;height:520px;background:radial-gradient(circle,rgba(0,200,5,.5),transparent 70%);top:-140px;left:-120px}
.o2{width:600px;height:600px;background:radial-gradient(circle,rgba(75,240,122,.32),transparent 70%);bottom:-200px;right:-160px}
.hero-ground{position:absolute;left:-6%;right:-6%;bottom:-8%;height:34%;border-radius:50% 50% 0 0/40% 40% 0 0;background:radial-gradient(120% 130% at 50% 0%,var(--oat),var(--oat2));box-shadow:inset 0 10px 30px rgba(255,255,255,.3),inset 0 -30px 60px rgba(120,100,60,.25);z-index:1}
.hero-ground::after{content:"";position:absolute;inset:0;border-radius:inherit;opacity:.5;mix-blend-mode:soft-light;background-image:var(--noise)}

.hero-content{position:relative;z-index:6;max-width:1000px;width:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(14px,2.2vh,22px)}
.hero-top,.hero-bot{display:flex;flex-direction:column;align-items:center;gap:16px;width:100%}
.coin-btn{background:none;border:none;cursor:none;padding:0;display:flex;flex-direction:column;align-items:center;gap:16px}
.coin-big{width:clamp(118px,13vw,178px);filter:drop-shadow(0 22px 30px rgba(0,0,0,.4));animation:coinbob 3s ease-in-out infinite;transition:transform .2s}
.coin-btn:hover .coin-big{transform:scale(1.06) rotate(-4deg)}
.coin-btn:active .coin-big{transform:scale(.95)}
.coin-hint{font-family:var(--fD);font-weight:600;font-size:clamp(16px,2vw,20px);color:#04240f;background:var(--green-br);padding:10px 22px;border-radius:100px;box-shadow:0 5px 0 #0a8f28;animation:coinbob 1.6s ease-in-out infinite}
@keyframes coinbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.rain-coin{position:absolute;top:0;left:0;z-index:2;pointer-events:none;will-change:transform}
@keyframes fall{to{transform:translateY(var(--fall,112vh)) rotate(var(--rot,180deg))}}
.rain-coin.clearing{transition:opacity .45s;opacity:0}

/* diorama background sections */
.bgsec{position:relative;overflow:hidden}
.hero.bgsec::before{content:none}
.sec.bgsec::after{content:none}
.bgimg{position:absolute;top:-15%;left:0;width:100%;height:130%;background-size:cover;background-position:center;z-index:0;will-change:transform}
.scrim{position:absolute;inset:0;z-index:1;pointer-events:none;background:linear-gradient(180deg,rgba(9,28,16,.52) 0%,rgba(9,28,16,.34) 36%,rgba(9,28,16,.6) 100%)}
.hero-scrim{background:radial-gradient(ellipse 92% 68% at 50% 48%,rgba(8,26,15,.62),rgba(8,26,15,.34) 55%,rgba(8,26,15,.12) 84%),linear-gradient(180deg,rgba(8,26,15,.42),transparent 24%,rgba(8,26,15,.56))}
.bgsec .wrap,.bgsec .hero-content{position:relative;z-index:2}
.bgsec h2,.bgsec .kicker,.bgsec .lead,.bgsec .two-copy p{text-shadow:0 2px 14px rgba(0,0,0,.55)}
.hero.bgsec .hero-sub,.hero.bgsec .micro{text-shadow:0 2px 16px rgba(0,0,0,.6)}
.chip{display:inline-block;font-family:var(--fD);font-weight:600;font-size:15px;letter-spacing:.5px;color:#cbf5d8;background:rgba(8,30,16,.5);border:1px solid rgba(120,255,160,.22);padding:9px 20px;border-radius:100px;margin-bottom:26px;backdrop-filter:blur(4px)}
.hero-word{width:min(760px,90vw);margin:0 auto;filter:drop-shadow(0 24px 40px rgba(0,0,0,.35));animation:pop .8s cubic-bezier(.2,1.2,.3,1)}
.hero-sub{margin:24px auto 0;max-width:760px;font-family:var(--fD);font-weight:500;font-size:clamp(22px,3.4vw,38px);line-height:1.2;color:#e6ffee;text-shadow:0 2px 16px rgba(0,0,0,.35)}
.cta{display:flex;gap:18px;justify-content:center;flex-wrap:wrap;margin-top:36px}
.micro{margin-top:22px;font-family:var(--fD);font-weight:500;color:#9fd0b1;font-size:16px}
@keyframes pop{0%{transform:scale(.7);opacity:0}100%{transform:scale(1);opacity:1}}

/* big spread hero props */
.hp{position:absolute;z-index:3;pointer-events:none;will-change:transform;filter:drop-shadow(0 18px 24px rgba(6,24,12,.3))}
.hp-arrow{width:clamp(90px,11vw,160px);top:20%;left:6%;animation:floaty 7s ease-in-out infinite}
.hp-rocket{width:clamp(110px,13vw,200px);top:13%;right:7%;animation:floaty 8s ease-in-out infinite .4s}
.hp-coinR{width:clamp(90px,10vw,150px);top:52%;left:9%;animation:floaty 6.5s ease-in-out infinite .2s}
.hp-diam{width:clamp(90px,10vw,150px);top:44%;right:9%;animation:floaty 6s ease-in-out infinite .6s}
.hp-stack{width:clamp(100px,11vw,170px);bottom:6%;left:12%;animation:floaty 7.5s ease-in-out infinite .3s}
.hp-bag{width:clamp(100px,11vw,170px);bottom:5%;right:13%;animation:floaty 6.8s ease-in-out infinite .5s}
@keyframes floaty{0%,100%{transform:translateY(0) rotate(-4deg)}50%{transform:translateY(-26px) rotate(4deg)}}

.scrollcue{position:absolute;bottom:30px;left:50%;transform:translateX(-50%);z-index:8;width:26px;height:44px;border:2px solid rgba(120,255,160,.5);border-radius:100px}
.scrollcue span{position:absolute;top:8px;left:50%;transform:translateX(-50%);width:5px;height:9px;background:var(--green-br);border-radius:3px;animation:wheel 1.6s ease-in-out infinite}
@keyframes wheel{0%{opacity:0;top:8px}40%{opacity:1}100%{opacity:0;top:22px}}

/* ===================== marquee ===================== */
.marquee{background:linear-gradient(90deg,var(--green),var(--green-br));padding:20px 0;overflow:hidden;border-top:4px solid #04240f;border-bottom:4px solid #04240f;position:relative;z-index:2}
.marquee-track{display:flex;width:max-content;animation:scroll 46s linear infinite}
.marquee img{height:clamp(44px,6vw,64px);width:auto;margin-right:clamp(44px,5vw,72px)}
@keyframes scroll{from{transform:translateX(0)}to{transform:translateX(-50%)}}

/* ===================== sections ===================== */
.sec{position:relative;overflow:hidden;padding:clamp(90px,13vw,170px) 22px}
.sec.light{background:radial-gradient(90% 65% at 50% -12%,#faf6ea,var(--oat) 72%),var(--oat2);color:var(--ink)}
.sec.dark{background:radial-gradient(85% 60% at 50% 0%,#1f5330,var(--wall) 70%),var(--wall2)}
.sec::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.72;mix-blend-mode:overlay;background-image:var(--noise);background-size:200px;animation:grain .6s steps(5) infinite}
.sec.dark::after{opacity:.5}
.wrap{max-width:1200px;margin:0 auto;position:relative;z-index:2}

.kicker{display:inline-block;font-family:var(--fD);font-weight:600;letter-spacing:2.5px;text-transform:uppercase;font-size:15px;color:var(--green-dp);margin-bottom:16px}
.dark .kicker{color:var(--green-br)}
h2{font-family:var(--fD);font-weight:700;font-size:clamp(42px,7.5vw,100px);line-height:.98;letter-spacing:-1px;color:var(--ink)}
.dark h2{color:#f2fff6}
.head{text-align:center;margin-bottom:50px}
.lead{font-size:clamp(19px,2.4vw,26px);color:var(--ink2);max-width:680px;margin:18px auto 0}
.dark .lead{color:var(--mut)}

/* two-column big */
.two{display:grid;grid-template-columns:1fr 1fr;gap:clamp(40px,6vw,90px);align-items:center}
.two-copy p{font-size:clamp(18px,2vw,23px);margin:20px 0;line-height:1.55}
.light .two-copy p{color:#3f4f44}.dark .two-copy p{color:#cfeada}
.light b{color:var(--green-dp)}
.two-copy .btn{margin-top:26px}
.two-media{display:flex;justify-content:center}
.two-media img{width:min(560px,94%)}
.spin-soft{animation:spin 26s linear infinite,floaty 8s ease-in-out infinite}
@keyframes spin{to{transform:rotate(360deg)}}
.glowup{filter:drop-shadow(0 30px 50px rgba(0,0,0,.4))}
.badge-inline{width:auto!important;height:clamp(56px,7vw,84px);margin-top:8px}
.float-a{animation:floaty 8s ease-in-out infinite}

/* spotlight behind media */
.spotlight .two-media{position:relative}
.spotlight .two-media::before{content:"";position:absolute;width:120%;height:120%;left:-10%;top:-10%;background:radial-gradient(circle,rgba(75,240,122,.28),transparent 62%);filter:blur(20px);z-index:-1}

/* steps — big cards */
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:22px;margin-top:10px}
.step{background:var(--cream);border-radius:22px;padding:34px 26px;box-shadow:0 12px 0 #cabf9f;transform:rotate(var(--t,-1.2deg))}
.step:nth-child(even){--t:1.4deg}
.step-n{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:50%;background:linear-gradient(180deg,var(--green-br),var(--green-dp));color:#04240f;font-family:var(--fD);font-weight:700;font-size:28px;margin-bottom:18px}
.step h3{font-family:var(--fD);font-weight:600;font-size:clamp(21px,2.4vw,27px);margin-bottom:8px;color:var(--ink)}
.step p{font-size:16.5px;color:#4a5b4f}

/* stats — huge numbers */
.stats{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:10px}
.stat{background:linear-gradient(180deg,rgba(13,42,24,.9),rgba(9,30,17,.94));border:1px solid rgba(120,255,160,.28);border-radius:22px;padding:38px 18px;text-align:center;backdrop-filter:blur(10px);box-shadow:0 12px 32px -12px rgba(0,0,0,.55);transition:transform .25s,box-shadow .25s,border-color .25s}
.stat:hover{transform:translateY(-8px) scale(1.03);border-color:var(--green-br);box-shadow:0 22px 44px -14px rgba(0,200,5,.4)}
.stat b{display:block;font-family:var(--fD);font-weight:700;font-size:clamp(50px,6.5vw,90px);color:var(--green-br);line-height:.9;text-shadow:0 0 26px rgba(75,240,122,.45)}
.stat span{display:block;font-size:15px;color:#bfe6cd;margin-top:12px;font-weight:700}

/* community badges big */
.badge-row{display:flex;flex-wrap:wrap;gap:clamp(20px,4vw,48px);justify-content:center;align-items:center;margin:44px 0}
.badge-row img{height:clamp(46px,6vw,82px);width:auto;animation:floaty 7s ease-in-out infinite}
.badge-row img:nth-child(2){animation-delay:.4s}.badge-row img:nth-child(3){animation-delay:.8s}.badge-row img:nth-child(4){animation-delay:.2s}

/* big corner prop */
.corner-prop{position:absolute;z-index:1;pointer-events:none;opacity:.9}
.cp-left{width:clamp(200px,26vw,420px);bottom:-40px;left:-40px;filter:drop-shadow(0 20px 30px rgba(0,0,0,.35));animation:floaty 9s ease-in-out infinite}

/* footer */
.boring{background:var(--wall3);padding:clamp(70px,9vw,110px) 22px 54px;text-align:center;position:relative}
.boring::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.5;mix-blend-mode:soft-light;background-image:var(--noise)}
.boring .wrap{max-width:820px}
.foot-hat{width:clamp(80px,10vw,120px);margin:0 auto 26px;transform:rotate(-8deg)}
.boring-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:18px;text-align:left}
.b-block{background:rgba(30,80,45,.35);border:1px solid rgba(120,255,160,.14);border-radius:18px;padding:24px}
.lbl{display:block;font-family:var(--fD);font-weight:700;color:var(--green-br);text-transform:uppercase;letter-spacing:1px;font-size:13px;margin-bottom:12px}
.ca-block code{display:block;font-weight:800;color:#eafff0;word-break:break-all;font-size:16px;margin-bottom:16px}
.ca-block button{background:var(--green);color:#04240f;border:none;border-radius:100px;padding:11px 24px;font-family:var(--fD);font-weight:600;font-size:15px;cursor:none}
.socials{display:flex;flex-direction:column;gap:10px}
.soc{background:rgba(120,255,160,.1);border-radius:100px;padding:12px 18px;text-align:center;font-family:var(--fD);font-weight:600}
.soc:hover{background:var(--green);color:#04240f}
.disclaimer{max-width:740px;margin:30px auto 0;font-size:13px;line-height:1.7;color:#7fa88e}
.copyright{margin-top:18px;font-size:13px;color:#4f7d61}

/* reveal */
.reveal{opacity:0;transform:translateY(34px);transition:opacity .7s,transform .7s}
.reveal.in{opacity:1;transform:none}

/* toast */
.toast{position:fixed;left:50%;bottom:60px;transform:translateX(-50%) translateY(20px);z-index:250;font-family:var(--fD);font-weight:600;background:var(--ink);color:var(--cream);padding:13px 24px;border-radius:100px;opacity:0;transition:.3s;pointer-events:none;font-size:16px}
.toast.show{opacity:1;transform:translateX(-50%) translateY(0)}

/* responsive */
@media(max-width:860px){
  .tb-links a:not(.tb-cta){display:none}
  .two{grid-template-columns:1fr;text-align:center;gap:40px}
  .two-copy{order:2}.two-media{order:1}
  .steps{grid-template-columns:1fr 1fr}
  .hp-coinR,.hp-diam{display:none}
  .boring-grid{grid-template-columns:1fr}
}
@media(max-width:540px){
  .steps{grid-template-columns:1fr}.stats{grid-template-columns:1fr}
  .hp-arrow,.hp-bag{display:none}
  .btn-lg{font-size:19px;padding:16px 32px}
}
@media(prefers-reduced-motion:reduce){.hp,.float-a,.spin-soft,.marquee-track,.badge-row img,.corner-prop,.scrollcue span,.step-ico{animation:none}}

/* ---- copy card / step icons / decor props / footer ---- */
.copy-card{background:rgba(9,28,16,.66);border:1px solid rgba(120,255,160,.22);border-radius:18px;padding:24px 26px;backdrop-filter:blur(6px);margin-top:8px;max-width:560px}
.copy-card p{margin:0}
.copy-card p+p{margin-top:16px}
.light .copy-card{background:#fbf7ec;border:1px solid rgba(10,60,25,.12);backdrop-filter:none}
.light .copy-card p{color:#3f4f44}
.big-never{margin-top:16px;font-family:var(--fD);font-weight:700;font-size:clamp(24px,3vw,34px);color:var(--green-br);letter-spacing:.5px;text-shadow:0 0 24px rgba(75,240,122,.4)}

.step{position:relative;overflow:visible}
.step-ico{position:absolute;top:16px;right:16px;width:clamp(38px,4.4vw,52px);height:auto;pointer-events:none;opacity:.9}
.step:nth-child(2) .step-ico{animation-delay:.4s}.step:nth-child(3) .step-ico{animation-delay:.8s}.step:nth-child(4) .step-ico{animation-delay:.2s}

.cp-tl{width:clamp(110px,13vw,190px);top:6%;left:-24px;opacity:.13;animation:floaty 9s ease-in-out infinite}
.cp-br{width:clamp(140px,16vw,240px);bottom:-24px;right:-24px;opacity:.16;animation:floaty 8s ease-in-out infinite .5s}

.site-foot{position:relative;background:linear-gradient(180deg,var(--wall2),var(--wall3));padding:0 22px 42px;border-top:1px solid rgba(120,255,160,.12)}
.site-foot::after{content:"";position:absolute;inset:0;pointer-events:none;opacity:.45;mix-blend-mode:soft-light;background-image:var(--noise)}
.foot-cta{position:relative;z-index:2;max-width:820px;margin:0 auto;text-align:center;padding:clamp(60px,8vw,92px) 0 clamp(38px,5vw,56px)}
.foot-cta h2{font-size:clamp(34px,5vw,60px);color:#f2fff6;line-height:1}
.foot-cta>p{color:var(--mut);font-size:18px;margin:14px auto 26px;max-width:520px}
.foot-brand{position:relative;z-index:2;max-width:520px;margin:0 auto;text-align:center;padding:6px 0 2px}
.foot-brand .fbrand{justify-content:center}
.foot-brand .ca-mini{margin:0 auto}
.foot-cols{position:relative;z-index:2;max-width:520px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:40px;padding:30px 0;border-top:1px solid rgba(120,255,160,.12);text-align:center}
.fbrand{display:flex;align-items:center;gap:10px;font-family:var(--fD);font-weight:700;font-size:24px;color:#f2fff6;margin-bottom:12px}
.fbrand img{width:38px;border-radius:50%}
.foot-brand>p{color:var(--mut);font-size:15px;max-width:360px;margin:10px auto 16px;line-height:1.6}
.ca-mini{display:flex;align-items:center;gap:8px;background:rgba(0,0,0,.28);border:1px solid rgba(120,255,160,.16);border-radius:100px;padding:6px 6px 6px 16px;max-width:360px}
.ca-mini code{flex:1;font-size:13px;color:#cdefd8;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;font-family:var(--fB);font-weight:700}
.ca-mini button{background:var(--green);color:#04240f;border:none;border-radius:100px;padding:11px 18px;font-family:var(--fD);font-weight:600;cursor:none;flex:none}
.fcol .lbl{margin-bottom:14px}
.fcol>a{display:block;color:var(--mut);font-size:15px;padding:6px 0;transition:.2s}
.fcol>a:hover{color:#fff}
.foot-bottom{position:relative;z-index:2;max-width:1080px;margin:0 auto;padding-top:26px;border-top:1px solid rgba(120,255,160,.12);text-align:center}
.foot-bottom .disclaimer{max-width:760px;margin:0 auto;font-size:12.5px;line-height:1.7;color:#7fa88e}
.foot-bottom .copyright{margin-top:14px;font-size:13px;color:#4f7d61}
@media(max-width:820px){.foot-cols{gap:30px}}

/* custom cursor removed, normal mouse restored */
.cursor{display:none!important}
*{cursor:auto!important}
*{caret-color:transparent!important}
a,a *,button,button *,.btn,.coin-btn,.ca-mini button,.fcol>a,.soc,summary,[role=button]{cursor:pointer!important}
.rain-coin.rain-fixed{position:fixed;z-index:55}

/* hero video, seamless crossfade loop */
.hero-video{background:#123a20 url(img/bg2.jpg) center/cover;overflow:hidden}
.hero-video .hv{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:0;transition:opacity .9s ease-in-out}
.hero-video .hv.on{opacity:1}

/* stitched borders on boxes (crochet / sewn felt look) */
.stat,.copy-card{position:relative}
.stat::before{content:"";position:absolute;inset:9px;border:2.5px dashed rgba(150,222,172,.5);border-radius:14px;pointer-events:none}
.step::before{content:"";position:absolute;inset:9px;border:2.5px dashed rgba(150,132,92,.5);border-radius:14px;pointer-events:none}
.copy-card::before{content:"";position:absolute;inset:9px;border:2.5px dashed rgba(150,132,92,.38);border-radius:12px;pointer-events:none}
.dark .copy-card::before{border-color:rgba(150,222,172,.42)}

/* moving grain (film-grain feel) */
@keyframes grain{0%{background-position:0 0}25%{background-position:-24px 16px}50%{background-position:18px -22px}75%{background-position:-16px -14px}100%{background-position:22px 10px}}
body::after{content:"";position:fixed;inset:0;z-index:300;pointer-events:none;opacity:.05;mix-blend-mode:overlay;background-image:var(--noise);background-size:180px;animation:grain .5s steps(6) infinite}

/* nav make-it-rain button (distinct from Buy / Chart) */
.tb-rain{font-family:var(--fD);font-weight:700;font-size:15px;color:#3a2600;background:linear-gradient(180deg,var(--gold-br),var(--gold-dp));border:none;border-radius:100px;padding:10px 20px;box-shadow:0 4px 0 var(--gold-sh);cursor:pointer;transition:filter .15s,transform .15s;animation:rainpulse 2s ease-in-out infinite}
.tb-rain:hover{filter:brightness(1.07);transform:translateY(-1px)}
.tbr-coin{display:none}
@keyframes rainpulse{0%,100%{box-shadow:0 4px 0 var(--gold-sh),0 0 0 0 rgba(255,200,60,.6)}50%{box-shadow:0 4px 0 var(--gold-sh),0 0 0 9px rgba(255,200,60,0)}}
@media(max-width:960px){.tb-chart{display:none}
  .tb-rain{padding:0;width:46px;height:46px;border-radius:50%;display:inline-flex;align-items:center;justify-content:center}
  .tb-rain .tbr-label{display:none}.tbr-coin{display:block;width:28px;height:28px;object-fit:contain}
  .tb-links{gap:14px}}
@media(prefers-reduced-motion:reduce){.sec::after,body::after,.tb-rain{animation:none}}

/* --- extra motion across the site --- */
.tb-brand{position:relative;display:inline-block}
.tb-brand img{height:clamp(34px,4.4vw,46px);width:auto;border-radius:0;display:block;transition:opacity .3s,transform .3s}
.tb-brand .logo-dark{position:absolute;left:0;top:0;height:100%;width:auto;opacity:0;pointer-events:none}
.topbar.scrolled .tb-brand .logo-light{opacity:0}
.topbar.scrolled .tb-brand .logo-dark{opacity:1}
.tb-brand:hover img{transform:scale(1.05) translateY(-2px)}
.tb-links a:not(.tb-cta):not(.tb-rain){position:relative}
.tb-links a:not(.tb-cta):not(.tb-rain)::after{content:"";position:absolute;left:0;right:100%;bottom:-5px;height:2px;background:var(--green-br);border-radius:2px;transition:right .28s}
.tb-links a:not(.tb-cta):not(.tb-rain):hover::after{right:0}
.tb-cta{transition:transform .18s,box-shadow .18s,filter .18s}
.tb-cta:hover{transform:translateY(-2px);filter:brightness(1.03)}
.hero-word{animation:pop .8s cubic-bezier(.2,1.2,.3,1),wordbob 5.5s ease-in-out 1.2s infinite}
@keyframes wordbob{0%,100%{transform:translateY(0)}50%{transform:translateY(-10px)}}
.btn-lg{position:relative;overflow:hidden}
.btn-lg::after{content:"";position:absolute;top:0;left:-130%;width:55%;height:100%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.4),transparent);transform:skewX(-18deg);pointer-events:none}
.btn-lg:hover::after{animation:shine .75s ease}
@keyframes shine{to{left:140%}}
.step-ico{transition:transform .3s}
.step:hover .step-ico{transform:rotate(10deg) scale(1.15)}
.two-media img{transition:transform .35s}
.two-media:hover img{transform:scale(1.04) rotate(-1deg)}
.fcol>a{transition:color .2s,transform .2s}
.fcol>a:hover{transform:translateY(-2px)}
.foot-hat{transition:transform .4s}
.site-foot:hover .foot-hat{transform:rotate(6deg) scale(1.06)}
@media(prefers-reduced-motion:reduce){.hero-word{animation:pop .8s cubic-bezier(.2,1.2,.3,1)}.btn-lg::after{display:none}}

/* subtle infinite moving grid on plain sections (fills the empty space) */
.sec.light{--grid:rgba(74,58,20,.075)}
.sec.dark{--grid:rgba(140,255,175,.08)}
.sec::before{content:"";position:absolute;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--grid) 1px,transparent 1px),linear-gradient(90deg,var(--grid) 1px,transparent 1px);background-size:260px 260px;animation:gridmove 24s linear infinite}
.sec.bgsec::before{content:none}
@keyframes gridmove{to{background-position:260px 260px}}
@media(prefers-reduced-motion:reduce){.sec::before{animation:none}}

/* nav turns cream on scroll + button/text adjustments */
.tb-brand,.tb-links a,.tb-cta{transition:color .3s,background .3s,box-shadow .3s,transform .18s}
.topbar.scrolled .tb-brand{color:var(--ink)}
.topbar.scrolled .tb-links a:not(.tb-cta):not(.tb-rain){color:#356245}
.topbar.scrolled .tb-links a:not(.tb-cta):not(.tb-rain):hover{color:var(--ink)}
.topbar.scrolled .tb-links a:not(.tb-cta):not(.tb-rain)::after{background:var(--green-dp)}
.topbar.scrolled .tb-cta{background:linear-gradient(180deg,var(--green-br),var(--green-dp));color:#04240f!important;box-shadow:0 4px 0 #067a1e}
.topbar.scrolled .tb-chart{color:#123018!important;box-shadow:inset 0 0 0 2px rgba(18,48,24,.4)!important}
.topbar.scrolled .tb-cta:hover{filter:brightness(1.15)}

/* coin rain sits BELOW the hero buttons so you can keep clicking */
.bgsec .hero-content{z-index:5}
/* no orphan words on any line */
h2,.lead,.hero-sub{text-wrap:balance}
.step p,.two-copy p,.foot-brand>p,.foot-cta>p,.copy-card p{text-wrap:pretty}
/* community: big felt props + rising rocket */
#patch{position:relative;overflow:hidden}
.join-prop{position:absolute;z-index:1;pointer-events:none;filter:drop-shadow(0 16px 20px rgba(0,0,0,.15))}
.join-rocket{left:4%;bottom:8%;width:clamp(76px,9vw,138px);animation:riseup 5.5s linear infinite}
@keyframes riseup{0%{transform:translateY(150%) rotate(-8deg);opacity:0}12%{opacity:1}85%{opacity:1}100%{transform:translateY(-380%) rotate(-8deg);opacity:0}}
.join-chest{right:1%;bottom:12px;width:clamp(150px,18vw,290px);animation:floaty 8s ease-in-out infinite}
.join-stack{left:2%;top:16%;width:clamp(92px,10vw,158px);animation:floaty 7s ease-in-out infinite .6s}
@media(max-width:820px){.join-stack{display:none}.join-chest{width:120px;opacity:.75}.join-rocket{width:70px}}
@media(prefers-reduced-motion:reduce){.join-rocket{animation:none}}
