@font-face{font-family:FireRed;src:url('assets/ui/firered.woff2') format('woff2');font-display:swap}
/* One warm palette taken from the farm: wood, cream, leaf, blush, sky. */
:root{--paper:#fffaeb;--cream:#f8efd4;--sand:#efe0b8;--wood:#c08a52;--wood-dark:#6e4b2a;--leaf:#84b665;--leaf-dark:#4d7a3a;--moss:#30472b;--ink:#3e3a2c;--ink-soft:#75694f;--blush:#f2a3b3;--blush-soft:#fde3e6;--sky:#a8daf0;--butter:#ffe08a;--shadow:rgba(62,58,44,.22)}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:84px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:FireRed,monospace;font-size:22px;line-height:1.3;-webkit-font-smoothing:none;overflow-x:hidden}
img,canvas{image-rendering:pixelated}
a{color:inherit;text-decoration:none}
h1,h2,h3,p{margin:0;font-weight:400}
::selection{background:var(--blush);color:var(--ink)}

/* Shared pieces */
.panel{border:12px solid transparent;border-image:url('assets/ui/frame-cozy.png') 4 fill stretch;box-shadow:0 6px 0 var(--shadow)}
.eyebrow{display:flex;align-items:center;gap:8px;font-size:18px;letter-spacing:2px;color:var(--leaf-dark)}
.eyebrow img{width:24px;height:24px}
.btn{display:inline-flex;align-items:center;gap:10px;padding:4px 14px;font-size:23px;color:#2f4a26;border:12px solid transparent;border-image:url('assets/ui/frame-leaf.png') 4 fill stretch;box-shadow:0 5px 0 #3f6532;transition:transform .1s steps(2),box-shadow .1s steps(2),filter .2s;cursor:pointer;white-space:nowrap}
.btn img{width:28px;height:28px;transition:transform .3s steps(3)}
.btn:hover{transform:translateY(-3px);box-shadow:0 8px 0 #3f6532;filter:brightness(1.05)}
.btn:hover img{transform:rotate(-14deg) scale(1.2)}
.btn:active{transform:translateY(4px);box-shadow:0 1px 0 #3f6532}
.btn.soft{border-image-source:url('assets/ui/frame-cozy.png');color:var(--ink);box-shadow:0 5px 0 var(--wood-dark)}
.btn.soft:hover{box-shadow:0 8px 0 var(--wood-dark)}
.btn.small{font-size:20px;padding:0 8px;border-width:9px}
.btn.small img{width:22px;height:22px}

/* Scroll progress vine */
.vine{position:fixed;z-index:70;inset:0 0 auto;height:6px;pointer-events:none}
.vine i{display:block;height:100%;transform-origin:0 50%;transform:scaleX(0);background:repeating-linear-gradient(90deg,var(--leaf) 0 12px,var(--blush) 12px 18px,var(--leaf) 18px 30px);box-shadow:0 2px 0 var(--leaf-dark)}

/* Nav */
.topnav{position:fixed;z-index:60;top:14px;left:50%;translate:-50% 0;width:min(1180px,calc(100% - 24px));display:flex;align-items:center;justify-content:space-between;padding:0 6px;border:12px solid transparent;border-image:url('assets/ui/frame-cozy.png') 4 fill stretch;box-shadow:0 5px 0 var(--shadow);transition:translate .35s}
.topnav.hide{translate:-50% -150%}
.brand{display:flex;align-items:center;gap:8px;font-size:27px}
.brand img{width:40px;height:40px;image-rendering:auto;animation:sway 4s ease-in-out infinite}
.brand small{font-size:14px;letter-spacing:3px;color:var(--leaf-dark);margin-top:7px}
.links{display:flex;align-items:center;gap:22px;font-size:21px}
.links>a:not(.btn){position:relative}
.links>a:not(.btn):after{content:'';position:absolute;left:0;right:100%;bottom:-2px;height:3px;background:var(--blush);transition:right .25s steps(4)}
.links>a:not(.btn):hover:after{right:0}

/* Hero */
.hero{position:relative;height:100svh;min-height:660px;max-height:1000px;overflow:hidden;background:#88c070}
#scene{position:absolute;inset:0;width:100%;height:100%;cursor:pointer;will-change:transform}
.hero-copy{position:absolute;z-index:3;left:max(24px,6vw);top:52%;translate:0 -50%;width:min(560px,calc(100% - 48px));animation:rise .8s steps(6) both .15s;will-change:transform}
.dialog{position:relative;padding:12px 18px 18px}
.dialog h1{font-size:clamp(44px,5.2vw,66px);line-height:1;margin:10px 0 12px;color:#33402a}
.dialog h1 em{font-style:normal;color:var(--leaf-dark);background:linear-gradient(transparent 60%,var(--blush-soft) 60%)}
.typed{font-size:23px;color:var(--ink-soft);min-height:3.9em}
.typed .caret{display:inline-block;width:.45em;height:1em;background:var(--leaf);vertical-align:-2px;animation:blink 1s steps(1) infinite}
.next{position:absolute;right:12px;bottom:0;color:#d9788f;font-size:18px;animation:nudge 1s steps(2) infinite}
.cta{display:flex;flex-wrap:wrap;gap:14px;margin-top:20px}
.hero-tip{position:absolute;z-index:3;right:24px;bottom:58px;display:flex;align-items:center;gap:6px;font-size:18px;color:var(--paper);text-shadow:2px 2px 0 #30472b;animation:float 3s ease-in-out infinite}
.hero-tip img{width:20px;height:20px}
/* Grass lip that closes the hero with flowers instead of a hard cut */
.edge{position:relative;z-index:5;height:40px;margin-top:-28px;background:url('assets/world/blossoms-0.png') 0 0/32px repeat-x,url('assets/world/native/grass-0.png') 0 0/32px;box-shadow:0 6px 0 #5b8a44 inset}

/* Discover */
.discover{position:relative;height:420vh;background:#88c070}
.discover-sticky{position:sticky;top:0;height:100svh;overflow:hidden}
#discover-scene{position:absolute;inset:0;width:100%;height:100%}
.chapters{position:absolute;left:max(24px,6vw);top:110px;width:min(460px,calc(100% - 48px))}
.chapter{position:absolute;inset:0 auto auto 0;width:100%;padding:10px 16px 16px;opacity:0;transform:translateY(24px) scale(.96);transition:opacity .3s steps(4),transform .3s steps(4);pointer-events:none}
.chapter.on{opacity:1;transform:none}
.chapter .time{display:flex;align-items:center;gap:6px;font-size:18px;letter-spacing:2px;color:#c26a82}
.chapter .time img{width:24px;height:24px}
.chapter h2{font-size:clamp(34px,3.8vw,50px);margin:6px 0 8px;color:#33402a}
.chapter p{font-size:21px;color:var(--ink-soft)}
.dots{position:absolute;left:50%;bottom:24px;translate:-50% 0;display:flex;gap:10px}
.dots i{width:14px;height:14px;background:var(--paper);border:3px solid var(--wood-dark);transition:transform .2s steps(2),background .2s}
.dots i.on{background:var(--blush);transform:scale(1.35)}
.scroll-hint{position:absolute;right:22px;bottom:20px;color:var(--paper);font-size:18px;text-shadow:2px 2px 0 #30472b;animation:nudge 1s steps(2) infinite}

/* Generic sections */
section:not(.hero):not(.discover){position:relative;padding:110px max(24px,8vw);overflow:hidden}
h2{font-size:clamp(40px,4.4vw,58px);line-height:1.04;margin:12px 0 16px;color:#33402a}
section p{color:var(--ink-soft)}
.decor img{position:absolute;width:44px;height:44px;opacity:.9;pointer-events:none;will-change:transform;animation:bob 3s steps(4) infinite}
.decor img:nth-child(2){animation-delay:.7s}.decor img:nth-child(3){animation-delay:1.4s}.decor img:nth-child(4){animation-delay:2.1s}

.life{background:var(--cream) url('data:image/svg+xml,%3Csvg xmlns="http://www.w3.org/2000/svg" width="24" height="24"%3E%3Crect x="11" y="11" width="2" height="2" fill="%23e6d6ac"/%3E%3C/svg%3E')}
.life header{position:relative;max-width:640px}
.cards{position:relative;display:grid;grid-template-columns:repeat(3,1fr);gap:26px;margin-top:48px}
.card{padding:14px 18px 20px;transition:transform .2s steps(3),box-shadow .2s steps(3)}
.card:hover{box-shadow:0 12px 0 var(--shadow)}
.card .icon{width:76px;height:76px;display:grid;place-items:center;margin-bottom:14px;background:url('assets/world/native/grass-0.png') 0 0/32px;border:4px solid var(--leaf-dark);box-shadow:inset 0 -6px 0 #0000001a}
.card .icon img{width:52px;height:52px;animation:bob 2.4s steps(4) infinite}
.card .icon img.big{width:78px;height:78px;animation:wobble 1.8s steps(4) infinite;transform-origin:50% 85%}
.tag{font-size:16px;letter-spacing:2px;color:#c26a82}
.card h3{font-size:29px;line-height:1.05;margin:8px 0 10px}
.card p{font-size:20px}

.garden-demo{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center;background:#eaf3d6}
.garden-demo>div:not(.decor){position:relative}
.steps{list-style:none;padding:0;margin:24px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.steps li{font-size:18px;padding:2px 10px;background:var(--paper);border:3px solid var(--sand);color:#a39874;transition:background .25s,color .25s,transform .25s steps(2)}
.steps li.on{background:var(--leaf);border-color:var(--leaf-dark);color:var(--paper);transform:translateY(-2px)}
.plot{position:relative;justify-self:center;width:min(360px,90%);aspect-ratio:1;border:12px solid transparent;border-image:url('assets/ui/frame-cozy.png') 4 stretch;background:url('assets/world/native/grass-1.png') 0 0/48px;cursor:pointer;padding:0;box-shadow:0 8px 0 var(--shadow);font:inherit;transition:transform .15s steps(2)}
.plot:hover{transform:translateY(-3px)}.plot:active{transform:translateY(3px)}
.plot .soil{position:absolute;inset:24% 20% 20%;background:url('assets/world/native/soil.png') 0 0/32px;border:4px solid #7a5531;box-shadow:inset 0 6px 0 #00000022}
.plot .crop{position:absolute;left:50%;top:54%;width:24%;translate:-50% -50%}
.plot.pop .crop{animation:pop .45s steps(4)}
.plot .pail{position:absolute;width:28%;right:3%;top:3%;transform-origin:20% 80%;transition:rotate .2s steps(2)}
.plot.watering .pail{rotate:-35deg}
.plot .drop{position:absolute;width:6px;height:10px;background:#8fd0f5;box-shadow:inset 0 0 0 2px #4d8fc4;animation:drop .6s linear forwards}
.plot-label{position:absolute;left:50%;bottom:5%;translate:-50% 0;font-size:20px;padding:0 10px;background:var(--paper);border:3px solid var(--wood);white-space:nowrap}
.burst{position:absolute;width:26px;height:26px;pointer-events:none;animation:burst .9s steps(6) forwards}

.friends{display:grid;grid-template-columns:1fr 1.2fr;gap:50px;align-items:center;padding-bottom:190px!important;background:linear-gradient(var(--cream) 0%,#eef5dc 60%,#d9ebb8 100%)}
.friends>*{position:relative}
.friends-copy .btn{margin-top:20px}
.friend-cards{display:flex;gap:16px;align-items:flex-start}
.friend{flex:1;text-align:center;padding:8px 6px 14px;transition:transform .25s steps(3)}
.friend:nth-child(1){rotate:-2deg}.friend:nth-child(2){translate:0 30px;rotate:2deg}.friend:nth-child(3){rotate:-1deg}
.friend>img{width:96px;height:96px;animation:bob 2.6s steps(4) infinite}
.friend:nth-child(2)>img{animation-delay:.8s}.friend:nth-child(3)>img{animation-delay:1.6s}
.friend h3{font-size:27px}
.friend p{font-size:18px;line-height:1.1;margin:4px 0 10px}
.produce{display:inline-flex;align-items:center;gap:4px;font-size:16px;padding:0 6px;background:var(--blush-soft);color:#b05a72}
.produce img{width:20px;height:20px}
.parade{position:absolute!important;left:0;right:0;bottom:0;height:116px;overflow:hidden;background:url('assets/world/native/path.png') 0 0/48px;box-shadow:inset 0 6px 0 #b9a06a}
.parade-track{position:absolute;bottom:14px;left:0;display:flex;gap:40px;width:max-content;animation:walk-by 60s linear infinite}
.parade-track span{position:relative;width:72px;height:72px}
.parade-track span:after{content:'';position:absolute;left:20px;right:20px;bottom:6px;height:8px;border-radius:50%;background:rgba(62,58,44,.25)}
.parade-track img{position:relative;z-index:1;width:72px;height:72px}
.parade-track img+img,.parade-track.f1 img:first-child{display:none}
.parade-track.f1 img+img{display:block}

.market{text-align:center;background:var(--paper)}
.market>div:not(.decor){position:relative;max-width:760px;margin:auto}
.market .eyebrow{justify-content:center}
.market .coin{width:72px;height:72px;animation:spin 3s steps(6) infinite}
.market p:not(.eyebrow){max-width:600px;margin:0 auto 16px}
.market small{display:block;font-size:16px;color:#a39874;max-width:520px;margin:auto}

/* Closing: warm sunset, not a cold purple */
.closing{text-align:center;background:linear-gradient(#ffe8c2 0%,#f8c7b0 45%,#e9a2ad 100%);padding-bottom:150px!important}
.closing>div:not(.fireflies){position:relative;z-index:2}
.closing .eyebrow{justify-content:center;color:#9a5068}
.closing h2{color:#4a2f35}
.closing .soft{margin-top:20px;color:#7a4a56}
.closing .btn{margin-top:10px}
.closing-home{position:absolute;right:6%;bottom:0;width:240px;height:240px;will-change:transform}
.fireflies{position:absolute;inset:0;pointer-events:none}
.fireflies i{position:absolute;width:4px;height:4px;background:#fff6b8;box-shadow:0 0 8px 3px #fff3a066;animation:firefly 6s ease-in-out infinite}
.egg{display:block;margin:0 auto;background:none;border:0;cursor:pointer;padding:0}
.egg img{width:110px;height:110px;animation:wobble 2.2s steps(4) infinite;transform-origin:50% 90%}
.egg.hatched img{animation:pop .5s steps(4),bob 2.4s steps(4) infinite .5s}
.egg-hint{font-size:16px;color:#9a5068;margin-bottom:10px}

footer{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:26px max(24px,6vw);background:var(--moss);color:var(--sand);font-size:18px;box-shadow:inset 0 6px 0 #253a21}
footer .brand{color:var(--paper)}
footer .brand small{color:#bfe39b}
footer p{color:#cfc9a6}

/* Juice */
.js .reveal{opacity:0;transform:translateY(24px);transition:opacity .5s steps(5),transform .5s steps(5)}
.js .reveal.visible{opacity:1;transform:none}
.cards .reveal:nth-child(2),.friend-cards .reveal:nth-child(2){transition-delay:.12s}
.cards .reveal:nth-child(3),.friend-cards .reveal:nth-child(3){transition-delay:.24s}
h2 .ch{display:inline-block;transform:translateY(.4em);opacity:0}
.visible h2 .ch,h2.reveal-heading.visible .ch,.chapter.on h2 .ch{animation:letter .45s steps(4) forwards;animation-delay:calc(var(--i)*20ms)}
.tilt{transition:transform .08s linear!important}
.cursor-spark{position:fixed;z-index:80;pointer-events:none;width:6px;height:6px;background:var(--butter);box-shadow:0 0 0 2px var(--blush);animation:spark .6s steps(4) forwards}

@keyframes bob{50%{translate:0 -6px}}
@keyframes wobble{0%,100%{rotate:0deg}25%{rotate:-8deg}75%{rotate:8deg}}
@keyframes sway{50%{rotate:-6deg}}
@keyframes float{50%{translate:0 -6px}}
@keyframes blink{50%{opacity:0}}
@keyframes nudge{50%{translate:0 4px}}
@keyframes rise{from{opacity:0;translate:0 -40%}}
@keyframes pop{0%{scale:.6}60%{scale:1.2}100%{scale:1}}
@keyframes drop{to{translate:0 90px;opacity:0}}
@keyframes burst{0%{opacity:1;transform:translate(0,0) scale(.6)}100%{opacity:0;transform:translate(var(--dx),-70px) scale(1.1)}}
@keyframes walk-by{from{transform:translateX(100vw)}to{transform:translateX(-100%)}}
@keyframes spin{0%,100%{scale:1 1}50%{scale:.2 1}}
@keyframes firefly{0%,100%{opacity:.2;translate:0 0}50%{opacity:1;translate:12px -18px}}
@keyframes letter{60%{transform:translateY(-.12em);opacity:1}100%{transform:none;opacity:1}}
@keyframes spark{to{transform:translateY(16px) scale(.2);opacity:0}}

@media(max-width:860px){
  body{font-size:20px}
  .links>a:not(.btn){display:none}
  .brand{font-size:24px}
  .hero{min-height:720px}
  .hero-copy{left:12px;right:12px;width:auto;top:96px;translate:none}
  .dialog h1{font-size:40px}
  .typed{font-size:20px;min-height:3.9em}
  .cta{margin-top:12px;gap:10px}
  .btn{font-size:20px}
  .hero-tip{display:none}
  .chapters{left:12px;right:12px;width:auto;top:88px}
  .chapter p{font-size:18px}
  section:not(.hero):not(.discover){padding:72px 20px}
  .cards{grid-template-columns:1fr}
  .garden-demo,.friends{grid-template-columns:1fr;gap:30px}
  .friend-cards{gap:8px}
  .friend>img{width:70px;height:70px}
  .friend h3{font-size:21px}.friend p{font-size:15px}
  .closing-home{width:150px;height:150px;right:-10px}
  .decor img{width:30px;height:30px;opacity:.4}
  footer{flex-direction:column;text-align:center}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.js .reveal{opacity:1;transform:none}h2 .ch{transform:none;opacity:1}.discover{height:auto}.discover-sticky{position:relative}}

/* The garden gate: ROM frames, sprites and a real invitation list. */
[hidden]{display:none!important}
button,input,select{font:inherit}
button{color:inherit}
button:disabled{opacity:.65;cursor:wait}
:focus-visible{outline:3px solid #c75d7e;outline-offset:5px}
.hero-copy{width:min(560px,calc(100% - 470px))}
.hero-gate{position:absolute;z-index:4;right:max(24px,5vw);top:51%;translate:0 -50%;width:350px;padding:16px 18px;text-align:center;animation:rise .8s steps(6) both .4s}
.season-badge{font-size:16px;letter-spacing:1.5px;color:#7e4b50;display:inline-flex;align-items:center;gap:9px}
.season-badge i{width:8px;height:8px;background:#84b665;box-shadow:0 0 0 3px #deebcb;animation:blink 3s steps(2) infinite}
.gate-friend{display:block;width:92px;height:92px;margin:10px auto 0;animation:float 4s ease-in-out infinite}
.hero-gate h2{font-size:34px;line-height:1.05;margin:8px 0 12px;color:var(--moss)}
.hero-gate>p{font-size:19px;color:var(--ink-soft)}
.gate-count{display:flex;align-items:center;justify-content:center;gap:12px;margin:18px 0;padding:12px 0;border-top:2px dashed #dac7a3;border-bottom:2px dashed #dac7a3;font-size:18px}
.gate-count strong{font-weight:400;font-size:38px;color:var(--leaf-dark)}
.hero-gate .btn{font-size:21px}
.invite-link{border:0;background:transparent;color:#4d7a3a;padding:12px 0 4px;cursor:pointer;text-decoration:underline;text-underline-offset:4px;font-size:18px}
.gate-status:not(:empty){margin-top:10px;font-size:17px;line-height:1.25;color:#7e4b50}
.hero-tip{right:45%;bottom:50px}
.founders{max-width:none!important;background:linear-gradient(#fffaebdd,#f8efd4f5),url('assets/world/native/grass-0.png') 0 0/48px; text-align:center}
.founders header{max-width:750px;margin:0 auto}.founders .eyebrow{justify-content:center}.founders h2{font-size:48px;line-height:1.1;margin:12px 0}.intro{color:var(--ink-soft)}
.founder-meter{max-width:760px;margin:32px auto 24px;display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap}.founder-meter strong{font-weight:400;color:#4d7a3a;font-size:28px}.founder-meter small{width:100%;text-align:left;font-size:17px;color:var(--ink-soft);margin-top:4px}
.seed-meter{height:19px;width:100%;padding:3px;background:#e5d3a9;border:2px solid #9b784d}.seed-meter i{display:block;min-width:0;height:100%;width:0;background:repeating-linear-gradient(90deg,#84b665 0 8px,#b2ce83 8px 11px);transition:width .6s steps(10)}
.founder-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;max-width:1180px;margin:28px auto 36px}.founder-cards article{position:relative;padding:18px 16px 22px}.founder-cards img{width:60px;height:60px;margin:14px 0;animation:float 4s ease-in-out infinite}.founder-cards article:nth-child(2n) img{animation-delay:-2s}.founder-cards h3{font-size:29px;color:var(--moss);margin-bottom:12px}.founder-cards p{font-size:20px;color:var(--ink-soft)}.founder-cards .tag{display:block;font-size:16px;letter-spacing:2px;color:#9c5a6c}
.join-garden{position:relative;display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center;padding:100px max(24px,calc((100vw - 1120px)/2))!important;background:linear-gradient(110deg,#27482ddd,#477a41c9),url('assets/brand/pokebloom-social-card.png') center/cover;border-top:8px solid #648e47;border-bottom:8px solid #648e47;overflow:hidden}
.join-story{color:var(--paper)}.join-story .eyebrow{color:#edc4b8;font-size:17px}.join-story h2{font-size:clamp(40px,4.2vw,58px);line-height:1.05;margin:20px 0}.join-story>p:not(.eyebrow){font-size:24px;color:#dfebce;max-width:470px}.join-companions{display:flex;align-items:flex-end;gap:18px;margin:18px 0}.join-companions img{width:96px;height:96px;animation:float 4s ease-in-out infinite;filter:drop-shadow(0 5px 0 #223e2b66)}.join-companions img:nth-child(2){animation-delay:-1.2s}.join-companions img:nth-child(3){animation-delay:-2.4s}.join-note{display:flex;align-items:center;gap:14px;padding:8px;color:var(--ink);font-size:19px;margin-bottom:20px;max-width:460px}.join-note>img{width:44px;height:44px}.join-note strong{font-weight:400;color:var(--leaf-dark);font-size:23px}.text-link{text-decoration:underline;text-underline-offset:5px;color:#ffdebc}
.signup-panel{position:relative;padding:20px 20px 14px;background:var(--cream);min-width:0}.signup-panel h3{font-size:36px;color:var(--moss);margin:12px 0 6px}.signup-intro{font-size:20px;color:var(--ink-soft)}
.join-steps{list-style:none;padding:0;margin:20px 0;display:grid;gap:8px}.join-steps li{display:flex;align-items:center;gap:14px;padding:8px 10px;background:#eee6cf;border:2px solid #d6c29d;box-shadow:0 2px 0 #d6c29d}.join-steps li b{display:grid;place-items:center;flex-shrink:0;width:30px;height:30px;font-size:24px;font-weight:400;background:var(--butter);border:2px solid #ad8754}.join-steps li span{font-size:22px;line-height:1}.join-steps small{display:block;font-size:16px;color:var(--ink-soft);margin-top:4px}
.connect-wallet{display:flex;width:100%;justify-content:space-between;align-items:center;gap:8px;background:#e5edcd;border:2px solid #8aaf6c;box-shadow:0 3px 0 #597c42;padding:10px 12px;font-size:23px;cursor:pointer;margin-bottom:18px}.connect-wallet img{width:28px;height:28px}.connect-wallet:hover{background:#d9e9bb}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}#waitlist-form label:not(.privacy-check){display:block;font-size:20px;color:var(--moss)}#waitlist-form label small{color:var(--ink-soft);font-size:16px}#waitlist-form input:not([type=checkbox]),#wallet-choice{display:block;width:100%;min-width:0;max-width:100%;border:2px solid #b8996b;box-shadow:inset 0 3px 0 #e3d5b8;background:#fffdf4;color:var(--ink);padding:9px 8px;margin:6px 0 12px;font-size:22px;border-radius:0}#waitlist-form input::placeholder{color:#9a8b72;font-size:19px}.privacy-check{display:flex;gap:9px;align-items:flex-start;font-size:16px;color:var(--ink-soft);line-height:1.35;margin:5px 0 18px}.privacy-check input{width:18px;height:18px;flex-shrink:0;accent-color:#618c43;margin:2px 0 0}.privacy-check a{text-decoration:underline;color:var(--leaf-dark)}.join-submit{width:100%;justify-content:center;font-size:24px}.form-status:not(:empty){margin-top:14px;font-size:19px;color:#865461;overflow-wrap:anywhere}.gate-footnote{font-size:16px;color:var(--ink-soft);line-height:1.3;margin:16px 0}.invited-entry{border-top:2px dashed #d6c29d;padding-top:10px;font-size:18px;text-align:center}.invited-entry span{display:block;color:var(--ink-soft)}.invited-entry [data-access-status]:not(:empty){margin:10px 0;color:#865461;font-size:18px}
.trainer-card{text-align:center;padding:22px 4px}.trainer-card .eyebrow{justify-content:center;font-size:15px}.trainer-card>img{width:100px;height:100px;animation:float 3s ease-in-out infinite}.trainer-card>p{font-size:20px;color:var(--ink-soft);margin:10px 0 20px}.trainer-card .btn{font-size:20px}
.join-story h2{color:#fffaeb}.alpha-signout{display:block;margin:auto;font-size:16px;color:#8a7756}
.hero-invite,.hero-access-status{display:none}
@media(max-width:860px){.hero-invite{display:block;margin-top:16px;padding:8px 10px;background:#fffaebeb;border:2px solid #84b665;max-width:100%;font-size:19px}.hero-access-status:not(:empty){display:block;background:#fffaebeb;padding:8px 10px;font-size:18px;color:#7e4b50;max-width:400px;margin-top:8px}}
.landing-faq{max-width:900px;margin:auto}.landing-faq h2{font-size:44px;margin:12px 0 30px}.landing-faq details{border-top:2px solid #d6c29d;padding:18px 0}.landing-faq summary{cursor:pointer;font-size:26px;color:var(--moss)}.landing-faq details p{color:var(--ink-soft);font-size:22px;margin:14px 0 4px}
@media(min-width:1500px){.hero-gate{right:10vw}}
@media(max-width:1100px) and (min-width:861px){.hero-copy{left:24px;width:calc(100% - 430px)}.dialog h1{font-size:48px}.cta .btn{font-size:20px}.hero-gate{right:24px;width:330px}.founder-cards{gap:10px}.join-garden{gap:28px}.join-story h2{font-size:44px}}
@media(max-width:860px){.hero-copy{width:auto}.hero-gate{display:none}.hero-tip{display:none}.founder-cards{grid-template-columns:1fr 1fr;gap:16px}.founders h2{font-size:38px}.join-garden{grid-template-columns:1fr;gap:32px;padding:65px 20px!important}.join-story>p:not(.eyebrow){max-width:100%;font-size:23px}.join-story h2{font-size:44px}.join-companions{margin:10px 0}.join-companions img{width:78px;height:78px}.signup-panel{padding:14px 10px}.landing-faq summary{font-size:24px}.topnav .links>a[href='/whitepaper.html']{display:block;font-size:18px}.topnav .links{gap:12px}.topnav .brand small{display:none}.topnav .brand img{width:30px;height:30px}}
@media(max-width:480px){.topnav{border-width:9px;padding:3px}.topnav .brand{font-size:22px;gap:4px}.topnav .links{gap:8px}.topnav .links>a[href='/whitepaper.html']{font-size:17px}.topnav .btn.small{font-size:18px;border-width:7px;padding:0 3px}.topnav .btn.small img{display:none}.founder-cards article{padding:12px 8px}.founder-cards h3{font-size:25px}.founder-cards p{font-size:18px}.founder-meter{font-size:18px}.form-row{grid-template-columns:1fr;gap:0}.join-steps small{font-size:15px}.signup-panel .season-badge{font-size:14px}.join-note{font-size:18px}.join-submit{font-size:23px}}

/* First season: social sign-in now, invited wallets when playtests open. */
.hero-waitlist-note{display:inline-block;margin-top:16px;padding:5px 9px;background:#fffaebe0;color:#4d7a3a;font-size:18px;border:2px solid #b3c88b}
.x-mark{font-family:Arial,sans-serif;font-size:25px;line-height:1;font-weight:700}
.hero-gate>.invite-link{display:block;font-size:17px;margin-top:10px}
.signup-panel{min-height:680px}.signup-panel>h3{line-height:1.12;font-size:35px;margin-top:16px}.social-steps{grid-template-columns:repeat(4,1fr);gap:5px;margin:24px 0}.social-steps li{flex-direction:column;gap:7px;text-align:center;padding:9px 4px;background:#eee6cf;box-shadow:none;opacity:.6}.social-steps li span{font-size:15px;line-height:1.1}.social-steps li b{width:27px;height:27px;background:#e4d5b3;border-color:#b7a17c;font-size:21px}.social-steps li.active{opacity:1;background:#e5edcd;border-color:#84b665;box-shadow:0 3px 0 #84b665}.social-steps li.active b{background:#84b665;border-color:#4d7a3a;color:#fffbed}.social-steps li.done{opacity:1;background:#f5f0dc;border-color:#b3c88b}.social-steps li.done b{background:#b3c88b;border-color:#84b665;color:#30472b}
.wizard-page{animation:gate-page .25s steps(5);min-width:0}.x-welcome{text-align:center;padding:8px 10px 24px}.x-welcome>img{width:110px;height:110px;animation:float 4s ease-in-out infinite}.x-welcome h4{font-weight:400;font-size:29px;line-height:1.15;color:#4d7a3a;margin:8px 0 14px}.x-welcome p{font-size:21px;line-height:1.3}.x-connect{width:100%;justify-content:center;gap:18px}.community-preview{display:block;text-align:center;text-decoration:underline;text-underline-offset:4px;color:#4d7a3a;font-size:19px;margin:18px 0}.wizard-footer{border-top:2px dashed #d6c29d;padding-top:14px;margin-top:24px}.connected-badge{display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:19px;padding:10px 12px;background:#e5edcd;color:#4d7a3a;border:2px solid #a8c18b;margin:8px 0 18px}.connected-badge strong{font-weight:400}.quest-intro{font-size:21px;margin-bottom:16px}.social-quests{display:grid;gap:10px}.quest{background:#fffaf0;border:2px solid #d6c29d;box-shadow:0 2px 0 #e4d4b0}.quest>a{display:flex;align-items:center;gap:12px;padding:12px 10px;color:#4d7a3a;font-size:19px}.quest>a>img{width:30px;height:30px;flex-shrink:0}.quest>a>span{flex:1}.quest small{display:block;color:#8a7756;font-size:16px;margin-top:4px}.quest>a:hover{background:#eaf0dc}.quest label{display:flex;align-items:center;gap:6px;margin:0 10px 10px 52px;font-size:16px;color:#8a7756}.quest input{width:15px;height:15px;accent-color:#618c43;margin:0}.quest-note{font-size:15px;line-height:1.35;color:#9b8063!important;margin:14px 0 20px}.wizard-page>.btn{width:100%;justify-content:center;font-size:23px}.wallet-note{display:flex;align-items:center;gap:12px;padding:12px;background:#e5edcd;color:#4d7a3a!important;margin:12px 0 20px;font-size:21px}.wallet-note>img{width:38px;height:38px}.wallet-note strong{font-weight:400;font-size:18px;color:#7e8f60}.wizard-page #waitlist-form>label:not(.privacy-check){margin-bottom:18px}.wizard-page #wallet-address{font-family:monospace;font-size:17px;padding:14px 8px}.wizard-page #waitlist-form label>small{display:block;line-height:1.3;margin-top:-3px;font-size:16px}.wizard-page .privacy-check{margin-top:22px}.wizard-page .trainer-card{padding:10px 0}.wizard-page .trainer-card>img{display:block;margin:15px auto 0;width:110px;height:110px}.wizard-page .trainer-card>.btn{display:flex;margin-top:14px;justify-content:center;font-size:21px}.wizard-page .trainer-card>span{font-size:21px;color:#8a7756}.wizard-page .trainer-card>small{display:block;color:#8a7756;font-size:19px}.wizard-page .trainer-card #card-id{margin:10px 0 5px;color:#4d7a3a}.signup-panel[data-step='4']{min-height:0}
@keyframes gate-page{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}
@media(max-width:860px){.join-garden{align-items:start}.signup-panel{min-height:0}.join-story h2{font-size:40px}.social-steps{gap:4px}.social-steps li{padding:8px 2px}.social-steps li span{font-size:14px}.x-welcome{padding:4px 4px 20px}.signup-panel>h3{font-size:31px}.x-welcome h4{font-size:27px}.quest>a{font-size:19px}.quest small{font-size:15px}.wizard-page>.btn{font-size:22px}}
.gate-footnote>a[href='/privacy.html']{display:flex;align-items:center;justify-content:center;width:100%;min-height:36px;margin-top:12px;padding:8px 12px;border:2px solid #d6c29d;background:#f4ecd5;color:#4d7a3a;font-size:19px;line-height:1.2;white-space:nowrap;text-decoration:underline;text-underline-offset:3px}.gate-footnote>a[href='/privacy.html']:hover{background:#e5edcd;border-color:#84b665}.privacy-check a[href='/privacy.html']{display:inline-flex;align-items:center;white-space:nowrap;min-height:24px}
