:root {
  --ink: #0E0E0C;
  --ink-1: #14150f;
  --ink-2: #1e2016;
  --ink-3: #2B2F20;
  --cream: #f4f1e6;
  --paper: #f7f5ec;
  --white: #fffef9;
  --lime: #c7f53f;
  --lime-light: #dfff7a;
  --muted: #6B6B62;
  --line: rgba(14, 14, 12, .16);
  --dark-line: rgba(255,255,255,.12);
  --shadow: 0 24px 70px rgba(10, 10, 8, .14);
  --radius: 22px;
  --radius-sm: 14px;
  --container: 1180px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body {
  margin: 0;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--font-body);
  line-height: 1.55;
  overflow-x: hidden;
}
body::before {
  content: "";
  position: fixed;
  inset: 0;
  opacity: .045;
  pointer-events: none;
  z-index: 99;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='.55'/%3E%3C/svg%3E");
}
img { max-width: 100%; display: block; }
a { color: inherit; text-decoration: none; }
button, input { font: inherit; }
button, a { -webkit-tap-highlight-color: transparent; }
::selection { background: var(--lime-light); color: var(--ink-1); }

.skip-link { position: absolute; top: -100px; left: 16px; background: var(--lime); padding: 12px 18px; z-index: 1000; border-radius: 8px; font-weight: 800; }
.skip-link:focus { top: 16px; }
.container { width: min(calc(100% - 40px), var(--container)); margin-inline: auto; }
.section { padding: 110px 0; }
.section-dark { color: var(--white); background: var(--ink-1); }
.section-cream { background: var(--cream); }
.section-light { background: var(--paper); }

.top-strip { height: 36px; background: var(--lime); border-bottom: 1px solid rgba(14, 14, 12,.5); overflow: hidden; display: flex; align-items: center; }
.ticker { display: flex; align-items: center; gap: 20px; white-space: nowrap; min-width: max-content; animation: ticker 26s linear infinite; font-size: 12px; letter-spacing: .18em; font-weight: 900; }
.ticker i { font-style: normal; font-size: 8px; }
@keyframes ticker { to { transform: translateX(-50%); } }

