:root {
  --bg: #0A0B0D;
  --surface: #111318;
  --surface-2: #171A20;
  --border: #23272F;
  --fg: #F2F4F7;
  --muted: #8B94A1;
  --placeholder: #5B6472;
  --accent: #4A9FD8;
  --accent-soft: #4A9FD81F;
  --accent-rgb: 74, 159, 216;
  --on-accent: #06121C;
  --ok: #3FB68B;
  --warn: #E0A84A;
  --err: #E0605A;
  --font-head: "Geist", system-ui, sans-serif;
  --font-body: "Inter", system-ui, sans-serif;
  --font-mono: "Geist Mono", ui-monospace, SFMono-Regular, Menlo, monospace;
  --gutter: 24px;
  --section-y: 120px;
  color-scheme: dark;
}

:root[data-theme="light"] {
  --bg: #F7F8FA;
  --surface: #FFFFFF;
  --surface-2: #F0F2F5;
  --border: #E3E6EB;
  --fg: #0E1116;
  --muted: #5B6472;
  --placeholder: #8B94A1;
  --accent: #1F6FB2;
  --accent-soft: #1F6FB214;
  --accent-rgb: 31, 111, 178;
  --on-accent: #FFFFFF;
  --ok: #1E8A63;
  --warn: #B07A12;
  --err: #B8322C;
  color-scheme: light;
}

*, *::before, *::after { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 88px; -webkit-text-size-adjust: 100%; }
body {
  margin: 0;
  background: var(--bg);
  color: var(--fg);
  font-family: var(--font-body);
  font-size: 15px;
  line-height: 1.5;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  text-rendering: optimizeLegibility;
  overflow-x: hidden;
}
h1, h2, h3, h4, p, ul, ol, dl, dd, figure { margin: 0; }
ul, ol { padding: 0; list-style: none; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; color: inherit; }
button { cursor: pointer; background: none; border: 0; padding: 0; }
svg.i { width: 1em; height: 1em; flex-shrink: 0; display: block; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.mono { font-family: var(--font-mono); }
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; border: 0; }
:focus-visible { outline: 2px solid var(--accent); outline-offset: 2px; border-radius: 4px; }

.container { width: 100%; max-width: calc(1200px + var(--gutter) * 2); margin: 0 auto; padding: 0 var(--gutter); }
.section { padding: var(--section-y) 0; background: var(--bg); }
.section--alt { background: var(--surface); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.section--alt + .section--alt { border-top: 0; }

/* ---------- Typography ---------- */
.eyebrow { font-family: var(--font-mono); font-size: 12px; letter-spacing: 1.2px; text-transform: uppercase; color: var(--accent); line-height: 1.4; }
.h2 { font-family: var(--font-head); font-weight: 600; font-size: 44px; line-height: 1.09; letter-spacing: -1.2px; color: var(--fg); }
.lead { font-size: 18px; line-height: 1.55; color: var(--muted); }
.heading { display: flex; flex-direction: column; gap: 16px; max-width: 760px; margin-bottom: 56px; }
.heading--center { align-items: center; text-align: center; max-width: none; }

/* ---------- Buttons ---------- */
.btn {
  display: inline-flex; align-items: center; justify-content: center; gap: 8px;
  padding: 13px 22px; border-radius: 6px; font-size: 15px; font-weight: 600; line-height: 1.3;
  white-space: nowrap; transition: background-color .15s, border-color .15s, color .15s, transform .15s;
}
.btn .i { font-size: 16px; }
.btn--primary { background: var(--accent); color: var(--on-accent); }
.btn--primary:hover { background: color-mix(in srgb, var(--accent) 88%, #fff); }
.btn--secondary { background: var(--surface); color: var(--fg); box-shadow: inset 0 0 0 1px var(--border); }
.btn--secondary:hover { background: var(--surface-2); }
.btn--block { width: 100%; }
.btn--lg { padding: 14px 24px; }

/* ---------- Header ---------- */
.header { position: sticky; top: 0; z-index: 50; background: color-mix(in srgb, var(--bg) 88%, transparent); backdrop-filter: saturate(160%) blur(12px); -webkit-backdrop-filter: saturate(160%) blur(12px); border-bottom: 1px solid var(--border); }
.header__inner { display: flex; align-items: center; justify-content: space-between; height: 74px; gap: 24px; }
.logo { display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-mono); font-weight: 600; font-size: 19px; letter-spacing: -0.3px; color: var(--fg); }
.logo__mark { width: 22px; height: 22px; border-radius: 5px; background: var(--accent); flex-shrink: 0; }
.nav { display: flex; align-items: center; gap: 32px; }
.nav a { font-size: 14px; color: var(--muted); transition: color .15s; }
.nav a:hover { color: var(--fg); }
.header__actions { display: flex; align-items: center; gap: 12px; }
.lang { display: flex; gap: 2px; padding: 3px; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--border); }
.lang a { font-family: var(--font-mono); font-size: 12px; line-height: 1.2; padding: 4px 8px; border-radius: 4px; color: var(--muted); }
.lang a[aria-current="true"] { background: var(--surface-2); color: var(--fg); }
.lang a:hover { color: var(--fg); }
.icon-btn { width: 34px; height: 34px; display: inline-flex; align-items: center; justify-content: center; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--border); color: var(--muted); transition: color .15s, background-color .15s; }
.icon-btn:hover { color: var(--fg); background: var(--surface); }
.icon-btn .i { font-size: 16px; }
.theme-toggle .i-sun { display: none; }
:root[data-theme="light"] .theme-toggle .i-sun { display: block; }
:root[data-theme="light"] .theme-toggle .i-moon { display: none; }
.header .btn { padding: 9px 16px; font-size: 14px; }
.burger { display: none; }
.mobile-nav { display: none; }

