@font-face{font-family:Fredoka;src:url('/assets/fredoka.ttf') format('truetype');font-weight:300 700;font-style:normal;font-display:swap}

:root{--ink:#283365;--cream:#fff8e9;--green:#16774e;--leaf:#bdfb64;--gold:#f5c85c;--muted:#52617c;--line:#28336522;--max:1180px}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:100px}
body{margin:0;background:var(--cream);color:var(--ink);font-family:Fredoka,ui-rounded,system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;font-weight:400;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-underline-offset:4px}
button,a{-webkit-tap-highlight-color:transparent}
a:focus-visible,summary:focus-visible{outline:3px solid var(--green);outline-offset:6px}
img{max-width:100%;display:block}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-weight:600;line-height:1.08}
h1{letter-spacing:-.055em}
h2{font-size:clamp(2rem,4.3vw,3.8rem);letter-spacing:-.035em}
h3{font-size:1.35rem;letter-spacing:-.015em}
p{font-size:1.08rem}
::selection{background:var(--leaf);color:var(--ink)}
.wrap{max-width:var(--max);margin:auto;padding:0 36px}
.skip{position:absolute;top:-70px;left:20px;z-index:20;background:var(--ink);color:white;padding:12px 20px;border-radius:8px}
.skip:focus{top:12px}
.header{border-bottom:1px solid var(--line);position:relative;z-index:5}
.nav{min-height:96px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.7rem;font-weight:600;letter-spacing:-.03em;white-space:nowrap}
.brand img{width:43px;height:43px;border-radius:13px}
.nav-links{display:flex;align-items:center;gap:28px;font-size:.95rem}
.nav-links a{text-decoration:none}
.nav-links a:hover{text-decoration:underline}
.language{border:1px solid var(--line);border-radius:100px;padding:6px 13px;font-size:.85rem;white-space:nowrap}
.hero{display:grid;grid-template-columns:1.05fr 1fr;align-items:center;min-height:740px;padding-top:56px;padding-bottom:72px;gap:40px}
.eyebrow{font-size:.82rem;letter-spacing:.13em;text-transform:uppercase;font-weight:500;display:flex;align-items:center;gap:10px;margin-bottom:24px}
.eyebrow:before{content:'';width:9px;height:9px;background:var(--green);border-radius:50%;flex-shrink:0}
.hero h1{font-size:clamp(4.5rem,8vw,7.7rem);line-height:.91;max-width:650px;font-weight:600}
.hero h1 .outline{color:var(--green)}
.hero .lede{max-width:440px;font-size:1.25rem;line-height:1.55;margin-top:28px;color:var(--muted)}
.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:32px}
.button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:14px 23px;background:var(--ink);color:var(--cream);border:1px solid var(--ink);border-radius:100px;text-decoration:none;font-size:1rem;min-height:52px;transition:transform .15s,background .15s}
.button:hover{background:var(--green);transform:translateY(-2px)}
.button.light{background:var(--cream);color:var(--ink);border-color:var(--cream)}
.button.light:hover{background:var(--leaf)}
.text-link{font-size:.95rem;font-weight:500}
.status{display:flex;align-items:center;gap:8px;font-size:.82rem;color:var(--muted);margin-top:20px}
.status:before{content:'';height:6px;width:6px;border-radius:50%;background:var(--green)}
.illustration{position:relative;padding:46px 46px 34px;isolation:isolate}
.illustration:before{content:'';position:absolute;inset:0 0 20px;background:var(--leaf);border-radius:46% 46% 38% 38%;z-index:-2;transform:rotate(-5deg)}
.device{position:relative;background:#16774e;border:7px solid var(--ink);border-radius:35px;padding:20px 15px 17px;box-shadow:10px 14px 0 #28336515;transform:rotate(6deg);max-width:330px;margin:auto}
.device-top{display:flex;justify-content:space-between;color:var(--cream);padding:0 4px 15px;align-items:center;gap:12px}
.device-top small{display:block;font-size:.68rem;text-transform:uppercase;letter-spacing:.1em;opacity:.8}
.device-top strong{font-size:1.8rem;line-height:1.2;font-weight:500}
.device-top .rank{text-align:right;font-size:1.1rem}
.board{display:grid;grid-template-columns:repeat(4,1fr);gap:5px;background:#0b5c3b;border-radius:15px;padding:7px;aspect-ratio:4/6}
.cell{background:#ffffff1b;border-radius:8px;min-width:0;display:flex;align-items:center;justify-content:center;aspect-ratio:1/1.04}
.money{display:flex;align-items:center;justify-content:center;font-weight:600;font-size:1.1rem;color:#684817;text-shadow:0 1px #ffffff55;position:relative}
.coin{border-radius:50%;background:var(--gold);box-shadow:inset 0 0 0 3px #fbe7a6,inset 0 0 0 5px #bd8b32,0 2px 0 #875c1c;width:83%;height:79%;transform:rotate(-10deg)}
.silver{background:#d8dde1;color:#52617c;box-shadow:inset 0 0 0 3px #f5f6f8,inset 0 0 0 5px #a4adb6,0 2px 0 #8f9ca4;width:75%;height:72%}
.tiny{width:64%;height:61%;font-size:1rem}
.polygon{clip-path:polygon(25% 0,75% 0,100% 25%,100% 75%,75% 100%,25% 100%,0 75%,0 25%);border-radius:0;width:85%;height:82%}
.note{width:92%;height:65%;border-radius:4px;background:#ba91d6;border:3px solid #dbb8ed;box-shadow:inset 0 0 0 1px #794d98,0 2px 0 #6a497e;font-size:1.25rem;color:#5c3a78;transform:rotate(-6deg)}
.blue{background:#80c7ec;border-color:#bbe7fa;color:#245c83;box-shadow:inset 0 0 0 1px #438db8,0 2px 0 #397f9f}
.coral{background:#ee8e79;border-color:#ffc0ae;color:#843f38;box-shadow:inset 0 0 0 1px #b95745,0 2px 0 #a64c40}
.yellow{background:#f5d574;border-color:#fff0b3;color:#775820;box-shadow:inset 0 0 0 1px #bd953f,0 2px 0 #a47c34}
.green-note{background:#9cd399;border-color:#c2ecc0;color:#386a3f;box-shadow:inset 0 0 0 1px #6aa574,0 2px 0 #588f60}
.floating{position:absolute;z-index:2;filter:drop-shadow(4px 5px 0 #28336518)}
.floating.one{width:78px;height:78px;top:38px;right:7px;font-size:1.6rem;transform:rotate(20deg)}
.floating.two{width:90px;height:62px;bottom:91px;left:0;font-size:1.5rem;transform:rotate(-20deg)}
.spark{position:absolute;font-size:50px;color:var(--ink);font-family:Georgia,serif;line-height:1}
.spark.one{top:6px;left:30px;transform:rotate(-12deg)}
.spark.two{right:4px;bottom:50px;font-size:39px}
.caption{font-size:.72rem;text-align:center;color:var(--muted);margin-top:40px;position:relative}
.ticker{background:var(--ink);color:var(--cream);padding:22px 0;overflow:hidden}
.ticker-inner{display:flex;justify-content:center;align-items:center;gap:24px;white-space:nowrap;font-size:1.1rem;letter-spacing:.01em}
.ticker .star{color:var(--gold);font-size:1.6rem;line-height:1}
.section{padding-top:100px;padding-bottom:100px}
.section-heading{display:grid;grid-template-columns:1fr 1fr;gap:50px;align-items:end;margin-bottom:48px}
.section-heading p{color:var(--muted);max-width:450px}
.kicker{font-size:.78rem;letter-spacing:.12em;text-transform:uppercase;color:var(--green);font-weight:500;margin-bottom:16px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:36px}
.step{border-top:1px solid var(--line);padding-top:24px}
.step-no{display:block;color:var(--green);font-size:.85rem;margin-bottom:22px}
.step h3{margin-bottom:12px}
.step p{color:var(--muted);font-size:1rem;line-height:1.65}
.step-art{height:120px;display:flex;align-items:center;justify-content:center;gap:10px;margin-bottom:30px;border-radius:20px;background:#f3eddc}
.step-art .money{width:64px;height:64px;font-size:1.2rem}
.step-art .note{width:82px;height:52px}
.arrow{font-size:1.7rem;color:var(--green)}
.swipe-art{display:grid;grid-template-columns:repeat(4,30px);gap:6px;transform:rotate(-6deg)}
.swipe-art span{height:30px;border-radius:6px;background:#b7d4b1}
.swipe-art span:nth-child(4n+1){background:var(--green)}
.progress-section{background:#e8efcf;position:relative;overflow:hidden}
.progress-top{display:flex;justify-content:space-between;gap:50px;align-items:end}
.progress-top p{max-width:360px;color:var(--muted)}
.denominations{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:50px;padding-bottom:20px}
.denom-item{display:flex;align-items:center;flex-direction:column;gap:16px;flex:1}
.denom-item .money{width:82px;height:82px;font-size:1.5rem;transform:rotate(-8deg)}
.denom-item .note{width:100px;height:66px;transform:rotate(8deg)}
.denom-item small{font-size:.77rem;color:var(--muted)}
.denom-arrow{font-size:1.7rem;color:#477b53}
.fineprint{font-size:.83rem;color:var(--muted);margin-top:25px}
.invitation{display:grid;grid-template-columns:1.25fr 1fr;align-items:center;gap:60px;background:var(--green);color:var(--cream);padding:56px;border-radius:30px}
.invitation h2{font-size:clamp(2rem,3.8vw,3.3rem)}
.invitation p{font-size:1.03rem;max-width:400px;opacity:.85;margin:20px 0 26px}
.invitation-right{border-left:1px solid #ffffff33;padding-left:48px}
.invitation-right p{margin-top:0}
.invitation .mini-label{font-size:.8rem;letter-spacing:.1em;text-transform:uppercase;color:var(--leaf);opacity:1;margin:0 0 14px}
.footer{border-top:1px solid var(--line);padding:30px 0 35px}
.footer-main{display:flex;justify-content:space-between;gap:30px;align-items:center}
.footer .brand{font-size:1.3rem;gap:9px}
.footer .brand img{height:32px;width:32px;border-radius:9px}
.footer-links{display:flex;gap:24px;font-size:.9rem}
.footer-note{display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:.75rem;margin-top:20px}
.page-hero{padding-top:70px;padding-bottom:45px;max-width:850px}
.page-hero h1{font-size:clamp(3.2rem,7vw,5rem);margin-bottom:24px}
.page-hero .intro{font-size:1.25rem;color:var(--muted);max-width:670px}
.page-hero .eyebrow{margin-bottom:20px}
.content-layout{display:grid;grid-template-columns:250px 1fr;gap:80px;padding-bottom:90px}
.aside-card{background:#e8efcf;border-radius:20px;padding:26px;height:max-content;position:sticky;top:25px}
.aside-card p{font-size:.95rem;color:var(--muted);margin:12px 0 15px}
.aside-card a{font-size:.95rem;overflow-wrap:anywhere}
.aside-card .button{font-size:.92rem;padding:10px 17px;gap:10px;min-height:44px}
.faq{border-top:1px solid var(--line)}
details{border-bottom:1px solid var(--line);padding:21px 0}
summary{font-size:1.2rem;font-weight:500;cursor:pointer;list-style:none;position:relative;padding-right:32px;line-height:1.4}
summary::-webkit-details-marker{display:none}
summary:after{content:'+';position:absolute;right:3px;top:-2px;font-size:1.5rem;font-weight:400;color:var(--green)}
details[open] summary:after{content:'−'}
details p{color:var(--muted);margin-top:15px;font-size:1rem}
details ul{color:var(--muted);padding-left:20px;font-size:1rem}
details li+li{margin-top:8px}
.support-contact{margin-bottom:40px;border-radius:22px;background:var(--ink);color:var(--cream);padding:30px}
.support-contact h2{font-size:1.7rem;letter-spacing:-.02em}
.support-contact p{font-size:1rem;opacity:.85;margin:14px 0 20px}
.support-contact .button{font-size:.95rem;padding:11px 20px;min-height:46px}
.legal{max-width:760px}
.legal h2{font-size:1.7rem;letter-spacing:-.02em;margin:38px 0 16px;line-height:1.25}
.legal h2:first-child{margin-top:0}
.legal h3{font-size:1.15rem;margin:24px 0 10px}
.legal p,.legal li{color:var(--muted);font-size:1rem}
.legal p+p{margin-top:13px}
.legal ul{padding-left:21px;margin:12px 0 0}
.legal li+li{margin-top:8px}
.legal .notice{background:#e8efcf;border-radius:15px;padding:22px;margin-bottom:30px;color:var(--ink)}
.legal table{width:100%;border-collapse:collapse;font-size:.92rem;margin-top:20px}
.legal th,.legal td{text-align:left;vertical-align:top;border-bottom:1px solid var(--line);padding:13px 0}
.legal th{font-weight:500}
.legal td{color:var(--muted)}
.legal th+th,.legal td+td{padding-left:20px}
.page-hero .updated{font-size:.85rem;margin-top:16px;color:var(--muted)}
.zh .hero h1{font-size:clamp(3.7rem,7vw,6rem);line-height:1.1;letter-spacing:-.045em}
.zh h1,.zh h2{font-weight:600}
.zh .hero .lede{font-size:1.15rem}
.zh .brand{font-size:1.5rem}
.zh .hero{grid-template-columns:1.1fr 1fr}
.zh .eyebrow{letter-spacing:.08em}
.zh .ticker-inner{font-size:1rem}
.zh .page-hero h1{font-size:clamp(3rem,6vw,4.5rem);line-height:1.2}
.zh .step p{line-height:1.8}
.zh .denom-item small{font-size:.85rem}

@media(min-width:1300px){.hero{gap:70px}
.illustration{padding-left:65px;padding-right:65px}
}
@media(max-width:950px){.hero{gap:10px;min-height:670px}
.hero h1{font-size:6rem}
.illustration{padding:50px 32px 30px}
.device{max-width:290px;padding:17px 12px 13px}
.device-top strong{font-size:1.5rem}
.money{font-size:.95rem}
.note{font-size:1.1rem}
.floating.one{right:0}
.floating.two{left:-6px}
.steps{gap:25px}
.denom-item .money{width:66px;height:66px;font-size:1.25rem}
.denom-item .note{width:82px;height:56px}
.denominations{gap:10px}
.content-layout{gap:45px;grid-template-columns:220px 1fr}
.invitation{padding:40px;gap:35px}
.invitation-right{padding-left:35px}
.zh .hero h1{font-size:4.4rem}
}

@media(max-width:700px){.wrap{padding-left:22px;padding-right:22px}
.nav{min-height:77px;gap:14px}
.brand{font-size:1.45rem;gap:9px}
.brand img{width:36px;height:36px;border-radius:10px}
.nav-links{gap:15px;font-size:.85rem}
.nav-links .desktop-link{display:none}
.language{font-size:.8rem;padding:5px 10px}
.hero,.zh .hero{grid-template-columns:1fr;padding-top:47px;padding-bottom:45px;gap:45px}
.hero h1{font-size:clamp(4.6rem,17vw,7rem)}
.hero .lede{font-size:1.15rem;max-width:430px;margin-top:22px}
.eyebrow{margin-bottom:20px;font-size:.75rem}
.hero-actions{margin-top:25px}
.hero .illustration{width:min(100%,395px);margin:auto;padding:35px 49px 20px}
.device{max-width:285px}
.illustration:before{inset:0 15px 15px}
.floating.one{right:14px;top:22px;width:68px;height:68px}
.floating.two{left:11px;bottom:76px;width:80px;height:53px}
.spark.one{left:34px;top:2px;font-size:38px}
.spark.two{right:12px;bottom:35px;font-size:30px}
.caption{margin-top:32px;font-size:.68rem}
.ticker{padding:17px 0}
.ticker-inner{gap:17px;font-size:.9rem;justify-content:flex-start;padding-left:22px}
.ticker .star{font-size:1.2rem}
.section{padding-top:64px;padding-bottom:64px}
.section-heading{grid-template-columns:1fr;gap:22px;margin-bottom:35px}
.section-heading p{font-size:1rem}
.steps{grid-template-columns:1fr;gap:30px}
.step{display:grid;grid-template-columns:105px 1fr;column-gap:22px;padding-top:22px;align-items:start}
.step-art{grid-column:1;grid-row:1/4;height:105px;margin:0;border-radius:16px;gap:3px;padding:8px}
.step-art .money{width:39px;height:39px;font-size:.85rem}
.step-art .note{width:45px;height:32px}
.step-art .arrow{font-size:1.2rem}
.step-art .money:first-child:nth-last-child(5){display:none}
.step-art .money:first-child:nth-last-child(5)+.arrow{display:none}
.swipe-art{grid-template-columns:repeat(4,17px);gap:3px}
.swipe-art span{height:17px;border-radius:4px}
.step-no{grid-column:2;margin-bottom:6px;font-size:.75rem}
.step h3{font-size:1.3rem;margin-bottom:10px}
.step p{font-size:.95rem}
.progress-top{display:block}
.progress-top p{margin-top:23px;font-size:1rem}
.denominations{display:grid;grid-template-columns:1fr 6px 1fr 6px 1fr;row-gap:26px;padding-top:34px;padding-bottom:0}
.denom-item{flex:0 0 calc((100% - 44px)/3);gap:12px}
.denom-arrow{font-size:1.3rem;flex:0 0 6px}
.denom-arrow:nth-child(6){display:none}
.denom-item .money{width:66px;height:66px}
.denom-item .note{width:77px;height:52px}
.denom-item small{font-size:.72rem}
.fineprint{font-size:.78rem;margin-top:28px}
.invitation{grid-template-columns:1fr;padding:32px 27px;gap:28px;border-radius:24px}
.invitation-right{border-left:0;padding-left:0;padding-top:25px;border-top:1px solid #ffffff33}
.invitation p{margin-top:16px;font-size:1rem}
.footer-main{align-items:flex-start}
.footer-links{flex-wrap:wrap;justify-content:flex-end;gap:10px 19px;font-size:.8rem;max-width:170px}
.footer-note{flex-direction:column;gap:6px;font-size:.7rem}
.page-hero{padding-top:45px;padding-bottom:35px}
.page-hero h1{font-size:3.4rem;margin-bottom:20px}
.page-hero .intro{font-size:1.1rem}
.content-layout{display:flex;flex-direction:column;gap:35px;padding-bottom:60px}
.aside-card{position:static;padding:23px}
.aside-card p{margin-bottom:12px}
.aside-card h3{font-size:1.2rem}
.support-contact{padding:25px;margin-bottom:30px}
.support-contact h2{font-size:1.5rem}
summary{font-size:1.1rem}
.legal h2{font-size:1.5rem;margin-top:30px}
.legal p,.legal li{font-size:.96rem}
.legal table{font-size:.85rem}
.zh .hero h1{font-size:clamp(3.4rem,14vw,5.2rem)}
.zh .brand{font-size:1.3rem}
.zh .hero .lede{font-size:1.05rem;line-height:1.8}
.zh .page-hero h1{font-size:3rem}
.zh .ticker-inner{font-size:.9rem}
.zh .denom-item small{font-size:.75rem}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}
*{transition:none!important}
}

@media(max-width:390px){.hero .illustration{padding-left:22px;padding-right:22px}.floating.one{right:0}.floating.two{left:0}}