.section-ticker { position: relative; z-index: 4; height: 42px; display: flex; align-items: center; overflow: hidden; color: var(--ink-1); background: linear-gradient(90deg, #b9eb2f, #d6f86b 50%, #b9eb2f); border-top: 1px solid rgba(14, 14, 12,.32); border-bottom: 1px solid rgba(14, 14, 12,.32); box-shadow: 0 5px 18px rgba(11, 11, 9,.08); }
.section-ticker-track { display: flex; align-items: center; gap: 24px; min-width: max-content; white-space: nowrap; padding-left: 24px; animation: section-ticker 34s linear infinite; animation-delay: calc(var(--ticker-index, 0) * -2.75s); text-transform: uppercase; letter-spacing: .2em; font-size: 11px; font-weight: 950; }
.section-ticker-track i { font-style: normal; font-size: 7px; }
@keyframes section-ticker { to { transform: translateX(-33.333%); } }

.site-header { position: sticky; top: 0; z-index: 50; background: rgba(20, 21, 15,.88); color: white; border-bottom: 1px solid rgba(255,255,255,.1); backdrop-filter: blur(18px); }
.nav-wrap { height: 78px; display: flex; align-items: center; justify-content: space-between; gap: 24px; }
.brand { display: inline-flex; align-items: center; gap: 12px; min-width: max-content; }
.brand img { border-radius: 50%; box-shadow: 0 0 0 1px rgba(255,255,255,.18); }
.brand span { display: flex; flex-direction: column; line-height: 1.05; }
.brand strong { font-family: var(--font-display); font-size: 19px; letter-spacing: -.02em; }
.brand small { margin-top: 5px; text-transform: uppercase; font-size: 9px; letter-spacing: .18em; opacity: .62; }
.nav-menu { display: flex; align-items: center; gap: 23px; font-size: 13px; font-weight: 750; }
.nav-menu > a:not(.button) { opacity: .78; transition: .2s ease; }
.nav-menu > a:not(.button):hover { opacity: 1; color: var(--lime-light); }
.nav-menu .nav-social { font-size: 11px; font-weight: 900; letter-spacing: .08em; text-transform: uppercase; }
.nav-menu .nav-social.js-x-link,
.nav-menu .nav-social.js-github-link { display: inline-flex; align-items: center; gap: 6px; }
.nav-menu .nav-social .x-icon,
.nav-menu .nav-social .gh-icon { flex-shrink: 0; }
.nav-menu .nav-social-last { margin-right: 2px; padding-right: 24px; border-right: 1px solid rgba(255,255,255,.2); }
.menu-toggle { display: none; width: 44px; height: 44px; background: transparent; border: 1px solid rgba(255,255,255,.18); border-radius: 11px; align-items: center; justify-content: center; flex-direction: column; gap: 5px; }
.menu-toggle span { width: 20px; height: 2px; background: white; }
.mobile-nav-actions { display: flex; align-items: center; gap: 8px; }
.mobile-cta-button { display: none; min-height: 40px; padding: 0 14px; align-items: center; justify-content: center; border-radius: 999px; color: var(--ink-1); background: var(--lime); white-space: nowrap; font-size: 10px; font-weight: 900; }

.button { display: inline-flex; align-items: center; justify-content: center; min-height: 52px; padding: 0 23px; border: 1px solid transparent; border-radius: 999px; font-size: 13px; font-weight: 900; letter-spacing: .02em; transition: transform .2s ease, background .2s ease, border .2s ease, opacity .2s ease; cursor: pointer; }
.button:hover { transform: translateY(-2px); }
.button-small { min-height: 42px; padding: 0 18px; background: var(--lime); color: var(--ink-1); }
.button-lime { background: var(--lime); color: var(--ink-1); box-shadow: 0 10px 30px rgba(199, 245, 63,.18); }
.button-lime:hover { background: var(--lime-light); }
.button-ghost { color: white; border-color: rgba(255,255,255,.24); background: rgba(255,255,255,.05); }
.button-ghost:hover { background: rgba(255,255,255,.1); }
.button-dark { background: var(--ink-1); color: white; }
.button.is-disabled { pointer-events: none; opacity: .56; }
.text-link { font-weight: 850; border-bottom: 1px solid var(--ink); padding-bottom: 4px; }

.hero { position: relative; min-height: 790px; overflow: hidden; background: radial-gradient(circle at 75% 22%, rgba(199, 245, 63,.12), transparent 28%), radial-gradient(circle at 10% 80%, rgba(199, 245, 63,.12), transparent 30%), var(--ink-1); }
.hero::before { content: ""; position: absolute; inset: 0; pointer-events: none; background: radial-gradient(ellipse at 72% 42%, rgba(255,255,255,.045), transparent 42%); }
.hero-grid { position: relative; z-index: 1; min-height: 710px; display: grid; grid-template-columns: 1.05fr .95fr; align-items: center; gap: 60px; padding-top: 70px; padding-bottom: 60px; }
.eyebrow, .kicker { display: inline-flex; align-items: center; gap: 9px; text-transform: uppercase; letter-spacing: .17em; font-size: 11px; font-weight: 900; color: var(--ink-3); }
.hero .eyebrow { color: var(--lime); }
.status-dot { width: 8px; height: 8px; background: var(--lime); border-radius: 50%; box-shadow: 0 0 0 5px rgba(199, 245, 63,.12); }
h1, h2, h3 { margin: 0; font-family: var(--font-display); font-weight: 700; line-height: 1.02; letter-spacing: -.028em; }
h1 { max-width: 720px; margin-top: 22px; font-size: clamp(60px, 6.5vw, 94px); }
h1 em { color: var(--lime-light); font-style: italic; font-weight: 500; }
h2 { font-size: clamp(44px, 4.6vw, 68px); }
h3 { font-size: 27px; line-height: 1.08; }
.hero-lead { max-width: 670px; margin: 27px 0 30px; color: rgba(255,255,255,.73); font-size: 19px; }
.hero-actions { display: flex; gap: 12px; flex-wrap: wrap; }
.contract-panel { max-width: 650px; margin-top: 31px; padding: 16px 17px 16px 20px; border: 1px solid rgba(255,255,255,.15); border-radius: 15px; background: rgba(255,255,255,.055); display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.contract-panel div { min-width: 0; }
.label { display: block; color: rgba(255,255,255,.48); font-size: 10px; text-transform: uppercase; letter-spacing: .17em; font-weight: 800; margin-bottom: 4px; }
.contract-value { display: block; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--font-mono); font-size: 13px; color: rgba(255,255,255,.9); }
.copy-button { min-width: max-content; border: 0; background: var(--lime); color: var(--ink-1); border-radius: 999px; padding: 10px 15px; font-size: 11px; font-weight: 900; }
.copy-button:disabled { opacity: .45; cursor: not-allowed; }
.mini-stats { max-width: 650px; margin-top: 20px; display: grid; grid-template-columns: repeat(3, 1fr); gap: 1px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 15px; background: rgba(255,255,255,.12); }
.mini-stats > div { background: rgba(20, 21, 15,.92); padding: 15px 17px; }
.mini-stats span, .mini-stats strong { display: block; }
.mini-stats span { color: rgba(255,255,255,.43); font-size: 10px; text-transform: uppercase; letter-spacing: .15em; }
.mini-stats strong { margin-top: 5px; font-size: 13px; }
.hero-visual { display: flex; justify-content: center; }
.manager-frame { position: relative; width: min(100%, 520px); aspect-ratio: .92; padding: 14px; border-radius: 46% 46% 24px 24px; border: 1px solid rgba(223, 255, 122,.35); background: linear-gradient(145deg, rgba(255,255,255,.12), rgba(255,255,255,.035)); box-shadow: 0 35px 90px rgba(0,0,0,.32); }
.manager-frame::before, .manager-frame::after { content: ""; position: absolute; border-radius: inherit; border: 1px solid rgba(223, 255, 122,.13); inset: -13px; z-index: -1; }
.manager-frame::after { inset: -28px; opacity: .45; }
.manager-frame > img { width: 100%; height: 100%; object-fit: cover; object-position: center; border-radius: 45% 45% 16px 16px; }
.manager-seal { position: absolute; z-index: 2; top: -25px; left: 50%; transform: translateX(-50%); width: 82%; color: var(--lime-light); text-align: center; font-size: 10px; letter-spacing: .2em; font-weight: 900; }
.floating-card { position: absolute; z-index: 3; border: 1px solid rgba(255,255,255,.18); background: rgba(12, 12, 10,.88); box-shadow: 0 18px 50px rgba(0,0,0,.25); backdrop-filter: blur(14px); }
.manager-card { left: -50px; bottom: 35px; min-width: 245px; display: flex; gap: 12px; align-items: center; padding: 13px; border-radius: 18px; }
.manager-card img { border-radius: 50%; border: 2px solid var(--lime); }
.manager-card span, .manager-card strong, .manager-card small { display: block; }
.manager-card span, .vault-badge span { color: var(--lime); text-transform: uppercase; letter-spacing: .13em; font-size: 9px; font-weight: 900; }
.manager-card strong { font-family: var(--font-display); font-size: 18px; }
.manager-card small { color: rgba(255,255,255,.52); font-size: 11px; }
.vault-badge { right: -32px; top: 90px; padding: 14px 17px; border-radius: 15px; }
.vault-badge span, .vault-badge strong { display: block; }
.vault-badge strong { margin-top: 4px; font-size: 12px; }
.hero-bottom-line { height: 5px; background: repeating-linear-gradient(90deg, var(--lime) 0 70px, var(--lime) 70px 140px, transparent 140px 160px); }

.intro-band { background: var(--lime); border-bottom: 1px solid rgba(14, 14, 12,.28); }
.intro-band-grid { min-height: 78px; display: grid; grid-template-columns: repeat(3, 1fr); align-items: center; text-align: center; font-family: var(--font-display); font-size: 18px; font-weight: 700; }
.intro-band-grid span + span { border-left: 1px solid rgba(14, 14, 12,.22); }

/* Token intelligence */
.token-intelligence { position: relative; overflow: hidden; background: #f1eee2; }
.token-intelligence::before { content: ""; position: absolute; width: 540px; height: 540px; right: -210px; top: -250px; border-radius: 50%; background: radial-gradient(circle, rgba(199, 245, 63,.2), transparent 68%); pointer-events: none; }
.token-intelligence .container { position: relative; z-index: 1; }
.token-intelligence-head { display: grid; grid-template-columns: 1.15fr .85fr; gap: 75px; align-items: end; margin-bottom: 42px; }
.token-intelligence-head h2 { max-width: 760px; margin-top: 16px; }
.token-intelligence-head > p { max-width: 490px; margin: 0 0 6px; color: var(--muted); font-size: 16px; }
.market-terminal { display: grid; grid-template-columns: .78fr 1.22fr; min-height: 490px; overflow: hidden; border: 1px solid rgba(14, 14, 12,.14); border-radius: 28px; background: white; box-shadow: 0 28px 75px rgba(14, 14, 12,.13); }
.market-summary { display: flex; flex-direction: column; padding: 31px; border-right: 1px solid var(--line); background: linear-gradient(155deg, #fffef9, #f4f1e6); }
.asset-identity { display: grid; grid-template-columns: 62px 1fr auto; align-items: center; gap: 15px; padding-bottom: 25px; border-bottom: 1px solid var(--line); }
.asset-identity img { width: 62px; height: 62px; border-radius: 17px; border: 3px solid var(--lime); }
.asset-identity span, .detail-card-head > span, .chart-card-head span, .market-contract span { display: block; color: var(--muted); text-transform: uppercase; letter-spacing: .14em; font-size: 9px; font-weight: 900; }
.asset-identity h3 { margin-top: 5px; font-family: inherit; font-size: 18px; letter-spacing: -.02em; }
.asset-identity h3 em { margin-left: 4px; color: var(--lime); font-style: normal; }
.status-pill { display: inline-flex; align-items: center; gap: 7px; padding: 9px 11px; border: 1px solid rgba(14, 14, 12,.1); border-radius: 999px; background: white; font-size: 9px; text-transform: uppercase; letter-spacing: .1em; }
.status-pill i, .network-dot, .data-source i { width: 7px; height: 7px; border-radius: 50%; background: #7bd44f; box-shadow: 0 0 0 4px rgba(123, 212, 79,.13); }
.market-metrics { display: grid; grid-template-columns: repeat(2, 1fr); margin-top: 22px; overflow: hidden; border: 1px solid var(--line); border-radius: 17px; }
.market-metrics > div { min-height: 104px; padding: 18px; background: rgba(255,255,255,.7); }
.market-metrics > div:nth-child(odd) { border-right: 1px solid var(--line); }
.market-metrics > div:nth-child(-n+2) { border-bottom: 1px solid var(--line); }
.market-metrics span, .market-metrics strong, .market-metrics small { display: block; }
.market-metrics span { color: var(--muted); font-size: 9px; text-transform: uppercase; letter-spacing: .13em; font-weight: 900; }
.market-metrics strong { margin-top: 10px; font-size: 19px; }
.market-metrics small { margin-top: 2px; color: #97978c; font-size: 10px; }
.market-contract { display: flex; align-items: center; justify-content: space-between; gap: 16px; margin-top: auto; padding-top: 24px; }
.market-contract div { min-width: 0; }
.market-contract strong { display: block; max-width: 250px; margin-top: 5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--font-mono); font-size: 11px; }
.market-contract button { flex: 0 0 auto; border: 0; border-radius: 999px; padding: 10px 13px; background: var(--ink-1); color: white; font-size: 9px; font-weight: 900; }
.market-contract button:disabled { opacity: .42; }
.chart-card { display: flex; flex-direction: column; padding: 31px; color: white; background: radial-gradient(circle at 100% 0, rgba(199, 245, 63,.12), transparent 30%), #171911; }
.chart-card-head { display: flex; align-items: center; justify-content: space-between; gap: 25px; }
.chart-card-head span { color: rgba(255,255,255,.45); }
.chart-card-head h3 { margin-top: 5px; font-family: inherit; font-size: 21px; letter-spacing: -.02em; }
.data-source { display: inline-flex !important; align-items: center; gap: 8px; padding: 9px 12px; border: 1px solid rgba(255,255,255,.12); border-radius: 999px; color: rgba(255,255,255,.72) !important; background: rgba(255,255,255,.04); }
.coingecko-chart { position: relative; flex: 1; min-height: 325px; margin-top: 28px; overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 18px; background: rgba(6, 6, 5,.28); }
.chart-line { fill: none; stroke: #d0f75a; stroke-width: 3; vector-effect: non-scaling-stroke; }
.chart-area { fill: url(#chart-fill); }
.coingecko-chart.chart-live { background: white; }
.coingecko-chart.chart-live gecko-coin-price-chart-widget { display: block; width: 100%; min-height: 325px; }
.token-detail-layout { display: grid; grid-template-columns: 1fr 1fr; gap: 18px; margin-top: 18px; }
.token-detail-card, .tokenomics-card { padding: 31px; border: 1px solid var(--line); border-radius: 24px; background: rgba(255,255,255,.72); }
.detail-card-head { display: flex; align-items: end; justify-content: space-between; gap: 20px; padding-bottom: 22px; border-bottom: 1px solid var(--line); }
.detail-card-head h3 { font-size: 31px; }
.detail-list { display: grid; grid-template-columns: 1fr 1fr; column-gap: 30px; }
.detail-list > div { min-height: 65px; grid-template-columns: 1fr; gap: 4px; align-content: center; }
.detail-list dt { font-size: 8px; }
.detail-list dd { display: flex; align-items: center; gap: 8px; font-size: 12px; }
.detail-status { color: #566e10; padding: 4px 8px; border-radius: 999px; background: #eafcb8; text-transform: uppercase; letter-spacing: .08em; font-size: 8px; }
.allocation-donut { display: grid; place-items: center; width: 205px; aspect-ratio: 1; flex: 0 0 auto; border-radius: 50%; background: conic-gradient(#c7f53f 0 70%, #7bd44f 70% 85%, #46561d 85% 95%, #14150f 95% 100%); box-shadow: inset 0 0 0 1px rgba(14, 14, 12,.08); }
.allocation-donut::before { content: ""; grid-area: 1 / 1; width: 66%; aspect-ratio: 1; border-radius: 50%; background: #f8f6ed; box-shadow: 0 0 0 1px rgba(14, 14, 12,.08); }
.allocation-donut > div { z-index: 1; grid-area: 1 / 1; text-align: center; }
.allocation-donut strong, .allocation-donut span { display: block; }
.allocation-donut strong { font-family: var(--font-display); font-size: 35px; }
.allocation-donut span { color: var(--muted); text-transform: uppercase; letter-spacing: .12em; font-size: 8px; font-weight: 900; }
.tokenomics-overview { display: flex; align-items: center; gap: 38px; padding: 30px 0 25px; }
.allocation-legend { flex: 1; }
.allocation-legend > div { display: grid; grid-template-columns: 9px 1fr auto; align-items: center; gap: 10px; padding: 11px 0; border-bottom: 1px solid var(--line); font-size: 12px; }
.allocation-legend > div:last-child { border-bottom: 0; }
.allocation-legend i { width: 9px; height: 9px; border-radius: 3px; background: var(--allocation); }
.allocation-legend strong { font-family: var(--font-mono); }
.tokenomics-note { margin: 0; padding: 15px 17px; border-left: 3px solid var(--lime); background: rgba(199, 245, 63,.1); color: var(--muted); font-size: 11px; }
.tokenomics-note strong { color: var(--ink); }
.token-disclosure { display: grid; grid-template-columns: .7fr repeat(3,1fr); gap: 1px; margin-top: 18px; overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 20px; color: white; background: rgba(255,255,255,.12); }
.token-disclosure > span, .token-disclosure > div { min-height: 112px; padding: 21px; background: var(--ink-1); }
.token-disclosure > span { display: flex; align-items: center; color: var(--lime-light); text-transform: uppercase; letter-spacing: .15em; font-size: 9px; font-weight: 900; }
.token-disclosure strong { font-size: 12px; }
.token-disclosure p { margin: 7px 0 0; color: rgba(255,255,255,.5); font-size: 10px; }

.alley-showcase {
  position: relative;
  overflow: hidden;
  color: var(--white);
  background:
    radial-gradient(circle at 8% 12%, rgba(199, 245, 63,.16), transparent 28%),
    radial-gradient(circle at 92% 70%, rgba(199, 245, 63,.09), transparent 24%),
    #13140d;
}
.alley-showcase::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .5;
  background: radial-gradient(ellipse at 50% 18%, rgba(255,255,255,.045), transparent 52%);
}
.alley-showcase .container { position: relative; z-index: 1; }
.alley-heading { display: grid; grid-template-columns: 1.15fr .85fr; gap: 70px; align-items: end; margin-bottom: 45px; }
.alley-heading h2 { max-width: 760px; margin-top: 17px; }
.alley-heading > p { max-width: 460px; margin: 0 0 5px; color: rgba(255,255,255,.58); font-size: 16px; }
.vault-feature {
  position: relative;
  margin: 0;
  aspect-ratio: 1.9;
  overflow: hidden;
  border: 1px solid rgba(223, 255, 122,.3);
  border-radius: 30px;
  background: var(--ink-1);
  box-shadow: 0 35px 90px rgba(0,0,0,.32);
}
.vault-feature::after, .section-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to top, rgba(9, 9, 7,.9), transparent 48%);
}
.vault-feature > img, .section-photo > img { width: 100%; height: 100%; object-fit: cover; transition: transform .65s cubic-bezier(.2,.7,.2,1); }
.vault-feature:hover > img, .section-photo:hover > img { transform: scale(1.035); }
.vault-feature figcaption {
  position: absolute;
  z-index: 2;
  left: 30px;
  right: 30px;
  bottom: 28px;
  display: flex;
  justify-content: space-between;
  align-items: end;
  gap: 30px;
}
.vault-feature figcaption > span, .section-photo figcaption > span { color: var(--lime); text-transform: uppercase; letter-spacing: .16em; font-size: 9px; font-weight: 900; }
.vault-feature figcaption div { text-align: right; }
.vault-feature figcaption strong, .vault-feature figcaption small, .section-photo figcaption strong { display: block; }
.vault-feature figcaption strong { font-family: var(--font-display); font-size: clamp(28px, 4vw, 48px); line-height: 1; }
.vault-feature figcaption small { margin-top: 8px; color: var(--lime-light); text-transform: uppercase; letter-spacing: .14em; font-size: 9px; }
.section-photo {
  position: relative;
  margin: 0;
  overflow: hidden;
  border-radius: var(--radius);
  background: #13140d;
  box-shadow: 0 18px 55px rgba(14, 14, 12,.16);
}
.section-photo figcaption { position: absolute; z-index: 2; left: 22px; right: 22px; bottom: 20px; color: white; }
.section-photo figcaption strong { margin-top: 8px; font-family: var(--font-display); font-size: 25px; line-height: 1.05; }
.section-photo-manager { aspect-ratio: 1.25; margin-top: 36px; }
.section-photo-wide { height: 410px; margin: 0 0 18px; }
.section-photo-wide > img { object-position: center 44%; }
.section-photo-wide figcaption { display: flex; justify-content: space-between; align-items: end; gap: 30px; }
.section-photo-wide figcaption strong { font-size: clamp(26px, 3vw, 40px); text-align: right; }

.split-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 90px; align-items: start; }
.section-heading { position: sticky; top: 125px; }
.section-heading h2 { max-width: 550px; margin-top: 20px; }
.manager-story { max-width: 690px; }
.large-copy { margin: 0 0 22px; font-family: var(--font-display); font-size: 30px; line-height: 1.25; letter-spacing: -.025em; }
.manager-story > p:not(.large-copy) { color: var(--muted); font-size: 17px; }
.id-card { margin-top: 38px; border: 1px solid rgba(14, 14, 12,.22); background: rgba(255,255,255,.35); border-radius: var(--radius); overflow: hidden; box-shadow: var(--shadow); }
.id-card-top { padding: 13px 17px; background: var(--ink-1); color: white; display: flex; justify-content: space-between; font-size: 10px; letter-spacing: .16em; font-weight: 900; }
.id-card-body { padding: 25px; display: grid; grid-template-columns: 110px 1fr; gap: 25px; align-items: center; }
.id-card-body img { border-radius: 50%; border: 5px solid var(--lime); }
dl { margin: 0; }
dl > div { display: grid; grid-template-columns: 110px 1fr; gap: 15px; padding: 7px 0; border-bottom: 1px solid var(--line); }
dl > div:last-child { border-bottom: 0; }
dt { color: var(--muted); font-size: 11px; text-transform: uppercase; letter-spacing: .12em; font-weight: 800; }
dd { margin: 0; font-weight: 800; }

.center-heading { max-width: 800px; margin: 0 auto 55px; text-align: center; }
.center-heading h2 { margin-top: 17px; }
.center-heading p { max-width: 650px; margin: 22px auto 0; color: var(--muted); font-size: 17px; }
.feature-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 16px; }
.feature-card { position: relative; min-height: 320px; padding: 28px; background: white; border: 1px solid var(--line); border-radius: var(--radius); transition: transform .25s ease, box-shadow .25s ease; }
.feature-card:hover { transform: translateY(-6px); box-shadow: var(--shadow); }
.feature-number { position: absolute; right: 20px; top: 18px; color: rgba(14, 14, 12,.22); font-size: 12px; font-weight: 900; }
.feature-icon { width: 54px; height: 54px; border-radius: 50%; display: grid; place-items: center; background: var(--ink-1); color: var(--lime-light); font-size: 25px; }
.feature-card h3 { margin-top: 38px; font-size: 29px; }
.feature-card p { color: var(--muted); font-size: 14px; }
.tag { display: inline-flex; align-items: center; min-height: 25px; padding: 0 10px; border-radius: 999px; text-transform: uppercase; letter-spacing: .12em; font-size: 8px; font-weight: 900; font-style: normal; }
.tag-roadmap { background: #eefcc6; color: #4E650B; }

.marketplace { background: radial-gradient(circle at 90% 20%, rgba(199, 245, 63,.14), transparent 26%), var(--ink-1); }
.kicker-lime { color: var(--lime-light); }
.marketplace-head { display: flex; justify-content: space-between; align-items: end; gap: 40px; margin-bottom: 50px; }
.marketplace-head h2 { margin-top: 14px; }
.market-app { position: relative; overflow: hidden; min-height: 470px; border: 1px solid rgba(255,255,255,.16); border-radius: 25px; background: #101109; box-shadow: 0 35px 90px rgba(0,0,0,.32); }
.app-topbar { min-height: 76px; padding: 0 23px; display: grid; grid-template-columns: 1fr auto 220px; align-items: center; gap: 22px; border-bottom: 1px solid var(--dark-line); }
.app-brand { display: flex; align-items: center; gap: 10px; }
.app-brand img { border-radius: 50%; }
.app-brand span { padding: 4px 8px; border-radius: 999px; color: var(--lime-light); background: rgba(199, 245, 63,.12); font-size: 8px; letter-spacing: .12em; text-transform: uppercase; font-weight: 900; }
.app-actions { display: flex; gap: 6px; }
.app-actions button { color: rgba(255,255,255,.6); background: transparent; border: 1px solid rgba(255,255,255,.1); border-radius: 999px; padding: 8px 11px; font-size: 10px; }
.app-actions button:first-child { color: var(--ink-1); background: var(--lime); border-color: var(--lime); }
.search-mock { padding: 10px 13px; color: rgba(255,255,255,.35); border: 1px solid rgba(255,255,255,.1); border-radius: 12px; font-size: 11px; }
.market-header { min-height: 42px; text-transform: uppercase; font-size: 8px; letter-spacing: .15em; color: rgba(255,255,255,.33); }
.live-pill { display: inline-flex; background: rgba(199, 245, 63,.1); color: var(--lime) !important; border: 1px solid rgba(199, 245, 63,.2); border-radius: 999px; padding: 5px 9px; text-transform: uppercase; letter-spacing: .1em; font-size: 8px; font-weight: 900; }
.locked { opacity: .38; filter: blur(.35px); }
.market-lock { position: absolute; inset: 77px 0 0; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 30px; text-align: center; background: linear-gradient(to bottom, rgba(15, 15, 12,.05), rgba(15, 15, 12,.95) 45%); backdrop-filter: blur(2px); }
.vault-icon { width: 62px; height: 62px; border-radius: 50%; display: grid; place-items: center; background: var(--lime); color: var(--ink-1); box-shadow: 0 0 0 10px rgba(199, 245, 63,.09); }
.market-lock strong { margin-top: 20px; font-family: var(--font-display); font-size: 28px; }
.market-lock span { margin: 7px 0 20px; color: rgba(255,255,255,.55); font-size: 13px; }

.token-grid { display: grid; grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); gap: 48px; align-items: center; }
.token-visual, .token-copy { min-width: 0; }
.token-art-card {
  position: relative;
  width: min(100%, 420px);
  margin: 0 auto;
  padding: 12px;
  border: 1px solid rgba(14, 14, 12,.22);
  border-radius: 20px;
  background: #fdfcf4;
  box-shadow: 0 24px 65px rgba(14, 14, 12,.17);
  transition: transform .35s ease, box-shadow .35s ease;
}
.token-art-card::before {
  content: "";
  position: absolute;
  z-index: -1;
  inset: 8px;
  transform: translate(9px, 9px);
  border-radius: inherit;
  border: 1px solid rgba(199, 245, 63,.45);
  background: rgba(199, 245, 63,.18);
}
.token-art-card:hover { transform: translateY(-4px); box-shadow: 0 30px 75px rgba(14, 14, 12,.21); }
.token-art-top { min-height: 36px; padding: 0 5px; display: flex; align-items: center; justify-content: space-between; color: var(--ink-1); font-size: 8px; letter-spacing: .16em; font-weight: 900; }
.token-art-top strong { color: #6e8e19; font-size: 9px; }
.token-art-image { position: relative; aspect-ratio: 1.42; overflow: hidden; border-radius: 13px; background: var(--ink-1); }
.token-art-image::after { content: ""; position: absolute; inset: 0; pointer-events: none; background: linear-gradient(to top, rgba(10, 10, 8,.58), transparent 48%); }
.token-art-image img { width: 100%; height: 100%; object-fit: cover; object-position: center; transition: transform .6s ease; }
.token-art-card:hover .token-art-image img { transform: scale(1.035); }
.token-stamp { position: absolute; z-index: 2; left: 16px; bottom: 15px; padding: 8px 12px; border: 1px solid rgba(255,255,255,.32); border-radius: 999px; color: white; background: rgba(15, 16, 11,.78); backdrop-filter: blur(9px); text-transform: uppercase; letter-spacing: .15em; font-size: 8px; font-weight: 900; }
.token-art-card figcaption { padding: 14px 6px 4px; display: flex; align-items: end; justify-content: space-between; gap: 20px; }
.token-art-card figcaption span, .token-art-card figcaption strong { display: block; }
.token-art-card figcaption span { color: var(--muted); text-transform: uppercase; letter-spacing: .14em; font-size: 8px; font-weight: 900; }
.token-art-card figcaption strong { margin-top: 5px; font-family: var(--font-display); font-size: 21px; line-height: 1; }
.token-art-card figcaption b { color: var(--lime); font-family: var(--font-display); font-size: 30px; line-height: .9; }
.token-copy h2 { max-width: 650px; margin-top: 17px; font-size: clamp(42px, 4.1vw, 58px); overflow-wrap: anywhere; }
.token-copy .large-copy { margin-top: 29px; }
.token-copy > p:not(.large-copy) { color: var(--muted); font-size: 16px; }
.token-facts { margin-top: 31px; display: grid; grid-template-columns: repeat(2,1fr); border: 1px solid var(--line); border-radius: 16px; overflow: hidden; }
.token-facts div { padding: 17px; background: rgba(255,255,255,.45); border-bottom: 1px solid var(--line); }
.token-facts div:nth-child(odd) { border-right: 1px solid var(--line); }
.token-facts div:nth-last-child(-n+2) { border-bottom: 0; }
.token-facts span, .token-facts strong { display: block; }
.token-facts span { text-transform: uppercase; letter-spacing: .13em; font-size: 9px; color: var(--muted); }
.token-facts strong { margin-top: 5px; }
.token-actions { margin-top: 27px; display: flex; align-items: center; gap: 25px; }

.section-ledger { color: white; background: #11120b; }
.ledger-head { display: grid; grid-template-columns: 1fr 1fr; gap: 60px; align-items: end; margin-bottom: 45px; }
.ledger-head .kicker { color: var(--lime-light); }
.ledger-head h2 { margin-top: 15px; }
.ledger-head p { color: rgba(255,255,255,.55); max-width: 520px; justify-self: end; }
.ledger-grid { display: grid; grid-template-columns: repeat(4,1fr); gap: 14px; }
.ledger-card { min-height: 260px; padding: 25px; border: 1px solid rgba(255,255,255,.12); border-radius: var(--radius); background: rgba(255,255,255,.04); }
.ledger-card > span { text-transform: uppercase; letter-spacing: .13em; font-size: 9px; color: rgba(255,255,255,.45); font-weight: 900; }
.ledger-card > strong { display: block; margin-top: 20px; font-family: var(--font-display); font-size: 68px; color: var(--lime-light); line-height: 1; }
.ledger-card p { color: rgba(255,255,255,.53); font-size: 13px; }
.allocation-bar { height: 4px; margin: 21px 0; background: rgba(255,255,255,.1); border-radius: 999px; overflow: hidden; }
.allocation-bar i { display: block; width: var(--value); height: 100%; background: var(--lime); }
.ledger-note { margin-top: 20px; padding: 18px 20px; border-left: 3px solid var(--lime); background: rgba(199, 245, 63,.08); color: rgba(255,255,255,.66); font-size: 13px; }
.ledger-note strong { color: var(--lime-light); }

.section-heading-wide { display: grid; grid-template-columns: 1.2fr .8fr; gap: 60px; align-items: end; margin-bottom: 50px; }
.section-heading-wide h2 { margin-top: 16px; }
.section-heading-wide > p { color: var(--muted); justify-self: end; max-width: 430px; }
.department-grid { display: grid; grid-template-columns: repeat(3,1fr); gap: 16px; }
.department-card { min-height: 300px; padding: 27px; border: 1px solid var(--line); border-radius: var(--radius); background: white; display: flex; flex-direction: column; transition: .25s ease; }
.department-card:hover { transform: translateY(-5px); box-shadow: var(--shadow); }
.department-top { display: flex; justify-content: space-between; align-items: center; color: var(--muted); font-size: 11px; font-weight: 900; }
.department-card h3 { margin-top: 42px; }
.department-card p { color: var(--muted); font-size: 14px; }
.department-card a { margin-top: auto; padding-top: 25px; font-weight: 850; font-size: 12px; }

.roadmap { overflow: hidden; }
.roadmap .center-heading p { color: rgba(255,255,255,.55); }
.roadmap-line { position: relative; display: grid; grid-template-columns: repeat(5,1fr); gap: 0; margin-top: 70px; }
.roadmap-line::before { content: ""; position: absolute; left: 0; right: 0; top: 10px; height: 1px; background: linear-gradient(90deg, var(--lime), rgba(255,255,255,.16)); }
.roadmap-item { position: relative; min-height: 360px; padding: 42px 28px 25px 0; }
.phase-dot { position: absolute; top: 3px; left: 0; width: 15px; height: 15px; border-radius: 50%; border: 3px solid var(--ink-1); background: rgba(255,255,255,.3); box-shadow: 0 0 0 1px rgba(255,255,255,.25); }
.roadmap-item.active .phase-dot { background: var(--lime); box-shadow: 0 0 0 6px rgba(199, 245, 63,.12); }
.phase-label { color: var(--lime-light); text-transform: uppercase; letter-spacing: .14em; font-size: 9px; font-weight: 900; }
.roadmap-item h3 { margin-top: 22px; font-size: 28px; }
.roadmap-item ul { margin: 23px 0 0; padding: 0; list-style: none; color: rgba(255,255,255,.53); font-size: 13px; }
.roadmap-item li { position: relative; padding: 7px 0 7px 15px; }
.roadmap-item li::before { content: "·"; position: absolute; left: 0; color: var(--lime); }

.steps-grid { list-style: none; padding: 0; display: grid; grid-template-columns: repeat(4,1fr); gap: 16px; counter-reset: step; }
.step-card { min-height: 250px; padding: 27px; border: 1px solid var(--line); border-radius: var(--radius); background: rgba(255,255,255,.42); }
.step-card > span { display: inline-grid; place-items: center; width: 42px; height: 42px; border-radius: 50%; background: var(--ink-1); color: var(--lime-light); font-weight: 900; font-size: 11px; }
.step-card h3 { margin-top: 30px; }
.step-card p { color: var(--muted); font-size: 14px; }
.official-address { margin-top: 25px; min-height: 76px; padding: 13px 15px 13px 22px; display: grid; grid-template-columns: 210px 1fr auto; align-items: center; gap: 20px; border: 1px solid var(--line); border-radius: 16px; background: white; }
.official-address span { text-transform: uppercase; letter-spacing: .14em; font-size: 9px; color: var(--muted); font-weight: 900; }
.official-address strong { font-family: var(--font-mono); font-size: 13px; overflow: hidden; text-overflow: ellipsis; }
.official-address button { border: 0; background: var(--ink-1); color: white; border-radius: 999px; padding: 11px 15px; font-weight: 850; font-size: 10px; }
.official-address button:disabled { opacity: .45; }

.faq-grid { display: grid; grid-template-columns: .8fr 1.2fr; gap: 85px; align-items: start; }
.faq-title { position: sticky; top: 125px; }
.faq-title h2 { margin-top: 17px; }
.faq-title p { color: var(--muted); }
.accordion details { border-bottom: 1px solid var(--line); }
.accordion summary { position: relative; padding: 25px 45px 25px 0; list-style: none; cursor: pointer; font-family: var(--font-display); font-size: 23px; font-weight: 700; }
.accordion summary::-webkit-details-marker { display: none; }
.accordion summary::after { content: "+"; position: absolute; right: 5px; top: 23px; width: 28px; height: 28px; display: grid; place-items: center; border: 1px solid var(--line); border-radius: 50%; font-family: sans-serif; font-size: 16px; }
.accordion details[open] summary::after { content: "−"; }
.accordion details p { margin: -5px 0 25px; max-width: 670px; color: var(--muted); font-size: 15px; }

.closing-cta { padding: 70px 0; }
.closing-grid { display: grid; grid-template-columns: 170px 1fr auto; align-items: center; gap: 40px; }
.closing-grid > img { width: 100%; height: auto; aspect-ratio: 1; object-fit: cover; object-position: center; border-radius: 50%; border: 8px solid var(--lime); }
.closing-grid h2 { margin-top: 12px; font-size: clamp(40px, 4vw, 60px); }
.closing-grid p { color: rgba(255,255,255,.55); }
.closing-actions { display: flex; flex-direction: column; gap: 10px; }

footer { padding: 70px 0 28px; background: #070706; color: white; }
.footer-grid { display: grid; grid-template-columns: 1.6fr repeat(3,1fr); gap: 50px; }
.footer-brand p { max-width: 340px; color: rgba(255,255,255,.45); font-size: 13px; }
.footer-grid > div:not(.footer-brand) { display: flex; flex-direction: column; gap: 11px; }
.footer-grid > div > strong { margin-bottom: 7px; color: var(--lime-light); font-size: 11px; text-transform: uppercase; letter-spacing: .15em; }
.footer-grid a, .footer-grid span { color: rgba(255,255,255,.5); font-size: 12px; }
.footer-grid a:hover { color: white; }
.legal { margin-top: 55px; padding-top: 22px; border-top: 1px solid rgba(255,255,255,.1); display: flex; justify-content: space-between; gap: 30px; color: rgba(255,255,255,.3); font-size: 10px; }
.legal p { max-width: 900px; margin: 0; }
.legal span { white-space: nowrap; }
.toast { position: fixed; left: 50%; bottom: 25px; z-index: 100; transform: translate(-50%, 20px); padding: 12px 18px; border-radius: 999px; background: var(--lime); color: var(--ink-1); font-size: 12px; font-weight: 900; opacity: 0; pointer-events: none; transition: .25s ease; box-shadow: var(--shadow); }
.toast.show { opacity: 1; transform: translate(-50%, 0); }

.reveal { opacity: 1; transform: none; }
.reveal.reveal-ready { opacity: 0; transform: translateY(20px); transition: opacity .7s ease, transform .7s ease; }
.reveal.reveal-ready.visible { opacity: 1; transform: none; }
.delay-1 { transition-delay: .08s; }
.delay-2 { transition-delay: .16s; }
.delay-3 { transition-delay: .24s; }

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; transition-duration: .01ms !important; }
  .reveal, .reveal.reveal-ready { opacity: 1; transform: none; }
}

@media (max-width: 1050px) {
  .menu-toggle { display: flex; }
  .nav-menu { position: absolute; left: 20px; right: 20px; top: 72px; display: none; gap: 8px; padding: 18px; flex-direction: column; align-items: stretch; background: #12130c; border: 1px solid rgba(255,255,255,.14); border-radius: 16px; box-shadow: 0 22px 60px rgba(0,0,0,.28); }
  .nav-menu.open { display: flex; }
  .nav-menu > a:not(.button) { display: block; padding: 9px 5px; }
  .nav-menu .nav-social-last { margin-right: 0; padding-right: 5px; padding-bottom: 16px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .hero-grid { grid-template-columns: 1fr 460px; gap: 30px; }
  h1 { font-size: 72px; }
  .feature-grid, .ledger-grid { grid-template-columns: repeat(2,1fr); }
  .roadmap-line { grid-template-columns: repeat(3,1fr); row-gap: 25px; }
  .roadmap-line::before { display: none; }
  .roadmap-item { min-height: 320px; border-top: 1px solid rgba(255,255,255,.15); }
  .phase-dot { top: -8px; }
  .department-grid { grid-template-columns: repeat(2,1fr); }
  .token-grid { grid-template-columns: 1fr; gap: 55px; }
  .token-art-card { width: min(100%, 420px); }
  .token-copy { width: min(100%, 760px); margin-inline: auto; }
  .token-copy h2 { max-width: 720px; }
  .market-terminal { grid-template-columns: 1fr; }
  .market-summary { border-right: 0; border-bottom: 1px solid var(--line); }
  .market-contract { margin-top: 25px; }
  .token-detail-layout { grid-template-columns: 1fr; }
}

@media (max-width: 820px) {
  .section { padding: 82px 0; }
  .menu-toggle { display: flex; }
  .mobile-cta-button { display: inline-flex; }
  .nav-menu { position: absolute; left: 20px; right: 20px; top: 72px; display: none; padding: 18px; flex-direction: column; align-items: stretch; background: #12130c; border: 1px solid rgba(255,255,255,.14); border-radius: 16px; box-shadow: 0 22px 60px rgba(0,0,0,.28); }
  .nav-menu.open { display: flex; }
  .nav-menu > a:not(.button) { display: block; padding: 8px 4px; }
  .nav-menu .nav-social-last { margin-right: 0; padding-right: 4px; padding-bottom: 15px; border-right: 0; border-bottom: 1px solid rgba(255,255,255,.14); }
  .hero-grid { grid-template-columns: 1fr; padding-top: 55px; }
  .hero-visual { order: -1; margin-top: 5px; margin-bottom: 34px; }
  .hero-copy { text-align: center; }
  .hero-lead, .contract-panel, .mini-stats { margin-left: auto; margin-right: auto; }
  .hero-actions { justify-content: center; }
  .manager-frame { width: min(86vw, 500px); }
  .manager-card { left: -12px; }
  .vault-badge { right: -12px; }
  .intro-band-grid { min-height: 105px; grid-template-columns: 1fr; padding: 14px 0; gap: 6px; }
  .intro-band-grid span + span { border-left: 0; }
  .token-intelligence-head { grid-template-columns: 1fr; gap: 20px; }
  .token-disclosure { grid-template-columns: 1fr 1fr; }
  .split-grid, .token-grid, .faq-grid { grid-template-columns: 1fr; gap: 45px; }
  .alley-heading { grid-template-columns: 1fr; gap: 20px; }
  .vault-feature { aspect-ratio: 1.45; }
  .section-photo-manager { max-width: 620px; }
  .section-photo-wide { height: 360px; }
  .section-heading, .faq-title { position: static; }
  .marketplace-head { flex-direction: column; align-items: flex-start; }
  .app-topbar { grid-template-columns: 1fr auto; }
  .app-actions { display: none; }
  .ledger-head, .section-heading-wide { grid-template-columns: 1fr; gap: 20px; }
  .ledger-head p, .section-heading-wide > p { justify-self: start; }
  .steps-grid { grid-template-columns: repeat(2,1fr); }
  .closing-grid { grid-template-columns: 110px 1fr; }
  .closing-actions { grid-column: 1 / -1; flex-direction: row; }
  .footer-grid { grid-template-columns: repeat(2,1fr); }
  .market-terminal, .token-detail-card, .tokenomics-card { border-radius: 19px; }
  .token-intelligence-head > p, .alley-heading > p { font-size: 14px; }
  .roadmap-item { min-height: auto; padding-bottom: 38px; }
}

@media (max-width: 560px) {
  .container { width: min(calc(100% - 28px), var(--container)); }
  .nav-wrap { height: 68px; }
  .nav-wrap { gap: 9px; }
  .brand { gap: 8px; }
  .brand img { width: 40px; height: 40px; }
  .mobile-nav-actions { gap: 6px; }
  .mobile-cta-button { min-height: 38px; padding-inline: 11px; font-size: 8px; }
  .menu-toggle { width: 40px; height: 40px; }
  .section-ticker { height: 34px; }
  .section-ticker-track { gap: 17px; padding-left: 17px; font-size: 9px; letter-spacing: .16em; animation-duration: 28s; }
  .brand strong { font-size: 17px; }
  .hero { min-height: auto; }
  .section { padding: 68px 0; }
  .hero-grid { padding-top: 38px; padding-bottom: 45px; }
  h1 { margin-top: 17px; font-size: clamp(46px,14vw,54px); line-height: .94; }
  h2 { font-size: clamp(38px,11vw,43px); }
  .hero-lead { font-size: 16px; }
  .hero-actions .button { width: 100%; }
  .contract-panel { align-items: stretch; flex-direction: column; text-align: left; }
  .copy-button { align-self: flex-start; }
  .mini-stats { grid-template-columns: 1fr; }
  .mini-stats > div { text-align: left; }
  .hero-visual { margin-top: 5px; margin-bottom: 28px; }
  .manager-frame { width: 100%; max-width: 430px; border-radius: 40% 40% 20px 20px; }
  .manager-frame > img { border-radius: 39% 39% 13px 13px; }
  .manager-seal { top: -20px; width: 94%; font-size: 8px; }
  .token-intelligence { padding-top: 70px; }
  .token-intelligence-head h2 { font-size: 39px; }
  .market-summary, .chart-card, .token-detail-card, .tokenomics-card { padding: 21px; }
  .asset-identity { grid-template-columns: 52px 1fr; }
  .asset-identity img { width: 52px; height: 52px; }
  .status-pill { grid-column: 1 / -1; justify-self: start; }
  .market-metrics { grid-template-columns: 1fr; }
  .market-metrics > div:nth-child(odd) { border-right: 0; }
  .market-metrics > div { border-bottom: 1px solid var(--line); }
  .market-metrics > div:last-child { border-bottom: 0; }
  .market-contract { align-items: flex-start; flex-direction: column; }
  .chart-card-head { align-items: flex-start; flex-direction: column; gap: 13px; }
  .coingecko-chart { min-height: 275px; }
  .detail-card-head { align-items: flex-start; flex-direction: column; }
  .detail-list { grid-template-columns: 1fr; }
  .tokenomics-overview { align-items: stretch; flex-direction: column; }
  .allocation-donut { width: 190px; align-self: center; }
  .token-disclosure { grid-template-columns: 1fr; }
  .manager-card { left: 10px; right: 10px; bottom: 12px; min-width: 0; }
  .manager-card img { width: 48px; height: 48px; }
  .vault-badge { display: none; }
  .feature-grid, .ledger-grid, .department-grid, .steps-grid, .roadmap-line { grid-template-columns: 1fr; }
  .vault-feature { aspect-ratio: .94; }
  .vault-feature figcaption { left: 18px; right: 18px; bottom: 18px; display: block; }
  .vault-feature figcaption > span { display: block; margin-bottom: 9px; }
  .vault-feature figcaption div { text-align: left; }
  .vault-feature figcaption strong { font-size: 31px; }
  .section-photo-manager, .section-photo-wide { height: 285px; aspect-ratio: auto; }
  .section-photo-wide figcaption { display: block; }
  .section-photo-wide figcaption strong { margin-top: 8px; text-align: left; font-size: 28px; }
  .id-card-body { grid-template-columns: 1fr; }
  .id-card-body img { width: 90px; margin-inline: auto; }
  dl > div { grid-template-columns: 90px 1fr; }
  .app-topbar { grid-template-columns: 1fr; padding: 17px; }
  .search-mock { display: none; }
  .market-lock { inset: 67px 0 0; }
  .token-facts { grid-template-columns: 1fr; }
  .token-facts div:nth-child(odd) { border-right: 0; }
  .token-facts div:nth-last-child(-n+2) { border-bottom: 1px solid var(--line); }
  .token-facts div:last-child { border-bottom: 0; }
  .token-actions { flex-direction: column; align-items: flex-start; }
  .token-art-card::before { transform: translate(6px, 6px); }
  .official-address { grid-template-columns: 1fr; gap: 8px; padding: 18px; }
  .official-address button { justify-self: start; }
  .feature-card, .department-card, .step-card { min-height: auto; }
  .feature-card { padding: 24px; }
  .department-card { padding: 24px; }
  .roadmap-item h3 { font-size: 26px; }
  .closing-cta { padding: 58px 0; }
  .closing-grid { grid-template-columns: 1fr; text-align: center; }
  .closing-grid > img { width: 120px; height: 120px; margin: auto; }
  .closing-actions { flex-direction: column; }
  .footer-grid { grid-template-columns: 1fr; }
  .legal { flex-direction: column; }
}

@media (max-width: 390px) {
  .brand strong { font-size: 15px; }
  .brand small { font-size: 7px; letter-spacing: .13em; }
  .mobile-cta-button { padding-inline: 9px; }
}

/* The chart card holds one of three things: a CoinGecko widget, a GeckoTerminal
   embed, or — when $NIP has no contract — a plain statement of that fact plus
   the launchpad numbers that are real. */
.coingecko-chart iframe { display: block; width: 100%; height: 100%; min-height: 325px; border: 0; }
.coingecko-chart.chart-live iframe { background: #0a0a09; }
.chart-note { height: 100%; display: flex; flex-direction: column; justify-content: center; gap: 12px; padding: 26px; text-align: center; }
.chart-note strong { font-family: var(--font-display); font-size: 21px; letter-spacing: -.02em; }
.chart-note > span { max-width: 46ch; margin-inline: auto; color: rgba(255,255,255,.6); font-size: 12.5px; line-height: 1.6; }
.chart-note-stats { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 4px; }
.chart-note-stats > div { padding: 12px 10px; border-radius: 12px; background: rgba(255,255,255,.05); box-shadow: inset 0 0 0 1px rgba(255,255,255,.08); }
.chart-note-stats span { display: block; text-transform: uppercase; letter-spacing: .12em; font-size: 8.5px; font-weight: 900; color: rgba(255,255,255,.45); }
.chart-note-stats strong { display: block; margin-top: 5px; font-family: inherit; font-size: 15px; }
.chart-note .button { align-self: center; margin-top: 6px; }
@media (max-width: 560px) { .chart-note-stats { grid-template-columns: 1fr; } }

/* Shipped phases read as done rather than pending. */
.tag-live { background: #e2fbc9; color: #1d5c10; }
.roadmap-item.done .phase-dot { background: var(--lime); box-shadow: 0 0 0 6px rgba(199, 245, 63,.14); }
.roadmap-item.done .phase-label { color: var(--lime); }

/* =========================================================
   DARK CANVAS

   Bank of Meme runs a light marketing page in front of a dark launchpad.
   CATNIP is dark the whole way through, so the landing page and the app read
   as one product instead of two.

   Everything below overrides the light surfaces declared earlier in this file.
   It is kept as one block on purpose: the original rules are untouched, so the
   light version is one deletion away if it is ever wanted back.
   ========================================================= */

:root {
  --line: rgba(244, 241, 230, .12);
  --muted: #8A8A80;
  --shadow: 0 26px 70px rgba(0, 0, 0, .55);
}

body { color: var(--cream); background: var(--ink); }

/* --- section canvases ---------------------------------------------------- */
.section-cream { background: var(--ink-1); }
.section-light { background: var(--ink); }
.token-intelligence { background: #12130D; }

/* --- cards that used to be white ----------------------------------------- */
.market-terminal {
  border-color: rgba(244, 241, 230, .1);
  background: var(--ink-2);
  box-shadow: 0 28px 75px rgba(0, 0, 0, .5);
}
.market-summary { background: linear-gradient(155deg, #1E2016, #14150F); }
.status-pill { border-color: rgba(244, 241, 230, .14); background: rgba(244, 241, 230, .05); }
.market-metrics > div { background: rgba(244, 241, 230, .03); }
.coingecko-chart.chart-live { background: var(--ink-1); }
.token-detail-card,
.tokenomics-card { background: rgba(244, 241, 230, .03); }
.allocation-donut::before { background: var(--ink-1); box-shadow: 0 0 0 1px rgba(244, 241, 230, .08); }
.id-card { border-color: rgba(244, 241, 230, .14); background: rgba(244, 241, 230, .04); }
.feature-card,
.department-card { background: rgba(244, 241, 230, .035); }
.feature-card:hover,
.department-card:hover { background: rgba(244, 241, 230, .06); }
.token-art-card { border-color: rgba(244, 241, 230, .14); background: var(--ink-1); box-shadow: var(--shadow); }
.token-facts div { background: rgba(244, 241, 230, .03); }
.step-card { background: rgba(244, 241, 230, .035); }
.official-address { background: rgba(244, 241, 230, .04); }
.market-metrics,
.market-terminal,
.token-detail-card,
.tokenomics-card { border-color: var(--line); }

/* --- ink-on-light details that now need to be lime-on-ink ---------------- */
.kicker { color: var(--lime); }
.feature-number { color: rgba(244, 241, 230, .28); }
.text-link { border-bottom-color: var(--lime); }
.tokenomics-note { background: rgba(199, 245, 63, .08); }
.tokenomics-note strong { color: var(--cream); }

/* Solid ink pills read as holes once the page behind them is ink too. */
.button-dark,
.market-contract button,
.official-address button,
.id-card-top { background: var(--lime); color: var(--ink); }
.feature-icon,
.step-card > span { background: rgba(199, 245, 63, .14); color: var(--lime); }

/* Photo captions sat on light paper; on ink they need their own plate. */
.section-photo figcaption { color: var(--cream); }
.accordion summary::after { border-color: var(--line); }

/* The lime bands are the only light surfaces left, so they need ink text
   spelled out — the body default is now cream. */
.top-strip,
.intro-band { color: var(--ink); }
.skip-link { color: var(--ink); }
