/* rai2nbow.com — one stylesheet, no external requests (no web fonts, no scripts) */
:root{
  --ink:#14161B;
  --ink-2:#2A2E37;
  --muted:#5B6270;
  --faint:#8A909C;
  --paper:#FBFAF7;
  --card:#FFFFFF;
  --line:#E6E2DA;
  --line-2:#D6D1C7;
  --accent:#E8445A;
  --accent-ink:#B8263C;
  --ok:#147A4B;
  --ok-bg:#E3F4EA;
  --wait:#8A5A00;
  --wait-bg:#FBF0D9;
  --info:#1E5FA8;
  --info-bg:#E4EEFA;
  --spectrum:linear-gradient(90deg,#E8445A 0%,#F28C28 22%,#F2C230 42%,#2FB57E 62%,#2D8FD5 82%,#6B5BD6 100%);
  --max:1120px;
  --sans:"Segoe UI Variable Text","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --display:"Segoe UI Variable Display","Segoe UI",system-ui,-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;
  --mono:ui-monospace,"Cascadia Mono","SFMono-Regular",Menlo,Consolas,monospace;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:17px;line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit}
img,svg{display:block;max-width:100%}
.wrap{max-width:var(--max);margin:0 auto;padding:0 24px}
.spectrum{height:4px;background:var(--spectrum)}
.skip{position:absolute;left:-9999px}
.skip:focus{left:16px;top:12px;background:var(--card);padding:8px 12px;border:1px solid var(--line-2);border-radius:8px;z-index:50}

/* type */
h1,h2,h3{font-family:var(--display);color:var(--ink);margin:0;letter-spacing:-.02em}
h1{font-size:clamp(36px,6vw,64px);line-height:1.04;font-weight:700}
h2{font-size:clamp(28px,3.6vw,40px);line-height:1.1;font-weight:700}
h3{font-size:19px;line-height:1.3;font-weight:650}
p{margin:0}
.eyebrow{font-family:var(--mono);font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--accent-ink)}
.lede{color:var(--muted);font-size:clamp(17px,1.8vw,20px);max-width:58ch}

/* header */
.top{position:sticky;top:0;z-index:20;background:rgba(251,250,247,.92);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}
.top-in{max-width:var(--max);margin:0 auto;padding:14px 24px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:inline-flex;align-items:center;gap:10px;font-family:var(--display);font-weight:700;font-size:19px;letter-spacing:-.02em;text-decoration:none}
.brand svg{width:30px;height:30px}
.nav{display:flex;align-items:center;gap:26px}
.nav a{text-decoration:none;color:var(--muted);font-size:15px}
.nav a:hover{color:var(--ink)}
@media (max-width:820px){.nav .hide-sm{display:none}}