/* ---------- Hero ---------- */
.hero { position: relative; padding-top: 96px; overflow: hidden; background: radial-gradient(ellipse 55% 45% at 50% 0%, rgba(var(--accent-rgb), .2) 0%, rgba(var(--accent-rgb), 0) 100%) no-repeat, var(--bg); }
.hero__copy { display: flex; flex-direction: column; align-items: center; gap: 28px; max-width: 920px; margin: 0 auto 64px; text-align: center; }
.badge { display: inline-flex; align-items: center; gap: 8px; padding: 6px 12px; border-radius: 999px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); font-family: var(--font-mono); font-size: 12px; letter-spacing: .3px; color: var(--muted); line-height: 1.4; }
.dot { width: 6px; height: 6px; border-radius: 50%; background: var(--muted); flex-shrink: 0; }
.dot--ok { background: var(--ok); } .dot--accent { background: var(--accent); } .dot--warn { background: var(--warn); }
.hero h1 { font-family: var(--font-head); font-weight: 600; font-size: 76px; line-height: 1.03; letter-spacing: -2.4px; text-wrap: balance; }
.hero__sub { max-width: 720px; font-size: 19px; line-height: 1.55; color: var(--muted); }
.hero__buttons { display: flex; gap: 12px; padding-top: 8px; flex-wrap: wrap; justify-content: center; }
.hero__fine { font-family: var(--font-mono); font-size: 12px; color: var(--muted); }

/* Admin mockup */
.mockup { display: flex; background: var(--surface); border: 1px solid var(--border); border-bottom: 0; border-radius: 12px 12px 0 0; overflow: hidden; min-height: 470px; box-shadow: 0 -20px 80px -40px rgba(var(--accent-rgb), .35); }
.mockup__side { width: 220px; flex-shrink: 0; background: var(--surface-2); border-right: 1px solid var(--border); padding: 20px 14px; display: flex; flex-direction: column; gap: 4px; }
.mockup__logo { display: flex; align-items: center; gap: 8px; padding: 0 8px 16px; font-family: var(--font-mono); font-weight: 600; font-size: 13px; }
.mockup__logo span:first-child { width: 16px; height: 16px; border-radius: 4px; background: var(--accent); }
.side-item { display: flex; align-items: center; gap: 10px; padding: 8px 10px; border-radius: 6px; font-size: 13px; color: var(--muted); line-height: 1.3; }
.side-item .i { font-size: 15px; }
.side-item.is-active { background: var(--accent-soft); color: var(--fg); font-weight: 500; }
.side-item.is-active .i { color: var(--accent); }
.mockup__main { flex: 1; min-width: 0; padding: 24px 28px; display: flex; flex-direction: column; gap: 20px; }
.mockup__head { display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap; }
.mockup__title { font-family: var(--font-head); font-weight: 600; font-size: 20px; }
.chips { display: flex; gap: 8px; flex-wrap: wrap; }
.chip { display: inline-flex; align-items: center; gap: 6px; padding: 6px 10px; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--border); font-size: 12px; color: var(--muted); line-height: 1.3; white-space: nowrap; }
.chip b { font-family: var(--font-mono); font-weight: 600; color: var(--fg); }
.table-scroll { overflow-x: auto; border-radius: 8px; box-shadow: inset 0 0 0 1px var(--border); }
.deals { width: 100%; min-width: 860px; border-collapse: collapse; font-size: 13px; }
.deals th { background: var(--surface-2); color: var(--muted); font-weight: 400; font-size: 11px; letter-spacing: .4px; text-transform: uppercase; text-align: left; padding: 12px 16px; border-bottom: 1px solid var(--border); white-space: nowrap; }
.deals td { padding: 12px 16px; border-bottom: 1px solid var(--border); white-space: nowrap; line-height: 20px; }
.deals tr:last-child td { border-bottom: 0; }
.deals td:first-child { color: var(--muted); font-family: var(--font-mono); }
.deals td.num { font-family: var(--font-mono); }
.deals .i { font-size: 15px; }
.aml-ok { color: var(--ok); } .aml-warn { color: var(--warn); }
.pill { display: inline-flex; align-items: center; gap: 6px; padding: 3px 8px; border-radius: 999px; background: var(--surface-2); font-size: 12px; line-height: 1.4; }
.deals tbody tr { transition: background-color .15s; }
.deals tbody tr:hover { background: rgba(var(--accent-rgb), .04); }

