:root{
  --bg: #f3f7ff;
  --panel: #ffffff;
  --ink: #0b1220;
  --accent: #2563eb;
  --accent2: #fb7185;
}

body{background:radial-gradient(900px 500px at 15% 0%, rgba(37,99,235,.12), transparent 60%), radial-gradient(800px 520px at 90% 10%, rgba(251,113,133,.10), transparent 60%), var(--bg); color:var(--ink);}
#logo img{height:34px; width:auto; display:block;}
.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;}

.top{border-bottom:1px solid rgba(0,0,0,.06); background:rgba(255,255,255,.75); backdrop-filter: blur(10px);}
.deck{display:grid; grid-template-columns: minmax(0,1fr) 320px; gap:1rem; padding:1rem 0 1.5rem;}
.deck__main{min-width:0; display:grid; gap:1rem;}
.deck__rail{align-self:start; position:sticky; top:70px; height:calc(100vh - 90px); overflow:auto;}
.rail{border-radius:16px;}

.hero{border-radius:16px;}
.kicker{display:inline-flex; gap:.35rem; align-items:center; font-size:.75rem; letter-spacing:.08em; text-transform:uppercase; color:rgba(11,18,32,.7);}
.hero__slider{width:min(360px, 100%); margin-top:.5rem;}
.slide{height:140px; display:flex; align-items:center; justify-content:center; border-radius:14px; background:linear-gradient(135deg, rgba(37,99,235,.14), rgba(251,113,133,.12)); border:1px solid rgba(0,0,0,.06); font-weight:800;}

.content{border-radius:16px;}

@media (max-width: 1100px){
  .deck{grid-template-columns: 1fr;}
}

#footer{background:#fff; border-top:1px solid rgba(0,0,0,.06);}
#footer .container{max-width:1100px; margin:0 auto; padding:1.2rem;}
