/* NEXO RADAR - shared styles for legal / info pages */
:root{
  --bg:#0a0d14; --bg2:#0e131e; --panel:#111726; --panel2:#141b2c;
  --ink:#eef1f7; --mut:#93a0b8; --faint:#5c6a86; --line:#212a3e; --line2:#2c374f;
  --red:#e01f2d; --red-2:#ff3b47; --glow:rgba(224,31,45,.55);
  --font:"Libre Franklin",system-ui,sans-serif; --mono:"IBM Plex Mono",ui-monospace,monospace;
}
*{ box-sizing:border-box }
html{ scroll-behavior:smooth } html,body{ margin:0 }
body{ background:var(--bg); color:var(--ink); font-family:var(--font); line-height:1.7;
  -webkit-font-smoothing:antialiased; overflow-x:hidden;
  background-image:radial-gradient(1100px 640px at 84% -6%, rgba(224,31,45,.13), transparent 60%),
    radial-gradient(900px 700px at -8% 8%, rgba(27,38,64,.5), transparent 62%); background-attachment:fixed; }
.wrap{ max-width:1140px; margin:0 auto; padding:0 26px; position:relative }
a{ color:inherit; text-decoration:none }
.mono{ font-family:var(--mono); font-weight:500; letter-spacing:.18em; text-transform:uppercase; font-size:12px }
.brand{ display:inline-flex; align-items:center; gap:8px }
.brand__box{ display:inline-flex; background:var(--red); padding:4px 10px 5px; border-radius:8px; box-shadow:0 4px 16px -4px var(--glow) }
.brand__box b{ font-weight:900; font-size:20px; letter-spacing:-.02em; color:#fff; line-height:1 }
.brand__word{ font-weight:900; font-size:20px; letter-spacing:-.02em; color:var(--ink); line-height:1 }
.brand__scope{ position:relative; width:30px; height:30px; border-radius:50%; overflow:hidden; margin-left:1px; border:2px solid var(--red);
  background:radial-gradient(circle,rgba(255,255,255,.14) 0 1.4px,transparent 1.8px),
    repeating-radial-gradient(circle,transparent 0 4.4px,rgba(255,255,255,.12) 4.4px 5px),
    radial-gradient(circle at 50% 50%,#131b2c,#0a0f1a) }
.brand__scope::after{ content:""; position:absolute; inset:0; border-radius:50%;
  background:conic-gradient(from 0deg,var(--red-2) 0deg,rgba(255,59,71,0) 80deg,transparent 360deg); animation:spin 3s linear infinite }
.brand__scope i{ position:absolute; top:24%; left:64%; width:5px; height:5px; border-radius:50%; background:var(--red-2);
  box-shadow:0 0 8px 1px var(--red-2); animation:blip 2s infinite }
@keyframes spin{ to{ transform:rotate(360deg) } }
@keyframes blip{ 0%{ box-shadow:0 0 0 0 var(--glow) } 70%{ box-shadow:0 0 0 9px transparent } 100%{ box-shadow:0 0 0 0 transparent } }
header.top{ position:sticky; top:0; z-index:20; backdrop-filter:blur(12px) saturate(1.2);
  background:linear-gradient(to bottom,rgba(10,13,20,.86),rgba(10,13,20,.62)); border-bottom:1px solid var(--line) }
header.top .wrap{ display:flex; align-items:center; justify-content:space-between; height:70px }
.nav{ display:flex; gap:30px; font-size:14px; font-weight:600; color:var(--mut) }
.nav a{ transition:color .15s } .nav a:hover{ color:var(--red-2) }
.cta-top{ display:inline-flex; align-items:center; gap:8px; font-weight:700; font-size:13.5px; padding:10px 16px;
  border-radius:11px; background:var(--red); color:#fff; box-shadow:0 8px 22px -10px var(--glow); transition:transform .18s }
.cta-top:hover{ transform:translateY(-1px) }
.doc{ padding:52px 0 20px; max-width:820px }
.doc .kicker{ color:var(--red-2); margin-bottom:12px }
.doc h1{ font-size:clamp(30px,4.6vw,46px); letter-spacing:-.03em; font-weight:900; line-height:1.05; margin:0 0 10px }
.updated{ color:var(--faint); font-family:var(--mono); font-size:12.5px; letter-spacing:.06em; margin:0 0 30px }
.prose h2{ font-size:20px; font-weight:800; letter-spacing:-.01em; margin:34px 0 10px; color:var(--ink) }
.prose h3{ font-size:16.5px; font-weight:700; margin:24px 0 8px; color:var(--ink) }
.prose p{ color:var(--mut); margin:0 0 14px; font-size:16px }
.prose ul{ color:var(--mut); margin:0 0 16px; padding-left:20px } .prose li{ margin:6px 0 }
.prose strong{ color:var(--ink); font-weight:700 }
.prose a{ color:var(--red-2); border-bottom:1px solid rgba(224,31,45,.35) } .prose a:hover{ border-color:var(--red-2) }
.callout{ border:1px solid var(--line); background:linear-gradient(180deg,var(--panel),var(--panel2)); border-radius:14px; padding:18px 22px; margin:20px 0 }
.addr{ font-style:normal; color:var(--mut); font-size:15px; line-height:1.8 } .addr strong{ color:var(--ink) }
footer.foot{ border-top:1px solid var(--line); padding:30px 0 54px; color:var(--faint); font-size:13.5px; margin-top:34px }
footer.foot .wrap{ display:flex; flex-wrap:wrap; gap:14px 30px; align-items:center; justify-content:space-between }
.foot-links{ display:flex; flex-wrap:wrap; gap:8px 20px }
footer.foot a{ color:var(--mut) } footer.foot a:hover{ color:var(--red-2) } .foot-sub{ color:var(--faint) }
@media (prefers-reduced-motion:reduce){ .brand__scope::after,.brand__scope i{ animation:none } }
@media (max-width:760px){ .nav{ display:none } header.top .wrap{ height:62px } }
@media (max-width:520px){ .wrap{ padding:0 18px } .brand__box b,.brand__word{ font-size:16px } .cta-top{ font-size:12px; padding:9px 13px } }
