/* =========================================================
   Pump.fun Volume Bot · design system
   Premium dark theme · Solana-aware accents · glassmorphism
   ========================================================= */

/* ---------- Tokens ---------- */
:root {
 --bg:        #07080F;
 --bg-2:      #0A0B14;
 --surface:   #11131F;
 --surface-2: #161827;
 --surface-3: #1B1E30;
 --line:      rgba(255,255,255,.07);
 --line-2:    rgba(255,255,255,.14);
 --text:      #F4F5FB;
 --text-2:    #C2C7DE;
 --muted:     #8A90AC;
 --muted-2:   #5C6182;

 --accent-a:  #9945FF;   /* Solana purple */
 --accent-b:  #14F195;   /* Solana green  */
 --accent-c:  #00D1FF;   /* electric cyan */
 --accent-d:  #FF6B9F;   /* hot pink (pump.fun-coded) */

 --grad-1: linear-gradient(135deg, #9945FF 0%, #14F195 100%);
 --grad-2: linear-gradient(135deg, #00D1FF 0%, #9945FF 100%);
 --grad-3: linear-gradient(135deg, #FF6B9F 0%, #9945FF 60%, #14F195 100%);
 --grad-text: linear-gradient(92deg, #C9A6FF 0%, #14F195 50%, #00D1FF 100%);

 --shadow-1: 0 1px 2px rgba(0,0,0,.4), 0 4px 16px rgba(0,0,0,.4);
 --shadow-2: 0 6px 32px rgba(0,0,0,.55), 0 24px 64px rgba(153,69,255,.07);
 --shadow-glow: 0 0 0 1px rgba(255,255,255,.06), 0 12px 40px rgba(153,69,255,.18);

 --radius-xs: 6px;
 --radius-sm: 10px;
 --radius:    14px;
 --radius-lg: 20px;
 --radius-xl: 28px;

 --container: 1200px;
 --container-narrow: 920px;

 --font:  "Inter", system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
 --font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;

 --ease: cubic-bezier(.22,.61,.36,1);
 --ease-out: cubic-bezier(.16,1,.3,1);
}

/* ---------- Reset / base ---------- */
* { box-sizing: border-box; }
html { -webkit-text-size-adjust: 100%; scroll-behavior: smooth; }
html, body { margin: 0; padding: 0; }
body {
 background: var(--bg);
 color: var(--text);
 font-family: var(--font);
 font-feature-settings: "ss01","cv11";
 -webkit-font-smoothing: antialiased;
 -moz-osx-font-smoothing: grayscale;
 line-height: 1.55;
 overflow-x: hidden;
 background-image:
  radial-gradient(1200px 700px at 50% -20%, rgba(153,69,255,.18), transparent 60%),
  radial-gradient(900px 600px at 110% 10%, rgba(20,241,149,.06), transparent 60%);
 background-attachment: fixed;
}
img, svg, video { display: block; max-width: 100%; }
a { color: inherit; text-decoration: none; }
button { font: inherit; color: inherit; background: none; border: 0; cursor: pointer; }
input, select, textarea { font: inherit; color: inherit; }
ul, ol { padding: 0; margin: 0; list-style: none; }
h1, h2, h3, h4 { margin: 0; font-weight: 700; letter-spacing: -.02em; line-height: 1.15; }
p { margin: 0; }

::selection { background: rgba(153,69,255,.4); color: #fff; }
:focus-visible { outline: 2px solid var(--accent-c); outline-offset: 3px; border-radius: 6px; }

.skip-link {
 position: absolute; left: -10000px; top: auto; width: 1px; height: 1px; overflow: hidden;
}
.skip-link:focus { left: 16px; top: 16px; width: auto; height: auto; padding: 8px 12px; background: var(--surface); border: 1px solid var(--line-2); border-radius: var(--radius-sm); z-index: 1000; }

.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; }

/* ---------- Layout ---------- */
.container { width: 100%; max-width: var(--container); margin: 0 auto; padding: 0 24px; }
.section { padding: 96px 0; position: relative; }
.section + .section { padding-top: 0; }
.section-head { max-width: 760px; margin: 0 auto 48px; text-align: center; }
.eyebrow {
 display: inline-block;
 font-family: var(--font-mono);
 font-size: 11px;
 font-weight: 500;
 letter-spacing: .18em;
 text-transform: uppercase;
 color: var(--accent-b);
 padding: 6px 12px;
 border: 1px solid rgba(20,241,149,.25);
 background: rgba(20,241,149,.06);
 border-radius: 999px;
 margin-bottom: 16px;
}
.h-xl {
 font-size: clamp(28px, 4.2vw, 48px);
 font-weight: 800;
 letter-spacing: -.025em;
 line-height: 1.08;
}
.lead { font-size: clamp(15px, 1.4vw, 17px); color: var(--text-2); }
.muted { color: var(--muted); }
.grad { background: var(--grad-text); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }

/* ---------- Buttons ---------- */
.btn {
 display: inline-flex; align-items: center; justify-content: center; gap: 8px;
 padding: 11px 18px;
 border-radius: 12px;
 font-weight: 600;
 font-size: 14px;
 letter-spacing: -.005em;
 transition: transform .25s var(--ease), box-shadow .25s var(--ease), background .25s var(--ease), border-color .25s var(--ease);
 white-space: nowrap;
 user-select: none;
 will-change: transform;
}
.btn-sm  { padding: 8px 14px; font-size: 13px; border-radius: 10px; }
.btn-lg  { padding: 14px 22px; font-size: 15px; border-radius: 14px; }
.btn-xl  { padding: 17px 28px; font-size: 16px; border-radius: 16px; }
.btn-block { width: 100%; }

.btn-primary {
 color: #0A0B14;
 background: var(--grad-1);
 box-shadow: 0 6px 22px rgba(20,241,149,.22), 0 1px 0 rgba(255,255,255,.4) inset;
 position: relative;
 overflow: hidden;
}
.btn-primary::before {
 content: ''; position: absolute; inset: 0;
 background: linear-gradient(110deg, transparent 35%, rgba(255,255,255,.55) 50%, transparent 65%);
 transform: translateX(-150%);
 transition: transform .9s var(--ease-out);
}
.btn-primary:hover {
 transform: translateY(-1px);
 box-shadow: 0 12px 32px rgba(20,241,149,.32), 0 1px 0 rgba(255,255,255,.5) inset;
}
.btn-primary:hover::before { transform: translateX(150%); }
.btn-primary:active { transform: translateY(0); }

.btn-ghost {
 color: var(--text);
 background: rgba(255,255,255,.04);
 border: 1px solid var(--line-2);
 backdrop-filter: blur(10px);
}
.btn-ghost:hover { background: rgba(255,255,255,.08); border-color: rgba(255,255,255,.22); transform: translateY(-1px); }

.cta-arrow { transition: transform .3s var(--ease); }
.btn:hover .cta-arrow { transform: translateX(3px); }

/* ---------- Announce bar ---------- */
.announce-bar {
 position: relative; z-index: 70;
 background: linear-gradient(90deg, rgba(153,69,255,.18) 0%, rgba(20,241,149,.14) 100%);
 border-bottom: 1px solid rgba(255,255,255,.08);
 font-size: 12.5px;
}
.announce-inner { display: flex; align-items: center; justify-content: center; gap: 14px; padding: 9px 24px; flex-wrap: wrap; max-width: var(--container); margin: 0 auto; }
.ann-dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent-b); box-shadow: 0 0 0 0 rgba(20,241,149,.7); animation: pulse 2s ease-out infinite; flex-shrink: 0; }
.ann-text { color: var(--text-2); }
.ann-link { color: var(--text); font-weight: 600; transition: color .2s var(--ease); }
.ann-link:hover { color: var(--accent-b); }

/* ---------- Header ---------- */
.site-header {
 position: sticky; top: 0; z-index: 60;
 backdrop-filter: blur(20px) saturate(160%);
 -webkit-backdrop-filter: blur(20px) saturate(160%);
 background: rgba(7,8,15,.6);
 border-bottom: 1px solid transparent;
 transition: background .3s var(--ease), border-color .3s var(--ease), padding .3s var(--ease);
}
.site-header::after {
 content: ''; position: absolute; bottom: -1px; left: 0; right: 0; height: 1px;
 background: linear-gradient(90deg, transparent, rgba(153,69,255,.4), rgba(20,241,149,.4), transparent);
 opacity: 0; transition: opacity .35s var(--ease);
}
.site-header.is-scrolled { background: rgba(7,8,15,.88); border-bottom-color: var(--line); }
.site-header.is-scrolled::after { opacity: .8; }

.header-inner {
 display: grid;
 grid-template-columns: auto 1fr auto;
 align-items: center; gap: 24px;
 padding: 14px 24px;
 max-width: var(--container);
 margin: 0 auto;
}
.brand {
 display: inline-flex; align-items: center; gap: 12px;
 transition: transform .25s var(--ease);
}
.brand:hover { transform: translateY(-1px); }
.brand-mark {
 display: inline-flex; line-height: 0;
 filter: drop-shadow(0 8px 22px rgba(153,69,255,.32));
 transition: filter .3s var(--ease);
}
.brand:hover .brand-mark { filter: drop-shadow(0 12px 28px rgba(153,69,255,.5)); }
.brand-wordmark {
 display: inline-flex;
 align-items: baseline;
 gap: 6px;
 font-size: 19px;
 font-weight: 800;
 letter-spacing: -.022em;
 line-height: 1;
}
.bw-1 {
 font-weight: 900;
 background: var(--grad-text);
 -webkit-background-clip: text; background-clip: text;
 -webkit-text-fill-color: transparent;
}
.bw-2 {
 color: var(--text);
 font-weight: 600;
}

.primary-nav {
 display: flex; gap: 2px; align-items: center; justify-content: center;
 padding: 4px;
 background: rgba(255,255,255,.025);
 border: 1px solid var(--line);
 border-radius: 14px;
 backdrop-filter: blur(8px);
 width: max-content;
 margin: 0 auto;
}
.primary-nav a {
 padding: 9px 16px; border-radius: 10px;
 font-size: 13.5px; font-weight: 500;
 color: var(--text-2);
 transition: color .2s var(--ease), background .2s var(--ease);
 white-space: nowrap;
}
.primary-nav a:hover { color: var(--text); background: rgba(255,255,255,.05); }
.primary-nav a[aria-current="page"] {
 color: var(--text);
 background: linear-gradient(180deg, rgba(153,69,255,.18), rgba(20,241,149,.08));
 box-shadow: 0 0 0 1px rgba(153,69,255,.3) inset;
}

.header-tools { display: flex; align-items: center; gap: 10px; justify-content: flex-end; }

.lang-switcher { position: relative; }
.lang-switcher summary {
 list-style: none; cursor: pointer;
 display: inline-flex; align-items: center; gap: 6px;
 padding: 9px 11px; border-radius: 11px;
 background: rgba(255,255,255,.03); border: 1px solid var(--line);
 font-size: 12px; font-weight: 600;
 color: var(--text-2);
 font-family: var(--font-mono);
 letter-spacing: .04em;
 transition: background .2s var(--ease), border-color .2s var(--ease);
}
.lang-switcher summary::-webkit-details-marker { display: none; }
.lang-switcher summary:hover { color: var(--text); background: rgba(255,255,255,.07); border-color: var(--line-2); }
.lang-switcher .ls-chev { color: var(--muted); transition: transform .25s var(--ease); }
.lang-switcher[open] .ls-chev { transform: rotate(180deg); color: var(--text); }
.lang-menu {
 position: absolute; top: calc(100% + 8px); right: 0;
 min-width: 180px;
 background: rgba(22,24,39,.96);
 border: 1px solid var(--line-2);
 border-radius: var(--radius-sm);
 padding: 6px;
 box-shadow: var(--shadow-2);
 backdrop-filter: blur(20px);
 z-index: 100;
}
.lang-menu li a {
 display: flex; align-items: center; padding: 10px 14px; border-radius: 8px;
 font-size: 14px; color: var(--text-2);
 transition: background .15s var(--ease), color .15s var(--ease);
}
.lang-menu li a:hover { background: rgba(255,255,255,.06); color: var(--text); }
.lang-menu li a[aria-current="true"] { background: linear-gradient(135deg, rgba(153,69,255,.2), rgba(20,241,149,.06)); color: var(--text); font-weight: 600; }
.lang-menu .ln { font-weight: 500; }

.mobile-toggle {
 display: none; width: 42px; height: 42px; border-radius: 11px;
 background: rgba(255,255,255,.04); border: 1px solid var(--line);
 padding: 0; flex-direction: column; align-items: center; justify-content: center; gap: 4px;
 transition: background .2s var(--ease);
}
.mobile-toggle:hover { background: rgba(255,255,255,.08); }
.mobile-toggle span { width: 18px; height: 2px; background: var(--text); border-radius: 2px; transition: transform .25s var(--ease), opacity .2s var(--ease); }
.mobile-toggle[aria-expanded="true"] span:nth-child(1) { transform: translateY(6px) rotate(45deg); }
.mobile-toggle[aria-expanded="true"] span:nth-child(2) { opacity: 0; }
.mobile-toggle[aria-expanded="true"] span:nth-child(3) { transform: translateY(-6px) rotate(-45deg); }

.mobile-nav {
 display: none; padding: 20px 24px 28px; border-top: 1px solid var(--line);
 background: rgba(7,8,15,.96);
 backdrop-filter: blur(20px);
}
.mobile-nav nav { display: flex; flex-direction: column; gap: 2px; }
.mobile-nav a:not(.btn) {
 padding: 14px 14px; border-radius: 10px;
 font-size: 16px; font-weight: 600; color: var(--text-2);
 transition: background .2s var(--ease), color .2s var(--ease);
}
.mobile-nav a:not(.btn):hover { background: rgba(255,255,255,.04); color: var(--text); }
.mobile-launch { margin-top: 16px; }
.mobile-langs { margin-top: 24px; padding-top: 20px; border-top: 1px solid var(--line); }
.ml-h { display: block; font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-bottom: 10px; }
.mobile-langs ul { display: flex; flex-wrap: wrap; gap: 6px; }
.mobile-langs li a {
 padding: 8px 14px; border-radius: 999px;
 font-size: 13px; color: var(--text-2);
 background: rgba(255,255,255,.03); border: 1px solid var(--line);
}
.mobile-langs li a[aria-current="true"] { background: rgba(153,69,255,.18); color: var(--text); border-color: rgba(153,69,255,.4); }

/* ---------- HERO ---------- */
.hero { position: relative; padding: 80px 0 100px; isolation: isolate; overflow: hidden; }
.hero-bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.hero-grid {
 position: absolute; inset: -2px;
 background-image:
  linear-gradient(rgba(255,255,255,.04) 1px, transparent 1px),
  linear-gradient(90deg, rgba(255,255,255,.04) 1px, transparent 1px);
 background-size: 56px 56px;
 mask-image: radial-gradient(ellipse 80% 60% at 50% 30%, #000 0%, transparent 75%);
 -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 30%, #000 0%, transparent 75%);
}
.hero-rays {
 position: absolute; left: 50%; top: -10%; width: 1400px; height: 700px;
 transform: translateX(-50%);
 background:
  conic-gradient(from 220deg at 50% 0%,
   transparent 0deg,
   rgba(153,69,255,.2) 30deg,
   transparent 60deg,
   rgba(20,241,149,.18) 90deg,
   transparent 120deg,
   rgba(0,209,255,.16) 150deg,
   transparent 180deg);
 filter: blur(40px); opacity: .6;
 mask-image: linear-gradient(180deg, #000 0%, transparent 90%);
 -webkit-mask-image: linear-gradient(180deg, #000 0%, transparent 90%);
}
.hero-orb {
 position: absolute; border-radius: 50%; filter: blur(90px);
 opacity: .5;
 animation: orb 18s ease-in-out infinite;
 will-change: transform;
}
.hero-orb-a { width: 540px; height: 540px; background: #9945FF; top: -160px; left: -120px; }
.hero-orb-b { width: 480px; height: 480px; background: #14F195; top: 60px; right: -160px; opacity: .35; animation-delay: -6s; }
.hero-orb-c { width: 360px; height: 360px; background: #FF6B9F; bottom: -140px; left: 35%; opacity: .25; animation-delay: -12s; }
@keyframes orb {
 0%, 100% { transform: translate3d(0, 0, 0) scale(1); }
 33% { transform: translate3d(60px, -40px, 0) scale(1.08); }
 66% { transform: translate3d(-30px, 30px, 0) scale(.94); }
}
.hero-noise {
 position: absolute; inset: 0; opacity: .05; mix-blend-mode: overlay;
 background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='200' height='200'><filter id='n'><feTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='2'/></filter><rect width='100%25' height='100%25' filter='url(%23n)' opacity='.5'/></svg>");
}

.hero-inner { position: relative; max-width: 1180px; text-align: center; }

.dot { width: 7px; height: 7px; border-radius: 50%; background: var(--accent-b); display: inline-block; }
.dot-pulse { box-shadow: 0 0 0 0 rgba(20,241,149,.7); animation: pulse 2s ease-out infinite; }
@keyframes pulse {
 0% { box-shadow: 0 0 0 0 rgba(20,241,149,.7); }
 70% { box-shadow: 0 0 0 9px rgba(20,241,149,0); }
 100% { box-shadow: 0 0 0 0 rgba(20,241,149,0); }
}

/* ---------- Corporate-modern H1 ----------
   White, confident text. Accent phrase stays white with a refined Solana-spectrum
   underline below + a soft radial glow behind it. No coloured-text gradient —
   the headline reads as clean, modern, premium (Linear / Vercel / Stripe register).
*/
.hero-h1 {
 font-size: clamp(36px, 5.8vw, 72px);
 font-weight: 800;
 letter-spacing: -.034em;
 line-height: 1.1;
 margin: 0 auto 32px;
 max-width: 22ch;
 color: var(--text);
}
/* Two-tier scale: lead clause is the visual headline, tail clause smaller. */
.hero-h1-lead {
 display: block;
 font-size: 1.12em;
 letter-spacing: -.038em;
 line-height: 1.04;
}
.hero-h1-tail {
 display: block;
 font-size: 0.78em;
 font-weight: 700;
 letter-spacing: -.025em;
 line-height: 1.18;
 margin-top: .16em;
 color: var(--text-2);
}
.hero-h1-tail .hero-h1-accent { color: var(--text); }
.hero-h1-accent {
 position: relative;
 display: inline-block;
 color: var(--text);
 white-space: nowrap;
 padding: 0 .04em .08em;
 isolation: isolate;
}
/* Soft radial glow behind the accent phrase */
.hero-h1-accent::before {
 content: '';
 position: absolute;
 left: 50%; top: 50%;
 width: 110%; height: 130%;
 transform: translate(-50%, -50%);
 background: radial-gradient(ellipse,
   rgba(20,241,149,.18) 0%,
   rgba(0,209,255,.10) 35%,
   rgba(153,69,255,.08) 60%,
   transparent 75%);
 filter: blur(8px);
 z-index: -1;
 pointer-events: none;
}
/* Solana-spectrum underline */
.hero-h1-accent::after {
 content: '';
 position: absolute;
 left: 4%; right: 4%; bottom: -.02em;
 height: .075em;
 background: linear-gradient(90deg,
   rgba(153,69,255,0) 0%,
   #9945FF 18%,
   #00D1FF 50%,
   #14F195 82%,
   rgba(20,241,149,0) 100%);
 border-radius: 999px;
 box-shadow: 0 0 16px rgba(20,241,149,.35);
}

.hero-sub {
 font-family: var(--font);
 font-size: clamp(16px, 1.5vw, 20px);
 color: var(--text-2);
 max-width: 700px;
 margin: 0 auto 44px;
 line-height: 1.55;
 letter-spacing: -.012em;
 font-weight: 400;
}
.hero-sub strong {
 color: var(--text);
 font-weight: 600;
 letter-spacing: -.015em;
}

.hero-cta { display: flex; gap: 12px; justify-content: center; flex-wrap: wrap; margin-bottom: 48px; }

/* Trust signals — single thin row, mono micro-text. No badges, no pills. */
.hero-trust {
 display: flex; gap: 28px; justify-content: center; flex-wrap: wrap;
 margin: 0 auto 72px;
 padding: 18px 0;
 border-top: 1px solid var(--line);
 border-bottom: 1px solid var(--line);
 max-width: 920px;
}
.hero-trust li {
 display: inline-flex; align-items: center; gap: 8px;
 font-family: var(--font-mono);
 font-size: 11.5px;
 letter-spacing: .04em;
 color: var(--text-2);
}
.hero-trust li svg {
 color: var(--accent-b);
 opacity: .85;
}

/* Hero stage — terminal + side metric cards */
.hero-stage {
 display: grid;
 grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr);
 gap: 16px;
 max-width: 1100px;
 margin: 0 auto 56px;
 text-align: left;
}

.hero-terminal {
 background: linear-gradient(180deg, rgba(22,24,39,.92), rgba(11,13,22,.92));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
 box-shadow: var(--shadow-2), 0 0 0 1px rgba(153,69,255,.1);
 overflow: hidden;
 backdrop-filter: blur(16px);
 position: relative;
}
.hero-terminal::before {
 content: ''; position: absolute; inset: 0; border-radius: inherit; padding: 1px;
 background: linear-gradient(135deg, rgba(153,69,255,.5), rgba(20,241,149,.3) 50%, transparent 70%);
 -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
 -webkit-mask-composite: xor; mask-composite: exclude;
 pointer-events: none; opacity: .6;
}

.hero-side { display: flex; flex-direction: column; gap: 12px; }
.hs-card {
 position: relative;
 padding: 18px 20px;
 background: linear-gradient(180deg, rgba(22,24,39,.85), rgba(17,19,31,.85));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(12px);
 display: flex; flex-direction: column; gap: 4px;
 overflow: hidden;
 box-shadow: var(--shadow-1);
}
.hs-card::before {
 content: ''; position: absolute; inset: 0; pointer-events: none;
 background: radial-gradient(120% 80% at 100% 0%, rgba(153,69,255,.18), transparent 50%);
}
.hs-card-2::before { background: radial-gradient(120% 80% at 100% 0%, rgba(20,241,149,.14), transparent 50%); }
.hs-card-3::before { background: radial-gradient(120% 80% at 100% 0%, rgba(0,209,255,.14), transparent 50%); }
.hs-l { font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); }
.hs-v { font-size: 28px; font-weight: 800; letter-spacing: -.025em; color: var(--text); font-variant-numeric: tabular-nums; line-height: 1; }
.hs-v-grad { background: var(--grad-text); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.hs-trend { font-family: var(--font-mono); font-size: 11px; color: var(--muted); }
.hs-trend.up { color: var(--accent-b); }

.ht-bar {
 display: flex; align-items: center; gap: 6px;
 padding: 11px 16px; border-bottom: 1px solid var(--line);
 font-family: var(--font-mono); font-size: 11px; color: var(--muted);
 background: linear-gradient(180deg, rgba(255,255,255,.02), transparent);
}
.ht-dot { width: 9px; height: 9px; border-radius: 50%; background: #2A2D42; }
.ht-dot:nth-child(1) { background: #FF5F57; }
.ht-dot:nth-child(2) { background: #FEBC2E; }
.ht-dot:nth-child(3) { background: #28C840; }
.ht-title { margin-left: 12px; color: var(--text-2); }
.ht-meta { margin-left: auto; color: var(--accent-b); }
.ht-meta b { color: var(--text); font-weight: 600; }
.ht-feed {
 padding: 4px 0;
 font-family: var(--font-mono); font-size: 12px;
}
.ht-feed li {
 display: grid;
 grid-template-columns: 110px 56px 100px 1fr 100px;
 align-items: center; gap: 10px;
 padding: 7px 16px;
 border-bottom: 1px dashed rgba(255,255,255,.04);
 white-space: nowrap;
 animation: row-in .5s var(--ease-out);
}
.ht-feed li:last-child { border-bottom: 0; }
@keyframes row-in {
 from { opacity: 0; transform: translateY(8px); }
 to   { opacity: 1; transform: translateY(0); }
}
.hf-t { color: var(--muted); }
.hf-tag {
 display: inline-block; padding: 2px 6px; border-radius: 4px;
 font-size: 10px; font-weight: 700; letter-spacing: .04em;
 text-align: center;
}
.hf-tag.ok  { background: rgba(20,241,149,.14); color: var(--accent-b); }
.hf-tag.sell{ background: rgba(255,107,159,.14); color: var(--accent-d); }
.hf-amt { color: var(--text); font-weight: 600; }
.hf-via { color: var(--text-2); overflow: hidden; text-overflow: ellipsis; }
.hf-w { color: var(--muted-2); text-align: right; }

/* Hero marquee */
.hero-marquee {
 position: relative;
 max-width: 1100px; margin: 0 auto;
 padding: 14px 0;
 background: rgba(255,255,255,.02);
 border: 1px solid var(--line);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(8px);
 overflow: hidden;
 mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
 -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 8%, #000 92%, transparent 100%);
}
.hm-track { display: flex; gap: 12px; width: max-content; animation: scroll-x 32s linear infinite; }
.hm-row { display: flex; gap: 12px; align-items: center; padding: 0 6px; }
.hm-label {
 font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase;
 color: var(--muted); padding: 0 8px; flex-shrink: 0;
}
.hm-chip {
 display: inline-flex; align-items: center; gap: 10px;
 padding: 8px 14px; border-radius: 10px;
 background: rgba(255,255,255,.03); border: 1px solid var(--line);
 white-space: nowrap;
}
.hm-chip img { border-radius: 4px; flex-shrink: 0; }
.hm-name { font-size: 13.5px; font-weight: 600; color: var(--text); }
.hm-tag { font-size: 11.5px; color: var(--muted); padding-left: 6px; border-left: 1px solid var(--line); }
@keyframes scroll-x {
 from { transform: translateX(0); }
 to   { transform: translateX(-50%); }
}
.hero-marquee:hover .hm-track { animation-play-state: paused; }
.ht-bar {
 display: flex; align-items: center; gap: 6px;
 padding: 10px 14px; border-bottom: 1px solid var(--line);
 font-family: var(--font-mono); font-size: 11px; color: var(--muted);
}
.ht-dot { width: 9px; height: 9px; border-radius: 50%; background: #2A2D42; }
.ht-dot:nth-child(1) { background: #FF5F57; }
.ht-dot:nth-child(2) { background: #FEBC2E; }
.ht-dot:nth-child(3) { background: #28C840; }
.ht-title { margin-left: 12px; color: var(--text-2); }
.ht-meta { margin-left: auto; color: var(--accent-b); }
.ht-meta b { color: var(--text); font-weight: 600; }
.hf-t { color: var(--muted); }
.hf-tag {
 display: inline-block; padding: 2px 6px; border-radius: 4px;
 font-size: 10px; font-weight: 700; letter-spacing: .04em;
 text-align: center;
}
.hf-tag.ok  { background: rgba(20,241,149,.12); color: var(--accent-b); }
.hf-tag.sell{ background: rgba(255,107,159,.12); color: var(--accent-d); }
.hf-amt { color: var(--text); font-weight: 600; }
.hf-via { color: var(--text-2); overflow: hidden; text-overflow: ellipsis; }
.hf-w { color: var(--muted-2); text-align: right; }

/* ---------- STATS ---------- */
.stats { padding: 0 0 96px; position: relative; }
.stats-grid {
 display: grid;
 grid-template-columns: repeat(4, 1fr); gap: 16px;
 padding: 32px;
 background:
  linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0)),
  rgba(17,19,31,.6);
 border: 1px solid var(--line);
 border-radius: var(--radius-xl);
 backdrop-filter: blur(8px);
}
.stat { text-align: center; }
.stat-num {
 display: block;
 font-size: clamp(28px, 4vw, 44px);
 font-weight: 800;
 letter-spacing: -.025em;
 background: var(--grad-text);
 -webkit-background-clip: text; background-clip: text;
 -webkit-text-fill-color: transparent;
 font-variant-numeric: tabular-nums;
}
.stat-lbl { display: block; margin-top: 4px; font-size: 13px; color: var(--muted); letter-spacing: .01em; }

/* ---------- FEATURES ---------- */
.features-grid {
 display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px;
}
.feature-card {
 position: relative;
 padding: 28px 24px 24px;
 background: linear-gradient(180deg, rgba(255,255,255,.025), rgba(255,255,255,0));
 border: 1px solid var(--line);
 border-radius: var(--radius-lg);
 transition: transform .35s var(--ease-out), border-color .25s var(--ease), background .25s var(--ease);
 overflow: hidden;
}
.feature-card::before {
 content: ''; position: absolute; inset: -1px; border-radius: inherit; padding: 1px;
 background: linear-gradient(135deg, rgba(153,69,255,.4), rgba(20,241,149,.2), transparent 60%);
 -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
 -webkit-mask-composite: xor; mask-composite: exclude;
 opacity: 0; transition: opacity .3s var(--ease);
 pointer-events: none;
}
.feature-card:hover { transform: translateY(-4px); }
.feature-card:hover::before { opacity: 1; }
.fc-num {
 font-family: var(--font-mono); font-size: 11px; font-weight: 600;
 color: var(--muted-2); letter-spacing: .12em;
 margin-bottom: 16px;
}
.fc-icon {
 width: 44px; height: 44px;
 border-radius: 12px;
 display: flex; align-items: center; justify-content: center;
 background: linear-gradient(135deg, rgba(153,69,255,.18), rgba(20,241,149,.10));
 border: 1px solid rgba(153,69,255,.22);
 color: var(--accent-b);
 margin-bottom: 16px;
}
.fc-icon svg { width: 22px; height: 22px; }
.fc-h { font-size: 17px; font-weight: 700; margin-bottom: 8px; letter-spacing: -.01em; }
.fc-p { font-size: 14px; color: var(--text-2); line-height: 1.6; }

/* ---------- HOW IT WORKS ---------- */
.how { background: linear-gradient(180deg, transparent, rgba(153,69,255,.04) 50%, transparent); }
.how-bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; overflow: hidden; }
.how-orb { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 800px; height: 800px; background: radial-gradient(circle, rgba(153,69,255,.15) 0%, transparent 60%); filter: blur(40px); }

.how-steps { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; counter-reset: step; }
.how-step {
 position: relative;
 padding: 32px 24px;
 background: rgba(17,19,31,.7);
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
 backdrop-filter: blur(8px);
}
.hs-num {
 display: inline-flex; align-items: center; justify-content: center;
 width: 44px; height: 44px;
 border-radius: 12px;
 background: var(--grad-1); color: #0A0B14;
 font-family: var(--font-mono); font-weight: 800; font-size: 14px;
 margin-bottom: 20px;
 box-shadow: 0 8px 28px rgba(153,69,255,.32);
}
.hs-h { font-size: 18px; font-weight: 700; margin-bottom: 8px; }
.hs-p { font-size: 14px; color: var(--text-2); line-height: 1.6; }
.hs-line {
 position: absolute; top: 56px; right: -16px; width: 32px; height: 2px;
 background: linear-gradient(90deg, var(--accent-a), transparent);
 opacity: .5;
}
.how-step:last-child .hs-line { display: none; }

/* ---------- PRICING / CALCULATOR ---------- */
.pricing { background: linear-gradient(180deg, transparent, rgba(20,241,149,.03)); }
.calc-card {
 max-width: 920px; margin: 0 auto 64px;
 padding: 32px;
 background: linear-gradient(180deg, rgba(17,19,31,.85), rgba(11,13,22,.85));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-xl);
 box-shadow: var(--shadow-2);
 backdrop-filter: blur(12px);
}
.calc-row { display: grid; grid-template-columns: 1.2fr 1fr; gap: 32px; align-items: center; padding-bottom: 28px; border-bottom: 1px dashed var(--line); }
.calc-cell { min-width: 0; }
.calc-lbl { display: block; font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-bottom: 8px; }
.calc-readout {
 font-size: clamp(32px, 4vw, 48px);
 font-weight: 800;
 letter-spacing: -.025em;
 line-height: 1;
 font-variant-numeric: tabular-nums;
 display: flex; align-items: baseline; gap: 8px;
}
.calc-readout-grad span:first-child {
 background: var(--grad-text);
 -webkit-background-clip: text; background-clip: text;
 -webkit-text-fill-color: transparent;
}
.calc-unit { font-size: 16px; font-weight: 600; color: var(--muted); letter-spacing: .04em; font-family: var(--font-mono); }
.calc-slider {
 width: 100%; appearance: none; -webkit-appearance: none; background: transparent; margin: 16px 0 8px;
}
.calc-slider::-webkit-slider-runnable-track {
 height: 8px; border-radius: 999px;
 background: linear-gradient(90deg, var(--accent-a) 0 var(--p,10%), rgba(255,255,255,.07) var(--p,10%) 100%);
}
.calc-slider::-moz-range-track {
 height: 8px; border-radius: 999px;
 background: linear-gradient(90deg, var(--accent-a) 0 var(--p,10%), rgba(255,255,255,.07) var(--p,10%) 100%);
}
.calc-slider::-webkit-slider-thumb {
 -webkit-appearance: none; appearance: none;
 width: 22px; height: 22px; border-radius: 50%;
 background: linear-gradient(135deg, #fff 0%, #C9A6FF 100%);
 border: 3px solid var(--accent-a);
 margin-top: -7px;
 box-shadow: 0 0 0 6px rgba(153,69,255,.18), 0 4px 12px rgba(0,0,0,.5);
 cursor: grab;
}
.calc-slider::-moz-range-thumb {
 width: 22px; height: 22px; border-radius: 50%;
 background: linear-gradient(135deg, #fff 0%, #C9A6FF 100%);
 border: 3px solid var(--accent-a);
 box-shadow: 0 0 0 6px rgba(153,69,255,.18);
 cursor: grab;
}
.calc-marks { display: flex; justify-content: space-between; font-family: var(--font-mono); font-size: 11px; color: var(--muted); margin-top: 6px; }
.calc-note { font-size: 12px; color: var(--muted); margin-top: 12px; line-height: 1.5; }

.calc-projection { display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px; padding-top: 28px; }
.calc-projection li {
 display: flex; flex-direction: column; gap: 4px;
 padding: 14px 16px; background: rgba(255,255,255,.025); border: 1px solid var(--line); border-radius: 12px;
}
.cp-l { font-size: 11px; font-family: var(--font-mono); letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.cp-v { font-size: 18px; font-weight: 700; color: var(--text); font-variant-numeric: tabular-nums; }

.compare-h { text-align: center; font-size: 22px; margin-bottom: 24px; color: var(--text-2); font-weight: 600; }
.compare-table-wrap { overflow-x: auto; max-width: 920px; margin: 0 auto; border-radius: var(--radius-lg); border: 1px solid var(--line); }
.compare-table { width: 100%; border-collapse: collapse; font-size: 14px; min-width: 640px; }
.compare-table th, .compare-table td { padding: 16px 20px; text-align: left; border-bottom: 1px solid var(--line); }
.compare-table thead th { font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); background: rgba(255,255,255,.02); }
.compare-table tbody th { color: var(--text-2); font-weight: 500; width: 30%; }
.compare-table .ct-us { color: var(--accent-b); font-weight: 600; background: rgba(20,241,149,.04); }
.compare-table .ct-them { color: var(--muted); }
.compare-table tr:last-child th, .compare-table tr:last-child td { border-bottom: 0; }

/* ---------- FAQ ---------- */
.faq-list { max-width: 820px; margin: 0 auto; display: flex; flex-direction: column; gap: 10px; }
.faq-item {
 background: rgba(17,19,31,.6);
 border: 1px solid var(--line);
 border-radius: var(--radius);
 overflow: hidden;
 transition: border-color .25s var(--ease), background .25s var(--ease);
}
.faq-item[open] { border-color: rgba(153,69,255,.4); background: rgba(153,69,255,.05); }
.faq-item summary {
 list-style: none; cursor: pointer;
 display: flex; align-items: center; justify-content: space-between; gap: 16px;
 padding: 18px 22px;
 font-weight: 600; font-size: 16px; letter-spacing: -.005em;
}
.faq-item summary::-webkit-details-marker { display: none; }
.faq-q { flex: 1; }
.faq-chev { color: var(--muted); transition: transform .3s var(--ease); flex-shrink: 0; }
.faq-item[open] .faq-chev { transform: rotate(180deg); color: var(--accent-b); }
.faq-a {
 padding: 0 22px 20px; color: var(--text-2); font-size: 15px; line-height: 1.65;
 animation: faq-in .3s var(--ease-out);
}
@keyframes faq-in {
 from { opacity: 0; transform: translateY(-6px); }
 to   { opacity: 1; transform: translateY(0); }
}

/* ---------- CTA STRIP ---------- */
.cta-strip {
 position: relative;
 padding: 64px 0;
 background:
  radial-gradient(800px 400px at 50% 50%, rgba(153,69,255,.18), transparent 70%),
  linear-gradient(180deg, transparent, rgba(20,241,149,.04));
 border-top: 1px solid var(--line);
 border-bottom: 1px solid var(--line);
}
.cta-strip-inner { display: flex; align-items: center; justify-content: space-between; gap: 32px; flex-wrap: wrap; }
.cta-strip-text { flex: 1; min-width: 280px; }
.cta-strip-h { font-size: clamp(22px, 3vw, 32px); font-weight: 800; letter-spacing: -.02em; margin-bottom: 8px; }
.cta-strip-p { color: var(--text-2); font-size: 15px; }
.cta-strip-actions { display: flex; gap: 12px; flex-wrap: wrap; }

/* ---------- FOOTER ---------- */
.site-footer {
 background: var(--bg-2);
 border-top: 1px solid var(--line);
 padding: 64px 0 0;
}
.footer-grid {
 display: grid;
 grid-template-columns: 1.5fr 1fr 1fr 1fr;
 gap: 40px;
 padding-bottom: 48px;
 border-bottom: 1px solid var(--line);
}
.footer-brand .brand { margin-bottom: 16px; }
.footer-tag { color: var(--text-2); font-size: 14px; line-height: 1.6; margin-bottom: 24px; max-width: 360px; }

.footer-nap { font-size: 13px; color: var(--text-2); font-style: normal; line-height: 1.7; }
.nap-h { font-family: var(--font-mono); font-size: 11px; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin-bottom: 8px; }
.nap-contact { margin-top: 8px; display: flex; gap: 8px; flex-wrap: wrap; align-items: center; }
.nap-contact a { color: var(--text); transition: color .2s var(--ease); }
.nap-contact a:hover { color: var(--accent-b); }

.footer-col { display: flex; flex-direction: column; gap: 10px; }
.footer-h { font-family: var(--font-mono); font-size: 11px; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; color: var(--muted); margin: 0 0 6px; }
.footer-h-sub { margin-top: 16px; }
.footer-col a {
 font-size: 14px; color: var(--text-2);
 transition: color .2s var(--ease);
 padding: 2px 0;
}
.footer-col a:hover { color: var(--accent-b); }

.footer-bottom { padding: 24px 0 32px; }
.footer-bottom-inner { display: flex; align-items: flex-start; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
.footer-copy { font-size: 12px; color: var(--muted); max-width: 720px; line-height: 1.6; }
.footer-langs { display: flex; gap: 6px; flex-wrap: wrap; }
.footer-langs a {
 padding: 4px 10px; border-radius: 6px; font-size: 12px; color: var(--muted);
 transition: background .2s var(--ease), color .2s var(--ease);
}
.footer-langs a:hover { background: rgba(255,255,255,.05); color: var(--text-2); }
.footer-langs a[aria-current="true"] { background: rgba(153,69,255,.16); color: var(--text); }

/* ---------- COMING SOON / 404 ---------- */
.soon { padding: 160px 0 120px; text-align: center; }
.soon-inner { max-width: 640px; margin: 0 auto; }
.soon .h-xl { margin-bottom: 16px; }
.soon .lead { margin-bottom: 32px; }
.soon .hero-cta { justify-content: center; }

/* =========================================================
   Inner-page system (how-it-works, features, pricing, faq,
   security, status, changelog, blog, about, contact, legal)
   ========================================================= */

/* ---------- Page hero (smaller than homepage hero) ---------- */
.page-hero {
 position: relative; padding: 80px 0 24px; overflow: hidden; isolation: isolate;
}
.page-hero-sm { padding: 64px 0 16px; }

/* Tighten the gap whenever a section follows the page hero */
.page-hero + .section { padding-top: 24px; }
.page-hero + .prose-section { padding-top: 16px; }
.page-hero-bg { position: absolute; inset: 0; z-index: -1; pointer-events: none; }
.page-hero-grid {
 position: absolute; inset: -2px;
 background-image:
  linear-gradient(rgba(255,255,255,.03) 1px, transparent 1px),
  linear-gradient(90deg, rgba(255,255,255,.03) 1px, transparent 1px);
 background-size: 56px 56px;
 mask-image: radial-gradient(ellipse 70% 100% at 50% 30%, #000 0%, transparent 80%);
 -webkit-mask-image: radial-gradient(ellipse 70% 100% at 50% 30%, #000 0%, transparent 80%);
}
.page-hero-orb {
 position: absolute; left: 50%; top: -100px; width: 700px; height: 500px;
 transform: translateX(-50%);
 background: radial-gradient(ellipse, rgba(153,69,255,.32), transparent 60%);
 filter: blur(60px);
}
.page-h1 {
 font-size: clamp(34px, 5.5vw, 64px);
 font-weight: 800;
 letter-spacing: -.03em;
 line-height: 1.05;
 margin-bottom: 18px;
 max-width: 26ch;
}
.page-lead {
 font-size: clamp(15px, 1.4vw, 18px);
 color: var(--text-2);
 max-width: 1080px;
 line-height: 1.6;
 margin-bottom: 28px;
}
.page-hero > .container > *:last-child { margin-bottom: 0; }
.page-cta { display: flex; gap: 12px; flex-wrap: wrap; }

/* ---------- Breadcrumbs ---------- */
.breadcrumbs {
 display: inline-flex; align-items: center; gap: 8px;
 font-size: 13px; color: var(--muted);
 margin-bottom: 18px;
}
.breadcrumbs a { color: var(--text-2); transition: color .2s var(--ease); }
.breadcrumbs a:hover { color: var(--accent-b); }
.breadcrumbs span[aria-current] { color: var(--text); }

/* ---------- Container narrow variant ---------- */
.container-narrow { max-width: var(--container-narrow); }

/* ---------- Section heading (intra-page) ---------- */
.section-h { margin: 56px 0 24px; }

/* ---------- Prose typography (editorial / magazine quality) ---------- */
.prose-section { padding: 48px 0 96px; }

.prose {
 max-width: 1080px;
 color: var(--text-2);
 font-size: 16.5px;
 line-height: 1.78;
 font-weight: 400;
 letter-spacing: -.005em;

 /* Surface card — its own readable layer */
 padding: 56px 64px;
 background:
  radial-gradient(1200px 400px at 0% 0%, rgba(153,69,255,.06), transparent 60%),
  linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.55));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-xl);
 backdrop-filter: blur(10px);
 box-shadow: var(--shadow-1), 0 0 0 1px rgba(153,69,255,.05);
 position: relative;
}
.prose::before {
 content: '';
 position: absolute;
 left: 0; top: 0; right: 0; height: 1px;
 background: linear-gradient(90deg, transparent, rgba(153,69,255,.4), rgba(20,241,149,.3), transparent);
 border-radius: var(--radius-xl) var(--radius-xl) 0 0;
}

.prose-wide { max-width: 100%; padding: 32px 0; background: transparent; border: 0; box-shadow: none; backdrop-filter: none; }
.prose-wide::before { display: none; }

.prose > h2 {
 position: relative;
 font-size: clamp(26px, 3vw, 36px);
 font-weight: 800;
 letter-spacing: -.025em;
 line-height: 1.18;
 color: var(--text);
 margin: 64px 0 22px;
 padding-bottom: 16px;
}
.prose > h2::after {
 content: '';
 position: absolute;
 left: 0; bottom: 0;
 width: 64px; height: 3px;
 border-radius: 2px;
 background: linear-gradient(90deg, var(--accent-a), var(--accent-c) 60%, var(--accent-b));
 box-shadow: 0 0 14px rgba(153,69,255,.4);
}
.prose > h2:first-child { margin-top: 0; }

.prose > h2 + p { font-size: 17.5px; color: var(--text); }

.prose > h3 {
 position: relative;
 font-size: 19px;
 font-weight: 700;
 line-height: 1.3;
 color: var(--text);
 margin: 40px 0 14px;
 padding-left: 16px;
}
.prose > h3::before {
 content: '';
 position: absolute;
 left: 0; top: .22em;
 width: 4px; height: 1.05em;
 border-radius: 2px;
 background: linear-gradient(180deg, var(--accent-a), var(--accent-b));
}

.prose p { margin: 0 0 1.15em 0; }
.prose p:last-child { margin-bottom: 0; }

.prose strong { color: var(--text); font-weight: 700; }
.prose em { color: var(--text); font-style: italic; }

.prose code {
 font-family: var(--font-mono);
 font-size: 13.5px;
 padding: 3px 9px;
 border-radius: 6px;
 background: linear-gradient(135deg, rgba(153,69,255,.12), rgba(20,241,149,.06));
 color: var(--accent-b);
 border: 1px solid rgba(20,241,149,.2);
 font-weight: 500;
}

.prose a {
 color: var(--accent-b);
 text-decoration: none;
 font-weight: 600;
 background-image: linear-gradient(transparent 65%, rgba(20,241,149,.22) 65%);
 transition: background-image .25s var(--ease), color .2s var(--ease);
}
.prose a:hover {
 background-image: linear-gradient(transparent 48%, rgba(20,241,149,.42) 48%);
}

.prose ul {
 list-style: none;
 padding: 0;
 margin: 0 0 1.3em 0;
}
.prose ul li {
 position: relative;
 padding-left: 30px;
 margin-bottom: 12px;
 line-height: 1.7;
}
.prose ul li::before {
 content: '';
 position: absolute;
 left: 6px; top: .58em;
 width: 8px; height: 8px;
 border-radius: 2px;
 background: linear-gradient(135deg, var(--accent-a), var(--accent-b));
 transform: rotate(45deg);
 box-shadow: 0 0 0 4px rgba(153,69,255,.1);
}

.prose ol {
 list-style: none;
 padding: 0;
 margin: 0 0 1.3em 0;
 counter-reset: pord;
}
.prose ol li {
 position: relative;
 padding-left: 44px;
 margin-bottom: 14px;
 line-height: 1.7;
 counter-increment: pord;
}
.prose ol li::before {
 content: counter(pord, decimal-leading-zero);
 position: absolute;
 left: 0; top: .12em;
 padding: 2px 9px;
 border-radius: 6px;
 background: linear-gradient(135deg, rgba(153,69,255,.16), rgba(20,241,149,.06));
 border: 1px solid rgba(153,69,255,.3);
 font-family: var(--font-mono);
 font-size: 11.5px;
 font-weight: 700;
 color: var(--text);
 letter-spacing: .04em;
}

.prose blockquote {
 position: relative;
 margin: 28px 0;
 padding: 22px 26px 22px 28px;
 background: linear-gradient(135deg, rgba(153,69,255,.07), rgba(20,241,149,.03));
 border-left: 3px solid var(--accent-a);
 border-radius: 0 10px 10px 0;
 font-size: 16.5px;
 color: var(--text);
 font-style: italic;
}
.prose blockquote p { margin: 0; }

.prose mark {
 background: linear-gradient(180deg, transparent 55%, rgba(20,241,149,.34) 55%);
 color: inherit;
 padding: 0 3px;
}

.prose hr {
 border: 0;
 height: 1px;
 background: linear-gradient(90deg, transparent, var(--line-2), transparent);
 margin: 56px 0;
}

.prose .lead-p::first-letter {
 font-size: 3.6em;
 font-weight: 800;
 float: left;
 line-height: .9;
 margin: .04em .14em -.05em 0;
 background: var(--grad-text);
 -webkit-background-clip: text; background-clip: text;
 -webkit-text-fill-color: transparent;
}

/* ---------- How it works detail page ---------- */
.step-block {
 position: relative;
 padding: 32px 36px 28px;
 background: linear-gradient(180deg, rgba(17,19,31,.6), transparent);
 border: 1px solid var(--line);
 border-radius: var(--radius-lg);
 margin-bottom: 24px;
}
.step-num {
 position: absolute; top: -14px; left: 24px;
 padding: 4px 12px;
 background: var(--grad-1); color: #0A0B14;
 font-family: var(--font-mono); font-weight: 800; font-size: 13px;
 border-radius: 999px;
 box-shadow: 0 6px 18px rgba(20,241,149,.25);
}
.step-block h2 { margin-top: 8px !important; }
.preset-grid {
 display: grid; grid-template-columns: repeat(2, 1fr); gap: 14px;
 margin: 20px 0 24px;
}
.preset-card {
 padding: 18px; background: rgba(255,255,255,.025);
 border: 1px solid var(--line); border-radius: var(--radius);
}
.preset-card h3 {
 margin: 0 0 6px; font-size: 15px; font-weight: 700; color: var(--text);
}
.preset-card p { font-size: 13.5px; color: var(--text-2); margin: 0; line-height: 1.6; }

/* ---------- Features page ---------- */
.feature-group { margin-bottom: 64px; }
.feature-group:last-child { margin-bottom: 0; }
.feature-group-head {
 max-width: 720px; margin-bottom: 28px;
 padding-bottom: 20px; border-bottom: 1px solid var(--line);
}
.feature-list {
 display: grid; grid-template-columns: 1fr 1fr; gap: 16px 32px;
}
.feature-list-item {
 display: flex; gap: 14px; padding: 14px 0;
 align-items: flex-start;
}
.fli-check {
 color: var(--accent-b);
 background: rgba(20,241,149,.1);
 border-radius: 8px;
 padding: 4px;
 width: 28px; height: 28px;
 flex-shrink: 0;
 box-sizing: border-box;
}
.fli-h { font-size: 15.5px; font-weight: 700; margin-bottom: 4px; color: var(--text); letter-spacing: -.005em; }
.fli-p { font-size: 13.5px; color: var(--text-2); line-height: 1.55; }

/* ---------- Pricing page ---------- */
.tier-grid {
 display: grid; grid-template-columns: repeat(3, 1fr); gap: 12px;
 margin-bottom: 24px;
}
.tier-card {
 padding: 22px; background: linear-gradient(180deg, rgba(17,19,31,.65), rgba(11,13,22,.65));
 border: 1px solid var(--line); border-radius: var(--radius);
 transition: border-color .25s var(--ease), transform .3s var(--ease);
}
.tier-card:hover { border-color: rgba(153,69,255,.4); transform: translateY(-2px); }
.tier-vol { font-family: var(--font-mono); font-size: 12px; color: var(--muted); letter-spacing: .12em; text-transform: uppercase; display: block; margin-bottom: 8px; }
.tier-fee { display: flex; align-items: baseline; gap: 6px; margin-bottom: 8px; }
.tf-num { font-size: 32px; font-weight: 800; letter-spacing: -.025em; background: var(--grad-text); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent; }
.tf-unit { font-size: 13px; color: var(--muted); font-family: var(--font-mono); }
.tier-note { font-size: 13px; color: var(--text-2); margin: 0; }

.included-list {
 display: grid; grid-template-columns: 1fr 1fr; gap: 10px 24px;
 max-width: 920px;
}
.included-list li {
 display: flex; gap: 12px; align-items: flex-start;
 font-size: 14.5px; color: var(--text-2);
}
.il-check { color: var(--accent-b); flex-shrink: 0; margin-top: 2px; }
.included-note { font-size: 13.5px; margin-top: 16px; max-width: 920px; }

/* ---------- FAQ page extras ---------- */
.faq-list-wide { max-width: 880px; margin: 0 auto; }
.faq-extra {
 max-width: 760px; margin: 48px auto 0; text-align: center;
 padding: 28px; background: rgba(17,19,31,.5);
 border: 1px solid var(--line); border-radius: var(--radius-lg);
}
.faq-extra h2 { font-size: 20px; margin-bottom: 8px; color: var(--text); font-weight: 700; }
.faq-extra p { font-size: 14.5px; color: var(--text-2); margin: 0; }
.faq-extra a { color: var(--accent-b); }

/* ---------- Status page ---------- */
.status-summary {
 display: flex; align-items: center; justify-content: space-between; gap: 16px; flex-wrap: wrap;
 padding: 18px 22px;
 background: linear-gradient(135deg, rgba(20,241,149,.1), rgba(20,241,149,.03));
 border: 1px solid rgba(20,241,149,.3);
 border-radius: var(--radius-lg);
 margin-bottom: 32px;
}
.status-pill {
 display: inline-flex; align-items: center; gap: 10px;
 font-weight: 700; font-size: 15px;
}
.status-pill.ok { color: var(--accent-b); }
.status-meta { font-family: var(--font-mono); font-size: 12px; color: var(--muted); }

.status-list { display: flex; flex-direction: column; gap: 8px; margin-bottom: 32px; }
.status-row {
 display: grid; grid-template-columns: 16px 1fr auto auto; gap: 16px;
 align-items: center;
 padding: 14px 18px;
 background: rgba(17,19,31,.5);
 border: 1px solid var(--line);
 border-radius: var(--radius);
}
.status-dot { width: 10px; height: 10px; border-radius: 50%; }
.status-dot.status-operational { background: var(--accent-b); box-shadow: 0 0 0 3px rgba(20,241,149,.15); }
.status-dot.status-degraded { background: #FFB020; box-shadow: 0 0 0 3px rgba(255,176,32,.15); }
.status-dot.status-down { background: #FF5F57; box-shadow: 0 0 0 3px rgba(255,95,87,.15); }
.status-name { font-size: 14.5px; font-weight: 600; color: var(--text); }
.status-state {
 font-family: var(--font-mono); font-size: 11px; letter-spacing: .1em; text-transform: uppercase;
 padding: 4px 10px; border-radius: 6px;
}
.status-state.status-operational { color: var(--accent-b); background: rgba(20,241,149,.08); }
.status-detail { font-family: var(--font-mono); font-size: 12px; color: var(--muted); }

.incident-list { display: flex; flex-direction: column; gap: 12px; }
.incident-row {
 display: grid; grid-template-columns: 140px 1fr; gap: 24px;
 padding: 18px 20px;
 background: rgba(17,19,31,.4);
 border: 1px solid var(--line);
 border-radius: var(--radius);
}
.incident-meta { display: flex; flex-direction: column; gap: 4px; }
.incident-date { font-family: var(--font-mono); font-size: 12.5px; color: var(--text); }
.incident-sev { font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase; color: var(--muted); }
.incident-h { font-size: 15px; font-weight: 700; color: var(--text); margin: 0 0 6px; }
.incident-p { font-size: 13.5px; color: var(--text-2); margin: 0; line-height: 1.6; }

/* ---------- Changelog page ---------- */
.changelog-list { display: flex; flex-direction: column; gap: 20px; }
.cl-entry {
 padding: 24px 28px;
 background: linear-gradient(180deg, rgba(17,19,31,.65), rgba(11,13,22,.5));
 border: 1px solid var(--line);
 border-radius: var(--radius-lg);
}
.cl-head { display: flex; align-items: center; gap: 12px; margin-bottom: 14px; flex-wrap: wrap; }
.cl-date { font-family: var(--font-mono); font-size: 12px; color: var(--muted); }
.cl-tag {
 font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase;
 padding: 4px 10px; border-radius: 6px;
}
.cl-tag-feature     { background: rgba(153,69,255,.14); color: #C9A6FF; border: 1px solid rgba(153,69,255,.3); }
.cl-tag-improvement { background: rgba(0,209,255,.12);  color: var(--accent-c); border: 1px solid rgba(0,209,255,.3); }
.cl-tag-integration { background: rgba(20,241,149,.12); color: var(--accent-b); border: 1px solid rgba(20,241,149,.3); }
.cl-tag-fix         { background: rgba(255,176,32,.12); color: #FFD580; border: 1px solid rgba(255,176,32,.3); }
.cl-title { font-size: 18px; font-weight: 700; color: var(--text); margin: 0; flex-basis: 100%; letter-spacing: -.01em; }
.cl-items { padding-left: 20px; }
.cl-items li { font-size: 14.5px; color: var(--text-2); margin-bottom: 6px; line-height: 1.55; }

/* ---------- Blog page ---------- */
.pillar-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-bottom: 56px; }
.pillar-card {
 position: relative;
 padding: 24px;
 background: linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.7));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
 display: flex; flex-direction: column;
}
.pillar-card-link {
 text-decoration: none;
 transition: border-color .25s var(--ease), transform .25s var(--ease), background .25s var(--ease);
}
.pillar-card-link:hover {
 border-color: rgba(153,69,255,.45);
 transform: translateY(-3px);
 background: linear-gradient(180deg, rgba(28,30,48,.8), rgba(15,17,28,.7));
}
.pc-arrow {
 position: absolute; right: 22px; top: 22px;
 width: 32px; height: 32px;
 display: flex; align-items: center; justify-content: center;
 border-radius: 50%;
 background: rgba(153,69,255,.14);
 border: 1px solid rgba(153,69,255,.3);
 color: var(--accent-b);
 font-size: 14px; font-weight: 700;
 transition: transform .3s var(--ease), background .25s var(--ease);
}
.pillar-card-link:hover .pc-arrow {
 transform: translate(2px, -2px);
 background: rgba(20,241,149,.18);
 border-color: rgba(20,241,149,.4);
}
.pc-tag { font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .14em; text-transform: uppercase; color: var(--accent-b); margin-bottom: 14px; }
.pc-h { font-size: 18px; font-weight: 700; line-height: 1.3; color: var(--text); margin-bottom: 12px; letter-spacing: -.01em; }
.pc-p { font-size: 14px; color: var(--text-2); line-height: 1.6; flex: 1; margin-bottom: 16px; }
.pc-meta { font-family: var(--font-mono); font-size: 11.5px; color: var(--muted); }

.cluster-list { display: flex; flex-direction: column; gap: 4px; max-width: 920px; }
.cluster-row {
 display: flex; align-items: center; gap: 16px;
 padding: 14px 18px;
 background: rgba(17,19,31,.4);
 border: 1px solid var(--line);
 border-radius: var(--radius);
 transition: border-color .2s var(--ease), background .2s var(--ease);
}
.cluster-row:hover { border-color: var(--line-2); background: rgba(17,19,31,.7); }
.cluster-tag {
 font-family: var(--font-mono); font-size: 10.5px; letter-spacing: .12em; text-transform: uppercase;
 padding: 3px 10px; border-radius: 5px;
 width: 92px; text-align: center; flex-shrink: 0;
}
.cluster-tag-tutorial    { background: rgba(0,209,255,.1);  color: var(--accent-c); }
.cluster-tag-strategy    { background: rgba(153,69,255,.12); color: #C9A6FF; }
.cluster-tag-case-study  { background: rgba(255,107,159,.12); color: var(--accent-d); }
.cluster-tag-news        { background: rgba(255,176,32,.12); color: #FFD580; }
.cluster-title { font-size: 14.5px; font-weight: 500; color: var(--text); }

.blog-cta {
 max-width: 760px; margin: 56px auto 0; text-align: center;
 padding: 28px;
 background: linear-gradient(135deg, rgba(153,69,255,.08), rgba(20,241,149,.04));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
}
.blog-cta h3 { font-size: 20px; margin-bottom: 8px; color: var(--text); font-weight: 700; }
.blog-cta p { font-size: 14.5px; color: var(--text-2); margin: 0; }
.blog-cta a { color: var(--accent-b); }

/* ---------- About page ---------- */
.about-nap {
 padding: 18px 22px;
 background: rgba(17,19,31,.5);
 border-left: 3px solid var(--accent-a);
 border-radius: 8px;
 font-style: normal;
 font-size: 14.5px; line-height: 1.7;
 margin: 16px 0 24px;
}
.about-nap a { color: var(--accent-b); }

/* ---------- Contact page ---------- */
.contact-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 16px; margin-bottom: 56px; }
.contact-card {
 display: flex; flex-direction: column;
 padding: 28px;
 background: linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.7));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
 transition: border-color .25s var(--ease), transform .25s var(--ease);
}
.contact-card[href]:hover { border-color: rgba(153,69,255,.4); transform: translateY(-3px); }
.cc-icon {
 width: 44px; height: 44px;
 border-radius: 12px;
 display: flex; align-items: center; justify-content: center;
 background: linear-gradient(135deg, rgba(153,69,255,.18), rgba(20,241,149,.1));
 border: 1px solid rgba(153,69,255,.25);
 color: var(--accent-b);
 margin-bottom: 18px;
}
.cc-h { font-size: 18px; font-weight: 700; color: var(--text); margin-bottom: 8px; letter-spacing: -.01em; }
.cc-p { font-size: 14px; color: var(--text-2); line-height: 1.6; flex: 1; margin-bottom: 16px; }
.cc-cta { font-size: 13.5px; font-weight: 600; color: var(--accent-b); }
.cc-address { font-style: normal; font-size: 14px; color: var(--text-2); line-height: 1.7; }

.contact-foot { max-width: 820px; }

/* ---------- Legal docs (terms / privacy / refund) ---------- */
.legal-doc {
 max-width: 860px;
 font-size: 15px;
 line-height: 1.72;
 color: var(--text-2);
}
.legal-doc h2 {
 position: relative;
 font-size: 19px;
 font-weight: 700;
 color: var(--text);
 margin: 36px 0 14px;
 padding: 0 0 12px 0;
 letter-spacing: -.005em;
}
.legal-doc h2::after {
 content: '';
 position: absolute;
 left: 0; bottom: 0; width: 100%; height: 1px;
 background: linear-gradient(90deg, rgba(153,69,255,.5), rgba(20,241,149,.25), rgba(255,255,255,.04));
}
.legal-doc h2:first-child { margin-top: 0; }
.legal-doc h3 {
 position: relative;
 font-size: 15.5px;
 font-weight: 700;
 color: var(--text);
 margin: 24px 0 10px;
 padding-left: 14px;
}
.legal-doc h3::before {
 content: '';
 position: absolute;
 left: 0; top: .22em;
 width: 3px; height: 1em;
 background: linear-gradient(180deg, var(--accent-a), var(--accent-b));
 border-radius: 2px;
}
.legal-doc p { margin: 0 0 14px 0; }
.legal-doc strong { color: var(--text); font-weight: 700; }
.legal-doc ul, .legal-doc ol { padding: 0; margin: 0 0 16px 0; list-style: none; }
.legal-doc ul li {
 position: relative; padding-left: 20px; margin-bottom: 8px;
}
.legal-doc ul li::before {
 content: ''; position: absolute; left: 0; top: .65em;
 width: 6px; height: 6px; border-radius: 2px;
 background: linear-gradient(135deg, var(--accent-a), var(--accent-b));
 transform: rotate(45deg);
}
.legal-doc ol { counter-reset: lord; }
.legal-doc ol li {
 position: relative; padding-left: 32px; margin-bottom: 8px;
 counter-increment: lord;
}
.legal-doc ol li::before {
 content: counter(lord);
 position: absolute; left: 0; top: 0;
 width: 22px; height: 22px;
 border-radius: 5px;
 background: rgba(153,69,255,.12);
 border: 1px solid rgba(153,69,255,.3);
 font-family: var(--font-mono); font-size: 11px; font-weight: 700;
 color: var(--accent-a);
 display: flex; align-items: center; justify-content: center;
}
.legal-doc a {
 color: var(--accent-b); text-decoration: underline;
 text-decoration-color: rgba(20,241,149,.3); text-underline-offset: 3px;
 transition: text-decoration-color .2s var(--ease);
}
.legal-doc a:hover { text-decoration-color: var(--accent-b); }
.legal-doc code {
 font-family: var(--font-mono); font-size: 12.5px;
 padding: 2px 7px; border-radius: 4px;
 background: rgba(255,255,255,.05); color: var(--accent-b);
 border: 1px solid var(--line);
}

/* ---------- Reviews / testimonials section ---------- */
.reviews { padding: 96px 0; }
.reviews-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 16px;
}
.review-card {
 padding: 24px;
 background: linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.6));
 border: 1px solid var(--line);
 border-radius: var(--radius-lg);
 display: flex; flex-direction: column;
 transition: border-color .25s var(--ease), transform .25s var(--ease);
}
.review-card:hover {
 border-color: rgba(20,241,149,.32);
 transform: translateY(-3px);
}
.review-stars {
 display: inline-flex; gap: 2px;
 color: #FFD700;
 margin-bottom: 14px;
 filter: drop-shadow(0 0 8px rgba(255,215,0,.25));
}
.review-stars svg { width: 14px; height: 14px; }
.review-text {
 font-family: var(--font);
 font-size: 15px;
 font-weight: 400;
 font-style: normal;
 line-height: 1.65;
 letter-spacing: -.005em;
 color: var(--text);
 margin: 0 0 18px;
 flex: 1;
 quotes: "\201C" "\201D";
}
.review-meta {
 display: flex; align-items: center; gap: 10px;
 padding-top: 14px;
 border-top: 1px solid var(--line);
 font-family: var(--font-mono); font-size: 11.5px;
}
.rv-author { color: var(--accent-b); font-weight: 600; }
.rv-date { color: var(--muted); margin-left: auto; }

/* ---------- Home blog cards ---------- */
.home-blog { padding: 96px 0; }
.home-blog-grid {
 display: grid;
 grid-template-columns: repeat(3, 1fr);
 gap: 16px;
 margin-bottom: 32px;
}
.home-blog-card {
 display: flex; flex-direction: column;
 padding: 24px;
 background: linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.55));
 border: 1px solid var(--line-2);
 border-radius: var(--radius-lg);
 text-decoration: none;
 transition: border-color .25s var(--ease), transform .25s var(--ease), background .25s var(--ease);
}
.home-blog-card:hover {
 border-color: rgba(153,69,255,.45);
 background: linear-gradient(180deg, rgba(28,30,48,.8), rgba(15,17,28,.65));
 transform: translateY(-3px);
}
.hbc-tag {
 display: inline-flex; align-self: flex-start;
 padding: 4px 10px; border-radius: 6px;
 background: rgba(153,69,255,.14);
 border: 1px solid rgba(153,69,255,.3);
 font-family: var(--font-mono); font-size: 10.5px;
 font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
 color: #C9A6FF;
 margin-bottom: 14px;
}
.hbc-title {
 font-size: 17px; font-weight: 700;
 color: var(--text); margin: 0 0 12px;
 line-height: 1.3; letter-spacing: -.01em;
}
.hbc-lead {
 font-size: 14px; color: var(--text-2);
 line-height: 1.6; flex: 1; margin-bottom: 16px;
}
.hbc-meta {
 display: flex; align-items: center; gap: 8px;
 font-family: var(--font-mono); font-size: 11.5px;
 color: var(--muted);
}
.home-blog-foot { display: flex; justify-content: center; }
.home-blog-foot .btn svg { transition: transform .25s var(--ease); }
.home-blog-foot .btn:hover svg { transform: translateX(3px); }

/* ---------- Last updated strip ---------- */
.last-updated-strip {
 padding: 18px 0;
 background: rgba(255,255,255,.02);
 border-top: 1px solid var(--line);
 border-bottom: 1px solid var(--line);
 font-family: var(--font-mono);
 font-size: 11.5px;
}
.last-updated-strip .container {
 display: flex; align-items: center; justify-content: center;
 gap: 14px; flex-wrap: wrap;
 color: var(--muted);
}
.lus-label {
 letter-spacing: .14em; text-transform: uppercase; font-weight: 600;
 color: var(--muted-2);
}
.lus-date { color: var(--accent-b); font-weight: 600; }
.lus-sep { color: var(--muted-2); }
.lus-tz { color: var(--text-2); }

@media (max-width: 1024px) {
 .reviews-grid { grid-template-columns: repeat(2, 1fr); }
 .home-blog-grid { grid-template-columns: 1fr; }
}
@media (max-width: 540px) {
 .reviews-grid { grid-template-columns: 1fr; }
 .reviews { padding: 64px 0; }
 .home-blog { padding: 64px 0; }
}

/* ---------- Article pages (blog post) ---------- */
.article-meta {
 display: flex; flex-wrap: wrap; gap: 14px;
 align-items: center;
 margin-bottom: 22px;
 padding: 12px 0;
 border-bottom: 1px dashed var(--line);
 font-size: 13px; color: var(--muted);
 font-family: var(--font-mono);
}
.article-meta .am-tag {
 padding: 4px 10px; border-radius: 6px;
 background: rgba(153,69,255,.14);
 color: #C9A6FF;
 border: 1px solid rgba(153,69,255,.3);
 font-size: 10.5px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
.article-meta .am-sep { color: var(--muted-2); }
.article-meta .am-time b { color: var(--text); font-weight: 600; }

.article-tldr {
 margin: 0 0 32px;
 padding: 20px 24px;
 background: linear-gradient(135deg, rgba(20,241,149,.08), rgba(153,69,255,.05));
 border-left: 3px solid var(--accent-b);
 border-radius: 0 12px 12px 0;
 font-size: 15.5px;
 color: var(--text);
}
.article-tldr-h {
 font-family: var(--font-mono); font-size: 11px;
 letter-spacing: .14em; text-transform: uppercase;
 color: var(--accent-b); font-weight: 700;
 margin-bottom: 8px;
}
.article-tldr p { margin: 0; }

/* Editorial-style TOC: hairline grid, mono prefix numbers, subtle hover.
   Higher-specificity rules to override .prose ol li chip styling. */
.toc {
 margin: 8px 0 44px;
 padding: 28px 32px;
 background:
  radial-gradient(800px 200px at 0% 0%, rgba(153,69,255,.04), transparent 70%),
  linear-gradient(180deg, rgba(17,19,31,.55), rgba(11,13,22,.35));
 border: 1px solid var(--line);
 border-radius: 16px;
 backdrop-filter: blur(6px);
}
.toc-h {
 display: flex; align-items: center; gap: 14px;
 font-family: var(--font-mono);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: .2em;
 text-transform: uppercase;
 color: var(--muted);
 margin: 0 0 18px;
}
.toc-h::after {
 content: '';
 flex: 1;
 height: 1px;
 background: linear-gradient(90deg, var(--line) 0%, transparent 100%);
}
.toc ol,
.prose .toc ol {
 list-style: none;
 padding: 0;
 margin: 0;
 counter-reset: tocord;
 columns: 2;
 column-gap: 48px;
}
.toc ol li,
.prose .toc ol li {
 counter-increment: tocord;
 break-inside: avoid;
 padding: 0;
 margin: 0;
 position: static;
 line-height: 1.4;
}
/* Kill the prose chip style that would otherwise leak in */
.toc ol li::before,
.prose .toc ol li::before {
 content: none !important;
 background: none !important;
 border: 0 !important;
 padding: 0 !important;
}
.toc ol li a,
.prose .toc ol li a {
 display: flex;
 align-items: baseline;
 gap: 14px;
 padding: 9px 0;
 color: var(--text-2);
 font-size: 14.5px;
 font-weight: 500;
 letter-spacing: -.005em;
 text-decoration: none;
 background: none;                 /* override .prose a underline-bg */
 border-bottom: 1px solid rgba(255,255,255,.04);
 transition: color .2s var(--ease), padding-left .25s var(--ease), border-color .2s var(--ease);
}
.toc ol li:nth-last-child(-n+2) a {
 /* Visually drop the rule on the last row of each column */
 border-bottom-color: transparent;
}
.toc ol li a::before {
 content: counter(tocord, decimal-leading-zero);
 font-family: var(--font-mono);
 font-size: 11px;
 font-weight: 600;
 color: var(--muted-2);
 letter-spacing: .04em;
 min-width: 24px;
 transition: color .25s var(--ease);
}
.toc ol li a:hover,
.prose .toc ol li a:hover {
 color: var(--text);
 padding-left: 4px;
 background: none;
 border-bottom-color: rgba(20,241,149,.25);
}
.toc ol li a:hover::before {
 color: var(--accent-b);
}

@media (max-width: 720px) {
 .toc { padding: 22px 22px; }
 .toc ol, .prose .toc ol { columns: 1; }
}

.read-next {
 margin-top: 64px;
 padding-top: 36px;
 border-top: 1px solid var(--line);
}
.read-next-h {
 display: flex; align-items: center; gap: 14px;
 font-family: var(--font-mono);
 font-size: 11px;
 font-weight: 600;
 letter-spacing: .2em;
 text-transform: uppercase;
 color: var(--muted);
 margin-bottom: 22px;
}
.read-next-h::after {
 content: '';
 flex: 1;
 height: 1px;
 background: linear-gradient(90deg, var(--line) 0%, transparent 100%);
}
.read-next-grid {
 display: grid;
 grid-template-columns: 1fr 1fr;
 gap: 14px;
}
/* Override .prose a underline-bg for the cards */
.prose .read-next-card,
.read-next-card {
 position: relative;
 display: flex; flex-direction: column;
 padding: 26px 28px;
 min-height: 160px;
 background: linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.55));
 border: 1px solid var(--line-2);
 border-radius: 16px;
 text-decoration: none;
 background-image: linear-gradient(180deg, rgba(22,24,39,.7), rgba(11,13,22,.55));
 transition:
  border-color .3s var(--ease),
  transform .3s var(--ease),
  background-image .3s var(--ease),
  box-shadow .3s var(--ease);
 overflow: hidden;
}
.read-next-card::before {
 content: '';
 position: absolute;
 left: 0; top: 0; bottom: 0;
 width: 3px;
 background: linear-gradient(180deg, var(--accent-a), var(--accent-b));
 opacity: 0;
 transition: opacity .3s var(--ease);
}
.read-next-card::after {
 content: '→';
 position: absolute;
 right: 22px; top: 22px;
 width: 32px; height: 32px;
 display: flex; align-items: center; justify-content: center;
 border-radius: 50%;
 background: rgba(255,255,255,.04);
 border: 1px solid var(--line);
 color: var(--muted);
 font-size: 14px; font-weight: 600;
 transition: transform .3s var(--ease), background .3s var(--ease), color .3s var(--ease), border-color .3s var(--ease);
}
.prose .read-next-card:hover,
.read-next-card:hover {
 border-color: rgba(153,69,255,.45);
 transform: translateY(-3px);
 background-image: linear-gradient(180deg, rgba(28,30,48,.85), rgba(15,17,28,.7));
 box-shadow: 0 12px 32px rgba(153,69,255,.12);
}
.read-next-card:hover::before { opacity: 1; }
.read-next-card:hover::after {
 transform: translate(2px, -2px);
 background: rgba(20,241,149,.14);
 border-color: rgba(20,241,149,.35);
 color: var(--accent-b);
}
.read-next-card .rn-tag {
 display: inline-flex; align-self: flex-start;
 padding: 4px 10px;
 border-radius: 6px;
 background: rgba(153,69,255,.12);
 border: 1px solid rgba(153,69,255,.3);
 font-family: var(--font-mono);
 font-size: 10.5px;
 font-weight: 700;
 letter-spacing: .14em;
 text-transform: uppercase;
 color: #C9A6FF;
 margin-bottom: 16px;
 padding-right: 10px;
}
.read-next-card .rn-h {
 font-family: var(--font);
 font-size: 17px;
 font-weight: 700;
 line-height: 1.32;
 letter-spacing: -.012em;
 color: var(--text);
 margin: 0;
 padding-right: 40px;          /* leave room for the arrow */
}

@media (max-width: 720px) {
 .read-next-grid { grid-template-columns: 1fr; }
 .read-next-card { padding: 22px 22px; min-height: auto; }
 .read-next-card::after { right: 18px; top: 18px; }
}

@media (max-width: 720px) {
 .toc ol { columns: 1; }
 .read-next-grid { grid-template-columns: 1fr; }
}

/* ---------- Reveal animations ---------- */
[data-reveal] { opacity: 0; transform: translateY(16px); transition: opacity .7s var(--ease-out), transform .7s var(--ease-out); }
[data-reveal].is-visible { opacity: 1; transform: translateY(0); }

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

/* ---------- Responsive ---------- */
@media (max-width: 1180px) {
 .header-inner { gap: 16px; }
 .primary-nav a { padding: 9px 13px; font-size: 13px; }
 .hero-stage { grid-template-columns: 1fr; }
 .hero-side { flex-direction: row; }
 .hs-card { flex: 1; min-width: 0; }
}

@media (max-width: 1024px) {
 .features-grid { grid-template-columns: repeat(2, 1fr); }
 .footer-grid { grid-template-columns: 1fr 1fr; gap: 32px; }
 .footer-brand { grid-column: 1 / -1; }
 .header-inner { grid-template-columns: auto auto; }
 .primary-nav { display: none; }
 .mobile-toggle { display: flex; }
 /* Hide Telegram CTA in header on mobile — already in the hamburger menu */
 .header-cta { display: none; }
}

@media (max-width: 860px) {
 /* Announce bar hidden on mobile — too long to fit comfortably */
 .announce-bar { display: none; }

 .header-inner { padding: 12px 16px; }
 .brand-wordmark { font-size: 17px; }
 .brand-mark svg { width: 32px; height: 32px; }

 .mobile-nav.is-open { display: block; }

 .hero { padding: 56px 0 80px; }
 .hero-top { flex-direction: column; gap: 14px; margin-bottom: 24px; }
 .hero-h1 { font-size: clamp(38px, 11vw, 64px); margin-bottom: 24px; }
 .hero-sub { margin-bottom: 28px; font-size: 15px; }
 .hero-cta { margin-bottom: 28px; }
 .hero-cta .btn-xl { padding: 14px 22px; font-size: 15px; }
 .hero-badges { gap: 6px; margin-bottom: 40px; }
 .hero-badges li { font-size: 12.5px; padding: 7px 12px; }

 .hero-side { flex-direction: column; }
 .hs-card { padding: 16px 18px; }
 .hs-v { font-size: 24px; }

 .ht-feed { font-size: 11.5px; }
 .ht-feed li { grid-template-columns: 90px 50px 88px 1fr; padding: 7px 14px; }
 .ht-feed .hf-w { display: none; }

 .hm-chip { padding: 7px 12px; }
 .hm-name { font-size: 13px; }
 .hm-tag { display: none; }

 .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 12px; padding: 24px; }
 .features-grid { grid-template-columns: 1fr; }
 .how-steps { grid-template-columns: 1fr; }
 .hs-line { display: none; }

 .calc-card { padding: 24px 20px; }
 .calc-row { grid-template-columns: 1fr; gap: 24px; }
 .calc-projection { grid-template-columns: repeat(2, 1fr); }

 .footer-grid { grid-template-columns: 1fr 1fr; }
 .footer-bottom-inner { flex-direction: column; }

 .section { padding: 64px 0; }
 .section-head { margin-bottom: 32px; }

 .cta-strip-inner { flex-direction: column; text-align: center; align-items: stretch; }
 .cta-strip-actions { justify-content: center; }
}

@media (max-width: 540px) {
 .header-cta-text { display: none; }
 .header-cta { padding: 9px 11px; }
 .footer-grid { grid-template-columns: 1fr; }
 .calc-projection { grid-template-columns: 1fr; }
 .ann-link { display: none; }
 .ann-text { font-size: 11px; }
 .hero-h1 { font-size: clamp(34px, 12vw, 52px); letter-spacing: -.035em; }
 .hero-cta { flex-direction: column; align-items: stretch; }
 .hero-cta .btn { width: 100%; }
 .lang-switcher summary { padding: 8px 9px; }
 .lang-switcher summary span { display: none; }
 .lang-switcher .ls-chev { display: none; }
 .ht-bar { flex-wrap: wrap; }
 .ht-meta { width: 100%; margin-left: 0; padding-top: 4px; }
}

@media (max-width: 380px) {
 .hero-h1 { font-size: 30px; }
 .ht-feed li { grid-template-columns: 70px 44px 1fr; }
 .ht-feed .hf-via { display: none; }
}
