/* DOGNEST — editorial identity. Shared form behavior remains in style.css. */
@font-face{font-family:Manrope;src:url('fonts/manrope.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
@font-face{font-family:Cormorant;src:url('fonts/cormorant-italic.ttf') format('truetype');font-style:italic;font-weight:300 700;font-display:swap}
:root{--bg:#0a0b0d;--panel:#141619;--line:#ffffff1f;--line-soft:#ffffff12;--line-strong:#ffffff33;--muted:#a4aab3;--muted-2:#89909b;--text:#e7eaf0;--text-2:#c6ccd6;--lime:#bbc5d6;--lime-dim:#9caac3;--orange:#caa890;--radius:22px;--radius-sm:12px;font-family:Manrope,"Segoe UI","PingFang SC","Microsoft YaHei",sans-serif}
/* Poll outcome colours. Blue reads as support, amber as oppose, the same way a
   prediction market colour-codes the two sides of a question. */
:root{--vote-yes:#2f6fed;--vote-yes-hi:#4c8bff;--vote-yes-lo:#2258d8;--vote-yes-text:#8fb8ff;--vote-yes-ink:#fff;
--vote-no:#f0ad14;--vote-no-hi:#ffd05a;--vote-no-lo:#e09d0b;--vote-no-text:#ffc94f;--vote-no-ink:#241900}
/* Fluid type scale: every step interpolates linearly between a 400px and a 1440px viewport,
   so text stays proportional without a font-size override at each breakpoint. */
:root{--fs-2xs:clamp(11px,.1vw + 10.6px,12px);--fs-xs:clamp(12px,.1vw + 11.6px,13px);--fs-sm:clamp(13px,.1vw + 12.6px,14px);--fs-base:clamp(15px,.1vw + 14.6px,16px);--fs-md:clamp(16px,.1vw + 15.6px,17px);--fs-lg:clamp(18px,.29vw + 16.85px,21px);--fs-xl:clamp(20px,.58vw + 17.69px,26px);--fs-2xl:clamp(25px,.87vw + 21.54px,34px);--fs-3xl:clamp(29px,1.63vw + 22.46px,46px);--fs-4xl:clamp(38px,2.88vw + 26.46px,68px);--lh-tight:1.14;--lh-head:1.34;--lh-snug:1.6;--lh-body:1.8;--sp-1:6px;--sp-2:10px;--sp-3:16px;--sp-4:24px;--sp-5:34px;--sp-6:48px;--section-gap:clamp(62px,6.4vw,112px);--gutter:clamp(18px,4vw,56px);--header-h:clamp(62px,7vw,97px)}
body{background-color:var(--bg);background-image:radial-gradient(ellipse 78% 620px at 76% -40px,#3f4d6633,transparent 68%),radial-gradient(ellipse 62% 460px at 8% 60px,#313c5022,transparent 70%),radial-gradient(ellipse 92% 540px at 50% 100%,#333f532e,transparent 70%);background-repeat:no-repeat;background-position:0 0,0 0,0 100%;-webkit-font-smoothing:antialiased}
::selection{background:#bbc5d6;color:#0d1015}
.wrap{max-width:1280px;width:calc(100% - 112px)}
.header{max-width:1392px;border-bottom:0;padding:32px 56px;position:relative;gap:30px}
.header:after{content:'';height:1px;background:linear-gradient(90deg,transparent,#ffffff22 18%,#ffffff22 82%,transparent);position:absolute;bottom:0;inset-inline:30px}
.brand{font-weight:800;font-size:23px;letter-spacing:-1.2px;gap:0}
.brand-mark{width:32px;height:32px;border-radius:10px;background:linear-gradient(135deg,#d1d8e3,#8596b4);font-size:25px;box-shadow:inset 0 1px 0 #fff8;margin-inline-end:11px}
.header nav{gap:38px;font-size:13px;letter-spacing:.1px;color:#a6a9af}
.header nav a{transition:color .2s;position:relative;padding-block:7px}
.header nav a:after{content:'';position:absolute;bottom:0;inset-inline:0;transform:scaleX(0);height:1px;background:var(--lime);transition:transform .2s}
.header nav a:hover:after{transform:scaleX(1)}
.language{border-color:#ffffff20;border-radius:30px;padding:5px 13px;background:#ffffff04;font-size:13px;gap:10px}
.language>span{color:var(--lime);font-size:20px}
.language select{max-width:138px;font-size:13px;padding:5px 0;color:#c0c5ce}
.hero{grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);grid-template-rows:auto auto;column-gap:58px;row-gap:0;padding-top:52px;position:relative}
.hero-copy{grid-column:1;grid-row:1;padding-top:8px;position:relative;z-index:1}
.eyebrow{margin-bottom:24px;gap:16px}
.tag{border:0;border-radius:0;padding:0;font-size:11px;letter-spacing:2px;font-weight:500;display:flex;align-items:center;gap:10px}
.tag:before{content:'';height:1px;width:26px;background:var(--lime)}
.edition{margin-inline-start:auto;font-size:10px;letter-spacing:1.4px;color:#757b85}
h1{font-size:clamp(48px,4.7vw,68px);font-weight:500;line-height:1.07;letter-spacing:-3px;margin:0 0 22px}
h1 em{font-family:Cormorant,Georgia,serif;font-style:italic;font-weight:500;font-size:1.16em;line-height:.99;letter-spacing:-2.4px;margin-top:3px;color:var(--lime)}
.hero-intro{font-size:14px;line-height:1.9;color:#a2a7b0;max-width:440px;margin-bottom:18px}
.text-link{border:0;padding:0;font-size:13px;font-weight:600;gap:15px;color:#d7dce6}
.text-link>span:last-child{display:grid;place-items:center;width:30px;height:30px;border:1px solid #ffffff24;border-radius:50%;transition:background .2s,transform .2s}
.text-link:hover>span:last-child{background:#bbc5d617;transform:translate(2px,-2px)}
.hero-art{grid-column:2;grid-row:1/3;min-height:640px;height:100%;border:1px solid #ffffff16;background:radial-gradient(ellipse at 50% 48%,#56698b20,transparent 61%),linear-gradient(155deg,#1b1e24,#0f1115 65%,#181b20);border-radius:240px 240px 24px 24px;overflow:hidden;isolation:isolate;display:flex;align-items:center;justify-content:center;position:relative}
.hero-art:after{content:'';position:absolute;inset:10px;border:1px solid #bfc8d80c;border-radius:inherit;pointer-events:none}
.art-grid{background-size:56px 56px;background-image:linear-gradient(#c5cddb06 1px,transparent 1px),linear-gradient(90deg,#c5cddb06 1px,transparent 1px);mask-image:linear-gradient(transparent,#000 45%,transparent);inset:50px 0}
.art-halo{position:absolute;width:77%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,#c0c9d82e 0%,#6e83a620 40%,#4c5e7c00 70%);filter:blur(20px);top:30%}
.orbit{width:83%;border-color:#afbace1b;transform:rotate(-20deg) scaleY(.9);top:27%;border-width:1px}
.orbit-b{width:68%;border-style:solid;opacity:.7;top:33%;transform:rotate(20deg) scaleY(.9)}
.hero-art>img{width:97%;max-width:510px;transform:rotate(-6deg);margin-top:70px;filter:drop-shadow(0 30px 25px #0008);animation:companion-drift 8s ease-in-out infinite;z-index:2}
.art-word{font-size:clamp(56px,6.7vw,96px);font-weight:800;color:#a9b6cb05;-webkit-text-stroke:1px #abb7cb19;letter-spacing:-5px;top:auto;bottom:66px;line-height:1;z-index:0}
.specimen-label{inset-inline:20px;top:65px;text-align:center;letter-spacing:2px;color:#b8c2d4}
.specimen-label .specimen-index{font-family:Manrope,sans-serif;font-size:10px;letter-spacing:2.5px;color:#838c9c;margin:0}
.specimen-label .specimen-name{font-size:43px;line-height:1.2;letter-spacing:-1px;color:#d2d8e3;font-family:Cormorant,Georgia,serif;font-style:italic;margin-top:9px}
.specimen-label .specimen-tier{font-family:Manrope,sans-serif;display:inline-block;font-style:normal;font-size:9px;letter-spacing:2px;border:1px solid #94a3be3d;border-radius:20px;padding:4px 9px;margin-inline-start:12px;vertical-align:middle;color:#aeb9cd}
.art-bottom{bottom:26px;inset-inline:30px;align-items:center;border-top:1px solid #ffffff13;padding-top:20px;font-size:11px;letter-spacing:.6px;color:#9da5b4}
.art-signature{font-family:Cormorant,Georgia,serif;font-style:italic;font-size:30px;color:#bfc8d7;line-height:1}
.showcase-corner{position:absolute;width:7px;height:7px;border-radius:50%;background:#b2bdd067;inset-inline-start:36px;bottom:35px;display:none}
.poll{grid-column:1;grid-row:2;margin-top:30px;border-color:#9aa8c126;background:linear-gradient(125deg,#1c202870,#121418);box-shadow:0 12px 45px #0002,inset 0 1px 0 #e4e8ef07;border-radius:20px;padding:22px 22px 16px;position:relative;align-self:end}
.poll:before{content:'';position:absolute;top:-1px;inset-inline:20%;height:1px;background:linear-gradient(90deg,transparent,#9dabc372,transparent)}
.poll-top{margin-bottom:18px;gap:14px}.poll .section-kicker{font-size:9px;letter-spacing:1.6px;color:#8c96a7}.poll h2{font-size:20px;font-weight:500;letter-spacing:-.6px;margin-top:7px;line-height:1.45}
.total{align-items:flex-end;flex-direction:column;gap:0;font-size:10px;color:#848c99;line-height:1.6;max-width:83px;white-space:normal;text-align:end;min-width:48px}
.total strong{font-size:29px;font-weight:400;color:#dadfe8;font-variant-numeric:tabular-nums;line-height:1.15}
.vote-grid{gap:13px}.vote-button{border-radius:10px;min-height:55px;font-size:14px;font-weight:650;padding:12px 14px;gap:10px;box-shadow:inset 0 1px 0 #ffffff24;transition:background .2s,box-shadow .2s,transform .2s}
.yes{background:linear-gradient(115deg,#d2d8e3,#a2afc6);border-color:#c2cbda;color:#1d2430}.yes:hover{box-shadow:0 4px 24px #9eacc425,inset 0 1px 0 #fff6}
.no{border-color:#c1cad92b;background:linear-gradient(120deg,#2a2f38,#1f2228);color:#cdd4df}.no:hover{background:#2e3542;box-shadow:0 4px 24px #9eacc40e}
.vote-icon{font-size:21px}.vote-button>span:last-child{font-size:18px;font-weight:400;color:inherit;opacity:.7}.vote-button[aria-pressed=true]{outline:1px solid #dde2ea;outline-offset:3px}
.vote-numbers{font-size:11px;color:#8c94a1;margin:12px 0}.vote-numbers strong{font-size:13px;color:#c7cfdd;font-weight:500}.ratio-track{height:3px;background:#ffffff0e;gap:3px}.ratio-track span{border-radius:10px}.poll-foot{font-size:10px;gap:5px;flex-wrap:wrap;line-height:1.6}.poll-foot p{margin-top:10px}.poll-foot #poll-state{margin-top:5px;color:#a4b1c7;font-size:10px}
.app-entry{width:100%;max-width:760px;margin:20px auto 0;padding-top:8px;text-align:center}
.app-entry-head{margin:0 auto 18px;max-width:18em;font-size:clamp(24px,2.6vw,36px);font-weight:450;line-height:1.35;letter-spacing:-.02em;color:var(--emphasis,#f5ca52);text-wrap:balance}
[lang^=zh] .app-entry-head,[lang=ja] .app-entry-head,[lang=ko] .app-entry-head{font-size:clamp(26px,2.8vw,38px);line-height:1.4;letter-spacing:-.01em;max-width:16em}
.summon-card{width:100%;max-width:none;margin-inline:0;padding:20px 22px 18px;text-align:start;background:linear-gradient(155deg,#1a2230,#121820);border:1px solid #354251;border-radius:16px;box-shadow:0 12px 36px #00000035,inset 0 1px 0 #ffffff08}
.summon-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}
.summon-card-title{margin:0;font-size:19px;font-weight:700;line-height:1.3;color:#f1f5f9;letter-spacing:-.02em}
.summon-card-sub{margin:6px 0 0;font-size:12px;line-height:1.45;color:#8b98a8}
.summon-badge{display:inline-flex;align-items:center;gap:6px;flex-shrink:0;padding:5px 10px;font-size:11px;font-weight:600;color:#6ee7a8;background:#0f2a1c;border:1px solid #1f4a32;border-radius:999px;white-space:nowrap}
.summon-badge i{width:6px;height:6px;border-radius:50%;background:#34d399;box-shadow:0 0 8px #34d399aa}
.summon-card-body{display:flex;align-items:center;gap:14px;margin-bottom:16px}
.summon-card-art{flex:0 0 auto;width:42%;max-width:168px;height:auto;object-fit:contain;filter:drop-shadow(0 8px 16px #0006)}
.summon-card-meta{flex:1 1 0;min-width:0}
.summon-label{margin:0 0 4px;font-size:11px;color:#8b98a8}
.summon-label-quota{margin-top:12px}
.summon-price{margin:0 0 2px;font-size:26px;font-weight:700;line-height:1.15;color:#f8fafc;letter-spacing:-.03em}
.summon-price span{font-size:14px;font-weight:650;color:#a8b4c1;margin-inline-start:2px}
.summon-quota{margin:0 0 8px;font-size:14px;font-weight:600;color:#e2e8f0;font-variant-numeric:tabular-nums}
.summon-quota strong{color:#f8fafc;font-weight:700}
.summon-progress{height:8px;border-radius:999px;background:#293442;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff0a}
.summon-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#6366f1,#3b82f6)}
.summon-card-actions{display:block}
.summon-btn{display:flex;align-items:center;justify-content:center;min-height:44px;padding:10px 12px;font-size:14px;font-weight:700;line-height:1.25;text-decoration:none;border-radius:10px;transition:background .16s,box-shadow .16s,border-color .16s}
.summon-btn-primary{color:#27200d;background:var(--vote-yellow,#f5ca52);border:1px solid #f7d876}
.summon-btn-primary:hover{background:#ffda6d;box-shadow:0 4px 18px #f5ca5226}
.summon-btn{width:100%}
@media(min-width:1024px){
body.landing .hero-layout{gap:24px 52px;grid-template-columns:minmax(0,1.12fr) minmax(380px,.98fr)}
body.landing .hero-art{min-height:640px}
 .app-entry-head{margin-bottom:22px}
 .summon-card{padding:24px 28px 22px}
 .summon-card-body{gap:28px;margin-bottom:18px}
 .summon-card-art{max-width:220px;width:34%}
 .summon-price{font-size:30px}
}
.landing .summon-card-title,.landing .summon-card .summon-quota strong{color:#f1f5f9}
.landing .summon-card .summon-price{color:#f8fafc}
.reward-strip{display:grid;grid-template-columns:44px minmax(0,1fr) auto auto;column-gap:20px;row-gap:12px;margin-top:32px;padding:25px 30px;background:linear-gradient(105deg,#98a7c010,transparent 80%);border:1px solid #a5b2c819;border-radius:16px;align-items:center}
.reward-icon{font-size:32px;color:#bdc6d6;width:44px;height:44px;display:grid;place-items:center;border:1px solid #b2bdd025;border-radius:50%;background:#adb9cd08}
.reward-strip .section-kicker{font-size:10px;letter-spacing:1.8px;color:#94a2bb}.reward-strip p{font-size:13px;color:#bac1ce;margin-top:6px}
.reward-amount{display:flex;align-items:center;gap:12px;margin:0;font-size:35px;letter-spacing:-1.5px;font-weight:400;line-height:1}.reward-amount strong{font-weight:450}.reward-amount span{font-size:11px;letter-spacing:1px;color:#a1afc6}.reward-amount .amount-dash{font-size:.65em;margin-inline:4px;vertical-align:10%;color:#687995;letter-spacing:0}
.network{font-size:10px;border-color:#ffffff20;padding:6px 10px;letter-spacing:.3px}.reward-strip .reward-condition{grid-column:2/-1;font-size:11px;line-height:1.8;color:#87909f;width:auto}
.paper-section,.roadmap-section,.faq-section{padding-top:var(--section-gap)}
.section-heading{align-items:center;margin-bottom:40px;gap:55px}.section-kicker{font-size:10px;letter-spacing:2px;color:#8692a7;font-weight:500}
.section-heading>div{max-width:650px;flex:1.4}.section-heading h2,.faq-section h2{font-size:clamp(32px,3.5vw,47px);font-weight:450;letter-spacing:-1.8px;line-height:1.22;margin-top:17px;text-wrap:balance}
.section-heading>p{max-width:340px;font-size:14px;line-height:1.9;color:#8c939f;flex:1}
.feature-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);grid-template-rows:auto auto;gap:18px}
.feature{padding:30px;border-radius:20px;border-color:#c8d0dd17;background:linear-gradient(140deg,#191d25,#111317);position:relative;min-height:245px}
.feature:first-child{grid-row:1/3;padding:35px 36px 300px;min-height:520px;background:radial-gradient(ellipse at 60% 90%,#3c4a6324,transparent 70%),linear-gradient(140deg,#181b21,#111317)}
.feature:nth-child(2){grid-column:2;grid-row:1;padding-inline-end:175px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(125deg,#171a20,#121417)}
.feature:last-child{grid-column:2;grid-row:2;padding-inline-end:190px;display:flex;flex-direction:column;justify-content:center;background:linear-gradient(125deg,#211f18,#121418)}
.card-number{font-size:10px;letter-spacing:2px;color:#7c889c}.feature h3{font-size:23px;font-weight:500;letter-spacing:-.65px;line-height:1.4;margin:16px 0 10px}.feature p{font-size:14px;line-height:1.85;max-width:390px;color:#929aa8}.feature:first-child h3{font-size:29px;margin-top:24px}.feature:first-child p{max-width:350px}
.feature-visual img{width:310px;height:310px;bottom:-15px;right:calc(50% - 165px);filter:drop-shadow(0 18px 16px #0006);transition:transform .5s}.feature:hover>img{transform:translateY(-6px)}
.feature-visual .legend{width:245px;height:245px;right:-28px;bottom:-16px;transform:rotate(-8deg)}.feature:hover>.legend{transform:rotate(-5deg) translateY(-5px)}
.lineage{position:absolute;inset-inline-end:30px;top:40px;margin:0;display:flex;flex-direction:column;gap:0}.lineage span{font-size:10px;letter-spacing:1px;padding:9px 17px;border:1px solid #8395b338;border-radius:8px;color:#b5bfd1;background:#232b3823}.lineage span:nth-of-type(2){border-color:#a3b0c677;background:#6b80a415;box-shadow:0 0 25px #7387a912}.lineage i{height:17px;width:1px;min-height:17px;background:#8092b139;flex:unset}
.mechanics{gap:80px;margin-top:55px;padding:40px 0 32px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);border-top:0}
.mechanics-title h3{font-size:30px;font-weight:450;letter-spacing:-.9px;line-height:1.3;margin-top:20px}.mechanics-title p{font-size:14px;line-height:1.9;color:#868f9e}.rules-list>div{grid-template-columns:150px minmax(0,1fr);padding:23px 0;gap:25px;border-color:#ffffff10;align-items:center}.rules-list strong{font-size:25px;font-weight:400;color:#bac4d5;letter-spacing:-1px}.rules-list p{font-size:13px;line-height:1.85;color:#8b94a4}
.paper-detail{border-color:#ffffff15;border-radius:12px;padding-inline:25px;background:#ffffff02}.paper-detail>summary{font-size:14px;padding:20px 0;color:#aeb8c8}.paper-detail>summary>span:last-child{font-size:19px;font-weight:300}.detail-grid{gap:10px 45px}.detail-grid h3{font-size:17px;font-weight:500}.detail-grid p{font-size:14px;line-height:1.9;color:#98a0ad}
.road-grid{border:0;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.road-grid article,.road-grid article:first-child{border:1px solid #ffffff16;border-radius:18px;padding:26px 27px 32px;background:#101216;overflow:hidden}.road-grid article:last-child{border:1px solid #ffffff16}.road-grid .phase-current{background:linear-gradient(155deg,#22293673,#131820);border-color:#7f91b055;box-shadow:inset 0 1px 0 #bbc5d620}.phase-state{font-size:10px;letter-spacing:.4px;padding:5px 10px;border-color:#ffffff18}.phase-current .phase-state{border-color:#9caac240;color:#b4bfd1;background:#97a6bf09}.phase-number{font-family:Cormorant,Georgia,serif;font-style:italic;font-size:72px;font-weight:400;line-height:1;margin:30px 0 20px;color:#566175}.phase-current .phase-number{color:#b4bfd1}.road-grid h3{font-size:21px;letter-spacing:-.6px;font-weight:500;line-height:1.5;margin:0 0 12px}.road-grid p{font-size:13px;line-height:1.9;color:#8c96a6}
.faq-section{grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:80px}.faq-section h2{max-width:340px}.faq-section>div>p{font-size:14px;margin-top:20px;color:#818c9e}.faq-list details{padding:22px 0;border-color:#ffffff15}.faq-list details:first-child{padding-top:0}.faq-list summary{font-size:15px;line-height:1.7;color:#c7ceda}.faq-list summary:after{width:28px;height:28px;min-width:28px;border:1px solid #ffffff18;border-radius:50%;display:grid;place-items:center;font-size:18px;color:#99a6bd}.faq-list p{font-size:14px;line-height:1.9;color:#8d97a8}
.closing{position:relative;isolation:isolate;overflow:hidden;border:1px solid #b2bdd021;border-radius:var(--radius);margin-top:var(--section-gap);padding:clamp(44px,5vw,73px) clamp(24px,4vw,50px) clamp(52px,5.6vw,85px);background:radial-gradient(ellipse at 50% 100%,#50628231,transparent 80%),#13161b;text-align:center}
.closing-word{position:absolute;inset-inline:0;bottom:-32px;font-size:clamp(70px,15vw,205px);line-height:1;font-weight:800;letter-spacing:-10px;color:#c2cad908;z-index:-1}.closing>.section-kicker{color:#7f8faa}.closing h2{font-size:clamp(30px,3.2vw,44px);max-width:720px;line-height:1.25;letter-spacing:-1.5px;font-weight:450;margin:18px auto 30px;text-wrap:balance}.primary-link{background:linear-gradient(120deg,#cad1de,#a9b5ca);border:1px solid #d9dfe83d;border-radius:30px;color:#1f2633;gap:32px;font-size:13px;padding:12px 24px;font-weight:600;transition:box-shadow .2s,transform .2s}.primary-link:hover{transform:translateY(-2px);box-shadow:0 6px 30px #9fadc424}
footer{padding:38px 0 42px;gap:25px}footer .brand{font-size:21px}footer p,footer>div,footer .text-button{font-size:11px;color:#747e90}footer .text-button:hover{color:var(--lime)}
dialog{background:radial-gradient(ellipse at top right,#43526d1c,transparent 65%),#13161a;border:1px solid #acb8cc30;border-radius:22px;padding:35px;box-shadow:0 40px 140px #000b,inset 0 1px 0 #d8dde710}dialog::backdrop{background:#040506d6;backdrop-filter:blur(12px)}dialog h2{font-size:30px;font-weight:450;letter-spacing:-1px}.close-dialog{font-weight:300;font-size:25px;border:1px solid #ffffff14;background:#ffffff03;border-radius:50%;width:31px;height:31px;top:13px;inset-inline-end:13px}.choice-chip{background:#abb7cb0b;border-color:#8e9eba36;color:#b9c3d4;font-size:12px}.modal-intro{font-size:14px;line-height:1.8}form>label{font-size:13px;color:#bac2d0}input:not([type=checkbox]),textarea{background:#080a0ea3;border-color:#9dabc328;border-radius:9px;padding:12px;color:#dee3eb}input::placeholder{color:#616c7e}.consent{color:#8a95a9;font-size:12px;line-height:1.8}.primary-button{background:linear-gradient(115deg,#d2d8e3,#a2afc6);border:1px solid #d5dbe542;color:#1e2532;padding:13px;border-radius:9px;font-size:14px}.secondary-button{border-color:#9caac328;font-size:13px;border-radius:9px;padding:12px;color:#acb7cb}.modal-fine{font-size:11px;color:#748096}.modal-privacy{font-size:12px}.success-mark{border-color:#b2bdd070;color:#c1cad9;box-shadow:0 0 35px #9caac30b}
[lang^=zh] h1,[lang=ja] h1,[lang=ko] h1{font-size:clamp(42px,4.1vw,60px);font-weight:500;line-height:1.22;letter-spacing:-1.5px}[lang^=zh] h1 em,[lang=ja] h1 em,[lang=ko] h1 em,[lang=th] h1 em,[lang=hi] h1 em,[lang=ar] h1 em{font-family:inherit;font-style:normal;font-size:1em;line-height:inherit;letter-spacing:inherit;margin-top:0}[lang=th] h1,[lang=hi] h1,[lang=ar] h1{font-size:clamp(42px,4.1vw,60px);line-height:1.3;letter-spacing:0}[dir=rtl] .feature-visual .legend{right:auto;left:-28px;transform:scaleX(-1) rotate(-8deg)}
@keyframes companion-drift{0%,100%{transform:translateY(0) rotate(-6deg)}50%{transform:translateY(-10px) rotate(-4deg)}}
@media(min-width:1500px){.hero{column-gap:72px}.hero-art{min-height:700px}.hero-copy{padding-top:15px}.hero h1{font-size:76px}[lang^=zh] .hero h1,[lang=ja] .hero h1,[lang=ko] .hero h1{font-size:64px}.hero-intro{font-size:15px}.poll{padding:25px}.poll h2{font-size:22px}}
@media(max-width:1100px){.wrap{width:calc(100% - 64px)}.header{padding:26px 32px}.hero{column-gap:30px;padding-top:36px}.hero h1{font-size:54px}.hero-art{min-height:670px;border-radius:200px 200px 20px 20px}.hero-art>img{width:107%;max-width:none}.specimen-label{top:70px}.edition{display:none}.poll{padding:20px 17px 14px}.poll h2{font-size:18px}.vote-button{font-size:13px;padding:11px 10px;gap:8px}.vote-button>span:last-child{display:none}.hero-intro{font-size:14px}.feature:nth-child(2){padding-inline-end:145px}.feature:last-child{padding-inline-end:160px}.feature-visual .legend{width:210px;height:210px;right:-35px}.lineage{inset-inline-end:22px}.feature h3{font-size:20px}.mechanics,.faq-section{gap:40px}.section-heading{gap:35px}.section-heading>p{max-width:310px}.rules-list>div{grid-template-columns:125px minmax(0,1fr);gap:15px}.reward-strip{grid-template-columns:40px minmax(0,1fr) auto;padding:22px 25px}.reward-strip .network{grid-column:3;grid-row:2;justify-self:end}.reward-strip .reward-condition{grid-column:2;grid-row:2}.reward-amount{font-size:30px;gap:8px}.reward-amount>span{font-size:10px}}
@media(max-width:800px){.wrap{width:calc(100% - 40px)}.header{padding:22px 20px}.header nav{gap:20px;font-size:12px}.hero{column-gap:20px}.hero h1{font-size:46px;letter-spacing:-2px}.hero-art{min-height:670px}.hero-copy .tag{font-size:10px;letter-spacing:1.2px}.poll .total{max-width:65px;font-size:10px}.poll h2{font-size:17px}.vote-button{font-size:12px;gap:5px}.vote-grid{gap:9px}.vote-icon{font-size:18px}.feature:first-child{padding:26px 26px 290px}.feature:nth-child(2){padding:25px 25px 25px;padding-inline-end:115px}.feature:last-child{padding:25px 25px 145px}.feature-visual .legend{width:210px;height:210px;right:-20px;bottom:-30px}.lineage{inset-inline-end:16px}.lineage span{padding:8px 10px}.feature:first-child h3{font-size:25px}.feature p{font-size:13px}.road-grid article,.road-grid article:first-child{padding:23px 20px}.road-grid h3{font-size:18px}.section-heading h2,.faq-section h2{font-size:36px}}
@media(max-width:700px){
 .wrap{width:calc(100% - 36px)}.header{padding:19px 18px;gap:14px}.header:after{inset-inline:18px}.header .brand{font-size:21px}.brand-mark{width:30px;height:30px;border-radius:9px;margin-inline-end:9px}.header nav{display:none}.language{padding:3px 10px;gap:7px;max-width:145px}.language>span{font-size:18px}.language select{max-width:111px;font-size:12px}
 .hero{padding-top:29px;grid-template-columns:minmax(0,1fr);grid-template-rows:auto auto auto;gap:0}.hero-copy{grid-column:1;grid-row:1;padding:0;text-align:center}.eyebrow{justify-content:center;margin-bottom:20px}.tag{font-size:10px;letter-spacing:1.7px}.tag:before{width:18px}.hero .hero-copy h1{font-size:clamp(37px,10vw,55px);line-height:1.05;letter-spacing:-1.5px;margin-bottom:19px}.hero h1 em{font-size:1.17em;line-height:1.02;letter-spacing:-1px;margin-top:4px}.hero-intro{font-size:13px;line-height:1.85;max-width:380px;margin:0 auto 17px;text-wrap:pretty}.text-link{font-size:12px;gap:11px}.text-link>span:last-child{width:26px;height:26px}
 .hero-art{display:flex;grid-column:1;grid-row:2;min-height:0;height:190px;width:100%;margin-top:25px;border-radius:100px 100px 16px 16px;background:radial-gradient(ellipse at 55% 90%,#576b8e2a,transparent 68%),linear-gradient(130deg,#1a1e25,#111419);overflow:hidden}
 .hero-art>img{width:235px;max-width:60%;height:auto;margin:0;position:absolute;inset-inline-end:11px;top:-3px;filter:drop-shadow(0 12px 16px #0008);animation:none;transform:rotate(-6deg)}.specimen-label{inset-inline-start:26px;inset-inline-end:auto;text-align:start;top:61px;max-width:43%}.specimen-label .specimen-index{font-size:7px;letter-spacing:1px;line-height:1.8}.specimen-label .specimen-name{font-size:32px;line-height:1.1;margin-top:7px}.specimen-label .specimen-tier{display:table;font-size:7px;letter-spacing:1.4px;margin:9px 0 0;padding:3px 8px}.hero-art .orbit{width:60%;inset-inline-end:0;top:3%;transform:none}.hero-art .orbit-b{width:48%;inset-inline-end:6%;top:10%}.art-halo{width:65%;top:0;inset-inline-end:0;filter:blur(15px)}.art-word{font-size:49px;letter-spacing:-2px;bottom:-5px;inset-inline-start:25px}.art-bottom{display:none}.art-grid{inset:0;background-size:30px 30px}
 .poll{grid-column:1;grid-row:3;margin-top:16px;padding:20px 17px 15px;border-radius:17px}.poll-top{margin-bottom:17px;gap:15px}.poll .section-kicker{font-size:9px;letter-spacing:1px}.poll h2{font-size:19px;font-weight:500;line-height:1.4;margin-top:7px}.poll .total{max-width:68px;min-width:45px;font-size:10px}.total strong{font-size:27px}.vote-grid{gap:12px}.vote-button{min-height:55px;padding:12px 11px;gap:8px;font-size:13px}.vote-icon{font-size:20px}.vote-numbers{margin:11px 0;font-size:11px}.vote-numbers strong{font-size:13px}.poll-foot{font-size:10px;line-height:1.7}.poll-foot #poll-state{font-size:10px}.poll-foot p{margin-top:10px}
 .reward-strip{grid-template-columns:32px minmax(0,1fr);padding:20px 18px;gap:14px 12px;margin-top:17px;border-radius:15px}.reward-icon{width:32px;height:32px;font-size:24px}.reward-strip .section-kicker{font-size:9px;letter-spacing:1.2px}.reward-strip p{font-size:12px;margin-top:4px}.reward-amount{grid-column:1/-1;grid-row:2;font-size:39px;gap:14px;margin-top:2px}.reward-amount>span{font-size:11px}.reward-strip .network{grid-column:1/-1;grid-row:3;justify-self:start;font-size:10px;padding:4px 9px;margin:0}.reward-strip .reward-condition{grid-column:1/-1;grid-row:4;font-size:11px;line-height:1.85;margin-top:0}
 .paper-section,.roadmap-section,.faq-section{padding-top:65px}.section-heading{display:block;margin-bottom:27px}.section-kicker{font-size:10px;letter-spacing:1.6px}.section-heading h2,.faq-section h2{font-size:32px;letter-spacing:-1.1px;line-height:1.3;margin-top:14px;text-wrap:balance}.section-heading>p{max-width:none;font-size:13px;line-height:1.9;margin-top:19px}
 .feature-grid{grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:14px}.feature,.feature:first-child,.feature:nth-child(2),.feature:last-child{grid-column:1;grid-row:auto;border-radius:17px}.feature:first-child{padding:26px 25px 210px;min-height:400px}.feature:first-child h3{font-size:26px;margin-top:17px}.feature p{font-size:13px;line-height:1.9;max-width:none}.feature-visual img{width:235px;height:235px;right:calc(50% - 135px);bottom:-15px}.feature:nth-child(2){min-height:240px;padding:25px 135px 25px 25px;justify-content:center}.feature:nth-child(2) h3{font-size:20px}.lineage{inset-inline-end:23px;top:41px}.lineage span{padding:9px 13px;font-size:9px}.lineage i{height:20px;min-height:20px}.feature:last-child{min-height:250px;padding:25px;padding-inline-end:135px;justify-content:center}.feature:last-child h3{font-size:20px}.feature-visual .legend{width:200px;height:200px;right:-45px;bottom:-7px}.feature .card-number{font-size:10px}
 .mechanics{grid-template-columns:minmax(0,1fr);gap:20px;margin-top:25px;padding:25px 0}.mechanics-title h3{font-size:27px;letter-spacing:-.6px;margin:14px 0}.mechanics-title p{font-size:13px;max-width:none}.rules-list>div{grid-template-columns:112px minmax(0,1fr);gap:16px;padding:21px 0}.rules-list strong{font-size:22px;letter-spacing:-.8px}.rules-list p{font-size:12px;line-height:1.9}.paper-detail{padding-inline:17px}.paper-detail>summary{font-size:13px;padding:18px 0}.detail-grid{gap:0}.detail-grid h3{font-size:16px}.detail-grid p{font-size:13px}
 .road-grid{grid-template-columns:minmax(0,1fr);gap:13px}.road-grid article,.road-grid article:first-child{padding:24px;border-radius:16px}.phase-state{font-size:10px}.phase-number{float:inline-end;font-size:52px;line-height:1;margin:0}.road-grid h3{font-size:20px;line-height:1.5;margin:24px 0 10px}.road-grid p{font-size:13px}.faq-section{grid-template-columns:minmax(0,1fr);gap:30px}.faq-section h2{max-width:none}.faq-section>div>p{font-size:13px;margin-top:14px}.faq-list details{padding:19px 0}.faq-list summary{font-size:14px}.faq-list p{font-size:13px}
 .closing{margin-top:60px;padding:44px 24px 52px;border-radius:18px}.closing>.section-kicker{font-size:9px;letter-spacing:1.4px}.closing h2{font-size:29px;line-height:1.3;margin:17px auto 25px;letter-spacing:-.8px}.closing-word{font-size:68px;letter-spacing:-4px;bottom:-5px}.primary-link{padding:12px 22px;font-size:12px;gap:30px}footer{padding:30px 0 35px;gap:18px}footer .brand{font-size:20px}footer p,footer>div,footer .text-button{font-size:10px}footer>div{width:100%;gap:14px;justify-content:space-between}
 dialog{padding:31px 23px 23px;border-radius:20px}dialog h2{font-size:27px}.modal-intro{font-size:13px}.choice-chip{font-size:11px}#vote-dialog>.section-kicker{font-size:9px;letter-spacing:1px;max-width:90%}.close-dialog{width:29px;height:29px;font-size:22px}form>label{font-size:12px}.consent{font-size:11px}.modal-fine{font-size:10px}.challenge-row label{font-size:12px}
 [lang^=zh] .hero .hero-copy h1,[lang=ja] .hero .hero-copy h1,[lang=ko] .hero .hero-copy h1{font-size:clamp(36px,10vw,49px);line-height:1.2;letter-spacing:-.8px}[lang^=zh] .hero h1 em,[lang=ja] .hero h1 em,[lang=ko] .hero h1 em{font-size:1em;margin-top:0;letter-spacing:inherit}[lang=th] .hero .hero-copy h1,[lang=hi] .hero .hero-copy h1,[lang=ar] .hero .hero-copy h1{font-size:36px;line-height:1.3;letter-spacing:0}[lang=de] .vote-button,[lang=fr] .vote-button{font-size:12px}[dir=rtl] .feature:nth-child(2){padding-inline:25px 135px}[dir=rtl] .feature-visual .legend{left:-45px;right:auto}
}
@media(max-width:360px){.header{gap:10px;padding-inline:16px}.header .brand{font-size:20px}.brand-mark{width:27px;height:27px;margin-inline-end:8px}.language{max-width:115px;padding-inline:8px}.language>span{display:none}.language select{max-width:98px;font-size:11px}.hero{padding-top:24px}.hero .hero-copy h1{font-size:37px}.hero-intro{font-size:12px}.hero-art{height:170px;margin-top:22px}.hero-art>img{width:205px;max-width:65%;top:0;inset-inline-end:0}.specimen-label{top:53px;inset-inline-start:22px}.specimen-label .specimen-index{font-size:6px;letter-spacing:.6px}.specimen-label .specimen-name{font-size:27px}.poll{padding:17px 14px 13px}.poll h2{font-size:17px}.vote-grid{gap:9px}.vote-button{padding:10px 9px;font-size:12px;gap:6px}.vote-icon{font-size:18px}.reward-amount{font-size:34px}.feature:nth-child(2){padding-inline:21px 110px}.lineage{inset-inline-end:17px}.lineage span{padding:8px 9px}.feature:last-child{padding-inline:21px 112px}.feature-visual .legend{width:178px;height:178px;right:-42px}.rules-list>div{grid-template-columns:98px minmax(0,1fr);gap:12px}.rules-list strong{font-size:20px}.section-heading h2,.faq-section h2{font-size:29px}[dir=rtl] .feature:nth-child(2){padding-inline:21px 110px}}
@media(prefers-reduced-motion:reduce){.hero-art>img{animation:none}*{scroll-behavior:auto!important;transition:none!important}}
@media print{body{background:#fff}.feature,.road-grid article{color:#111;background:#fff}.closing-word{display:none}.hero-art{display:none}}
/* Typography — one fluid scale applied once. Sizes interpolate with the viewport,
   so there is no longer a font-size override per breakpoint fighting the base rule. */
.hero-intro,.section-heading>p,.feature p,.mechanics-title p,.detail-grid p,.road-grid p,.faq-list p{font-size:var(--fs-base);line-height:var(--lh-body)}
.tag,.section-kicker,.poll .section-kicker,.reward-strip .section-kicker,.closing>.section-kicker,#vote-dialog>.section-kicker{font-size:var(--fs-xs);letter-spacing:.13em;line-height:1.5;font-weight:600}
.edition,.total,.poll-foot,.poll-foot #poll-state,.vote-numbers,.reward-strip .reward-condition,.network,.phase-state,footer p,footer>div,footer .text-button,.paper-note,.card-number,.loop-number{font-size:var(--fs-xs)}
.vote-numbers strong{font-size:var(--fs-sm)}
.reward-strip p,.rules-list p,.faq-section>div>p,.modal-intro,dialog p,form>label,.challenge-row label,.primary-button,.secondary-button,.paper-detail>summary,.text-link,.choice-chip{font-size:var(--fs-sm)}
.consent,.modal-fine{font-size:var(--fs-xs)}
.reward-amount>span{font-size:var(--fs-xs)}
.vote-button,.faq-list summary,.primary-link{font-size:var(--fs-md)}
.lifecycle-flow p,.ecosystem-path li{font-size:var(--fs-sm);line-height:var(--lh-body)}
.real-market-steps p,.ecosystem-description,.flow-overview,.real-market-copy>p,.ecosystem-heading>p{font-size:var(--fs-base);line-height:var(--lh-body)}
.poll h2,.feature h3,.road-grid h3,.detail-grid h3,.lifecycle-flow h4,.real-market-steps h4{font-size:var(--fs-lg);line-height:var(--lh-head)}
.rules-list strong,.total strong,dialog h2{font-size:var(--fs-xl)}
.feature:first-child h3,.mechanics-title h3,.paper-subheading h3,.real-market-copy h3,.ecosystem-heading h3{font-size:var(--fs-2xl);line-height:var(--lh-head)}
.section-heading h2,.faq-section h2,.closing h2{font-size:var(--fs-3xl);line-height:var(--lh-head)}
.reward-amount{font-size:clamp(30px,1.35vw + 24.6px,40px)}
.hero-copy .hero-intro{max-width:500px}.poll-top{align-items:center}.feature p,.road-grid p{overflow-wrap:break-word}
@media(max-width:1100px) and (min-width:701px){.feature:nth-child(2){padding-inline-end:125px}.lineage{inset-inline-end:16px}.lineage span{padding-inline:10px}}
@media(max-width:700px){
 .hero-intro{max-width:360px}.hero-art{height:174px;margin-top:22px}.hero-art>img{top:-7px;max-width:58%}.specimen-label{top:51px}
 .feature:nth-child(2){padding:25px;min-height:0;display:block}.lineage{position:static;flex-direction:row;margin:19px 0 21px;max-width:100%;align-items:center}.lineage span{font-size:var(--fs-2xs);padding:12px 16px}.lineage i{min-height:1px;height:1px;min-width:14px;width:25px;flex:1}.feature:nth-child(2) h3{margin-top:0}.feature:last-child{padding:25px 25px 190px;min-height:0;display:block}.feature-visual .legend{width:215px;height:215px;right:9px;bottom:-19px}[dir=rtl] .feature:nth-child(2){padding:25px}[dir=rtl] .feature-visual .legend{left:9px;right:auto}
}
@media(max-width:360px){.hero-art{height:155px}.hero-art>img{top:-7px;max-width:62%}.specimen-label{top:42px}.feature:nth-child(2){padding:23px}.feature:last-child{padding:23px 23px 190px}.lineage span{padding:11px 13px}}


/* Whitepaper V3: lifecycle, real-dog transactions and connected ecosystem. */
.lifecycle-section{margin:8px 0 38px;padding:30px 0 0;border-top:1px solid var(--line)}
.paper-subheading h3{font-size:30px;font-weight:450;line-height:1.3;letter-spacing:-.6px;margin:12px 0 18px}
.flow-overview{color:#c0c9d9;font-size:16px;line-height:1.9;margin:0 0 26px;word-spacing:2px;overflow-wrap:anywhere}
.lifecycle-flow{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;border:1px solid #a2afc625;border-radius:17px;background:linear-gradient(120deg,#171d2671,#121519);overflow:hidden}
.lifecycle-flow li{min-width:0;padding:24px 20px;position:relative;border-inline-end:1px solid #bfc8d717}
.lifecycle-flow li:last-child{border:0;background:#b2bdd007}
.stage-number{display:flex;align-items:center;justify-content:center;width:33px;height:33px;border:1px solid #8e9eba3b;border-radius:50%;color:#a6b2c8;font-size:12px;font-variant-numeric:tabular-nums;margin-bottom:22px}
.lifecycle-flow li:not(:last-child):after{content:'→';position:absolute;inset-inline-end:-10px;top:29px;color:#95a4be;font-size:17px;line-height:20px;z-index:1;background:#141820;width:20px;text-align:center}
.lifecycle-flow li:nth-child(3):after,.lifecycle-flow li:nth-child(6):after{display:none}
.lifecycle-flow li:nth-child(3),.lifecycle-flow li:nth-child(6){border-inline-end:0}
.lifecycle-flow li:nth-child(4),.lifecycle-flow li:nth-child(5),.lifecycle-flow li:nth-child(6){border-bottom:0}
.lifecycle-flow h4{font-weight:500;font-size:17px;line-height:1.5;color:#d9dee7;margin:0 0 11px;overflow-wrap:anywhere}
.lifecycle-flow p{font-size:14px;line-height:1.9;color:#939cac;margin:0;overflow-wrap:break-word}
.paper-note{font-size:12px;line-height:1.9;color:#818da2;margin:19px 0 0}
.market-glyph{position:absolute;inset-inline-end:32px;top:50%;transform:translateY(-50%);width:90px;height:90px;display:grid;place-items:center;border:1px solid #9dabc327;border-radius:22px;background:radial-gradient(ellipse,#586c8f1c,transparent);color:#91a1bc}
.market-glyph svg{width:46px;height:46px}
.real-market{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:20px 65px;margin-top:62px;padding:38px 0 28px;border-top:1px solid #b2bdd020}
.real-market-copy h3,.ecosystem-heading h3{font-weight:450;font-size:34px;line-height:1.35;letter-spacing:-1px;margin:16px 0 20px;text-wrap:balance}
.real-market-copy>p,.ecosystem-heading>p{font-size:16px;line-height:1.9;color:#949eae;margin:0;max-width:480px}
.real-market-steps{list-style:none;margin:0;padding:0}
.real-market-steps li{display:grid;grid-template-columns:36px minmax(0,1fr);column-gap:19px;padding:20px 0;border-bottom:1px solid #ffffff12}
.real-market-steps li:first-child{padding-top:0}.real-market-steps li:last-child{border-bottom:0}
.market-step-number{font-size:12px;color:#97a6bf;border:1px solid #96a5be30;border-radius:9px;display:grid;place-items:center;width:34px;height:34px;margin-top:3px}
.real-market-steps h4{font-size:18px;font-weight:500;line-height:1.5;margin:0 0 8px;color:#d1d7e3}
.real-market-steps p{font-size:14px;line-height:1.9;color:#8e99ab;margin:0;overflow-wrap:break-word}
.real-market-note{grid-column:1/-1;border-top:1px solid #ffffff10;padding-top:18px;margin-top:2px}
.ecosystem-story{margin-top:30px;padding:32px;border:1px solid #a0adc42e;border-radius:18px;background:radial-gradient(ellipse at 100% 100%,#7e90b012,transparent 65%),linear-gradient(115deg,#181e2865,#101319)}
.ecosystem-heading{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;margin:12px 0 30px}
.ecosystem-heading h3{margin:0;max-width:470px}.ecosystem-heading>p{font-size:14px;max-width:none}
.ecosystem-path{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;list-style:none;padding:0 0 25px;margin:0;position:relative}
.ecosystem-path:after{content:'';position:absolute;inset-inline:10%;bottom:0;height:16px;border:1px dashed #8f9fbb38;border-top:0;border-radius:0 0 10px 10px;pointer-events:none}
.ecosystem-path li{min-width:0;display:flex;align-items:center;gap:12px;padding:18px 15px;background:#94a3be09;border:1px solid #8e9eb929;border-radius:11px;font-size:14px;line-height:1.6;color:#bfc8d8;position:relative}
.ecosystem-path li:not(:last-child):after{content:'→';position:absolute;inset-inline-end:-21px;font-size:17px;color:#90a0bb}
.loop-number{color:#6e7f9d;font-size:11px;flex-shrink:0}
.ecosystem-description{font-size:15px;line-height:1.95;color:#959fb1;margin:24px 0 0}
.ecosystem-story .paper-note{border-top:1px solid #bdc6d614;padding-top:16px;margin-top:20px}
[dir=rtl] .lifecycle-flow li:not(:last-child):after,[dir=rtl] .ecosystem-path li:not(:last-child):after{content:'←'}
@media(max-width:1100px){.lifecycle-flow li{border-bottom:1px solid #bfc8d717}.lifecycle-flow li:nth-child(4),.lifecycle-flow li:nth-child(5),.lifecycle-flow li:nth-child(6){border-bottom:0}.real-market{gap:20px 36px}.market-glyph{width:72px;height:72px;inset-inline-end:24px}.market-glyph svg{width:38px;height:38px}.ecosystem-path{gap:18px}.ecosystem-path li{padding:14px 12px;gap:8px;font-size:13px}.ecosystem-path li:not(:last-child):after{inset-inline-end:-17px}.ecosystem-heading{gap:28px}.real-market-copy h3,.ecosystem-heading h3{font-size:29px}}
@media(max-width:700px){
 .lifecycle-section{margin:3px 0 27px;padding-top:24px}.paper-subheading h3{font-size:25px;margin:12px 0 14px;letter-spacing:-.4px}.flow-overview{font-size:13px;line-height:2;margin-bottom:22px;word-spacing:0}.lifecycle-flow{display:block;border-radius:15px;padding:5px 19px}.lifecycle-flow li,.lifecycle-flow li:nth-child(6),.lifecycle-flow li:last-child{display:grid;grid-template-columns:32px minmax(0,1fr);gap:0 15px;padding:22px 0;border-inline-end:0;border-bottom:1px solid #bfc8d714;background:none}.lifecycle-flow li:last-child{border-bottom:0}.stage-number{width:30px;height:30px;font-size:11px;grid-column:1;grid-row:1/3;margin:1px 0 0}.lifecycle-flow h4{grid-column:2;margin:0 0 9px;font-size:18px;line-height:1.5}.lifecycle-flow p{grid-column:2;font-size:14px;line-height:1.9}.lifecycle-flow li:not(:last-child):after,[dir=rtl] .lifecycle-flow li:not(:last-child):after{content:'↓';display:block;inset-inline-start:5px;inset-inline-end:auto;top:auto;bottom:-10px;background:#13171f;color:#7385a3;font-size:14px}.paper-note{font-size:12px;line-height:1.9;margin-top:15px}
 .market-glyph{position:static;transform:none;width:50px;height:50px;border-radius:13px;margin:16px 0}.market-glyph svg{width:30px;height:30px}
 .real-market{grid-template-columns:minmax(0,1fr);gap:26px;margin-top:37px;padding-top:28px;padding-bottom:16px}.real-market-copy h3,.ecosystem-heading h3{font-size:27px;line-height:1.4;letter-spacing:-.5px;margin:13px 0 16px}.real-market-copy>p{font-size:15px;line-height:1.9;max-width:none}.real-market-steps li{grid-template-columns:31px minmax(0,1fr);gap:16px;padding:18px 0}.market-step-number{width:30px;height:30px;font-size:11px}.real-market-steps h4{font-size:17px;margin-bottom:7px}.real-market-steps p{font-size:14px}.real-market-note{grid-column:1;margin-top:0;padding-top:16px}
 .ecosystem-story{padding:25px 20px;margin-top:22px;border-radius:16px}.ecosystem-heading{display:block;margin:0 0 23px}.ecosystem-heading h3{font-size:27px}.ecosystem-heading>p{font-size:14px;line-height:1.9}.ecosystem-path{grid-template-columns:minmax(0,1fr);padding:0 0 0 0;gap:23px}.ecosystem-path:after{display:none}.ecosystem-path li{padding:14px 16px;font-size:14px;gap:15px;border-radius:10px}.ecosystem-path li:not(:last-child):after,[dir=rtl] .ecosystem-path li:not(:last-child):after{content:'↓';inset-inline-start:calc(50% - 7px);inset-inline-end:auto;bottom:-22px;font-size:16px}.loop-number{font-size:11px}.ecosystem-description{font-size:14px;line-height:1.95;margin-top:22px}.ecosystem-story .paper-note{margin-top:17px;padding-top:15px}
}
@media(max-width:360px){.lifecycle-flow{padding-inline:15px}.lifecycle-flow li{column-gap:12px}.lifecycle-flow h4{font-size:17px}.lifecycle-flow p{font-size:13px}.ecosystem-story{padding:22px 17px}.real-market-copy h3,.ecosystem-heading h3{font-size:25px}}

/* ─────────────────────────────────────────────────────────────────────────
   Interface shell. Deliberately the last layer in the file so the cascade is
   settled in one place instead of by rules spread across the breakpoints.
   ───────────────────────────────────────────────────────────────────────── */
:root{--header-h:clamp(62px,5.8vw,84px)}
html{scroll-padding-top:calc(var(--header-h) + 20px)}

/* Every section, the header included, shares one content column. */
.wrap,.header-inner{width:calc(100% - var(--gutter)*2);max-width:1280px;margin-inline:auto}

.header{position:sticky;top:0;z-index:50;display:block;width:100%;max-width:none;margin:0;padding:0;border:0;background:#0a0b0dd9;backdrop-filter:blur(18px) saturate(150%);-webkit-backdrop-filter:blur(18px) saturate(150%)}
.header:after{inset-inline:0;background:linear-gradient(90deg,transparent,#ffffff26 14%,#ffffff26 86%,transparent)}
.header-inner{display:flex;align-items:center;justify-content:space-between;gap:30px;padding-block:clamp(12px,1.3vw,21px)}
.header nav a{padding-block:8px}

/* Hero headline: one fluid curve per writing system, no per-breakpoint sizes. */
.hero .hero-copy h1{font-size:var(--fs-4xl);line-height:var(--lh-tight);letter-spacing:-.035em;font-weight:500;margin:0 0 var(--sp-4)}
[lang^=zh] .hero .hero-copy h1,[lang=ja] .hero .hero-copy h1,[lang=ko] .hero .hero-copy h1{font-size:clamp(34px,2.4vw + 24.4px,60px);line-height:1.22;letter-spacing:-.02em}
[lang=th] .hero .hero-copy h1,[lang=hi] .hero .hero-copy h1,[lang=ar] .hero .hero-copy h1{font-size:clamp(32px,2.2vw + 23.2px,56px);line-height:1.34;letter-spacing:0}

.section-heading{margin-bottom:var(--sp-5)}
.section-heading h2,.faq-section h2{margin-top:var(--sp-3)}
.faq-section h2{max-width:none}
.hero-intro{margin-bottom:var(--sp-4)}

/* The poll is the page's single conversion point, so it carries the strongest edge. */
.poll{border-color:#9aa8c13d;box-shadow:0 18px 55px #00000047,inset 0 1px 0 #e4e8ef0f}
.vote-button{min-height:60px}
.vote-numbers strong,.total strong{font-variant-numeric:tabular-nums}

/* Support = blue, oppose = amber. The buttons, the percentages and the share bar
   all use the same two colours so the split can be read without a legend. */
.yes{background:linear-gradient(140deg,var(--vote-yes-hi),var(--vote-yes-lo));border-color:#7aa9ff5c;color:var(--vote-yes-ink);box-shadow:inset 0 1px 0 #ffffff40,0 2px 10px #2f6fed2e}
.yes:hover{background:linear-gradient(140deg,#5d97ff,#2a63e6);box-shadow:inset 0 1px 0 #ffffff5c,0 8px 28px #2f6fed4d}
.no{background:linear-gradient(140deg,var(--vote-no-hi),var(--vote-no-lo));border-color:#ffd97066;color:var(--vote-no-ink);box-shadow:inset 0 1px 0 #ffffff6b,0 2px 10px #f0ad142e}
.no:hover{background:linear-gradient(140deg,#ffd970,#eca90e);box-shadow:inset 0 1px 0 #ffffff80,0 8px 28px #f0ad1442}
.yes[aria-pressed=true]{outline:2px solid #a8c8ff;outline-offset:3px}
.no[aria-pressed=true]{outline:2px solid #ffdd8f;outline-offset:3px}

.vote-numbers{align-items:baseline;margin:13px 0 12px}
#support-pct,#oppose-pct{font-size:var(--fs-lg);font-weight:650;letter-spacing:-.02em;font-variant-numeric:tabular-nums}
#support-pct{color:var(--vote-yes-text)}
#oppose-pct{color:var(--vote-no-text)}

/* Share bar: a readable 14px track instead of a 3px hairline. */
.ratio-track{height:14px;gap:0;border-radius:999px;background:#ffffff14;box-shadow:inset 0 1px 3px #00000059}
.ratio-track span{border-radius:0;transition:width .5s ease}
.ratio-track span:first-child{background:linear-gradient(180deg,var(--vote-yes-hi),var(--vote-yes-lo))}
.ratio-track span:last-child{background:linear-gradient(180deg,var(--vote-no-hi),var(--vote-no-lo))}

.specimen-label .specimen-index{font-size:var(--fs-2xs);letter-spacing:.2em}
.specimen-label .specimen-tier{font-size:var(--fs-2xs);letter-spacing:.14em;padding:4px 10px}

.feature,.road-grid article{transition:border-color .25s ease}
.feature:hover,.road-grid article:hover{border-color:var(--line-strong)}
.faq-list summary:hover:after,.paper-detail>summary:hover{color:var(--lime)}
button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--lime);outline-offset:3px}

/* ── Language control ─────────────────────────────────────────────────────
   The pill is drawn in CSS instead of relying on the native select chrome,
   which rendered its own arrow and its own box inside the frame. The select
   stays in the DOM as the single source of truth: app.js reads and writes it,
   and it keeps working for keyboard and automated selection. */
.language{position:relative;display:inline-flex;border:0;padding:0;background:none;border-radius:999px}
.language select{position:absolute;inset:0;width:100%;height:100%;opacity:0;pointer-events:none;-webkit-appearance:none;appearance:none;border:0;padding:0;margin:0;max-width:none}
.language-button{display:inline-flex;align-items:center;gap:9px;border:1px solid var(--line);border-radius:999px;background:#ffffff08;padding:9px 15px;font-size:var(--fs-xs);font-weight:600;color:var(--text-2);line-height:1;transition:border-color .2s,background .2s,color .2s}
.language-button:hover{border-color:var(--line-strong);background:#ffffff14;color:var(--text)}
.language-globe{color:var(--lime);font-size:15px;line-height:1;flex-shrink:0}
.language-current{white-space:nowrap;max-width:118px;overflow:hidden;text-overflow:ellipsis}
.language-caret{width:6px;height:6px;flex-shrink:0;border-inline-end:1.6px solid currentColor;border-block-end:1.6px solid currentColor;rotate:45deg;margin-block-start:-3px;opacity:.6}

/* Drawer slides in from the inline-end edge, the same side the button sits on,
   so it mirrors automatically for Arabic. */
.lang-drawer{width:min(340px,86vw);max-width:none;height:100dvh;max-height:100dvh;margin-block:0;margin-inline:auto 0;padding:0;border:0;border-radius:0;border-inline-start:1px solid var(--line);background:radial-gradient(ellipse at 100% 0,#43526d20,transparent 62%),#101317;box-shadow:-30px 0 90px #000000a6;flex-direction:column;overflow:hidden;translate:100% 0;transition:translate .3s cubic-bezier(.32,.72,0,1),overlay .3s allow-discrete,display .3s allow-discrete}
/* display belongs on [open] only. Setting it on the base rule overrides the UA
   `dialog:not([open]){display:none}`, which leaves the closed drawer in layout
   translated off-canvas and widens the document by its own width. */
.lang-drawer[open]{display:flex;translate:0 0}
@starting-style{.lang-drawer[open]{translate:100% 0}}
[dir=rtl] .lang-drawer{translate:-100% 0}
[dir=rtl] .lang-drawer[open]{translate:0 0}
@starting-style{[dir=rtl] .lang-drawer[open]{translate:-100% 0}}

.lang-drawer-top{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px 20px 16px;border-bottom:1px solid var(--line-soft);flex-shrink:0}
.lang-drawer-top h2{margin:0;font-size:var(--fs-lg);font-weight:500;letter-spacing:-.02em}
.lang-drawer .close-dialog{position:static;flex-shrink:0;margin:0}
.lang-list{list-style:none;margin:0;padding:10px 12px max(24px,env(safe-area-inset-bottom));overflow-y:auto;flex:1;overscroll-behavior:contain}
.lang-option{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%;padding:13px 14px;border:0;background:none;border-radius:10px;font-size:var(--fs-sm);color:var(--text-2);text-align:start;transition:background .15s,color .15s}
.lang-option:hover{background:#ffffff0f;color:var(--text)}
.lang-option[aria-current=true]{background:#abb7cb14;color:var(--lime)}
.lang-option:focus-visible{outline-offset:-2px}
.lang-check{opacity:0;color:var(--lime);font-size:var(--fs-sm)}
.lang-option[aria-current=true] .lang-check{opacity:1}

/* ── Brand mark ───────────────────────────────────────────────────────────
   A Shiba head, matching the companion art in the hero. The eyes and muzzle
   are punched out with a mask so the tile gradient shows through them, and
   the silhouette alone stays legible down to a 16px favicon. */
.brand-mark{overflow:hidden;font-size:0}
.brand-mark svg{width:100%;height:100%;display:block;fill:#11161d}

/* ── Survey badge ─────────────────────────────────────────────────────────
   Was a hairline rule plus small caps, which read as a caption rather than a
   call to act. Now a pill with a live indicator. */
.tag{display:inline-flex;align-items:center;gap:9px;padding:7px 15px 7px 11px;border:1px solid #a1aec55c;border-radius:999px;background:linear-gradient(120deg,#b3bed024,#b3bed008);color:var(--lime);font-weight:650;letter-spacing:.1em;line-height:1.3}
.tag:before{content:'';width:7px;height:7px;border-radius:50%;background:var(--lime);flex-shrink:0;animation:tag-pulse 2.6s ease-out infinite}
@keyframes tag-pulse{0%{box-shadow:0 0 0 0 #bbc5d670}70%{box-shadow:0 0 0 8px #bbc5d600}100%{box-shadow:0 0 0 0 #bbc5d600}}

@media(max-width:700px){.language-button{padding:8px 12px;gap:7px}.language-current{max-width:96px}.tag{padding:6px 13px 6px 10px;gap:8px}}
@media(max-width:360px){.language-globe{display:none}.language-button{padding:8px 11px}.language-current{max-width:88px}}

@media(max-width:700px){
 /* 104px covers the tallest case: es/pt nav labels wrap to two lines. */
 :root{--header-h:104px}
 /* Section navigation returns on phones instead of being hidden outright. */
 .header-inner{flex-wrap:wrap;gap:0 12px;padding-block:11px 0}
 .header nav{display:flex;order:3;width:100%;gap:0;justify-content:space-between;margin-top:6px;border-top:1px solid var(--line-soft)}
 .header nav a{flex:1;min-width:0;text-align:center;padding-block:11px;font-size:var(--fs-xs);overflow-wrap:anywhere;line-height:1.4}
 .header nav a:after{inset-inline:22%}
 .hero .hero-copy h1{font-size:clamp(37px,9.4vw,54px)}
 [lang^=zh] .hero .hero-copy h1,[lang=ja] .hero .hero-copy h1,[lang=ko] .hero .hero-copy h1{font-size:clamp(33px,8.4vw,47px)}
 [lang=th] .hero .hero-copy h1,[lang=hi] .hero .hero-copy h1,[lang=ar] .hero .hero-copy h1{font-size:clamp(31px,7.8vw,43px)}
 .specimen-label{max-width:48%}
 .specimen-label .specimen-index{font-size:10px;letter-spacing:.1em;line-height:1.6}
 .specimen-label .specimen-name{font-size:29px}
 .specimen-label .specimen-tier{font-size:10px;letter-spacing:.08em;margin-top:8px}
 .lifecycle-flow h4{font-size:var(--fs-lg)}
}

@media(max-width:360px){
 .specimen-label .specimen-index{font-size:10px}
 .specimen-label .specimen-name{font-size:25px}
 .lifecycle-flow h4{font-size:var(--fs-lg)}
 .lifecycle-flow p{font-size:var(--fs-sm)}
}

/* Survey decisions: blue support, yellow opposition; proportional, not decorative. */
.poll{--vote-blue:#2563eb;--vote-yellow:#f5ca52;background:linear-gradient(135deg,#18212b,#111923);border-color:#354251;box-shadow:0 12px 36px #0002,inset 0 1px 0 #ffffff06}
.poll:before{background:linear-gradient(90deg,transparent,#4c85ed70,#e9c35470,transparent)}
.poll .section-kicker,.poll-foot,.poll-foot #poll-state{color:#a9b7c5}.poll h2,.poll .total strong{color:#f1f5f9}.poll .total{color:#a8b4c1}
.poll .vote-button{min-height:58px;border-radius:9px;font-weight:700;box-shadow:none;font-size:15px;justify-content:center;gap:10px;transition:background .16s,transform .16s,box-shadow .16s}
.poll .vote-button>span:last-child{display:none}.poll .vote-icon{font-size:21px;font-weight:600;flex-shrink:0}
.poll .yes{background:var(--vote-blue);border:1px solid #3d77f3;color:#fff}.poll .yes:hover{background:#3472ef;box-shadow:0 4px 18px #2563eb33}
.poll .no{background:var(--vote-yellow);border:1px solid #f7d876;color:#27200d}.poll .no:hover{background:#ffda6d;box-shadow:0 4px 18px #f5ca5226}
.poll .yes[aria-pressed=true]{outline:2px solid #8ab5ff;outline-offset:3px}.poll .no[aria-pressed=true]{outline:2px solid #ffe89e;outline-offset:3px}
.poll .vote-numbers{margin:13px 0 15px;font-size:12px;color:#b2bfcc}.poll .vote-numbers strong{font-size:15px;font-weight:650;font-variant-numeric:tabular-nums}
.poll .vote-option:first-child .vote-numbers strong{color:#80b1ff}.poll .vote-option:last-child .vote-numbers strong{color:#f5ce66}
.poll .ratio-track{height:20px;border-radius:7px;background:#293442;gap:0;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff08}
.poll .ratio-track span{height:100%;border-radius:0;flex-shrink:0;min-width:0}.poll .ratio-track span:first-child{background:var(--vote-blue)}.poll .ratio-track span:last-child{background:var(--vote-yellow)}
.poll .poll-foot{margin-top:4px}#success-title{font-size:27px;line-height:1.35;font-weight:500;letter-spacing:-.6px;margin:18px 0 12px}#success-text{font-size:15px;line-height:1.9;text-align:start;margin:0 0 20px}
@media(max-width:700px){.poll .vote-button{font-size:15px;min-height:57px;padding:12px 9px}.poll .vote-numbers{margin:12px 0 14px}.poll .ratio-track{height:20px}.poll .vote-numbers strong{font-size:15px}#success-title{font-size:25px}#success-text{font-size:14px}}
@media(max-width:360px){.poll .vote-button{font-size:13px;gap:7px}.poll .vote-icon{font-size:19px}}

/* Make the purpose and active community vote prominent. */
.survey-name{font-size:clamp(19px,2vw,26px);font-weight:700;line-height:1.5;color:#eef1f5;margin:0 0 18px}.hero-copy .eyebrow{flex-wrap:wrap;gap:12px}.hero-copy .tag{font-size:18px;font-weight:800;line-height:1.5;padding:10px 16px;color:#dae0e9;background:#212937;border:1px solid #7487aa;box-shadow:0 0 24px #94a3bd12;white-space:normal}.hero-copy .tag:before{width:9px;height:9px;flex-shrink:0}@media(max-width:700px){.hero-copy .tag{font-size:17px;padding:10px 14px}.survey-name{font-size:20px;margin-bottom:14px}}

/* Hero lead-in: the ask itself, set between the headline and the project summary. */
.hero-lead{font-size:var(--fs-md);line-height:var(--lh-snug);font-weight:600;color:#e1e5ed;max-width:500px;margin:0 0 var(--sp-3);padding-inline-start:15px;border-inline-start:2px solid var(--lime);text-wrap:pretty}
[lang=th] .hero-lead,[lang=hi] .hero-lead,[lang=ar] .hero-lead{line-height:1.85}
@media(max-width:700px){.hero-lead{font-size:var(--fs-base);max-width:380px;margin:0 auto var(--sp-2);padding-inline-start:0;border-inline-start:0}}

/* Survey-first mobile layout and optional research fields. */
.survey-select{display:block;width:100%;min-width:0;min-height:46px;padding:10px 12px;border:1px solid #525d70;border-radius:8px;background:#171b21;color:#e8ebf1;font:inherit;margin-bottom:14px}.survey-select option{background:#171b21;color:#e8ebf1}
@media(max-width:700px){.hero .hero-copy{display:contents}body.landing .hero .hero-copy{display:flex;flex-direction:column;align-items:center;width:100%;max-width:100%;min-width:0}.hero .survey-name{display:none}.hero .eyebrow{grid-column:1;grid-row:1;margin:0 0 14px}.hero .hero-copy h1{grid-column:1;grid-row:2;text-align:center;font-size:32px;margin:0 0 12px}.hero .hero-lead{grid-column:1;grid-row:3;text-align:center;margin:0 0 14px;font-size:15px}.hero .poll{grid-column:1;grid-row:4;margin-top:0}.hero .hero-intro{grid-column:1;grid-row:5;margin:20px auto 12px;text-align:center}.hero .text-link{grid-column:1;grid-row:6;justify-self:center}.hero .hero-art{grid-column:1;grid-row:7;margin-top:20px}.hero{grid-template-rows:auto;padding-top:20px}.hero .hero-copy .tag{font-size:15px;padding:8px 12px}.hero .edition{display:none}}

.official-contact{display:flex;align-items:center;justify-content:center;gap:20px;padding:24px 0;border-top:1px solid #ffffff18}.official-contact>span{color:#aeb5c0}.official-contact>a{font-size:18px;font-weight:700;color:#a1aec5}

#privacy-dialog{width:min(640px,calc(100vw - 28px));max-height:85dvh;padding:28px}#privacy-dialog [data-i18n="privacyText"]{white-space:pre-line;font-size:14px;line-height:1.85;color:#cfd4dd}#privacy-dialog h2{font-size:26px;margin:18px 0}.privacy-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin:22px 0}.privacy-links a{color:#b4bfd1;text-decoration:underline;text-underline-offset:4px}#privacy-dialog>.primary-button{margin-top:12px}@media(max-width:400px){#privacy-dialog{padding:24px 20px}}

.official-contact{flex-wrap:wrap;text-align:center}.official-contact a[href="privacy.html"]{font-size:14px}

/* DOGNEST identity: midnight, porcelain and silver. Vote colors remain unchanged. */
:root{--bg:#0b1019;--panel:#131d2b;--text:#edf2f9;--text-2:#c9d3e1;--muted:#a6b3c5;--muted-2:#8797ae;--lime:#d9e5f5;--lime-dim:#b5c6de;--orange:#b6c7df}
body.landing{background-color:#0b1019;background-image:radial-gradient(ellipse 85% 600px at 85% 0,#29456735,transparent 70%),radial-gradient(ellipse 70% 480px at 10% 85%,#27384b28,transparent 75%)}
.header{background:#0b1019ed}.brand{color:#f0f5fc;letter-spacing:-.8px}.brand-mark{width:36px;height:36px;border-radius:11px;background:none;box-shadow:0 3px 12px #0003;margin-inline-end:10px;flex-shrink:0}.brand-mark img{display:block;width:100%;height:100%}.brand-period{color:#91a6c3}
.hero .hero-copy .tag{background:#172439;border:1px solid #566d8e80;color:#e0eafb;box-shadow:none}.hero .hero-copy .tag:before{background:#b7cee9;box-shadow:0 0 10px #b7cee933}.hero h1 em{color:#c4d5ee}.hero-lead{color:#e3ebf7}.hero-intro{color:#a9b7ca}
.hero-art{background:linear-gradient(145deg,#1e2f45,#101926 68%);border-color:#64789255}.art-halo{background:radial-gradient(ellipse,#839fc642,transparent 70%)}.art-word{color:#d0e0f510}.specimen-label .specimen-name{color:#e7effb}.specimen-label .specimen-tier{color:#bacbe3;border-color:#7188a544;background:#182a3f}
.feature,.ecosystem-story,.real-market,.lifecycle-flow{border-color:#6d819b30}.feature{background:linear-gradient(145deg,#1a2637,#111b28)}.reward-strip{background:linear-gradient(105deg,#202f44,#121c2a);border-color:#768da83d}.reward-amount strong{color:#e7effb}.closing{background:radial-gradient(ellipse at 50% 0,#31466255,transparent 65%),#111b29;border-color:#647b9640}
.primary-button,.primary-link{background:linear-gradient(110deg,#edf3fc,#bdcee6);color:#142137;border-color:#d8e6f6;box-shadow:0 5px 18px #0002}.primary-button:hover,.primary-link:hover{background:#f3f7fd;color:#101c2e}.secondary-button{color:#c7d5e8;border-color:#617894}.language-button{background:#152032;border-color:#5b729244;color:#e1eafa}
dialog{background:radial-gradient(ellipse at top right,#354d7133,transparent 65%),#121c2a;border-color:#7186a14d}dialog h2{color:#edf2f9}.modal-intro,form>label,.consent,.modal-fine{color:#aebdd1}input:not([type=checkbox]),textarea,.survey-select,.survey-select option{background:#0c1522;color:#e2ebf9;border-color:#4d6583}.privacy-links a,.official-contact>a{color:#c7d9f1}.official-contact>span{color:#aebed1}#privacy-dialog [data-i18n=privacyText]{color:#c5d1e1}.lang-option{color:#d9e4f2}.lang-option:hover{background:#26374d}
@media(max-width:700px){.brand-mark{width:32px;height:32px}.hero .hero-art{background:linear-gradient(120deg,#1d2d42,#111b29)}}

/* Yellow emphasis across all localized content; preserve vote-side colors. */
body.landing{--emphasis:#f5ca52}.landing .brand,.landing .brand-period,.landing .survey-name,.landing .hero .hero-copy .tag,.landing .hero-lead,.landing h1,.landing .hero h1 em,.landing h2,.landing h3,.landing h4,.landing .poll h2,.landing .section-kicker,.landing .poll .section-kicker,.landing .reward-strip .section-kicker,.landing .closing>.section-kicker,.landing #vote-dialog>.section-kicker,.landing .text-link,.landing .official-contact>a,.landing .language-button,.landing strong,.landing b,.landing .reward-amount strong,.landing .poll .total strong{color:var(--emphasis)}.landing .poll .vote-option:first-child .vote-numbers strong{color:#80b1ff}.landing .poll .vote-option:last-child .vote-numbers strong{color:#f5ce66}

/* Restore the hero invitation and voting prompt to their silver palette. */
.landing .hero h1 em{color:#c4d5ee}.landing .hero-lead{color:#e3ebf7}.landing .hero-sub{color:#e0e7f7}.landing .hero-intro{color:#99a8c5}

/* Compact vote form, including long translated labels on mobile. */
#vote-dialog{padding:24px;max-height:calc(100dvh - 20px)}
#vote-dialog>.section-kicker{display:block;padding-inline-end:28px;font-size:14px;line-height:1.4;letter-spacing:.04em}
#vote-dialog .choice-chip{margin-top:8px;padding:2px 8px;font-size:12px}
#vote-dialog h2{margin:10px 0 6px;font-size:21px;line-height:1.25}
#vote-dialog .modal-intro{margin:0 0 12px;font-size:13px;line-height:1.5}
#vote-form>label{margin:9px 0 4px;font-size:12px;line-height:1.4}
#vote-form input:not([type=checkbox]),#vote-form textarea{padding:8px 10px;font-size:16px;line-height:1.4;border-radius:8px}
#vote-form input:not([type=checkbox]){min-height:40px}
#vote-form textarea{display:block;height:52px;min-height:52px}
#vote-form .challenge-row{margin-top:10px;gap:10px}
#vote-form .challenge-row label{font-size:12px;line-height:1.4}
#vote-form .challenge-row input{width:76px}
#vote-form>label.consent{display:flex;margin:10px 0 4px;gap:8px;font-size:11px;line-height:1.45}
#vote-form .consent input{margin-top:2px}
#vote-form .modal-privacy{font-size:12px}
#vote-form .form-error:empty{display:none}
#vote-form .primary-button,#vote-form .secondary-button{min-height:42px;padding:9px 12px;font-size:13px;line-height:1.4;margin-top:8px}
#vote-form .modal-fine{margin:8px 0 0;font-size:11px;line-height:1.4}
@media(max-width:700px){
  #vote-dialog{width:calc(100% - 20px);padding:22px 16px 16px;border-radius:16px}
  #vote-dialog h2{font-size:19px}
  #vote-dialog .close-dialog{top:8px;inset-inline-end:8px}
}

/* Yellow action button for vote and reward registration. */
#register-button{background:#f5ca52;color:#1e2532;border-color:#f5ca52}
#register-button:hover:not(:disabled){background:#ffda70;color:#1e2532;border-color:#ffda70}

/* Community survey call-to-action. */
.primary-link[href="#community"]{background:#f5ca52;color:#1e2532;border-color:#f5ca52}
.primary-link[href="#community"]:hover{background:#ffda70;color:#1e2532;border-color:#ffda70}

/* Hero: left stack (copy · poll · summon) + right stage art. */
body.landing .hero{display:block;padding-top:8px}
.hero-layout{width:100%;min-width:0}
.hero-stack{display:flex;flex-direction:column;gap:18px;min-width:0}
body.landing .hero .poll{margin-top:0;width:100%;max-width:none;background:none;border:0;box-shadow:none;padding:8px 0 0}
body.landing .hero .poll:before{display:none}
body.landing .hero .app-entry{width:100%;max-width:none;margin:0;padding-top:0;text-align:inherit}
.hero-art{position:relative;min-height:0;background:none;border:0;border-radius:0;box-shadow:none;overflow:visible}
.hero-art:after,.orbit,.showcase-corner{display:none}
.art-halo{width:min(720px,70%);height:42%;top:auto;bottom:6%;left:50%;transform:translateX(-50%);background:radial-gradient(ellipse,#7ea2ff38,transparent 70%);filter:blur(18px)}
.art-word{left:50%;right:auto;bottom:18%;transform:translateX(-50%);font-size:clamp(72px,12vw,168px);letter-spacing:-6px;color:#d5e2ff08;-webkit-text-stroke:1px #c5d4ee14}
.hero-pack{position:absolute;left:50%;bottom:36px;width:min(1100px,94%);height:92%;transform:translateX(-50%);z-index:2}
.hero-pack img{position:absolute;bottom:0;width:auto;object-fit:contain;filter:drop-shadow(0 28px 18px #000a);pointer-events:none}
.pack-main{left:50%;width:46%;height:100%;transform:translateX(-50%);z-index:2}
.pack-left{left:2%;width:34%;height:82%;opacity:.96;transform:rotate(-7deg);transform-origin:center bottom}
.pack-right{right:2%;width:34%;height:82%;opacity:.96;transform:rotate(7deg);transform-origin:center bottom}
.pack-label{position:absolute;z-index:3;bottom:0;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:10px;width:max-content;max-width:calc(100% - 28px);padding:0;border:0;border-radius:0;background:none;box-shadow:none;color:#9aa6bb;font-size:12px;letter-spacing:.08em}
.pack-label i{width:5px;height:5px;border-radius:50%;background:#4fd1ff;flex:none}
.pack-label span:last-child{margin-inline-start:8px;color:#c9b6ff;font-size:11px;letter-spacing:.14em}
.play-spot{margin-top:var(--section-gap)}
.play-head{max-width:760px;margin-bottom:36px}
.play-head h2{font-size:var(--fs-2xl);font-weight:450;line-height:var(--lh-head);letter-spacing:-1px;margin:14px 0 14px}
.play-head p{margin:0;color:var(--muted);font-size:var(--fs-base);line-height:var(--lh-body)}
.play-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:56px 28px}
.play-card{grid-column:span 2;min-width:0;display:flex;flex-direction:column;border:0;border-radius:0;background:none;box-shadow:none;overflow:visible}
.play-card-summon,.play-card:nth-child(2){grid-column:span 3}
.play-visual{display:flex;align-items:flex-end;justify-content:center;gap:8px;min-height:180px;padding:0 0 8px;background:none}
.play-visual img{width:auto;max-width:34%;height:150px;object-fit:contain;filter:drop-shadow(0 14px 12px #0007)}
.play-egg{max-width:46%!important;height:168px!important}
.play-roll{display:flex;align-items:flex-end;gap:4px}
.play-roll img{height:92px!important;max-width:none}
.play-solo img{max-width:70%;height:190px}
.play-pair img{max-width:46%;height:170px}
.play-copy{padding:8px 0 0}
.play-copy span{font-size:11px;letter-spacing:.16em;color:#8ea0bd}
.play-copy h3{margin:8px 0 8px;font-size:var(--fs-md);font-weight:550;line-height:var(--lh-snug)}
.play-copy p{margin:0;color:var(--muted-2);font-size:var(--fs-sm);line-height:var(--lh-body)}
@media(max-width:1100px){.play-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.play-card,.play-card-summon,.play-card:nth-child(2){grid-column:auto}}
@media(max-width:700px){
 .hero .hero-copy{display:flex;flex-direction:column;align-items:center;text-align:center;grid-area:copy;grid-row:auto}
 .hero .hero-art{grid-area:stage;grid-row:1;height:min(380px,92vw);min-height:300px;margin-top:0;background:none;border:0;border-radius:0}
 .hero .poll{grid-area:poll;grid-row:auto;margin-top:12px}
 .hero .survey-name,.hero .eyebrow,.hero h1,.hero .hero-lead,.hero .hero-intro,.hero .text-link{grid-row:auto;grid-column:auto}
 .hero-pack{bottom:28px;width:min(640px,100%);height:88%}
 .pack-label{bottom:0;font-size:11px}
 .play-grid{grid-template-columns:minmax(0,1fr)}
 .play-visual{min-height:160px}
}

/* Site-wide open layout. Panels keep type and imagery; frames and filled cards come off. */
.hero .hero-art{background:none!important;border:0!important;border-radius:0!important;box-shadow:none!important}
.reward-strip,.feature,.road-grid article,.road-grid article:first-child,.road-grid article:last-child,.road-grid .phase-current,.lifecycle-flow,.ecosystem-story,.ecosystem-path li,.closing,.paper-detail,.market-glyph,.reward-icon{background:none;border-color:transparent;box-shadow:none}
.reward-strip{border:0;border-radius:0;padding:28px 0 8px;background:none}
.reward-icon{border:0;background:none;width:auto;height:auto}
.feature,.feature:first-child,.feature:nth-child(2),.feature:last-child{background:none;border:0;border-radius:0;box-shadow:none}
.road-grid article,.road-grid article:first-child,.road-grid article:last-child,.road-grid .phase-current{background:none;border:0;border-radius:0;box-shadow:none;padding-inline:0}
.lifecycle-flow{background:none;border:0;border-radius:0}
.lifecycle-flow li,.lifecycle-flow li:last-child{background:none}
.ecosystem-story{background:none;border:0;border-radius:0;padding-inline:0}
.ecosystem-path li{background:none;border:0;border-radius:0;padding-inline:0}
.closing{background:none;border:0;border-radius:0;box-shadow:none}
.paper-detail{background:none;border-inline:0;border-radius:0}
.market-glyph{background:none;border:0}
body.landing{overflow-x:hidden}
.play-head{margin-inline:auto;text-align:center}

.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.header-tools{display:flex;align-items:center;gap:10px;margin-inline-start:auto}
.brand-edition{margin-inline-start:8px;color:#4fd1ff;font-size:11px;font-weight:700;letter-spacing:.08em}
.menu-toggle{display:inline-flex;align-items:center;justify-content:center;width:42px;height:42px;border:1px solid #35415c;border-radius:10px;background:#0c1324;color:#eaf0ff}
.menu-bars,.menu-bars:before,.menu-bars:after{display:block;width:16px;height:1.5px;background:#eaf0ff;position:relative}
.menu-bars:before,.menu-bars:after{content:'';position:absolute;left:0}
.menu-bars:before{top:-5px}.menu-bars:after{top:5px}
.nav-backdrop{position:fixed;inset:0;z-index:70;background:#050814b8;backdrop-filter:blur(4px)}
.nav-backdrop[hidden]{display:none}
.site-drawer{position:fixed;top:0;bottom:0;inset-inline-end:0;z-index:80;width:min(320px,86vw);padding:22px 22px 32px;background:#0c1324;border-inline-start:1px solid #2a3550;box-shadow:-24px 0 60px #0008;transform:translateX(100%);transition:transform .28s ease;display:flex;flex-direction:column;gap:18px}
[dir=rtl] .site-drawer{transform:translateX(-100%)}
.site-drawer.is-open{transform:translateX(0)}
.drawer-top{display:flex;align-items:center;justify-content:space-between}
.drawer-brand{font-weight:800;letter-spacing:.16em;color:#f0f4ff}
.drawer-close{width:36px;height:36px;border:0;border-radius:8px;background:#172033;color:#eaf0ff;font-size:22px;line-height:1}
.site-drawer nav{display:flex;flex-direction:column;gap:4px}
.site-drawer nav a{padding:16px 8px;border-bottom:1px solid #ffffff12;font-size:18px;font-weight:600;color:#eaf0ff}
.site-drawer nav a:hover{color:#bba2ff}
body.drawer-open{overflow:hidden}

body.landing{background-color:#070b16;background-image:radial-gradient(ellipse at 82% 18%,#21204bcc,transparent 58%),radial-gradient(ellipse at 8% 80%,#1a2744aa,transparent 62%)}
.header{background:#0a1020f2}
.brand-name{letter-spacing:-.04em}
.header-nav{display:none}
.header-cta{display:none}
body.landing .hero .hero-copy h1{color:#f0f4ff!important;font-weight:750;letter-spacing:-.04em}
body.landing .hero .hero-copy h1 em{color:#bba2ff!important}
body.landing .hero .hero-copy h1 span{color:#f0f4ff!important}
body.landing .hero-sub{margin:0 0 14px;font-size:clamp(16px,4.2vw,18px);line-height:1.6;color:#e0e7f7;text-align:inherit;text-wrap:pretty}
body.landing .hero-intro{margin:0 0 14px;color:#99a8c5}
body.landing .hero-lead{margin-top:4px}
@media(min-width:761px){
body.landing .header{position:sticky;top:0;z-index:50;background:#070b16e6;backdrop-filter:blur(16px) saturate(140%);border-bottom:1px solid #ffffff14}
body.landing .header:after{display:none}
body.landing .header-inner{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:28px;min-height:72px;padding-block:0;width:min(1280px,calc(100% - 80px));max-width:1280px;margin-inline:auto}
body.landing .header .brand{font-size:20px;letter-spacing:-.03em;gap:0}
body.landing .header-nav{display:flex;align-items:center;justify-content:center;gap:8px}
body.landing .header-nav a{padding:8px 14px;font-size:14px;font-weight:600;letter-spacing:.01em;color:#d5deee;border-radius:999px}
body.landing .header-nav a:hover{color:#fff;background:#ffffff10}
body.landing .header-nav a:after{display:none}
body.landing .header-tools{gap:10px}
body.landing .header .language-button{height:40px;padding:0 14px;color:#e7eef8;background:#121a2c;border-color:#31415e}
body.landing .header-cta{display:inline-flex;align-items:center;justify-content:center;height:40px;padding:0 16px;border-radius:999px;background:#f5ca52;border:1px solid #f7d876;color:#27200d;font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}
body.landing .header-cta:hover{background:#ffda6d}
body.landing .menu-toggle{display:none}
body.landing .hero{display:block;padding-top:24px}
body.landing .hero-layout{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(360px,.88fr);column-gap:36px;row-gap:20px;align-items:stretch}
body.landing .hero-stack,body.landing .hero .app-entry{display:contents}
body.landing .hero-copy{grid-column:1;grid-row:1;text-align:start;max-width:none;width:100%}
body.landing .hero .eyebrow,body.landing .hero .text-link{justify-content:flex-start}
body.landing .hero .hero-intro,body.landing .hero .hero-lead{margin-inline:0}
body.landing .hero .poll{grid-column:1;grid-row:2;width:100%;max-width:none;margin:0}
body.landing .app-entry-head{grid-column:1;grid-row:3;align-self:center;margin:0;text-align:start;max-width:14em}
body.landing .hero-art{display:block;grid-column:2;grid-row:1 / span 2;position:relative;width:100%;min-height:460px;height:auto;margin:0;overflow:hidden}
body.landing .summon-card{grid-column:2;grid-row:3;align-self:center;width:100%;max-width:none;margin:0}
body.landing .hero-pack{position:absolute;inset:0;left:0;right:0;bottom:0;width:100%;height:100%;transform:none}
}
.art-grid{display:block;position:absolute;z-index:0;width:95%;height:42%;bottom:8%;left:2.5%;border-radius:50%;background:radial-gradient(ellipse,#6552b34d,transparent 68%),repeating-linear-gradient(0deg,transparent 0 22px,#91a4dc22 23px 24px),repeating-linear-gradient(90deg,transparent 0 22px,#91a4dc22 23px 24px);border:1px solid #6b55ba55;box-shadow:0 0 70px #6d4cff1a;transform:perspective(400px) rotateX(58deg);pointer-events:none}
.art-word{color:transparent;-webkit-text-stroke:1px #514878;opacity:.55;font-weight:900}
.pack-label{bottom:8px;padding:10px 14px;border:1px solid #37405c;border-radius:8px;background:#101727;color:#b6c4de}

.play-summon{flex-direction:column;align-items:center;gap:6px;min-height:0}
.play-summon .play-egg{height:168px;max-width:220px;width:auto}
.play-summon .play-roll{display:flex;align-items:flex-end;justify-content:center;gap:16px;width:100%}
.play-summon .play-roll img{height:108px;width:auto;max-width:none}
.play-visual.play-clan{display:flex;align-items:flex-end;justify-content:center;gap:0;position:relative;height:220px;min-height:220px;overflow:visible}
.play-visual.play-clan img{position:static;display:block;width:auto;max-width:none!important;height:auto;object-fit:contain;filter:drop-shadow(0 16px 12px #0008);flex:0 0 auto}
.play-visual.play-clan .clan-left{height:140px;transform:rotate(-8deg);margin-inline-end:-14px;z-index:1}
.play-visual.play-clan .clan-main{height:188px;z-index:2;margin:0 -8px}
.play-visual.play-clan .clan-right{height:140px;transform:rotate(8deg);margin-inline-start:-14px;z-index:1}
.play-visual.play-grow{display:flex;flex-direction:column;align-items:center;justify-content:flex-end;min-height:248px;padding-bottom:4px;overflow:visible}
.play-grow .grow-figures{display:flex;align-items:flex-end;justify-content:center;gap:2px;width:100%;max-width:440px}
.play-grow .grow-stage{display:flex;flex-direction:column;flex:1 1 0;min-width:0;align-items:center;justify-content:flex-end;gap:8px}
.play-grow .grow-stage img{display:block;width:100%;max-width:128px;height:auto;max-height:148px;object-fit:contain;object-position:center bottom}
.play-grow .grow-stage:last-child img{max-height:162px;max-width:136px}
.play-grow .grow-label{margin:0;font-size:13px;font-weight:600;letter-spacing:.08em;color:#bba2ff;line-height:1.4;text-align:center;white-space:nowrap}
.play-grow .grow-sep{flex:0 0 auto;align-self:flex-end;margin-bottom:1px;padding:0 2px;font-size:13px;font-weight:600;line-height:1.4;color:#bba2ff;opacity:.9}
.play-mates{display:flex;align-items:center;justify-content:center;gap:6px;min-height:0}
.play-mates img{height:176px;width:auto;max-width:38%}
.mate-left{transform:scaleX(-1)}
.mate-heart{color:#ff6d8f;font-size:34px;line-height:1;text-shadow:0 0 16px #ff6d8faa}
.play-collect{min-height:0}
.play-collect img{height:230px;max-width:78%;width:auto}

/* Phone layout. One column, one order, no overlapping art. */
@media(max-width:760px){
 :root{--header-h:96px;--gutter:20px;--pad-x:max(20px,env(safe-area-inset-left));--pad-x-end:max(20px,env(safe-area-inset-right))}
 html,body.landing{overflow-x:clip;max-width:100%}
 main,body.landing .header,body.landing .hero,body.landing .wrap{max-width:100%;min-width:0}
 body.landing .wrap,body.landing .header-inner{width:100%;max-width:100%;margin-inline:0;padding-inline:var(--pad-x) var(--pad-x-end);box-sizing:border-box}
 .header-inner{flex-wrap:nowrap;align-items:center;gap:8px;padding-block:10px}
 .header .brand{min-width:0;flex:1 1 auto;font-size:clamp(17px,4.8vw,21px)}
 .brand-edition{font-size:10px;margin-inline-start:4px}
 .header-tools{flex:0 0 auto;gap:8px}
 .header nav{display:none!important}
 .language-button{padding:7px 10px;max-width:100%}
 .menu-toggle{width:38px;height:38px;flex-shrink:0}
 body.landing .hero{display:block;padding-top:0;box-sizing:border-box}
 body.landing .hero-layout{display:flex;flex-direction:column;align-items:stretch;gap:0;min-width:0;max-width:100%}
 body.landing .hero-stack{display:contents}
 body.landing .hero-layout>.hero-art{order:2}
 body.landing .hero-copy{order:1}
 body.landing .hero .poll{order:3}
 body.landing .hero .app-entry{order:4;text-align:center}
 body.landing .hero .app-entry .app-entry-head{text-align:center;margin-inline:auto}
 .hero .hero-art{display:block;order:2;position:relative;grid-row:auto;width:100%;max-width:100%;height:min(72vw,320px);min-height:260px;margin:8px 0 0;background:none;border:0;border-radius:0;box-shadow:none;overflow:hidden;isolation:isolate}
 .hero .hero-copy{display:flex!important;order:1;flex-direction:column;align-items:center;text-align:center;width:100%;max-width:100%;padding:8px 0 0;box-sizing:border-box}
 .hero .survey-name{display:none}
 .hero .eyebrow{justify-content:center;margin:0 0 12px}
 .hero .hero-copy .tag{padding:0;border:0;background:none;box-shadow:none;font-size:12px;letter-spacing:.12em;font-weight:650}
 body.landing .hero .hero-copy h1{font-size:32px;line-height:1.25;letter-spacing:-.03em;margin:0 0 12px;text-align:center;color:#f4f7fb}
 body.landing .hero h1 em{display:block;margin-top:6px;font-size:20px;line-height:1.4;letter-spacing:0;color:#bba2ff}
 body.landing .hero .hero-lead{max-width:34em;margin:0 0 12px;padding:0;border:0;text-align:center;font-size:16px;line-height:1.6;color:#f4f7fb}
 .hero .hero-intro{max-width:36em;margin:0 auto 16px;font-size:15px;line-height:1.75;color:#b7c3d4}
 .hero .text-link{justify-content:center}
 .hero .poll{order:3;width:100%;max-width:100%;margin:8px 0 0;padding:0;background:none;border:0;border-radius:0;box-shadow:none;box-sizing:border-box}
 .hero .poll:before{display:none}
 .poll-top{align-items:flex-start;gap:12px;margin-bottom:14px}
 body.landing .poll h2{font-size:20px;line-height:1.4;margin-top:4px;color:#f4f7fb}
 .poll .total{max-width:none;min-width:0;align-items:flex-end}
 .vote-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}
 .vote-button{min-height:52px;padding:12px 10px;font-size:15px;border-radius:12px}
 .vote-numbers{margin:8px 0 12px}
 .poll-foot{text-align:start}
 .hero .hero-art .hero-pack{left:0;right:0;width:100%;max-width:100%;height:88%;bottom:8%;transform:none}
 .hero .hero-art .pack-main{left:50%;width:52%;height:86%;bottom:8%;transform:translateX(-50%)}
 .hero .hero-art .pack-left{left:0;width:34%;height:62%;bottom:12%;opacity:.85;transform:rotate(-8deg)}
 .hero .hero-art .pack-right{right:0;width:34%;height:62%;bottom:12%;opacity:.85;transform:rotate(8deg)}
 .hero .hero-art .pack-left,.hero .hero-art .pack-right{max-width:38%}
 .hero .hero-art .art-grid{width:92%;left:4%;height:34%;bottom:10%}
 .hero .hero-art .art-word{top:8%;font-size:clamp(40px,11vw,64px);max-width:100%;overflow:hidden}
 .pack-label{bottom:4px;max-width:calc(100% - 16px);font-size:10px;padding:8px 10px;box-sizing:border-box}
 .pack-label span:last-child{margin-inline-start:8px}
 .hero .app-entry{order:4;width:100%;max-width:100%;margin-top:16px;padding-top:0}
 .app-entry-head{font-size:clamp(22px,5.8vw,28px);max-width:none;margin-bottom:14px;padding-inline:4px}
 [lang^=zh] .app-entry-head{font-size:clamp(23px,6vw,30px)}
 .summon-card{max-width:none;padding:16px 14px 14px;border-radius:14px}
 .summon-card-title{font-size:17px}
 .summon-card-body{gap:10px}
 .summon-card-art{width:38%;max-width:140px}
 .summon-price{font-size:22px}
 .summon-card-actions{gap:8px}
 .summon-btn{min-height:48px;font-size:15px;border-radius:12px}
 .reward-strip{display:flex;flex-direction:column;align-items:flex-start;gap:8px;margin-top:28px;padding:22px 0 0;border:0;border-radius:0;background:none;border-top:1px solid #ffffff14}
 .reward-icon{display:none}
 .reward-amount{font-size:40px;line-height:1}
 .reward-strip .network,.reward-strip .reward-condition{margin:0}
 .play-spot{margin-top:56px}
 .play-head{text-align:center;margin-bottom:8px}
 .play-head h2{font-size:28px;line-height:1.3}
 .play-grid{display:flex;flex-direction:column;gap:36px}
 .play-card,.play-card-summon,.play-card:nth-child(2){grid-column:auto;text-align:center}
 .play-visual{min-height:0;padding:0;max-width:100%;overflow:hidden;box-sizing:border-box}
 .play-visual:not(.play-clan):not(.play-summon):not(.play-grow) img{height:132px;max-width:42%}
 .play-visual.play-clan{height:200px;min-height:200px;margin-inline:auto;overflow:visible}
 .play-egg{height:150px}
 .play-copy h3{font-size:20px}
 .paper-section,.roadmap-section,.faq-section{padding-top:56px}
 .section-heading{display:block;margin-bottom:20px}
 body.landing .section-heading h2,body.landing .faq-section h2,body.landing .paper-subheading h3,body.landing .real-market-copy h3,body.landing .ecosystem-heading h3,body.landing .mechanics-title h3,body.landing .closing h2,body.landing .play-head h2,body.landing .play-copy h3,body.landing .feature h3,body.landing .lifecycle-flow h4,body.landing .road-grid h3{font-size:28px;line-height:1.3;letter-spacing:-.02em;color:#f4f7fb}
 body.landing .play-copy h3,body.landing .feature h3,body.landing .lifecycle-flow h4,body.landing .road-grid h3{font-size:20px}
 .section-heading>p{max-width:none;margin-top:12px}
 .lifecycle-flow{display:flex;flex-direction:column;padding:0;border:0;background:none;border-radius:0}
 .lifecycle-flow li,.lifecycle-flow li:last-child{display:grid;grid-template-columns:36px minmax(0,1fr);gap:4px 12px;padding:18px 0;border:0;border-bottom:1px solid #ffffff12;background:none}
 .lifecycle-flow li:last-child{border-bottom:0}
 .lifecycle-flow li:after{display:none}
 .stage-number{grid-row:1/span 2;margin:2px 0 0}
 .lifecycle-flow h4,.lifecycle-flow p{grid-column:2}
 .feature-grid{display:flex;flex-direction:column;gap:28px}
 .feature,.feature:first-child,.feature:nth-child(2),.feature:last-child{display:block;min-height:0;padding:0 0 8px;background:none;border:0}
 .feature-visual img,.feature .puppy,.feature-visual .legend{position:static;display:block;width:min(220px,62%);height:auto;max-width:none;margin:16px auto 0;right:auto;bottom:auto;transform:none;filter:drop-shadow(0 16px 12px #0008)}
 .market-glyph{position:static;transform:none;margin:12px 0}
 .real-market,.ecosystem-story,.mechanics,.faq-section{display:block;padding-inline:0;background:none;border:0}
 .ecosystem-path{display:flex;flex-direction:column;gap:12px}
 .ecosystem-path:after,.ecosystem-path li:after{display:none}
 .ecosystem-path li{padding:0;background:none;border:0}
 .road-grid{display:flex;flex-direction:column;gap:28px}
 .road-grid article,.road-grid article:first-child{padding:0 0 8px;background:none;border:0}
 .phase-number{float:none;display:block;font-size:42px;margin:8px 0}
 .closing{margin-top:48px;padding:36px 0 28px;background:none;border:0}
 .closing-word{font-size:64px}
 .rules-list>div{grid-template-columns:88px minmax(0,1fr);gap:12px}
 footer{flex-wrap:wrap}
}

@media(min-width:761px){
body.landing .hero-art .hero-pack{position:absolute;inset:0;width:100%;height:100%;left:0;transform:none}
body.landing .hero-art .pack-main{left:50%;width:54%;height:82%;bottom:8%;transform:translateX(-50%)}
body.landing .hero-art .pack-left{left:0;width:40%;height:62%;bottom:10%;opacity:.95;transform:rotate(-7deg)}
body.landing .hero-art .pack-right{right:0;left:auto;width:40%;height:62%;bottom:10%;opacity:.95;transform:rotate(7deg)}
body.landing .hero-art .art-word{top:6%;bottom:auto;left:50%;transform:translateX(-50%);font-size:clamp(40px,4.5vw,68px);letter-spacing:-.06em}
body.landing .hero-art .art-grid{display:block;z-index:0;width:108%;height:46%;left:-4%;bottom:4%}
body.landing .hero-art .hero-pack{z-index:2}
body.landing .hero-art .pack-label{bottom:8px;max-width:calc(100% - 16px)}
}
@media(max-width:760px){
 body.landing .hero .hero-copy h1{text-align:center;color:#f0f4ff;overflow-wrap:anywhere}
 body.landing .hero .hero-copy h1 em{color:#bba2ff}
 body.landing .hero .hero-lead,body.landing .hero .hero-intro,body.landing .hero-sub{overflow-wrap:anywhere}
 body.landing .hero-sub{font-size:16px;margin-bottom:12px;text-align:center}
 body.landing .hero-intro{font-size:14px;line-height:1.75;margin-bottom:12px}
 body.landing .hero-lead{font-size:15px;margin-bottom:8px}
 .play-summon{flex-direction:column;align-items:center}
 .play-summon .play-egg{height:150px;max-width:78%;width:auto}
 .play-summon .play-roll{width:100%;justify-content:center;align-items:flex-end;gap:10px}
 .play-summon .play-roll img{height:92px;max-width:none;width:auto}
 .play-visual.play-clan{height:200px;min-height:200px}
 .play-visual.play-clan .clan-main{height:168px}
 .play-visual.play-clan .clan-left,.play-visual.play-clan .clan-right{height:124px}
 .play-visual.play-grow{min-height:228px;padding-bottom:0}
 .play-grow .grow-figures{gap:0;max-width:100%}
 .play-grow .grow-stage{gap:6px}
 .play-grow .grow-stage img{max-width:100%;max-height:118px;width:auto;height:auto}
 .play-grow .grow-stage:last-child img{max-height:128px}
 .play-grow .grow-label,.play-grow .grow-sep{font-size:11px;letter-spacing:.04em}
 .play-grow .grow-sep{padding:0 1px}
 .play-mates img{height:132px;max-width:36%;width:auto}
 .mate-heart{font-size:26px}
 .play-collect img{height:210px;max-width:78%;width:auto}
}
