/* Argonmine documentation pages. The app itself uses the shared shell from
   theme.css and carries its own small style block. */

:root {
  --wrap: 1120px;
  --gutter: clamp(16px, 4vw, 32px);
  --section: clamp(48px, 7vw, 96px);
}
body.site { background: var(--page); font-size: 16px; }
.wrap { width: 100%; max-width: var(--wrap); margin: 0 auto; padding: 0 var(--gutter); }

/* ---- header ---- */
.site-header { position: sticky; top: 0; z-index: 20; background: color-mix(in srgb, var(--page) 88%, transparent); backdrop-filter: blur(14px); -webkit-backdrop-filter: blur(14px); border-bottom: 1px solid var(--hair); }
.nav-row { display: flex; align-items: center; gap: var(--sp-5); height: 64px; }
.nav-row .wordmark { padding: 0; font-size: 17px; }
.site-nav { display: flex; gap: 4px; }
.site-nav a { padding: 8px 12px; border-radius: var(--r-2); color: var(--ink-2); font-weight: 500; font-size: 14px; }
.site-nav a:hover { color: var(--ink); background: var(--sunken); }
.site-nav a.active { color: var(--ink); }
.nav-row .spacer { flex: 1; }
.nav-actions { display: flex; align-items: center; gap: var(--sp-2); }
.nav-toggle { display: none; }
@media (max-width: 900px) {
  .site-nav { display: none; }
  .nav-toggle { display: inline-flex; }
  .site-header.open .site-nav { display: flex; flex-direction: column; position: absolute; left: 0; right: 0; top: 64px; background: var(--page); border-bottom: 1px solid var(--hair); padding: var(--sp-2) var(--gutter) var(--sp-4); box-shadow: var(--shadow-2); }
  .site-header.open .site-nav a { padding: 12px 10px; font-size: 16px; }
}
@media (max-width: 380px) { .nav-actions .btn-primary { display: none; } }

/* ---- page head ---- */
.page-head { padding-top: clamp(40px, 6vw, 72px); padding-bottom: var(--section); }
.page-head h1 { font-size: clamp(32px, 4vw, 48px); letter-spacing: -0.03em; line-height: 1.08; font-weight: 700; }
.page-head p { color: var(--ink-2); font-size: 17px; line-height: 1.55; margin-top: var(--sp-3); max-width: 60ch; }

/* ---- docs ---- */
.docs-grid { display: grid; grid-template-columns: 232px minmax(0, 1fr); gap: clamp(24px, 4vw, 56px); align-items: start; padding-top: clamp(28px, 4vw, 48px); }
.docs-main { min-width: 0; }
.docs-nav { position: sticky; top: 84px; display: flex; flex-direction: column; gap: 2px; max-height: calc(100vh - 100px); overflow-y: auto; }
.docs-nav h4 { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); padding: 0 10px 6px; margin-top: var(--sp-4); }
.docs-nav h4:first-child { margin-top: 0; }
.docs-nav a { padding: 7px 10px; border-radius: var(--r-2); color: var(--ink-2); font-size: 14px; }
.docs-nav a:hover { background: var(--sunken); color: var(--ink); }
.docs-nav a.active { color: var(--ink); font-weight: 600; background: var(--accent-soft); }
.docs-select { display: none; margin-bottom: var(--sp-4); }
.docs-toc { display: none; position: sticky; top: 84px; font-size: 13px; max-height: calc(100vh - 100px); overflow-y: auto; }
.docs-toc h4 { font-size: 11px; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); padding: 0 0 8px 12px; }
.docs-toc a { display: block; padding: 4px 0 4px 12px; border-left: 2px solid var(--hair); color: var(--ink-3); line-height: 1.4; }
.docs-toc a.l3 { padding-left: 24px; }
.docs-toc a:hover { color: var(--ink); }
.docs-toc a.active { color: var(--ink); border-color: var(--accent); }
@media (min-width: 1200px) { .docs-grid { grid-template-columns: 232px minmax(0, 1fr) 200px; } .docs-toc { display: block; } }
@media (max-width: 860px) { .docs-grid { grid-template-columns: 1fr; } .docs-nav { display: none; } .docs-select { display: block; } }
.doc-crumb { display: flex; gap: 8px; font-size: 13px; color: var(--ink-3); margin-bottom: var(--sp-3); }
.doc-crumb a { color: var(--ink-3); } .doc-crumb a:hover { color: var(--ink); }