/* ---------- Facts ---------- */
.facts { display: grid; grid-template-columns: repeat(5, 1fr); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.fact { padding: 32px 28px; display: flex; flex-direction: column-reverse; justify-content: flex-end; gap: 6px; }
.fact + .fact { border-left: 1px solid var(--border); }
.fact__value { font-family: var(--font-head); font-weight: 600; font-size: 36px; line-height: 1.1; letter-spacing: -1px; }
.fact__label { font-size: 14px; color: var(--muted); }

/* ---------- Cards ---------- */
.grid-3 { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
.card { background: var(--surface); border-radius: 10px; box-shadow: inset 0 0 0 1px var(--border); padding: 32px; display: flex; flex-direction: column; gap: 20px; }
.icon-box { width: 44px; height: 44px; border-radius: 8px; background: var(--accent-soft); color: var(--accent); display: flex; align-items: center; justify-content: center; flex-shrink: 0; }
.icon-box .i { font-size: 22px; }
.card__title { font-family: var(--font-head); font-weight: 600; font-size: 22px; line-height: 1.25; letter-spacing: -0.4px; }
.card__text { font-size: 15px; line-height: 1.55; color: var(--muted); }
.divider { height: 1px; background: var(--border); border: 0; margin: 0; }
.checks { display: flex; flex-direction: column; gap: 12px; }
.checks li { display: flex; gap: 10px; font-size: 15px; line-height: 1.5; }
.checks .i { font-size: 16px; color: var(--ok); margin-top: 3px; }
.checks li.is-off { color: var(--muted); }
.checks li.is-off .i { color: var(--muted); }

/* ---------- Flow ---------- */
.flow { display: flex; align-items: stretch; }
.step { flex: 1; min-width: 0; background: var(--bg); border-radius: 10px; box-shadow: inset 0 0 0 1px var(--border); padding: 28px 24px; display: flex; flex-direction: column; align-items: flex-start; gap: 16px; }
.step.is-accent { box-shadow: inset 0 0 0 1px var(--accent); }
.step__top { display: flex; align-items: center; justify-content: space-between; width: 100%; }
.step__num { font-family: var(--font-mono); font-size: 13px; color: var(--muted); }
.step__top .i { font-size: 20px; color: var(--accent); }
.step__title { font-family: var(--font-head); font-weight: 600; font-size: 22px; letter-spacing: -0.4px; line-height: 1.25; }
.step__text { font-size: 14px; line-height: 1.57; color: var(--muted); }
.note-pill { display: inline-flex; padding: 5px 10px; border-radius: 999px; background: var(--accent-soft); color: var(--accent); font-size: 12px; line-height: 1.4; }
.flow__arrow { width: 40px; flex-shrink: 0; display: flex; align-items: center; justify-content: center; color: var(--muted); }
.flow__arrow .i { font-size: 18px; }
.statuses { display: flex; align-items: center; flex-wrap: wrap; gap: 10px; margin-top: 56px; font-size: 13px; color: var(--muted); }
.code-tag { font-family: var(--font-mono); font-size: 12px; color: var(--fg); padding: 4px 9px; border-radius: 5px; box-shadow: inset 0 0 0 1px var(--border); line-height: 1.4; }

/* ---------- Features ---------- */
.features-row { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--border); }
.features-row + .features-row { margin-top: 56px; }
.feature { padding: 36px 32px; display: flex; flex-direction: column; gap: 14px; }
.feature:first-child { padding-left: 0; }
.feature + .feature { border-left: 1px solid var(--border); }
.feature > .i { font-size: 22px; color: var(--accent); }
.feature__title { font-family: var(--font-head); font-weight: 600; font-size: 20px; letter-spacing: -0.3px; line-height: 1.3; }
.feature__text { font-size: 15px; line-height: 1.6; color: var(--muted); }

/* ---------- Security ---------- */
.security { border-top: 1px solid var(--border); background: radial-gradient(ellipse 45% 45% at 85% 35%, rgba(var(--accent-rgb), .1) 0%, rgba(var(--accent-rgb), 0) 100%) no-repeat, var(--bg); }
.security__body { display: grid; grid-template-columns: 520px 1fr; gap: 64px; align-items: start; }
.diagram { background: var(--surface); border-radius: 12px; box-shadow: inset 0 0 0 1px var(--border); padding: 32px; display: flex; flex-direction: column; align-items: center; }
.node { width: 100%; display: flex; align-items: center; gap: 14px; padding: 18px 20px; border-radius: 8px; background: var(--bg); box-shadow: inset 0 0 0 1px var(--border); }
.node.is-accent { background: var(--accent-soft); box-shadow: inset 0 0 0 1px var(--accent); }
.node__icon { width: 36px; height: 36px; border-radius: 7px; background: var(--surface-2); display: flex; align-items: center; justify-content: center; color: var(--fg); flex-shrink: 0; }
.node.is-accent .node__icon { color: var(--accent); }
.node__icon .i { font-size: 18px; }
.node__text { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 3px; }
.node__title { font-family: var(--font-head); font-weight: 600; font-size: 16px; }
.node__sub { font-size: 13px; line-height: 1.4; color: var(--muted); }
.user-tag { font-family: var(--font-mono); font-size: 11px; color: var(--muted); padding: 3px 7px; border-radius: 4px; box-shadow: inset 0 0 0 1px var(--border); flex-shrink: 0; }
.link { display: flex; flex-direction: column; align-items: center; gap: 4px; padding: 6px 0; }
.link__line { width: 1px; height: 10px; background: var(--border); }
.link__label { font-family: var(--font-mono); font-size: 11px; color: var(--muted); background: var(--surface-2); padding: 3px 8px; border-radius: 4px; }
.diagram__caption { padding-top: 20px; font-size: 12px; line-height: 1.5; color: var(--muted); text-align: center; }
.mechanisms { display: flex; flex-direction: column; }
.mechanism { display: flex; gap: 18px; padding: 20px 0; border-bottom: 1px solid var(--border); }
.mechanism:last-child { border-bottom: 0; }
.mechanism > .i { font-size: 20px; color: var(--accent); margin-top: 1px; }
.mechanism__title { font-family: var(--font-head); font-weight: 600; font-size: 17px; line-height: 1.3; margin-bottom: 6px; }
.mechanism__text { font-size: 14px; line-height: 1.57; color: var(--muted); }

/* ---------- Networks ---------- */
.heading-row { display: flex; align-items: flex-end; justify-content: space-between; gap: 40px; margin-bottom: 56px; }
.heading-row .heading { margin-bottom: 0; max-width: 700px; }
.provider-note { width: 340px; flex-shrink: 0; background: var(--bg); border-radius: 10px; box-shadow: inset 0 0 0 1px var(--border); padding: 20px 24px; display: flex; flex-direction: column; gap: 6px; }
.provider-note b { font-family: var(--font-head); font-weight: 600; font-size: 20px; }
.provider-note span { font-size: 13px; line-height: 1.55; color: var(--muted); }
.nets { background: var(--bg); border-radius: 10px; box-shadow: inset 0 0 0 1px var(--border); overflow: hidden; }
.nets__scroll { overflow-x: auto; }
.nets table { width: 100%; min-width: 880px; border-collapse: collapse; }
.nets th { background: var(--surface-2); font-family: var(--font-mono); font-weight: 400; font-size: 11px; letter-spacing: .6px; text-transform: uppercase; color: var(--muted); text-align: left; padding: 12px 24px; border-bottom: 1px solid var(--border); }
.nets td { padding: 16px 24px; border-bottom: 1px solid var(--border); vertical-align: middle; line-height: 1.4; }
.nets th:first-child, .nets td:first-child { padding-right: 0; }
.nets tr:last-child td { border-bottom: 0; }
.net-name { display: flex; align-items: center; gap: 8px; font-weight: 600; font-size: 15px; white-space: nowrap; }
.net-name::before { content: ""; width: 8px; height: 8px; border-radius: 2px; background: var(--accent); flex-shrink: 0; }
.nets td.coin { font-family: var(--font-mono); font-size: 13px; }
.tokens { display: flex; flex-wrap: wrap; gap: 8px; }
.token { font-family: var(--font-mono); font-size: 12px; padding: 3px 7px; border-radius: 4px; background: var(--surface-2); line-height: 1.4; }
.nets td.feat { font-size: 13px; line-height: 1.5; color: var(--muted); width: 400px; }
.nets .dash { color: var(--muted); }
.footnote { display: flex; align-items: center; gap: 8px; margin-top: 56px; font-size: 13px; color: var(--muted); }
.footnote .i { font-size: 14px; }

/* ---------- API ---------- */
.api { display: grid; grid-template-columns: 460px 1fr; gap: 64px; align-items: start; }
.api__copy { display: flex; flex-direction: column; gap: 32px; }
.api__copy .heading { margin-bottom: 0; }
.methods li { display: flex; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid var(--border); font-size: 13px; line-height: 1.3; }
.methods code { font-family: var(--font-mono); color: var(--fg); }
.methods span { color: var(--muted); text-align: right; }
.api__copy .btn { align-self: flex-start; }
.code { background: #0D1117; border-radius: 12px; box-shadow: inset 0 0 0 1px var(--border); overflow: hidden; min-width: 0; }
:root[data-theme="light"] .code { box-shadow: none; }
.code__bar { display: flex; align-items: center; gap: 8px; padding: 12px 16px; border-bottom: 1px solid #23272F; }
.code__bar i { width: 10px; height: 10px; border-radius: 50%; background: #3A3F47; }
.code__tab { margin-left: 12px; font-family: var(--font-mono); font-size: 12px; color: #E6EDF3; background: #1C2230; padding: 4px 10px; border-radius: 5px; }
.code pre { margin: 0; padding: 24px; overflow-x: auto; font-family: var(--font-mono); font-size: 14px; line-height: 24px; color: #E6EDF3; }
.t-kw { color: #FF7B72; } .t-key { color: #79C0FF; } .t-p { color: #7D8590; } .t-str { color: #A5D6FF; } .t-num { color: #FFA657; }

/* ---------- Delivery ---------- */
.compare { display: grid; grid-template-columns: 1fr 1fr; gap: 24px; }
.option { background: var(--bg); border-radius: 12px; box-shadow: inset 0 0 0 1px var(--border); overflow: hidden; }
.option.is-accent { box-shadow: inset 0 0 0 1px var(--accent); }
.option__head { display: flex; align-items: center; gap: 16px; padding: 28px 32px; border-bottom: 1px solid var(--border); }
.option__title { font-family: var(--font-head); font-weight: 600; font-size: 24px; letter-spacing: -0.5px; line-height: 1.25; }
.option__tag { font-size: 14px; color: var(--muted); margin-top: 4px; }
.option dl > div { display: flex; gap: 24px; padding: 16px 32px; border-bottom: 1px solid var(--border); min-height: 78px; }
.option dl > div:first-child { min-height: 101px; }
.option dl > div:last-child { border-bottom: 0; min-height: 0; }
.option dt { width: 170px; flex-shrink: 0; font-size: 13px; color: var(--muted); padding-top: 2px; }
.option dd { flex: 1; font-size: 15px; line-height: 1.55; }

/* ---------- Pricing ---------- */
.billing { display: inline-flex; gap: 4px; padding: 4px; border-radius: 8px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); flex-shrink: 0; }
.billing button { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; border-radius: 6px; font-size: 14px; color: var(--muted); line-height: 1.3; }
.billing button[aria-pressed="true"] { background: var(--surface-2); color: var(--fg); font-weight: 500; }
.billing .disc { font-family: var(--font-mono); font-size: 11px; color: var(--accent); background: var(--accent-soft); padding: 2px 6px; border-radius: 4px; font-weight: 400; }
#pricing .heading-row { margin-bottom: 48px; }
.plans { display: grid; grid-template-columns: repeat(3, 1fr); gap: 20px; }
.plan { background: var(--bg); border-radius: 12px; box-shadow: inset 0 0 0 1px var(--border); padding: 32px; display: flex; flex-direction: column; gap: 24px; }
.plan.is-accent { background: var(--surface); box-shadow: inset 0 0 0 1px var(--accent); }
.plan__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; min-height: 26px; }
.plan__name { display: flex; align-items: center; gap: 10px; }
.plan__title { font-family: var(--font-head); font-weight: 600; font-size: 22px; }
.fmt { font-family: var(--font-mono); font-size: 11px; color: var(--muted); padding: 3px 8px; border-radius: 4px; box-shadow: inset 0 0 0 1px var(--border); }
.rec { font-size: 12px; font-weight: 600; color: var(--on-accent); background: var(--accent); padding: 4px 10px; border-radius: 999px; white-space: nowrap; }
.price { display: flex; flex-direction: column; gap: 8px; }
.price__line { display: flex; align-items: flex-end; gap: 8px; flex-wrap: wrap; }
.price__amount { font-family: var(--font-head); font-weight: 600; font-size: 44px; line-height: 1; letter-spacing: -1.5px; font-variant-numeric: tabular-nums; }
.price__unit { font-size: 15px; color: var(--muted); padding-bottom: 2px; }
.price__pct { font-size: 15px; color: var(--muted); }
.price__pct b { font-family: var(--font-mono); color: var(--accent); font-weight: 600; }
.price__pct .plus { font-family: var(--font-mono); color: var(--accent); margin-right: 2px; }
.price__setup { font-size: 13px; color: var(--muted); }
.plan .checks li { font-size: 14px; }
.plan .checks .i { margin-top: 2px; }
.pricing-note { margin-top: 48px; display: flex; gap: 10px; padding: 16px 20px; border-radius: 8px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); font-size: 14px; line-height: 1.5; color: var(--muted); }
.pricing-note .i { font-size: 16px; margin-top: 3px; }

/* ---------- Calculator ---------- */
.calc-section { padding-top: 0; }
.calc { display: grid; grid-template-columns: 1fr 480px; background: var(--surface); border-radius: 14px; box-shadow: inset 0 0 0 1px var(--border); overflow: hidden; }
.calc__inputs { padding: 40px; display: flex; flex-direction: column; gap: 32px; }
.calc__title { font-family: var(--font-head); font-weight: 600; font-size: 30px; letter-spacing: -0.8px; line-height: 1.2; margin-top: 10px; }
.slider { display: flex; flex-direction: column; gap: 14px; }
.slider__top { display: flex; align-items: center; justify-content: space-between; gap: 12px; }
.slider__top label, .field-label { font-size: 14px; color: var(--muted); }
.value-box { font-family: var(--font-mono); font-weight: 600; font-size: 15px; background: var(--bg); padding: 6px 12px; border-radius: 6px; box-shadow: inset 0 0 0 1px var(--border); font-variant-numeric: tabular-nums; }
.slider__range { display: flex; justify-content: space-between; font-family: var(--font-mono); font-size: 11px; color: var(--muted); margin-top: -2px; }
input[type="range"] { -webkit-appearance: none; appearance: none; width: 100%; height: 18px; background: transparent; margin: 0; cursor: pointer; --p: 50%; }
input[type="range"]::-webkit-slider-runnable-track { height: 4px; border-radius: 2px; background: linear-gradient(to right, var(--accent) 0 var(--p), var(--surface-2) var(--p) 100%); }
input[type="range"]::-moz-range-track { height: 4px; border-radius: 2px; background: var(--surface-2); }
input[type="range"]::-moz-range-progress { height: 4px; border-radius: 2px; background: var(--accent); }
input[type="range"]::-webkit-slider-thumb { -webkit-appearance: none; width: 18px; height: 18px; margin-top: -7px; border-radius: 50%; background: var(--fg); box-shadow: 0 0 0 3px var(--accent); border: 0; transition: transform .1s; }
input[type="range"]::-moz-range-thumb { width: 18px; height: 18px; border-radius: 50%; background: var(--fg); box-shadow: 0 0 0 3px var(--accent); border: 0; box-sizing: border-box; }
input[type="range"]:active::-webkit-slider-thumb { transform: scale(1.1); }
input[type="range"]:focus-visible { outline: none; }
input[type="range"]:focus-visible::-webkit-slider-thumb { box-shadow: 0 0 0 3px var(--accent), 0 0 0 7px rgba(var(--accent-rgb), .3); }
.segmented { display: flex; gap: 4px; padding: 4px; border-radius: 8px; background: var(--bg); box-shadow: inset 0 0 0 1px var(--border); margin-top: 12px; }
.segmented button { flex: 1; padding: 9px 0; border-radius: 6px; font-size: 14px; color: var(--muted); line-height: 1.3; transition: color .15s, background-color .15s; }
.segmented button:hover { color: var(--fg); }
.segmented button[aria-pressed="true"] { background: var(--surface-2); color: var(--fg); font-weight: 600; box-shadow: inset 0 0 0 1px var(--accent); }
.hint { display: inline-flex; align-items: center; gap: 6px; margin-top: 12px; font-size: 13px; color: var(--accent); min-height: 20px; }
.hint .i { font-size: 14px; }
button.hint { text-decoration: underline; text-underline-offset: 3px; text-decoration-color: rgba(var(--accent-rgb), .4); }
.calc__result { background: var(--bg); border-left: 1px solid var(--border); padding: 40px; display: flex; flex-direction: column; justify-content: space-between; gap: 32px; }
.calc-line { display: flex; justify-content: space-between; align-items: center; gap: 16px; padding: 18px 0; border-bottom: 1px solid var(--border); }
.calc-line__label { font-size: 15px; }
.calc-line__formula { font-family: var(--font-mono); font-size: 11px; color: var(--muted); margin-top: 4px; }
.calc-line__value { font-family: var(--font-mono); font-weight: 600; font-size: 18px; white-space: nowrap; font-variant-numeric: tabular-nums; }
.calc-line__value.is-muted { color: var(--muted); }
.calc-total { display: flex; flex-direction: column; gap: 8px; }
.calc-total__label { font-size: 14px; color: var(--muted); }
.calc-total__value { font-family: var(--font-head); font-weight: 600; font-size: 56px; letter-spacing: -2px; line-height: 1.05; color: var(--ok); font-variant-numeric: tabular-nums; }
.calc-total__value.is-neg { color: var(--err); }
.calc-total__fine { font-size: 12px; color: var(--muted); }

/* ---------- Terms ---------- */
.terms { display: grid; grid-template-columns: 1fr 1fr; border-top: 1px solid var(--border); }
.terms__col { display: flex; flex-direction: column; }
.terms__col:first-child { padding-right: 40px; }
.terms__col + .terms__col { padding-left: 40px; border-left: 1px solid var(--border); }
.term { display: flex; gap: 16px; padding: 24px 0; border-bottom: 1px solid var(--border); }
.term:last-child { border-bottom: 0; }
.term > .i { font-size: 18px; color: var(--muted); margin-top: 2px; }
.term__title { font-family: var(--font-head); font-weight: 600; font-size: 17px; margin-bottom: 6px; line-height: 1.3; }
.term__text { font-size: 14px; line-height: 1.57; color: var(--muted); }

/* ---------- Onboarding ---------- */
.timeline { display: grid; grid-template-columns: repeat(6, 1fr); }
.stage { display: flex; flex-direction: column; gap: 14px; padding-right: 16px; }
.stage__marker { display: flex; align-items: center; }
.stage__dot { width: 28px; height: 28px; border-radius: 14px; background: var(--surface); box-shadow: inset 0 0 0 1px var(--border); display: flex; align-items: center; justify-content: center; font-family: var(--font-mono); font-weight: 600; font-size: 12px; flex-shrink: 0; }
.stage__line { flex: 1; height: 1px; background: var(--border); }
.stage:last-child .stage__dot { background: var(--accent); color: var(--on-accent); box-shadow: none; }
.stage__title { font-family: var(--font-head); font-weight: 600; font-size: 17px; line-height: 1.3; }
.stage__text { font-size: 14px; line-height: 1.5; color: var(--muted); }

/* ---------- FAQ ---------- */
.faq { display: grid; grid-template-columns: 360px 1fr; gap: 80px; align-items: start; }
.faq__head { display: flex; flex-direction: column; gap: 24px; position: sticky; top: 110px; }
.faq__head .heading { margin-bottom: 0; }
.faq__head .btn { align-self: flex-start; }
.accordion { border-top: 1px solid var(--border); }
.qa { border-bottom: 1px solid var(--border); }
.qa summary { list-style: none; display: flex; align-items: center; gap: 16px; padding: 20px 0; cursor: pointer; font-family: var(--font-head); font-weight: 500; font-size: 17px; line-height: 1.3; }
.qa summary::-webkit-details-marker { display: none; }
.qa summary span { flex: 1; }
.qa summary .i { font-size: 18px; color: var(--muted); transition: transform .2s; }
.qa summary .i-minus { display: none; }
.qa[open] summary .i-plus { display: none; }
.qa[open] summary .i-minus { display: block; }
.qa summary:hover span { color: color-mix(in srgb, var(--fg) 80%, var(--accent)); }
.qa p { max-width: 640px; padding: 0 0 22px; margin-top: -8px; font-size: 15px; line-height: 1.6; color: var(--muted); }

/* ---------- Final CTA ---------- */
.cta { background: radial-gradient(ellipse 50% 60% at 20% 50%, rgba(var(--accent-rgb), .15) 0%, rgba(var(--accent-rgb), 0) 100%) no-repeat, var(--bg); }
.cta__body { display: grid; grid-template-columns: 1fr 560px; gap: 80px; align-items: center; }
.cta__copy { display: flex; flex-direction: column; gap: 28px; }
.cta__copy h2 { font-family: var(--font-head); font-weight: 600; font-size: 52px; line-height: 1.06; letter-spacing: -1.6px; }
.alt-contact { display: inline-flex; align-items: center; gap: 10px; font-family: var(--font-mono); font-size: 14px; color: var(--accent); }
.alt-contact .i { font-size: 16px; }
.alt-contact a:hover { text-decoration: underline; text-underline-offset: 3px; }
.form { background: var(--surface); border-radius: 14px; box-shadow: inset 0 0 0 1px var(--border); padding: 36px; display: flex; flex-direction: column; gap: 18px; }
.field { display: flex; flex-direction: column; gap: 8px; border: 0; padding: 0; margin: 0; min-width: 0; }
.field > label, .field legend { font-size: 13px; color: var(--muted); padding: 0; margin-bottom: 8px; }
.field > label { margin-bottom: 0; }
.input { width: 100%; background: var(--bg); border: 0; border-radius: 7px; box-shadow: inset 0 0 0 1px var(--border); padding: 12px 14px; font-size: 15px; line-height: 1.2; color: var(--fg); transition: box-shadow .15s; }
.input::placeholder { color: var(--placeholder); }
.input:focus { outline: none; box-shadow: inset 0 0 0 1px var(--accent), 0 0 0 3px rgba(var(--accent-rgb), .18); }
.input.is-invalid { box-shadow: inset 0 0 0 1px var(--err); }
textarea.input { height: 84px; min-height: 64px; line-height: 1.45; resize: vertical; }
.options { display: flex; gap: 8px; }
.opt { flex: 1; position: relative; min-width: 0; }
.opt input { position: absolute; opacity: 0; inset: 0; margin: 0; cursor: pointer; }
.opt span { display: flex; justify-content: center; align-items: center; text-align: center; padding: 10px 4px; border-radius: 7px; background: var(--bg); box-shadow: inset 0 0 0 1px var(--border); font-size: 13px; color: var(--muted); line-height: 1.2; transition: all .15s; white-space: nowrap; }
.opt:hover span { color: var(--fg); }
.opt input:checked + span { background: var(--accent-soft); box-shadow: inset 0 0 0 1px var(--accent); color: var(--fg); font-weight: 600; }
.opt input:focus-visible + span { outline: 2px solid var(--accent); outline-offset: 2px; }
.consent { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--muted); cursor: pointer; position: relative; }
.consent input { position: absolute; opacity: 0; width: 18px; height: 18px; margin: 0; }
.consent .box { width: 18px; height: 18px; border-radius: 4px; background: var(--bg); box-shadow: inset 0 0 0 1px var(--border); display: flex; align-items: center; justify-content: center; color: transparent; flex-shrink: 0; transition: all .15s; }
.consent .box .i { font-size: 12px; }
.consent input:checked + .box { background: var(--accent); box-shadow: none; color: var(--on-accent); }
.consent input:focus-visible + .box { outline: 2px solid var(--accent); outline-offset: 2px; }
.consent.is-invalid .box { box-shadow: inset 0 0 0 1px var(--err); }
.consent a { color: inherit; text-decoration: underline; text-decoration-color: color-mix(in srgb, var(--muted) 50%, transparent); text-underline-offset: 3px; }
.consent a:hover { color: var(--fg); }
.form .btn { padding: 15px 22px; }
.form .btn[disabled] { opacity: .6; cursor: progress; }
.form__status { font-size: 13px; line-height: 1.5; min-height: 0; }
.form__status.is-error { color: var(--err); }
.form-done { display: none; flex-direction: column; align-items: flex-start; gap: 14px; padding: 12px 0; }
.form-done .icon-box { background: color-mix(in srgb, var(--ok) 15%, transparent); color: var(--ok); }
.form-done h3 { font-family: var(--font-head); font-weight: 600; font-size: 24px; letter-spacing: -0.4px; }
.form-done p { color: var(--muted); font-size: 15px; }
.form.is-done > :not(.form-done) { display: none; }
.form.is-done .form-done { display: flex; }
.hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }

/* ---------- Footer ---------- */
.footer { border-top: 1px solid var(--border); padding: 56px 0 40px; }
.footer__top { display: flex; justify-content: space-between; gap: 40px; padding-bottom: 40px; }
.footer__brand { max-width: 360px; display: flex; flex-direction: column; gap: 14px; }
.footer__brand .logo { font-size: 17px; }
.footer__brand .logo__mark { width: 20px; height: 20px; }
.footer__brand p { font-size: 14px; line-height: 1.55; color: var(--muted); }
.footer__links { display: flex; gap: 80px; }
.footer__col { display: flex; flex-direction: column; gap: 12px; }
.footer__col h4 { font-family: var(--font-mono); font-weight: 400; font-size: 12px; letter-spacing: .5px; color: var(--fg); margin-bottom: 2px; }
.footer__col a { font-size: 14px; line-height: 1.25; color: var(--muted); transition: color .15s; }
.footer__col a:hover { color: var(--fg); }
.footer__bottom { display: flex; justify-content: space-between; gap: 24px; padding-top: 24px; border-top: 1px solid var(--border); font-size: 13px; color: var(--muted); }

/* ---------- Reveal ---------- */
.reveal { opacity: 0; transform: translateY(16px); transition: opacity .6s ease, transform .6s ease; }
.reveal.is-in { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .reveal { opacity: 1; transform: none; transition: none; }
}

/* ---------- Responsive ---------- */
@media (max-width: 1280px) {
  .nav { gap: 22px; }
  .security__body { grid-template-columns: minmax(0, 460px) 1fr; gap: 48px; }
  .api { grid-template-columns: minmax(0, 400px) 1fr; gap: 48px; }
  .calc { grid-template-columns: 1fr 420px; }
  .cta__body { grid-template-columns: 1fr minmax(0, 520px); gap: 56px; }
  .faq { grid-template-columns: 320px 1fr; gap: 56px; }
}

@media (max-width: 1100px) {
  :root { --section-y: 96px; }
  .nav, .header__actions .btn, .header__actions .lang { display: none; }
  .burger { display: inline-flex; }
  .mobile-nav { display: block; position: fixed; inset: 75px 0 auto 0; background: var(--bg); border-bottom: 1px solid var(--border); padding: 8px var(--gutter) 24px; transform: translateY(-8px); opacity: 0; pointer-events: none; transition: opacity .2s, transform .2s; z-index: 49; }
  .mobile-nav.is-open { opacity: 1; transform: none; pointer-events: auto; }
  .mobile-nav a.m-link { display: block; padding: 14px 0; border-bottom: 1px solid var(--border); font-size: 16px; color: var(--fg); }
  .mobile-nav__foot { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-top: 20px; }
  .mobile-nav__foot .lang { display: flex; }
  .hero h1 { font-size: 60px; letter-spacing: -1.8px; }
  .facts { grid-template-columns: repeat(3, 1fr); }
  .fact:nth-child(4) { border-left: 0; }
  .fact:nth-child(n+4) { border-top: 1px solid var(--border); }
  .grid-3 { grid-template-columns: 1fr; }
  .card { max-width: 720px; }
  .flow { flex-direction: column; }
  .flow__arrow { width: auto; height: 32px; transform: rotate(90deg); }
  .features-row { grid-template-columns: 1fr; }
  .features-row + .features-row { margin-top: 0; border-top: 0; }
  .feature, .feature:first-child { padding: 28px 0; border-bottom: 1px solid var(--border); }
  .feature + .feature { border-left: 0; }
  .features-row + .features-row .feature:last-child { border-bottom: 0; }
  .security__body { grid-template-columns: 1fr; }
  .diagram { max-width: 560px; }
  .heading-row { flex-direction: column; align-items: flex-start; }
  .api { grid-template-columns: 1fr; }
  .compare { grid-template-columns: 1fr; }
  .plans { grid-template-columns: 1fr; max-width: 560px; }
  .calc { grid-template-columns: 1fr; }
  .calc__result { border-left: 0; border-top: 1px solid var(--border); }
  .timeline { grid-template-columns: repeat(3, 1fr); row-gap: 40px; }
  .faq { grid-template-columns: 1fr; gap: 40px; }
  .faq__head { position: static; }
  .cta__body { grid-template-columns: 1fr; }
  .form { max-width: 620px; }
  .footer__top { flex-direction: column; }
}

@media (max-width: 720px) {
  :root { --gutter: 16px; --section-y: 72px; }
  body { font-size: 15px; }
  .header__inner { height: 64px; }
  .mobile-nav { inset: 65px 0 auto 0; }
  html { scroll-padding-top: 72px; }
  .h2 { font-size: 32px; letter-spacing: -0.8px; }
  .lead { font-size: 16px; }
  .heading { margin-bottom: 40px; }
  .hero { padding-top: 56px; }
  .hero__copy { gap: 22px; margin-bottom: 48px; }
  .hero h1 { font-size: 42px; letter-spacing: -1.2px; }
  .hero__sub { font-size: 16px; }
  .hero__sub br { display: none; }
  .hero__buttons { flex-direction: column; width: 100%; }
  .hero__buttons .btn { width: 100%; }
  .mockup { min-height: 0; }
  .mockup__side { display: none; }
  .mockup__main { padding: 18px 16px; }
  .facts { grid-template-columns: 1fr 1fr; }
  .fact { padding: 24px 16px; }
  .fact__value { font-size: 30px; }
  .fact:nth-child(n) { border-left: 0; border-top: 0; }
  .fact:nth-child(2n) { border-left: 1px solid var(--border); }
  .fact:nth-child(n+3) { border-top: 1px solid var(--border); }
  .fact:last-child { grid-column: 1 / -1; border-left: 0; }
  .card { padding: 24px; }
  .step { padding: 24px 20px; }
  .statuses { margin-top: 40px; }
  .diagram { padding: 20px 16px; }
  .node { padding: 14px; gap: 12px; flex-wrap: wrap; }
  .node .user-tag { order: -1; margin-left: auto; }
  .node__text { flex-basis: 100%; }
  .provider-note { width: 100%; }
  .nets table { min-width: 0; }
  .nets thead { display: none; }
  .nets table, .nets tbody, .nets td { display: block; }
  .nets tr { display: grid; grid-template-columns: 1fr auto; gap: 10px 12px; padding: 16px 18px; border-bottom: 1px solid var(--border); }
  .nets tr:last-child { border-bottom: 0; }
  .nets td, .nets th:first-child, .nets td:first-child { padding: 0; border: 0; }
  .nets td.coin { justify-self: end; align-self: center; color: var(--muted); }
  .nets td:nth-child(3), .nets td.feat { grid-column: 1 / -1; width: auto; }
  .nets td:nth-child(3):has(.dash) { display: none; }
  .footnote { margin-top: 32px; }
  .methods li { flex-direction: column; gap: 4px; }
  .methods span { text-align: left; }
  .code pre { font-size: 12.5px; line-height: 21px; padding: 18px; }
  .option__head { padding: 22px 20px; }
  .option dl > div, .option dl > div:first-child { flex-direction: column; gap: 4px; padding: 14px 20px; min-height: 0; }
  .option dt { width: auto; }
  .billing { align-self: stretch; }
  .billing button { flex: 1; justify-content: center; }
  .plan { padding: 24px; }
  .price__amount { font-size: 38px; }
  .calc__inputs, .calc__result { padding: 24px 20px; }
  .calc__title { font-size: 26px; }
  .calc-total__value { font-size: 44px; }
  .segmented button { font-size: 13px; }
  .terms { grid-template-columns: 1fr; }
  .terms__col:first-child { padding-right: 0; }
  .terms__col:first-child .term:last-child { border-bottom: 1px solid var(--border); }
  .terms__col + .terms__col { padding-left: 0; border-left: 0; }
  .timeline { grid-template-columns: 1fr; row-gap: 0; }
  .stage { flex-direction: row; flex-wrap: wrap; gap: 6px 14px; padding: 0 0 24px 0; position: relative; }
  .stage__marker { width: 28px; }
  .stage__line { display: none; }
  .stage::before { content: ""; position: absolute; left: 14px; top: 32px; bottom: 4px; width: 1px; background: var(--border); }
  .stage:last-child::before { display: none; }
  .stage__title { flex: 1; align-self: center; }
  .stage__text { flex-basis: 100%; padding-left: 42px; }
  .qa summary { font-size: 16px; }
  .cta__copy h2 { font-size: 36px; letter-spacing: -1px; }
  .form { padding: 22px 18px; }
  .options { flex-wrap: wrap; }
  .options .opt { flex: 1 1 calc(50% - 4px); }
  .footer__links { flex-wrap: wrap; gap: 32px 48px; }
  .footer__bottom { flex-direction: column; gap: 8px; }
}

@media (max-width: 380px) {
  .hero h1 { font-size: 36px; }
  .h2 { font-size: 28px; }
}
