
:root{--bg:#0b1220;--surf:#121a2b;--text:#f8fafc;--muted:#a8b3c7;--prim:#38bdf8;--acc:#fbbf24;--line:#2a364f;--soft:#162033;--legal:#020617;--sans:'Manrope',system-ui,sans-serif;--serif:'Newsreader',Georgia,serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:var(--sans);line-height:1.65}
a{color:var(--prim)}img{max-width:100%;height:auto;display:block}.skip{position:absolute;left:-999px}.skip:focus{left:1rem;top:1rem;z-index:99;background:var(--surf);padding:.75rem}
.legal-bar{padding:.75rem clamp(1rem,3vw,2rem);text-align:center;font-size:.92rem}
.lb-dark{background:var(--legal);color:#fff}.lb-amber{background:#92400e;color:#fff}.lb-red{background:#991b1b;color:#fff}
.lb-soft{background:var(--soft);color:var(--text)}.lb-outline{background:var(--surf);border-bottom:2px solid var(--prim)}
.top{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1rem clamp(1rem,4vw,3rem);position:sticky;top:0;z-index:20;background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.brand{display:flex;align-items:center;gap:.65rem;font-weight:800;text-decoration:none;color:inherit}
.nav{display:flex;flex-wrap:wrap;gap:.25rem}.nav a{text-decoration:none;color:var(--muted);padding:.55rem .8rem;border-radius:999px}
.nav a[aria-current=page],.nav a:hover{background:var(--soft);color:var(--text)}
.nav-toggle{display:none;border:1px solid var(--line);background:var(--surf);color:var(--text);padding:.55rem .8rem;border-radius:10px}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:46px;padding:.8rem 1.15rem;background:var(--prim);color:#111;font-weight:800;text-decoration:none;border-radius:14px;border:2px solid var(--prim)}
.ghost{font-weight:800;color:var(--prim)}.btn.block,.ghost.block{display:block;text-align:center;margin:.5rem 0}
.actions{display:flex;flex-wrap:wrap;gap:1rem;margin:1.25rem 0}.actions.right{justify-content:flex-end}.actions.center{justify-content:center}.actions.left{justify-content:flex-start}
.above-fold-disclaimer{margin:1rem 0;padding:1rem;border:1px solid var(--line);background:var(--soft);border-radius:14px}
.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:800;color:var(--prim)}
h1,h2,h3{font-family:var(--serif);line-height:1.1;letter-spacing:-.03em}
.lead{font-size:1.15rem;color:var(--muted);max-width:42rem}
.band,.page-hero,.prose,.compare,.faq-list,.pad{padding:clamp(1.5rem,5vw,3.5rem) clamp(1rem,4vw,3rem);max-width:1100px;margin:auto}
.row4{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem}.row2{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.row3{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
.center-text{text-align:center}
.row4 article,.row2 article,.tile,.brick{background:var(--surf);border:1px solid var(--line);border-radius:22px;padding:1.1rem}
.cmp{border:1px solid var(--line);border-radius:16px;overflow:hidden}.cmp>div{display:grid;grid-template-columns:1fr 1fr}.cmp span,.cmp strong{padding:.9rem;border-bottom:1px solid var(--line)}
.foot{display:flex;justify-content:space-between;gap:1.5rem;padding:2rem clamp(1rem,4vw,3rem);border-top:1px solid var(--line);background:var(--surf)}
.foot p{color:var(--muted);max-width:36rem}.foot nav{display:flex;flex-wrap:wrap;gap:1rem}
.cookie-banner{position:fixed;left:1rem;right:1rem;bottom:1rem;max-width:640px;margin:auto;background:var(--surf);border:1px solid var(--line);border-radius:18px;padding:1rem;z-index:50;box-shadow:0 18px 50px rgba(0,0,0,.2)}
.cookie-banner[hidden]{display:none}.cookie-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}
.cookie-actions button{border:1px solid var(--line);border-radius:999px;padding:.65rem 1rem;font-weight:800;cursor:pointer;background:var(--prim);color:#111}
.cookie-actions button.secondary{background:transparent;color:var(--text)}
body.cookie-bar-visible{padding-bottom:calc(7rem + env(safe-area-inset-bottom,0px))}
.cook{width:100%;border-collapse:collapse;margin:1rem 0}.cook th,.cook td{border:1px solid var(--line);padding:.6rem;text-align:left}
details{border:1px solid var(--line);border-radius:12px;padding:.75rem 1rem;margin:.5rem 0;background:var(--surf)}
summary{cursor:pointer;font-weight:800}

.mag-hero{padding:clamp(3rem,8vw,6rem) clamp(1rem,4vw,3rem);max-width:900px}
.mag-hero h1{font-size:clamp(2.8rem,8vw,5.5rem)}.mag-kicker{font-weight:800;color:var(--acc)}
.mag-grid{display:grid;grid-template-columns:1.4fr .7fr;gap:2rem;padding:0 clamp(1rem,4vw,3rem) 3rem;max-width:1200px;margin:auto}
.mag-side{background:var(--soft);padding:1.25rem;border-radius:20px;height:fit-content;position:sticky;top:6rem}
.pull{font-family:var(--serif);font-size:1.35rem;margin-top:1.5rem;border-left:4px solid var(--prim);padding-left:1rem}

@media (max-width:991.98px){
  body{overflow-x:hidden}
  .nav-toggle{display:inline-flex}
  .nav{display:none;position:absolute;left:1rem;right:1rem;top:70px;flex-direction:column;background:var(--surf);border:1px solid var(--line);border-radius:14px;padding:.75rem}
  .nav.open{display:flex}
  .mag-grid,.dash-top,.rail-wrap,.zz,.two,.docs,.con,.gal,.dash-cards,.row4,.row3,.row2,.br-hero,.sol-hero,.sol-grid,.ste-nums,.fra,.pho-icons,.ver-banner,.ver-cols,.sto-row,.tel-split,.imp,.ft-tiles,.ag-band{grid-template-columns:1fr;display:grid}
  .masonry{column-count:1}.rail.sticky,.con-box,.mag-side,.imp-side{position:static}
  .cover,.spot{min-height:auto;padding:4rem 1rem}.actions a,.btn{width:100%}
  .foot{flex-direction:column}input,textarea,select,button{font-size:16px}
  .zz.rev,.sto-row.rev{direction:ltr}.mini-circles{gap:.75rem}.circ{width:120px;height:120px}
}
@media (min-width:992px){
  .layout-dashboard .tile:nth-child(even){transform:translateY(12px)}
}