.prose { line-height: 1.7; font-size: 16px; overflow-wrap: anywhere; max-width: 78ch; }
.prose h1 { font-size: clamp(30px, 3.6vw, 44px); letter-spacing: -0.03em; margin-bottom: var(--sp-3); line-height: 1.08; }
.prose h1 + p { font-size: 18px; color: var(--ink-2); line-height: 1.6; margin-bottom: var(--sp-5); }
.prose h2 { font-size: 23px; margin: var(--sp-7) 0 var(--sp-3); padding-top: var(--sp-5); border-top: 1px solid var(--hair); letter-spacing: -0.02em; scroll-margin-top: 90px; }
.prose h3 { font-size: 17px; margin: var(--sp-5) 0 var(--sp-2); scroll-margin-top: 90px; }
.prose h4 { margin: var(--sp-4) 0 var(--sp-2); }
.prose h2 .hanchor, .prose h3 .hanchor { opacity: 0; margin-left: 8px; color: var(--ink-3); text-decoration: none; font-weight: 400; }
.prose h2:hover .hanchor, .prose h3:hover .hanchor, .prose .hanchor:focus { opacity: 1; }
.prose p, .prose ul, .prose ol { margin: 0 0 var(--sp-3); }
.prose li { margin: 4px 0; }
.prose li > p { margin: 0; }
.prose strong { color: var(--ink); }
.prose a { color: var(--accent-text); text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--accent) 35%, transparent); }
.prose a:hover { text-decoration-color: currentColor; }
.prose code { font-family: var(--font-mono); font-size: 0.88em; background: var(--sunken); border: 1px solid var(--hair); border-radius: 5px; padding: 1px 5px; }
.prose pre { position: relative; background: var(--sunken); border: 1px solid var(--hair); border-radius: 10px; padding: var(--sp-4); overflow-x: auto; margin: 0 0 var(--sp-4); font-size: 13px; line-height: 1.55; }
.prose pre code { background: none; border: 0; padding: 0; }
.prose pre .copy { position: absolute; top: 8px; right: 8px; font: inherit; font-family: var(--font); font-size: 12px; padding: 4px 9px; border-radius: 6px; border: 1px solid var(--hair); background: var(--surface); color: var(--ink-2); cursor: pointer; opacity: 0; transition: opacity .12s; }
.prose pre:hover .copy, .prose pre .copy:focus { opacity: 1; }
.prose .tscroll { overflow-x: auto; margin: 0 0 var(--sp-4); border: 1px solid var(--hair); border-radius: 10px; }
.prose table { width: 100%; border-collapse: collapse; font-size: 14px; }
.prose th, .prose td { text-align: left; padding: 9px 12px; border-bottom: 1px solid var(--hair); vertical-align: top; }
.prose tr:last-child td { border-bottom: 0; }
.prose th { color: var(--ink-3); font-weight: 600; font-size: 12px; background: var(--sunken); white-space: nowrap; }
.prose td:first-child { white-space: nowrap; }
.prose td code { white-space: nowrap; }
.prose blockquote { border-left: 3px solid var(--accent); margin: 0 0 var(--sp-4); padding: var(--sp-3) var(--sp-4); color: var(--ink-2); background: var(--sunken); border-radius: 0 10px 10px 0; }
.prose blockquote p:last-child { margin: 0; }
.prose hr { margin: var(--sp-5) 0; }
.doc-pager { display: grid; grid-template-columns: 1fr 1fr; gap: var(--sp-3); margin-top: var(--sp-7); padding-top: var(--sp-5); border-top: 1px solid var(--hair); max-width: 78ch; }
.doc-pager a { border: 1px solid var(--hair); border-radius: 12px; padding: 14px 16px; display: flex; flex-direction: column; gap: 4px; color: var(--ink); min-width: 0; }
.doc-pager a:hover { border-color: var(--accent); }
.doc-pager a span { font-size: 12px; color: var(--ink-3); }
.doc-pager a b { font-weight: 600; overflow: hidden; text-overflow: ellipsis; }
.doc-pager a.prev { grid-column: 1; } .doc-pager a.next { grid-column: 2; text-align: right; }
@media (max-width: 600px) { .doc-pager { grid-template-columns: 1fr; } .doc-pager a.next { grid-column: 1; } }