/* buttons */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:10px;padding:12px 20px;font-weight:600;font-size:15px;text-decoration:none;white-space:nowrap;border:1px solid transparent}
.btn-primary{background:var(--ink);color:#fff}
.btn-primary:hover{background:var(--ink-2)}
.btn-ghost{border-color:var(--line-2);color:var(--ink);background:var(--card)}
.btn-ghost:hover{border-color:var(--ink)}
.nav .btn{padding:9px 16px;font-size:14px;color:#fff}

/* hero */
.hero{padding:clamp(56px,9vw,104px) 0 56px}
.hero h1{margin:18px 0 20px;max-width:26ch;text-wrap:balance}
.nw{white-space:nowrap}
section.cta{padding-top:0}
.hero-cta{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.note{margin-top:14px;font-size:14px;color:var(--faint)}

/* console mock */
.mock{margin-top:56px;background:var(--card);border:1px solid var(--line);border-radius:16px;box-shadow:0 30px 60px -40px rgba(20,22,27,.35);overflow:hidden}
.mock-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 18px;border-bottom:1px solid var(--line);background:#F6F4EF}
.mock-bar b{font-size:14px}
.mock-bar span{font-family:var(--mono);font-size:12px;color:var(--faint)}
.mrow{display:grid;grid-template-columns:150px 1fr 190px;gap:16px;align-items:center;padding:13px 18px;border-bottom:1px solid #F0EDE7;font-size:14.5px}
.mrow:last-child{border-bottom:0}
.mrow .id{font-family:var(--mono);font-size:13px;color:var(--muted)}
.pill{justify-self:start;display:inline-flex;align-items:center;gap:7px;padding:4px 11px;border-radius:999px;font-size:12.5px;font-weight:600}
.pill i{width:7px;height:7px;border-radius:50%;background:currentColor}
.p-ok{color:var(--ok);background:var(--ok-bg)}
.p-wait{color:var(--wait);background:var(--wait-bg)}
.p-info{color:var(--info);background:var(--info-bg)}
@media (max-width:700px){.mrow{grid-template-columns:1fr;gap:6px}}

/* strip */
.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:var(--card)}
.strip-in{max-width:var(--max);margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}
.strip-i{padding:24px;border-left:1px solid var(--line)}
.strip-i:first-child{border-left:0}
.strip-i b{display:block;font-family:var(--display);font-size:24px;letter-spacing:-.02em}
.strip-i span{font-size:13.5px;color:var(--muted)}
@media (max-width:760px){.strip-in{grid-template-columns:1fr 1fr}.strip-i:nth-child(3){border-left:0}.strip-i:nth-child(n+3){border-top:1px solid var(--line)}}

/* sections */
section{padding:clamp(60px,8vw,96px) 0}
.head{max-width:62ch;margin-bottom:44px}
.head h2{margin:14px 0 14px}
.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;counter-reset:s}
.step{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:24px}
.step b{display:inline-flex;width:30px;height:30px;align-items:center;justify-content:center;border-radius:50%;background:var(--ink);color:#fff;font-size:14px}
.step h3{margin:14px 0 8px}
.step p{color:var(--muted);font-size:15.5px}
@media (max-width:960px){.steps{grid-template-columns:1fr 1fr}}
@media (max-width:560px){.steps{grid-template-columns:1fr}}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.cell{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px}
.cell .ic{width:28px;height:28px;color:var(--accent);margin-bottom:16px}
.cell h3{margin-bottom:8px}
.cell p{color:var(--muted);font-size:15.5px}
@media (max-width:900px){.grid{grid-template-columns:1fr 1fr}}
@media (max-width:600px){.grid{grid-template-columns:1fr}}
.markets{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}
.markets span{font-size:13.5px;padding:5px 11px;border:1px solid var(--line-2);border-radius:999px;background:var(--card)}

/* pricing */
.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.price{background:var(--card);border:1px solid var(--line);border-radius:14px;padding:26px}
.price .k{font-size:13px;color:var(--muted);text-transform:uppercase;letter-spacing:.08em}
.price .v{font-family:var(--display);font-size:26px;font-weight:700;margin:8px 0 6px;letter-spacing:-.02em}
.price p{color:var(--muted);font-size:15px}
.fine{margin-top:22px;color:var(--muted);font-size:15px;max-width:76ch}
@media (max-width:800px){.prices{grid-template-columns:1fr}}

/* band */
.band{background:var(--ink);color:#fff;border-radius:18px;padding:clamp(32px,6vw,56px);position:relative;overflow:hidden}
.band::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:var(--spectrum)}
.band h2{color:#fff;margin-bottom:12px}
.band p{color:#C9CDD5;max-width:60ch}
.band .hero-cta .btn-primary{background:#fff;color:var(--ink)}
.band .hero-cta .btn-ghost{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}

/* footer */
footer{border-top:1px solid var(--line);padding:48px 0 40px;margin-top:24px;background:var(--card)}
.foot{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:32px}
.foot h4{margin:0 0 12px;font-size:12px;letter-spacing:.12em;text-transform:uppercase;color:var(--faint);font-weight:600}
.foot a{display:block;text-decoration:none;color:var(--muted);font-size:15px;padding:3px 0}
.foot a:hover{color:var(--ink)}
.foot address{font-style:normal;color:var(--muted);font-size:14.5px;line-height:1.7;margin-top:12px}
.legal-note{margin-top:36px;padding-top:22px;border-top:1px solid var(--line);color:var(--faint);font-size:13px;max-width:90ch}
@media (max-width:760px){.foot{grid-template-columns:1fr;gap:24px}}

/* document pages */
.doc-head{padding:56px 0 8px}
.doc-head h1{font-size:clamp(32px,5vw,48px)}
.doc-head .meta{margin-top:12px;color:var(--faint);font-size:14px}
.doc-nav{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.doc-nav a{text-decoration:none;font-size:14px;padding:6px 13px;border:1px solid var(--line-2);border-radius:999px;color:var(--muted);background:var(--card)}
.doc-nav a:hover,.doc-nav a[aria-current="page"]{border-color:var(--ink);color:var(--ink)}
.doc{background:var(--card);border:1px solid var(--line);border-radius:16px;padding:clamp(24px,5vw,56px);margin:28px 0 40px}
.doc-in{max-width:74ch}
.doc h2{font-size:24px;margin:38px 0 12px}
.doc h2:first-child{margin-top:0}
.doc p,.doc li,.doc td,.doc th{color:var(--ink-2);font-size:16.5px}
.doc p{margin:0 0 14px}
.doc ol,.doc ul{margin:0 0 16px;padding-left:22px}
.doc li{margin-bottom:8px}
.doc ol.num{list-style:none;padding-left:0}
.doc ol.num li{display:grid;grid-template-columns:44px 1fr}
.doc ol.num li>span:first-child{color:var(--faint);font-variant-numeric:tabular-nums}
.doc a{color:var(--accent-ink);text-underline-offset:2px}
.doc strong{color:var(--ink)}
.tbl{overflow-x:auto;margin:0 0 18px;border:1px solid var(--line);border-radius:10px}
.doc table{border-collapse:collapse;width:100%;min-width:520px}
.doc th,.doc td{text-align:left;vertical-align:top;padding:10px 12px;border-bottom:1px solid var(--line);font-size:15px}
.doc th{background:#F6F4EF;font-weight:600}
.doc tr:last-child td{border-bottom:0}
.contact-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin:6px 0 18px}
.contact-card{border:1px solid var(--line);border-radius:12px;padding:20px;background:#FDFCFA}
.contact-card h3{font-size:17px;margin-bottom:6px}
.contact-card p{margin:0 0 6px;font-size:15.5px}
@media (max-width:640px){.contact-grid{grid-template-columns:1fr}}
