:root{
  --bg:#07111f;
  --bg2:#0c1628;
  --panel:#101b31;
  --panel2:#0f1a2c;
  --line:rgba(255,255,255,.08);
  --text:#edf4ff;
  --muted:#9eb0ca;
  --primary:#67e8f9;
  --primary2:#38bdf8;
  --accent:#c084fc;
  --success:#86efac;
  --warning:#fde68a;
  --max:1200px;
  --r:22px;
  --shadow:0 18px 60px rgba(0,0,0,.28);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  color:var(--text);
  font-family:Inter,Arial,Helvetica,sans-serif;
  line-height:1.65;
  background:
    radial-gradient(circle at 0% 0%, rgba(56,189,248,.10), transparent 24%),
    radial-gradient(circle at 100% 0%, rgba(192,132,252,.10), transparent 20%),
    linear-gradient(180deg, var(--bg) 0%, #091322 100%);
}
a{text-decoration:none;color:inherit}
img{max-width:100%;display:block}
.container{width:min(var(--max), calc(100% - 2rem)); margin:auto}
.topbar{
  border-bottom:1px solid rgba(255,255,255,.05);
  background:rgba(255,255,255,.02);
  color:var(--muted);
  font-size:.93rem;
}
.topbar .container{
  display:flex; align-items:center; justify-content:space-between; gap:1rem;
  min-height:42px;
}
.site-header{
  position:sticky; top:0; z-index:40;
  backdrop-filter:blur(16px);
  background:rgba(7,17,31,.72);
  border-bottom:1px solid var(--line);
}
.nav-wrap{
  min-height:82px;
  display:grid; grid-template-columns:auto 1fr auto; gap:1rem; align-items:center;
}
.logo{font-size:1.5rem; font-weight:900; letter-spacing:.02em}
.logo span{color:var(--primary)}
.nav{display:flex; justify-content:center; gap:.7rem; flex-wrap:wrap}
.nav a{
  padding:.78rem .95rem; border-radius:999px; color:#dce7f7;
}
.nav a:hover,.nav a[aria-current="page"]{
  background:rgba(255,255,255,.05); color:#fff;
}
.btn{
  display:inline-flex; align-items:center; justify-content:center;
  min-height:50px; padding:.9rem 1.25rem; border-radius:999px; font-weight:800;
  transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease;
  border:0; cursor:pointer;
}
.btn:hover{transform:translateY(-2px); box-shadow:var(--shadow)}
.btn-primary{background:linear-gradient(135deg,var(--primary),var(--primary2)); color:#04131c}
.btn-secondary{border:1px solid rgba(255,255,255,.14); color:#fff; background:transparent}
.btn-dark{background:#fff; color:#08111d}
.btn-full{width:100%}
.section{padding:2rem 0 4.75rem}
.hero{
  padding:5.5rem 0 4rem;
  position:relative; overflow:hidden;
}
.hero::before{
  content:""; position:absolute; inset:0;
  background:
    radial-gradient(circle at 20% 15%, rgba(103,232,249,.14), transparent 26%),
    radial-gradient(circle at 80% 10%, rgba(192,132,252,.14), transparent 22%);
  pointer-events:none;
}
.hero-grid,.two-col,.contact-grid,.cta-grid,.stats-grid,.split-grid{
  display:grid; grid-template-columns:1.12fr .88fr; gap:1.4rem; align-items:start;
}
.grid-3,.grid-4,.process-grid{
  display:grid; gap:1.2rem;
}
.grid-3{grid-template-columns:repeat(3,1fr)}
.grid-4{grid-template-columns:repeat(4,1fr)}
.process-grid{grid-template-columns:repeat(3,1fr)}
.hero-copy,.hero-side{position:relative; z-index:1}
.badge,.eyebrow,.mini-badge,.section-kicker{
  display:inline-flex; align-items:center; gap:.45rem;
  padding:.42rem .82rem; border-radius:999px; font-size:.92rem; font-weight:700;
}
.badge,.eyebrow,.section-kicker{
  background:rgba(103,232,249,.08);
  border:1px solid rgba(103,232,249,.24);
  color:var(--primary);
}
.mini-badge{
  background:rgba(192,132,252,.12);
  color:#edd8ff;
  border:1px solid rgba(192,132,252,.18);
}
h1,h2,h3{line-height:1.1; margin-top:0}
h1{
  margin:.95rem 0 1rem;
  font-size:clamp(2.45rem, 5vw, 4.8rem);
  letter-spacing:-.03em;
}
h2{
  font-size:clamp(1.65rem, 3vw, 2.8rem);
  letter-spacing:-.02em;
  margin-bottom:1rem;
}
h3{font-size:1.15rem; margin-bottom:.7rem}
.lead{font-size:1.08rem; color:var(--muted); max-width:760px}
.card,.glass,.cta-panel{
  border-radius:var(--r);
  border:1px solid var(--line);
  background:linear-gradient(180deg, rgba(16,27,49,.95) 0%, rgba(9,19,34,.96) 100%);
  box-shadow:var(--shadow);
}
.card,.glass{padding:1.5rem}
.glass{
  backdrop-filter:blur(14px);
  background:linear-gradient(180deg, rgba(18,29,52,.78), rgba(11,20,36,.9));
}
.hero-points,.trust-list,.logo-strip,.pill-list{
  display:flex; gap:.75rem; flex-wrap:wrap;
}
.hero-points span,.logo-strip span,.pill-list span{
  background:rgba(255,255,255,.045);
  border:1px solid rgba(255,255,255,.06);
  border-radius:999px;
  padding:.65rem .95rem;
  font-weight:600;
}
.trust-list{margin-top:1.25rem}
.trust-item{
  flex:1 1 180px;
  border:1px solid rgba(255,255,255,.06);
  background:rgba(255,255,255,.03);
  padding:1rem; border-radius:16px;
}
.icon-dot{
  width:12px;height:12px;border-radius:50%;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  margin-bottom:1rem;
}
ul.clean, .feature-list, .check-list{padding-left:1.15rem; margin:0}
.feature-list li,.check-list li,.clean li{margin-bottom:.42rem}
.kpi{
  display:grid; grid-template-columns:repeat(2,1fr); gap:1rem; margin-top:1rem;
}
.kpi .box{
  border:1px solid rgba(255,255,255,.06);
  border-radius:18px; padding:1rem; background:rgba(255,255,255,.03);
}
.big-number{
  display:block; font-size:3rem; line-height:1; font-weight:900;
  background:linear-gradient(135deg,var(--primary),var(--accent));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent;
  margin-bottom:.55rem;
}
.cta-row,.cta-center,.actions{
  display:flex; gap:1rem; flex-wrap:wrap; margin-top:1.4rem;
}
.cta-center{justify-content:center}
.section-head{margin-bottom:1.6rem}
.alt{
  background:rgba(255,255,255,.02);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
.price-card{position:relative}
.price-card.popular{
  transform:translateY(-8px);
  border-color:rgba(103,232,249,.3);
}
.price{
  display:flex; align-items:end; gap:.3rem; margin:1rem 0 .8rem;
}
.price strong{font-size:2.2rem; line-height:1}
.price span{color:var(--muted)}
.faq details{
  background:rgba(255,255,255,.03);
  border:1px solid var(--line);
  border-radius:16px;
  padding:1rem 1.1rem;
  margin-bottom:1rem;
}
.faq summary{cursor:pointer; font-weight:700}
.contact-form{display:grid; gap:.8rem}
.two-fields{display:grid; grid-template-columns:repeat(2,1fr); gap:1rem}
.contact-form input,.contact-form textarea,.contact-form select{
  width:100%;
  background:#09121f;
  color:var(--text);
  border:1px solid rgba(255,255,255,.12);
  border-radius:14px;
  padding:.95rem 1rem;
  font:inherit;
}
.contact-form input:focus,.contact-form textarea:focus,.contact-form select:focus{
  outline:2px solid rgba(103,232,249,.22);
  border-color:rgba(103,232,249,.36);
}
.note{color:var(--muted); font-size:.93rem}
footer{
  padding:2rem 0 3rem;
  border-top:1px solid var(--line);
}
.footer-grid{display:grid; grid-template-columns:1fr auto; gap:1rem}
.footer-links{display:flex; flex-direction:column; gap:.4rem}
.tiny{font-size:.92rem; color:var(--muted)}
.local-links{
  display:flex; gap:.7rem; flex-wrap:wrap; margin-top:1rem;
}
.local-links a{
  border:1px solid rgba(255,255,255,.08);
  border-radius:999px; padding:.58rem .85rem; color:#dce8f5;
}
.local-links a:hover{background:rgba(255,255,255,.04)}
.ribbon{
  display:inline-flex; padding:.35rem .7rem; border-radius:999px;
  font-size:.84rem; font-weight:800; background:rgba(134,239,172,.12);
  color:#c7f9d7; border:1px solid rgba(134,239,172,.16);
}
.list-card{height:100%}
.table-lite{
  width:100%; border-collapse:collapse; overflow:hidden; border-radius:16px;
}
.table-lite th,.table-lite td{
  padding:.9rem .85rem; border-bottom:1px solid rgba(255,255,255,.08); text-align:left;
}
.table-lite th{color:#fff}
.table-lite td{color:#d8e4f4}
.sticky-mobile-cta{
  display:none;
}
@media (max-width:980px){
  .nav-wrap,.hero-grid,.two-col,.contact-grid,.cta-grid,.stats-grid,.split-grid,
  .grid-3,.grid-4,.process-grid,.footer-grid,.two-fields{
    grid-template-columns:1fr;
  }
  .nav-wrap{padding:.9rem 0; justify-items:center}
  .topbar .container{flex-direction:column; justify-content:center; padding:.55rem 0}
  .price-card.popular{transform:none}
  .site-header{position:static}
  .sticky-mobile-cta{
    display:flex; gap:.7rem; position:fixed; left:0; right:0; bottom:0;
    padding:.8rem 1rem; background:rgba(7,17,31,.92); border-top:1px solid var(--line);
    z-index:60;
  }
  body{padding-bottom:82px}
}