/* ---- footer ---- */
.site-footer { border-top: 1px solid var(--hair); padding: var(--sp-5) 0; font-size: 14px; margin-top: var(--section); }
.foot-row { display: flex; align-items: center; justify-content: space-between; gap: var(--sp-4); flex-wrap: wrap; }
.foot-links { display: flex; gap: var(--sp-4); flex-wrap: wrap; }
.foot-links a { color: var(--ink-2); }
.foot-links a:hover { color: var(--ink); }
.foot-meta { display: flex; justify-content: space-between; gap: var(--sp-4); flex-wrap: wrap; margin-top: var(--sp-4); padding-top: var(--sp-4); border-top: 1px solid var(--hair); color: var(--ink-3); font-size: 13px; }

/* ---- landing (the website's front page; the app has its own host) ---- */
.lp main { overflow-x: clip; }
.lp section[id] { scroll-margin-top: 72px; }
.lp-skip { position: absolute; left: -9999px; top: 8px; z-index: 50; padding: 8px 12px; border-radius: var(--r-2); background: var(--surface); box-shadow: var(--shadow-2); }
.lp-skip:focus { left: 8px; }
.lp .nav-actions .btn-sm { height: 34px; padding: 0 14px; font-size: var(--fs-3); font-weight: 600; }
.lp .btn-lg { height: 48px; padding: 0 22px; border-radius: 12px; font-size: 15px; font-weight: 600; }
.lp .btn-lg svg.icon { width: 15px; height: 15px; }

