:root{
  --brand: #0d6efd;
  --brand2: #20c997;
  --ink: #0b1320;
  --muted: #6c757d;
  --card: rgba(255,255,255,.92);
}

body{
  font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif;
  color: var(--ink);
  background:
    radial-gradient(1200px 500px at 10% 0%, rgba(13,110,253,.16), transparent 55%),
    radial-gradient(1200px 500px at 90% 10%, rgba(32,201,151,.14), transparent 55%),
    linear-gradient(180deg, #f8fafc 0%, #ffffff 35%, #f8fafc 100%);
  scroll-behavior: smooth;
}

main { padding-top: 4.75rem; }

.glass{
  background: var(--card);
  border: 1px solid rgba(15,23,42,.08);
  box-shadow: 0 10px 30px rgba(2,6,23,.08);
  backdrop-filter: blur(10px);
}

.hero{
  position: relative;
  overflow: hidden;
  border-bottom: 1px solid rgba(15,23,42,.08);
}

.hero-blob{
  position:absolute; inset:-120px -160px auto auto;
  width:520px; height:520px; border-radius: 999px;
  background: radial-gradient(circle at 30% 30%, rgba(255,255,255,.65), rgba(255,255,255,0) 60%),
              radial-gradient(circle at 60% 60%, rgba(32,201,151,.38), rgba(32,201,151,0) 60%),
              radial-gradient(circle at 40% 70%, rgba(13,110,253,.42), rgba(13,110,253,0) 60%);
  filter: blur(2px);
  opacity:.9;
  transform: rotate(12deg);
  pointer-events:none;
}

.section-title{ letter-spacing: -0.02em; }
.mini{ font-size:.92rem; color: var(--muted); }

.btn-gradient{
  background: linear-gradient(90deg, var(--brand), var(--brand2));
  border: none;
}
.btn-gradient:hover{ filter: brightness(.95); }

.sticky-note{ border-left: 4px solid var(--brand2); }

.checklist li{ margin-bottom: .45rem; }

.hover-lift{ transition: transform .15s ease, box-shadow .15s ease; }
.hover-lift:hover{ transform: translateY(-2px); box-shadow: 0 16px 40px rgba(2,6,23,.12); }

@media (prefers-reduced-motion: reduce){
  body{ scroll-behavior: auto; }
  .hero-blob{ display:none; }
}
