body { overflow-x: hidden; }
.nav { position: fixed; top: 0; left: 0; right: 0; z-index: 20; display: flex; justify-content: space-between; align-items: center; padding: 18px 32px; background: linear-gradient(#07110fcc, #07110f00); backdrop-filter: blur(6px); }
.nav-brand { display: flex; align-items: center; gap: 12px; font: 800 18px/1 var(--display); letter-spacing: .02em; text-decoration: none; }
.mark { width: 38px; height: 38px; display: inline-block; }
.mark svg { width: 100%; height: 100%; display: block; }
.mark.sm { width: 22px; height: 22px; }
.nav nav { display: flex; align-items: center; gap: 26px; font-size: 12px; letter-spacing: .12em; text-transform: uppercase; }
.nav nav a:not(.btn) { text-decoration: none; opacity: .72; } .nav nav a:not(.btn):hover { opacity: 1; color: var(--mint); }
.nav .btn { padding: 11px 18px; }

.hero { position: relative; min-height: 100vh; display: flex; align-items: center; overflow: hidden; }
#heroGL { position: absolute; inset: 0; width: 100%; height: 100%; display: block; }
.hero-scrim { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(120% 90% at 18% 50%, rgba(7,17,15,.92) 0%, rgba(7,17,15,.55) 38%, rgba(7,17,15,0) 62%), linear-gradient(0deg, var(--ink) 0%, rgba(7,17,15,0) 22%); }
.hero-inner { position: relative; z-index: 2; padding: 120px 6vw 140px; }
.hero-word { font-size: clamp(64px, 9.6vw, 156px); margin: 26px 0 22px; display: flex; flex-direction: column; }
.hero-word .w1 { color: var(--paper); text-shadow: 0 0 60px rgba(125,255,193,.18); }
.hero-word .w2 { width: max-content; padding-right: .06em; display: flex; align-items: center; gap: .08em; background: linear-gradient(100deg, var(--mint) 0%, var(--lime) 45%, var(--gold) 100%); -webkit-background-clip: text; background-clip: text; color: transparent; filter: drop-shadow(0 0 28px rgba(125,255,193,.25)); }
.ret { width: .7em; height: .7em; flex: none; margin-right: .04em; filter: drop-shadow(0 0 22px rgba(255,201,74,.55)); animation: spin 14s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }
.lede { font-size: 17px; line-height: 1.6; max-width: 520px; color: rgba(244,241,230,.82); }
.lede b { color: var(--paper); } .lede em { color: var(--mint); font-style: normal; }
.cta { display: flex; gap: 14px; margin-top: 30px; flex-wrap: wrap; }
.btn.play { font-size: 16px; padding: 20px 34px; letter-spacing: .22em; background: linear-gradient(100deg, var(--mint), var(--lime)); box-shadow: 0 0 0 1px rgba(255,255,255,.4) inset, 0 0 40px rgba(125,255,193,.45), 0 18px 50px -12px rgba(125,255,193,.8); }
.btn.play svg { margin-right: 2px; }
.btn.play.big { font-size: 18px; padding: 24px 42px; }
.hero-stats { display: flex; gap: 40px; margin-top: 54px; }
.hero-stats div { display: flex; flex-direction: column; gap: 6px; }
.hero-stats b { font: 800 34px/1 var(--display); color: var(--paper); }
.hero-stats span { font-size: 11px; letter-spacing: .14em; text-transform: uppercase; opacity: .55; }
.ticker { position: absolute; bottom: 0; left: 0; right: 0; z-index: 3; border-top: 1px solid var(--line); background: rgba(7,17,15,.7); backdrop-filter: blur(8px); overflow: hidden; white-space: nowrap; }
.ticker-track { display: inline-flex; gap: 48px; padding: 14px 0; animation: tick 60s linear infinite; font-size: 12px; letter-spacing: .1em; text-transform: uppercase; }
.ticker-track span b { color: var(--mint); font-weight: 700; } .ticker-track span i { font-style: normal; opacity: .5; }
@keyframes tick { to { transform: translateX(-50%); } }

section { position: relative; }
.sec-head { display: flex; flex-direction: column; gap: 16px; margin-bottom: 56px; }
.kicker { font-size: 12px; letter-spacing: .22em; color: var(--mint); display: flex; align-items: center; gap: 10px; }
h2.wordmark { font-size: clamp(40px, 5.4vw, 82px); margin: 0; }
.dim { color: rgba(244,241,230,.32); }
.mint { color: var(--mint); }
.how, .cards, .vault, .final { padding: 140px 6vw; }
.steps { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, 1fr); gap: 18px; counter-reset: s; }
.steps li { position: relative; padding: 30px 26px 34px; border-radius: 22px; background: linear-gradient(160deg, rgba(125,255,193,.08), rgba(125,255,193,.01) 60%), var(--deep); box-shadow: 0 0 0 1px var(--line) inset; overflow: hidden; min-height: 280px; }
.steps li::after { content: ''; position: absolute; right: -40px; top: -40px; width: 140px; height: 140px; border-radius: 50%; background: radial-gradient(var(--mint), transparent 70%); opacity: .12; }
.steps li:nth-child(4)::after { background: radial-gradient(var(--gold), transparent 70%); opacity: .25; }
.steps .n { font-size: 12px; opacity: .45; letter-spacing: .2em; }
.steps .ico svg { width: 44px; height: 44px; display: block; }
.steps .ico { font-size: 40px; margin: 34px 0 20px; color: var(--mint); text-shadow: 0 0 24px rgba(125,255,193,.6); }
.steps li:nth-child(4) .ico { color: var(--gold); text-shadow: 0 0 24px rgba(255,201,74,.6); }
.steps h3 { font: 800 26px/1.05 var(--display); margin: 0 0 12px; }
.steps p { margin: 0; font-size: 14px; line-height: 1.6; opacity: .72; }
.cards { background: radial-gradient(70% 60% at 50% 60%, rgba(125,255,193,.08), transparent 70%); }
.fan { position: relative; height: 520px; display: flex; justify-content: center; align-items: center; perspective: 1400px; }
.fan canvas { position: absolute; width: 260px; height: auto; border-radius: 16px; box-shadow: 0 40px 80px -20px rgba(0,0,0,.8), 0 0 0 1px rgba(255,255,255,.08); transition: transform .5s cubic-bezier(.2,.8,.2,1), box-shadow .3s; cursor: pointer; }
.fan canvas:hover { z-index: 9; box-shadow: 0 50px 100px -20px rgba(0,0,0,.9), 0 0 60px var(--g); }
.tiers { display: flex; justify-content: center; gap: 12px; margin-top: 40px; flex-wrap: wrap; }
.tiers div { display: flex; gap: 14px; align-items: center; padding: 12px 18px; border-radius: 999px; box-shadow: 0 0 0 1px color-mix(in srgb, var(--c) 40%, transparent) inset; background: color-mix(in srgb, var(--c) 8%, transparent); font-size: 12px; letter-spacing: .14em; }
.tiers b { color: var(--c); } .tiers span { opacity: .6; }
.note { text-align: center; opacity: .6; font-size: 14px; margin-top: 26px; }
kbd { font: 700 12px var(--mono); padding: 3px 7px; border-radius: 6px; background: rgba(255,255,255,.08); box-shadow: 0 0 0 1px rgba(255,255,255,.2) inset; }
.vault-card { display: grid; grid-template-columns: 1.1fr 1fr; gap: 40px; padding: 54px; border-radius: 30px; background: linear-gradient(140deg, rgba(255,201,74,.10), rgba(125,255,193,.04) 50%, rgba(7,17,15,0)), var(--deep); box-shadow: 0 0 0 1px rgba(255,201,74,.22) inset, 0 40px 100px -40px rgba(255,201,74,.25); }
.vault-l p { font-size: 15px; line-height: 1.6; opacity: .78; max-width: 460px; margin: 22px 0 34px; }
.vnums { display: grid; grid-template-columns: repeat(3, 1fr); gap: 14px; }
.vnums div { padding: 18px; border-radius: 16px; background: rgba(0,0,0,.25); box-shadow: 0 0 0 1px rgba(255,255,255,.06) inset; }
.vnums span { display: block; font-size: 10px; letter-spacing: .16em; text-transform: uppercase; opacity: .55; margin-bottom: 10px; }
.vnums b { font: 800 21px/1 var(--display); color: var(--gold); white-space: nowrap; }
.feed-h { font-size: 11px; letter-spacing: .2em; opacity: .7; margin-bottom: 14px; display: flex; gap: 10px; align-items: center; }
.feed { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; max-height: 360px; overflow: hidden; -webkit-mask: linear-gradient(#000 70%, transparent); mask: linear-gradient(#000 70%, transparent); }
.feed li { display: grid; grid-template-columns: auto 1fr auto; gap: 14px; align-items: center; padding: 12px 14px; border-radius: 12px; background: rgba(0,0,0,.25); box-shadow: 0 0 0 1px rgba(255,255,255,.05) inset; font-size: 12px; }
.feed li .pk { width: 30px; height: 40px; border-radius: 5px; background: linear-gradient(160deg, var(--mint), #1a7a56); box-shadow: 0 0 14px rgba(125,255,193,.35); }
.feed li .meta b { display: block; font-size: 13px; margin-bottom: 3px; } .feed li .meta span { opacity: .55; }
.feed li .gems { display: flex; gap: 4px; } .feed li .gems i { width: 8px; height: 8px; border-radius: 2px; transform: rotate(45deg); }
.final { text-align: center; padding-bottom: 180px; background: radial-gradient(60% 60% at 50% 70%, rgba(125,255,193,.12), transparent 70%); }
.final h2 { font-size: clamp(52px, 7.4vw, 116px); }
.final p { max-width: 560px; margin: 28px auto 40px; opacity: .72; line-height: 1.6; }
.foot { display: flex; align-items: center; gap: 12px; justify-content: center; padding: 30px; border-top: 1px solid var(--line); font-size: 12px; opacity: .6; }
@media (max-width: 900px) {
  .nav nav a:not(.btn) { display: none; }
  .steps { grid-template-columns: 1fr 1fr; }
  .vault-card { grid-template-columns: 1fr; padding: 28px; }
  .hero-stats { gap: 22px; } .hero-stats b { font-size: 26px; }
  .fan canvas { width: 180px; }
}
@media (max-width: 700px) {
  .hero-inner { padding: 110px 24px 120px; max-width: 100vw; }
  .hero-word { font-size: 13.5vw; }
  .lede { font-size: 15px; max-width: 100%; }
  .hero-scrim { background: linear-gradient(90deg, rgba(7,17,15,.9), rgba(7,17,15,.4)), linear-gradient(0deg, var(--ink) 0%, rgba(7,17,15,0) 22%); }
  .hero-stats { gap: 18px; } .hero-stats span { font-size: 9px; }
  .how, .cards, .vault, .final { padding: 90px 22px; }
  .steps { grid-template-columns: 1fr; }
  .fan { height: 340px; } .fan canvas { width: 150px; }
  .vnums { grid-template-columns: 1fr; }
  .nav { padding: 14px 18px; }
}
.vnums { grid-template-columns: repeat(3, 1fr); }
.treasury { display: flex; align-items: center; gap: 14px; flex-wrap: wrap; margin: -10px 0 22px; padding: 14px 18px; border-radius: 14px; background: rgba(0,0,0,.28); box-shadow: 0 0 0 1px rgba(125,255,193,.25) inset; text-decoration: none; }
.treasury span { font-size: 10px; letter-spacing: .2em; opacity: .55; } .treasury b { font: 700 15px var(--mono); color: var(--mint); } .treasury i { margin-left: auto; font-style: normal; font-size: 11px; opacity: .7; }
.treasury:hover { box-shadow: 0 0 0 1px var(--mint) inset; }
.vupd { margin-top: 14px; font-size: 11px; opacity: .5; }
.feed li.empty { grid-template-columns: 1fr; opacity: .8; }
.feed li .pk.found.pk { background: linear-gradient(160deg, var(--gold), #a8740a); }
.feed li .pk { background: linear-gradient(160deg, var(--c), #0b2a22); }
.foundsec { padding: 140px 6vw 40px; }
.flist { display: grid; grid-template-columns: repeat(auto-fill, minmax(320px, 1fr)); gap: 14px; }
.fitem { display: flex; gap: 14px; align-items: center; padding: 14px; border-radius: 16px; background: var(--deep); box-shadow: 0 0 0 1px color-mix(in srgb, var(--c) 35%, transparent) inset; }
.fitem img, .fitem .ph { width: 46px; height: 64px; border-radius: 6px; object-fit: cover; background: linear-gradient(160deg, var(--c), #0b2a22); flex: none; }
.fitem div { display: flex; flex-direction: column; gap: 4px; font-size: 12px; } .fitem div b { font-size: 14px; } .fitem div span { opacity: .6; }
.fitem .st { margin-left: auto; font: 800 10px var(--mono); letter-spacing: .12em; text-transform: uppercase; color: var(--gold); font-style: normal; }
.fempty { grid-column: 1 / -1; padding: 50px; text-align: center; border-radius: 18px; background: rgba(0,0,0,.25); box-shadow: 0 0 0 1px rgba(255,255,255,.06) inset; display: flex; flex-direction: column; gap: 8px; }
.fempty b { font: 800 28px var(--display); } .fempty span { opacity: .6; font-size: 13px; }
@media (max-width: 700px) { .vnums { grid-template-columns: 1fr 1fr; } .foundsec { padding: 90px 22px 30px; } }
.nav .xlink { display: inline-flex; align-items: center; gap: 7px; padding: 8px 12px; border-radius: 999px; box-shadow: 0 0 0 1px rgba(255,255,255,.14) inset; }
.nav .xlink:hover { box-shadow: 0 0 0 1px var(--mint) inset; }
.foot { flex-wrap: wrap; }
.foot .xfollow { margin-left: 8px; display: inline-flex; align-items: center; gap: 8px; color: var(--mint); text-decoration: none; font-weight: 700; }
@media (max-width: 860px) { .nav .xlink span { display: none; } }

/* contract address chip */
.ca-row{display:flex;flex-wrap:wrap;align-items:center;gap:10px;margin:18px 0 6px}
.ca-chip{display:inline-flex;align-items:center;gap:10px;max-width:100%;padding:8px 10px 8px 8px;border-radius:999px;border:1px solid rgba(125,255,193,.35);background:rgba(7,17,15,.6);backdrop-filter:blur(8px);color:#f4f1e6;cursor:pointer;font:500 13px/1 'Geist Mono',ui-monospace,monospace;transition:border-color .2s,background .2s}
.ca-chip:hover{border-color:#7dffc1;background:rgba(11,31,28,.85)}
.ca-chip code{font:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}
.ca-lbl{background:#7dffc1;color:#07110f;font-weight:700;padding:5px 8px;border-radius:999px;letter-spacing:.08em;font-size:11px}
.ca-copy{color:#ffc94a;font-weight:600;letter-spacing:.1em;font-size:11px}
.ca-chip.ok{border-color:#ffc94a}.ca-chip.ok .ca-copy{color:#7dffc1}
.ca-buy{font:600 12px/1 'Geist Mono',ui-monospace,monospace;letter-spacing:.06em;color:#7dffc1;text-decoration:none;padding:9px 12px;border-radius:999px;border:1px solid rgba(125,255,193,.25)}
.ca-buy:hover{border-color:#7dffc1}
.ca-chip.sm{font-size:11px;padding:6px 8px 6px 6px}
@media (max-width:640px){.ca-chip{font-size:11px}.ca-chip code{max-width:52vw}}