/* hero */
.lp-hero { position: relative; isolation: isolate; padding: clamp(40px, 7vw, 96px) 0 clamp(48px, 7vw, 96px); }
.lp-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: linear-gradient(var(--hair) 1px, transparent 1px), linear-gradient(90deg, var(--hair) 1px, transparent 1px);
  background-size: 48px 48px; background-position: center -1px; opacity: .75;
  -webkit-mask-image: radial-gradient(ellipse 75% 70% at 72% 38%, #000 0%, transparent 72%);
  mask-image: radial-gradient(ellipse 75% 70% at 72% 38%, #000 0%, transparent 72%); }
.lp-hero-grid { display: grid; grid-template-columns: minmax(0, 1.08fr) minmax(0, .92fr); gap: clamp(32px, 5vw, 72px); align-items: center; }
.lp-eyebrow { display: inline-flex; align-items: center; gap: 10px; padding: 4px 12px 4px 4px; border: 1px solid var(--hair); border-radius: 999px; background: var(--surface); box-shadow: var(--shadow-1); font-size: 13px; color: var(--ink-2); transition: border-color .15s var(--ease); }
.lp-eyebrow:hover { border-color: var(--border); }
.lp-eyebrow span { padding: 3px 10px; border-radius: 999px; background: var(--accent-soft); color: var(--accent-text); font-weight: 600; font-size: 12px; }
.lp-eyebrow b { color: var(--ink); font-weight: 600; font-variant-numeric: tabular-nums; }
.lp-eyebrow svg.icon { width: 14px; height: 14px; color: var(--ink-3); vertical-align: 0; }
.lp h1 { margin: 24px 0 0; font-size: clamp(42px, 5.4vw, 66px); line-height: 1.0; letter-spacing: -0.045em; font-weight: 750; text-wrap: balance; }
.lp h1 em { font-style: normal; color: var(--accent-text); }
.lp-lead { margin: 22px 0 0; max-width: 46ch; font-size: clamp(17px, 1.55vw, 19px); line-height: 1.6; color: var(--ink-2); text-wrap: pretty; }
.lp-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.lp-proof { display: flex; flex-wrap: wrap; gap: 10px 22px; margin: 30px 0 0; padding: 0; list-style: none; font-size: 14px; color: var(--ink-2); }
.lp-proof li { display: inline-flex; align-items: center; gap: 7px; }
.lp-proof svg.icon { width: 15px; height: 15px; color: var(--ok); vertical-align: 0; }

/* hero visual: the wallet's own home screen, always in the app's dark look */
.lp-visual { display: flex; justify-content: center; }
.lp-stage { position: relative; width: 300px; max-width: 100%; }
.lp-phone { --m-bg: #0d0d0d; --m-sf: #1a1a19; --m-hair: #2c2c2a; --m-ink: #f0efec; --m-ink2: #c3c2b7; --m-ink3: #898781; --m-acc: #e0a63a;
  width: 300px; max-width: 100%; aspect-ratio: 300 / 612; padding: 11px; border-radius: 46px;
  background: linear-gradient(155deg, #4a4a46 0%, #1c1c1a 22%, #0c0c0b 60%, #2a2a27 100%);
  box-shadow: 0 50px 90px -30px rgba(20, 14, 2, .5), 0 18px 40px -12px rgba(0, 0, 0, .35), inset 0 0 0 1px rgba(255, 255, 255, .08); }
.lp-screen { position: relative; display: flex; flex-direction: column; height: 100%; padding: 46px 15px 0; border-radius: 36px; overflow: hidden; background: var(--m-bg); color: var(--m-ink); font-size: 12px; line-height: 1.35; }
.lp-screen::before { content: ""; position: absolute; top: 12px; left: 50%; width: 88px; height: 24px; transform: translateX(-50%); border-radius: 14px; background: #000; box-shadow: inset 0 0 0 1px rgba(255, 255, 255, .05); }
.lp-screen svg.icon { vertical-align: 0; }
.m-head { display: flex; align-items: center; justify-content: space-between; }
.m-acct { display: inline-flex; align-items: center; gap: 8px; padding: 5px 10px 5px 5px; border: 1px solid var(--m-hair); border-radius: 12px; }
.m-idn { width: 26px; height: 26px; border-radius: 8px; background: conic-gradient(from 210deg, #7a4fb0, #d06b8a, #e0a63a, #7a4fb0); }
.m-acct b { display: block; font-size: 11.5px; font-weight: 600; }
.m-acct small { display: block; font-family: var(--font-mono); font-size: 9.5px; color: var(--m-ink3); }
.m-pill { padding: 4px 9px; border-radius: 999px; background: rgba(224, 166, 58, .14); color: var(--m-acc); font-size: 10px; font-weight: 600; }
.m-bal { margin-top: 22px; }
.m-bal small { font-size: 11px; color: var(--m-ink3); }
.m-bal strong { display: block; margin-top: 2px; font-size: 34px; font-weight: 750; letter-spacing: -0.035em; font-variant-numeric: tabular-nums; line-height: 1.1; }
.m-bal strong span { margin-left: 5px; font-size: 14px; font-weight: 600; letter-spacing: 0; color: var(--m-ink3); }
.m-bal em { display: block; margin-top: 3px; font-style: normal; font-size: 11.5px; color: var(--m-ink2); font-variant-numeric: tabular-nums; }
.m-acts { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 7px; margin-top: 18px; }
.m-acts span { display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 10px 0 9px; border: 1px solid var(--m-hair); border-radius: 14px; background: var(--m-sf); font-size: 10px; color: var(--m-ink2); }
.m-acts svg.icon { width: 16px; height: 16px; color: var(--m-acc); }
.m-tabs { display: flex; gap: 18px; margin-top: 20px; border-bottom: 1px solid var(--m-hair); font-size: 11.5px; }
.m-tabs b { padding-bottom: 8px; border-bottom: 2px solid var(--m-acc); margin-bottom: -1px; font-weight: 600; }
.m-tabs span { color: var(--m-ink3); }
.m-list { flex: 1; }
.m-tok { display: flex; align-items: center; gap: 10px; padding: 10px 1px; border-bottom: 1px solid var(--m-hair); }
.m-tok:last-child { border-bottom: 0; }
.m-tok img { width: 30px; height: 30px; flex: none; }
.m-tok div { flex: 1; min-width: 0; }
.m-tok b { display: block; font-size: 12.5px; font-weight: 600; }
.m-tok small { font-size: 10.5px; color: var(--m-ink3); }
.m-tok strong { font-size: 12px; font-weight: 650; text-align: right; font-variant-numeric: tabular-nums; }
.m-tok strong small { display: block; font-weight: 500; }
.m-nav { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0 -15px; padding: 9px 6px 16px; border-top: 1px solid var(--m-hair); background: #121211; }
.m-nav span { display: flex; flex-direction: column; align-items: center; gap: 4px; font-size: 9.5px; color: var(--m-ink3); }
.m-nav span.on { color: var(--m-acc); }
.m-nav svg.icon { width: 16px; height: 16px; }
.lp-float { position: absolute; border: 1px solid var(--hair); border-radius: 18px; background: var(--surface); box-shadow: var(--shadow-2); }
.lp-mine { left: -206px; bottom: 92px; width: 228px; padding: 16px 18px 14px; }
.lp-mine .k { display: flex; align-items: center; justify-content: space-between; font-size: 12px; color: var(--ink-3); }
.lp-live { padding: 2px 9px; border-radius: 999px; background: var(--accent-soft); color: var(--accent-text); font-size: 11px; font-weight: 600; }
.lp-mine .v { margin-top: 6px; font-size: 30px; font-weight: 720; letter-spacing: -0.03em; font-variant-numeric: tabular-nums; line-height: 1.1; }
.lp-mine .v small { margin-left: 4px; font-size: 13px; font-weight: 600; letter-spacing: 0; color: var(--ink-3); }
.lp-spark { display: block; width: 100%; height: 44px; margin-top: 8px; }
.lp-spark .l { fill: none; stroke: var(--accent); stroke-width: 2; stroke-linejoin: round; vector-effect: non-scaling-stroke; }
.lp-spark .a { fill: var(--accent-soft); }
.lp-mine .row { display: flex; justify-content: space-between; margin-top: 10px; padding-top: 10px; border-top: 1px solid var(--hair); font-size: 12px; color: var(--ink-3); }
.lp-mine .row b { color: var(--ink); font-variant-numeric: tabular-nums; }
.lp-found { right: -128px; top: 96px; display: flex; align-items: center; gap: 12px; padding: 12px 18px 12px 12px; }
.lp-found .ic { display: grid; place-items: center; width: 38px; height: 38px; border-radius: 12px; background: var(--ok-bg); color: var(--ok); }
.lp-found .ic svg.icon { width: 18px; height: 18px; vertical-align: 0; }
.lp-found b { display: block; font-size: 13.5px; font-weight: 650; white-space: nowrap; }
.lp-found strong { margin-left: 8px; color: var(--ok); font-variant-numeric: tabular-nums; }
.lp-found small { display: block; font-size: 12px; color: var(--ink-3); }

/* live network strip */
.lp-stats { border-top: 1px solid var(--hair); border-bottom: 1px solid var(--hair); background: var(--surface); }
.lp-stat-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); margin: 0; }
.lp-stat-grid > div { min-width: 0; padding: 26px 24px; border-left: 1px solid var(--hair); }
.lp-stat-grid > div:first-child { border-left: 0; padding-left: 0; }
.lp-stat-grid dt { font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.lp-stat-grid dd { margin: 8px 0 0; font-size: clamp(22px, 2.5vw, 30px); font-weight: 700; letter-spacing: -0.025em; font-variant-numeric: tabular-nums; line-height: 1.15; overflow-wrap: anywhere; }
.lp-stat-grid dd small { margin-left: 5px; font-size: 13px; font-weight: 600; letter-spacing: 0; color: var(--ink-3); }

/* sections */
.lp-sec { padding: var(--section) 0; }
.lp-band { background: var(--sunken); border-top: 1px solid var(--hair); border-bottom: 1px solid var(--hair); }
.lp-head { max-width: 640px; margin-bottom: clamp(28px, 4vw, 48px); }
.lp-kicker { display: block; margin-bottom: 12px; font-size: 12.5px; font-weight: 650; letter-spacing: .1em; text-transform: uppercase; color: var(--accent-text); }
.lp h2 { margin: 0; font-size: clamp(30px, 3.6vw, 46px); line-height: 1.06; letter-spacing: -0.035em; font-weight: 720; text-wrap: balance; }
.lp-head p { margin: 14px 0 0; font-size: 17px; line-height: 1.6; color: var(--ink-2); text-wrap: pretty; }

.lp-steps { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; margin: 0; padding: 0; list-style: none; }
.lp-step { padding: 26px 24px 28px; border: 1px solid var(--hair); border-radius: 20px; background: var(--surface); }
.lp-step .n { font-family: var(--font-mono); font-size: 13px; color: var(--ink-3); }
.lp-step .ic { display: grid; place-items: center; width: 46px; height: 46px; margin: 18px 0; border-radius: 14px; background: var(--accent-soft); color: var(--accent-text); }
.lp-step .ic svg.icon { width: 21px; height: 21px; vertical-align: 0; }
.lp-step h3, .lp-feat h3 { margin: 0; font-size: 18px; letter-spacing: -0.015em; font-weight: 650; }
.lp-step p, .lp-feat p, .lp-coin p { margin: 8px 0 0; font-size: 15px; line-height: 1.6; color: var(--ink-2); }

.lp-feats { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1px; overflow: hidden; border: 1px solid var(--hair); border-radius: 22px; background: var(--hair); }
.lp-feat { padding: 30px 28px 32px; background: var(--surface); }
.lp-feat > svg.icon { width: 22px; height: 22px; margin-bottom: 18px; color: var(--accent-text); vertical-align: 0; }

.lp-coins { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.lp-coin { display: flex; flex-direction: column; padding: 26px; border: 1px solid var(--hair); border-radius: 22px; background: var(--surface); }
.lp-coin .top { display: flex; align-items: center; gap: 14px; }
.lp-coin .top img { width: 48px; height: 48px; flex: none; }
.lp-coin .top b { display: block; font-size: 21px; font-weight: 700; letter-spacing: -0.02em; }
.lp-coin .top small { font-size: 13px; color: var(--ink-3); }
.lp-coin p { flex: 1; margin-top: 18px; }
.lp-coin .meta { display: flex; justify-content: space-between; gap: 12px; margin-top: 22px; padding-top: 16px; border-top: 1px solid var(--hair); font-size: 13px; color: var(--ink-3); }
.lp-coin .meta b { color: var(--ink); font-weight: 600; font-variant-numeric: tabular-nums; }

.lp-specs { display: grid; grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr); gap: clamp(32px, 6vw, 96px); align-items: start; }
.lp-specs .lp-head { margin-bottom: 0; }
.lp-link { display: inline-flex; align-items: center; gap: 6px; margin-top: 22px; font-weight: 600; color: var(--accent-text); }
.lp-link svg.icon { width: 16px; height: 16px; vertical-align: 0; transition: transform .15s var(--ease); }
.lp-link:hover svg.icon { transform: translate(2px, -2px); }
.lp-spec { margin: 0; border-top: 1px solid var(--border); }
.lp-spec > div { display: grid; grid-template-columns: minmax(0, 190px) minmax(0, 1fr); gap: 16px; padding: 16px 0; border-bottom: 1px solid var(--hair); }
.lp-spec dt { font-size: 14.5px; color: var(--ink-3); }
.lp-spec dd { margin: 0; font-size: 15px; font-weight: 550; overflow-wrap: anywhere; }
.lp-spec code { font-family: var(--font-mono); font-size: 13px; padding: 1px 6px; border: 1px solid var(--hair); border-radius: 5px; background: var(--surface); }

/* closing band: always dark */
.lp-final { padding: var(--section) 0; }
.lp-final-card { position: relative; isolation: isolate; overflow: hidden; display: grid; grid-template-columns: minmax(0, 1fr) auto; gap: 32px; align-items: center;
  padding: clamp(36px, 6vw, 72px); border-radius: 28px; background: #10100f; color: #f3f2ee; box-shadow: var(--shadow-2); }
.lp-final-card::before { content: ""; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background-image: linear-gradient(rgba(255, 255, 255, .06) 1px, transparent 1px), linear-gradient(90deg, rgba(255, 255, 255, .06) 1px, transparent 1px);
  background-size: 40px 40px;
  -webkit-mask-image: radial-gradient(ellipse 70% 90% at 90% 10%, #000 0%, transparent 70%);
  mask-image: radial-gradient(ellipse 70% 90% at 90% 10%, #000 0%, transparent 70%); }
.lp-final-card::after { content: ""; position: absolute; z-index: -1; right: -120px; top: -160px; width: 420px; height: 420px; border-radius: 50%; pointer-events: none; background: radial-gradient(circle, rgba(224, 166, 58, .22), transparent 65%); }
.lp-final-card h2 { color: #f6f5f1; }
.lp-final-card p { margin: 12px 0 0; font-size: 17px; line-height: 1.6; color: #c3c2b7; }
.lp-final-cta { display: flex; flex-wrap: wrap; gap: 12px; }
.lp-final-card .btn-primary { --accent: #e0a63a; }
.lp-btn-dark { border-color: rgba(255, 255, 255, .2); background: transparent; color: #f3f2ee; }
.lp-btn-dark:hover { background: rgba(255, 255, 255, .07); }

/* footer */
.lp-footer { padding: 56px 0 28px; border-top: 1px solid var(--hair); font-size: 14px; }
.lp-foot-grid { display: grid; grid-template-columns: minmax(0, 1.6fr) repeat(3, minmax(0, 1fr)); gap: 32px; }
.lp-foot-brand .wordmark { padding: 0; }
.lp-foot-brand p { max-width: 30ch; margin: 12px 0 0; line-height: 1.6; color: var(--ink-3); }
.lp-foot-col h4 { margin: 0 0 12px; font-size: 12px; font-weight: 600; letter-spacing: .08em; text-transform: uppercase; color: var(--ink-3); }
.lp-foot-col a { display: block; padding: 5px 0; color: var(--ink-2); }
.lp-foot-col a:hover { color: var(--ink); }
.lp-foot-meta { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 8px 16px; margin-top: 44px; padding-top: 20px; border-top: 1px solid var(--hair); font-size: 13px; color: var(--ink-3); }

/* responsive */
@media (max-width: 980px) {
  .lp-hero-grid { grid-template-columns: minmax(0, 1fr); }
  .lp-hero-copy { max-width: 640px; }
  .lp-visual { padding: 12px 0 8px; }
  .lp-feats { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lp-specs { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 860px) {
  .lp-steps, .lp-coins { grid-template-columns: minmax(0, 1fr); }
  .lp-stat-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lp-stat-grid > div:nth-child(odd) { border-left: 0; padding-left: 0; }
  .lp-stat-grid > div:nth-child(n+3) { border-top: 1px solid var(--hair); }
  .lp-foot-grid { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .lp-foot-brand { grid-column: 1 / -1; }
  .lp-final-card { grid-template-columns: minmax(0, 1fr); }
}
@media (max-width: 640px) {
  .lp-feats { grid-template-columns: minmax(0, 1fr); }
  .lp-mine { display: none; }
  /* The device is cropped into a fade; the found card sits on the fade. */
  .lp-phone { aspect-ratio: auto; height: 452px; -webkit-mask-image: linear-gradient(to bottom, #000 72%, transparent 98%); mask-image: linear-gradient(to bottom, #000 72%, transparent 98%); }
  .lp-found { top: auto; right: auto; left: 50%; bottom: 18px; transform: translateX(-50%); }
  .lp-spec > div { grid-template-columns: minmax(0, 1fr); gap: 2px; }
  .lp-cta .btn-lg { flex: 1 1 auto; }
  .lp-final-cta .btn-lg { flex: 1 1 auto; }
}
@media (max-width: 420px) {
  .lp-stage, .lp-phone { width: 280px; }
  .lp-found { padding: 10px 14px 10px 10px; }
  .lp-foot-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .lp-stat-grid > div { padding: 20px 16px; }
}
@media (prefers-reduced-motion: reduce) { .lp-link svg.icon, .lp-eyebrow { transition: none; } }
