
:root {
  --bg: #0b0d10;
  --card: #111418;
  --muted: #a9b0b7;
  --brandA: #16e6f3;
  --brandB: #86f7a5;
}
html, body { background: var(--bg); color: #e9eef2; }
.blur-glow {
  position: absolute; inset: -10% -20% auto auto; width: 60vw; height: 60vh;
  background: radial-gradient(60% 60% at 50% 50%, rgba(22,230,243,0.25), rgba(134,247,165,0.15), transparent 75%);
  filter: blur(48px);
  pointer-events: none;
}
.card {
  background: linear-gradient(180deg, rgba(255,255,255,0.08), rgba(255,255,255,0.02));
  border: 1px solid rgba(255,255,255,0.08);
  border-radius: 20px;
  backdrop-filter: blur(6px);
  transition: transform .4s ease, box-shadow .4s ease, border-color .3s ease;
}
.card:hover { transform: translateY(-6px); border-color: rgba(255,255,255,0.18); }
.gradient-text {
  background: linear-gradient(90deg, var(--brandA), var(--brandB));
  -webkit-background-clip: text; background-clip: text; color: transparent;
}
.btn-primary {
  background: linear-gradient(90deg, var(--brandA), var(--brandB));
  border-radius: 999px; padding: 14px 22px; font-weight: 700; color: #0b0d10;
  transition: filter .2s ease;
}
.btn-primary:hover { filter: brightness(1.1); }
.btn-outline {
  border: 1px solid rgba(255,255,255,0.25); border-radius: 999px; padding: 14px 22px; font-weight: 600;
}
.section { padding: 80px 0; }
.badge {
  display: inline-flex; align-items: center; gap: 10px; padding: 8px 14px;
  border-radius: 999px; background: rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.1); color: #dce6ef;
}
.footer-link { opacity: .8 }
.footer-link:hover { opacity: 1 }
.city-pill { border: 1px solid rgba(255,255,255,0.1); border-radius: 999px; padding: 8px 12px; }
input, textarea, select { background:#0e1116; border:1px solid rgba(255,255,255,0.18); color:#e9eef2; border-radius:12px; padding:12px 14px; width:100%}
label { font-size: 14px; color:#cfd6df }
.form-success { display:none; }
.sticky-cta { position: fixed; right: 20px; bottom: 20px; z-index: 60; }
.video-mask { mask-image: radial-gradient(60% 60% at 50% 50%, black 60%, transparent 100%); -webkit-mask-image: radial-gradient(60% 60% at 50% 50%, black 60%, transparent 100%); }

/* Cart summary */
.cart-bar {
  position: fixed; left: 0; right: 0; bottom: 0; z-index: 70;
  background: rgba(10,12,15,0.9); backdrop-filter: blur(10px);
  border-top: 1px solid rgba(255,255,255,0.12);
  display: none;
}
.cart-inner { max-width: 72rem; margin: 0 auto; padding: 14px 24px; display:flex; align-items:center; justify-content:space-between; gap:12px }
.plan-chip { border:1px solid rgba(255,255,255,0.18); border-radius:999px; padding:6px 12px; }
.plan-selected { outline: 2px solid rgba(255,255,255,0.28); }
