
:root{
  --ink:#152238;--muted:#5d6877;--bg:#f7f9fc;--card:#fff;
  --brand:#5b45ff;--brand2:#8b5cf6;--accent:#12b981;--line:#e4e8f0;
  --max:1120px;--shadow:0 14px 34px rgba(21,34,56,.08);
}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:var(--bg);line-height:1.68}
a{color:var(--brand);text-decoration-thickness:1.5px;text-underline-offset:2px}img{max-width:100%;height:auto}
.wrap{width:min(var(--max),92%);margin:auto}.site-header{position:sticky;top:0;z-index:20;background:rgba(255,255,255,.96);border-bottom:1px solid var(--line);backdrop-filter:blur(10px)}
.nav{display:flex;align-items:center;justify-content:space-between;min-height:72px;gap:22px}.brand{display:flex;align-items:center;gap:10px;font-weight:900;color:var(--ink);text-decoration:none;letter-spacing:-.02em}.brand-mark{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--brand),var(--accent));display:grid;place-items:center;color:#fff;font-weight:900}
.navlinks{display:flex;align-items:center;gap:22px}.navlinks a{color:var(--ink);text-decoration:none;font-weight:700;font-size:.95rem}.navlinks .cta{color:#fff}
.cta{display:inline-block;background:linear-gradient(135deg,var(--brand),var(--brand2));color:#fff!important;text-decoration:none;padding:.8rem 1.1rem;border-radius:12px;font-weight:800;box-shadow:0 8px 20px rgba(91,69,255,.18)}
.cta.alt{background:var(--ink)}.hero{padding:72px 0 48px;background:radial-gradient(circle at 80% 10%,rgba(91,69,255,.14),transparent 32%),linear-gradient(180deg,#fff,var(--bg))}
.eyebrow{color:var(--brand);font-weight:900;text-transform:uppercase;letter-spacing:.12em;font-size:.78rem}.hero h1,.article h1{font-size:clamp(2.25rem,5vw,4.3rem);line-height:1.02;letter-spacing:-.05em;margin:.3em 0 .3em;max-width:900px}.hero p{font-size:1.18rem;color:var(--muted);max-width:760px}
.actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.disclosure{font-size:.86rem;color:var(--muted);margin-top:16px}
.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{background:var(--card);border:1px solid var(--line);border-radius:18px;padding:24px;box-shadow:var(--shadow)}.card h3{margin:.1rem 0 .5rem}.card p{color:var(--muted)}
.section{padding:52px 0}.section h2{font-size:clamp(1.7rem,3vw,2.6rem);letter-spacing:-.035em;margin-top:0}.section-intro{max-width:780px;color:var(--muted);font-size:1.05rem}
.article{padding:48px 0 72px}.article .content{display:grid;grid-template-columns:minmax(0,760px) 280px;gap:44px;align-items:start}.article main{background:#fff;border:1px solid var(--line);border-radius:20px;padding:34px;box-shadow:var(--shadow)}
.article h1{font-size:clamp(2rem,4vw,3.25rem)}.article h2{margin-top:2.2rem;letter-spacing:-.03em}.article h3{margin-top:1.6rem}.article p,.article li{color:#334155}.article .lede{font-size:1.16rem;color:#475569}
.breadcrumbs{font-size:.86rem;color:var(--muted);margin-bottom:18px}.breadcrumbs a{color:var(--muted)}
.sidebar{position:sticky;top:96px}.toc,.offerbox{background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px;margin-bottom:18px}.toc ul{padding-left:18px;margin-bottom:0}.toc li{margin:.45rem 0;font-size:.92rem}.offerbox{border-color:#cfc8ff;background:linear-gradient(180deg,#f4f1ff,#fff)}.offerbox .cta{width:100%;text-align:center}
.notice{border-left:4px solid var(--accent);background:#ecfdf5;padding:16px 18px;border-radius:8px;margin:22px 0}.warning{border-left-color:#f59e0b;background:#fffbeb}
.compare{width:100%;border-collapse:collapse;margin:24px 0}.compare th,.compare td{padding:13px;border:1px solid var(--line);text-align:left;vertical-align:top}.compare th{background:#f8fafc}
.pill{display:inline-block;background:#eef2ff;color:#4338ca;border-radius:999px;padding:.3rem .65rem;font-size:.78rem;font-weight:800;margin:.15rem .2rem .15rem 0}
.site-footer{background:#101827;color:#cbd5e1;padding:42px 0;margin-top:30px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:30px}.site-footer a{color:#e2e8f0}.site-footer h3{color:#fff}.small{font-size:.84rem;color:#94a3b8}
.mobile-toggle{display:none;background:none;border:0;font-size:1.5rem}
@media(max-width:820px){.grid{grid-template-columns:1fr}.article .content{grid-template-columns:1fr}.sidebar{position:static}.navlinks{display:none;position:absolute;top:72px;left:0;right:0;background:#fff;padding:18px 4%;border-bottom:1px solid var(--line);flex-direction:column;align-items:flex-start}.navlinks.open{display:flex}.mobile-toggle{display:block}.footer-grid{grid-template-columns:1fr}.article main{padding:24px}.hero{padding-top:48px}}


.reco-modal[hidden]{display:none}
.reco-modal{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px}
.reco-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.68);backdrop-filter:blur(3px)}
.reco-dialog{position:relative;width:min(520px,100%);background:#fff;border:1px solid var(--line);border-radius:22px;padding:28px;box-shadow:0 24px 70px rgba(15,23,42,.28)}
.reco-close{position:absolute;top:14px;right:14px;width:38px;height:38px;border-radius:999px;border:1px solid var(--line);background:#fff;color:var(--ink);font-size:1.35rem;line-height:1;cursor:pointer}
.reco-dialog h2{font-size:clamp(1.8rem,5vw,2.5rem);line-height:1.08;letter-spacing:-.04em;margin:.3rem 0 .8rem}
.reco-dialog p{color:var(--muted)}
.reco-dialog .cta{width:100%;text-align:center;margin-top:8px}
.reco-kicker{display:inline-block;font-size:.78rem;font-weight:900;text-transform:uppercase;letter-spacing:.12em;color:var(--brand)}
.reco-fineprint{font-size:.78rem!important;margin:.8rem 0 0}
body.modal-open{overflow:hidden}
