:root{
  --ring: 0 255 255;
}

/* Reusable buttons */
.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1rem;border-radius:.75rem;border:1px solid rgba(255,255,255,.1);transition:.2s ease;}
.btn-primary{background:linear-gradient(90deg,#06b6d4,#3b82f6);color:#001118;font-weight:800;border:none;box-shadow:0 0 0 0 rgba(var(--ring),.6);} 
.btn-primary:hover{filter:brightness(1.05);transform:translateY(-1px);} 
.btn-ghost{background:rgba(255,255,255,.06);color:#e2e8f0;} 
.btn-ghost:hover{background:rgba(255,255,255,.1);} 

/* Hero visuals */
.hero-gradient{position:absolute;inset:-20% -10%;background:radial-gradient(60% 60% at 20% 10%,rgba(34,211,238,.15),transparent 60%),radial-gradient(50% 50% at 80% 30%,rgba(59,130,246,.15),transparent 60%),radial-gradient(40% 40% at 50% 90%,rgba(16,185,129,.12),transparent 60%);} 
.grid-sheen{position:absolute;inset:0;background-image:linear-gradient(rgba(255,255,255,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.05) 1px,transparent 1px);background-size:40px 40px;mask-image:linear-gradient(to bottom,transparent,black 20%,black 80%,transparent);} 

/* Phone mock */
.phone-frame{position:relative;margin:auto;max-width:340px;aspect-ratio:9/19;border-radius:28px;border:1px solid rgba(255,255,255,.15);background:linear-gradient(180deg,#0b1220,#0f172a);box-shadow:inset 0 0 0 1px rgba(255,255,255,.06),0 10px 40px rgba(0,0,0,.6);} 
.phone-notch{position:absolute;left:50%;top:0;transform:translateX(-50%);height:26px;width:40%;background:#0b1220;border-bottom-left-radius:14px;border-bottom-right-radius:14px;box-shadow:0 1px 0 rgba(255,255,255,.06);} 
.phone-screen{position:absolute;inset:10px;border-radius:20px;background:rgba(255,255,255,.04);backdrop-filter:blur(1px);overflow:hidden;border:1px solid rgba(255,255,255,.06);} 
.team-dot{height:10px;width:10px;border-radius:9999px;box-shadow:0 0 0 2px rgba(255,255,255,.08);} 
.badge{font-size:.65rem;font-weight:800;letter-spacing:.06em;background:rgba(6,182,212,.15);color:#67e8f9;padding:.25rem .45rem;border-radius:.5rem;border:1px solid rgba(103,232,249,.25);} 
.glow{position:absolute;inset:auto -20% -15% -20%;height:200px;background:radial-gradient(50% 60% at 50% 50%,rgba(103,232,249,.25),transparent 70%);} 

/* Section styles */
.section-title{font-weight:900;font-size:1.875rem;letter-spacing:-.02em}
.card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:1rem;padding:1.1rem;transition:.25s ease;}
.card:hover{transform:translateY(-2px);border-color:rgba(103,232,249,.35);box-shadow:0 0 0 3px rgba(103,232,249,.12);} 
.card-title{font-weight:800;margin-top:.5rem;margin-bottom:.25rem}
.card-body{color:#94a3b8;line-height:1.6}
.icon{font-size:1.25rem;}
.pill{background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.08);border-radius:9999px;padding:.5rem 1rem;font-weight:600}

.cta{display:flex;align-items:center;justify-content:space-between;gap:1rem;flex-wrap:wrap;border:1px solid rgba(255,255,255,.1);border-radius:1.25rem;padding:1.25rem 1.1rem;background:linear-gradient(180deg,rgba(255,255,255,.03),rgba(255,255,255,.01));}

/* Policy pages base */
.page{max-width:900px;margin:0 auto;padding:1.25rem;color:#e5e7eb}
.page h1,.page h2,.page h3,.page h4{color:#fff}
.page h2{font-size:2rem;font-weight:900;margin:1.5rem 0 .5rem}
.page h3{font-size:1.5rem;font-weight:800;margin:1.25rem 0 .5rem}
.page p{color:#cbd5e1;margin:.6rem 0;line-height:1.8}
.page ul{list-style:disc;padding-left:1.25rem;margin:.6rem 0}
.page a{color:#67e8f9}

/* Footer */
footer a{text-decoration:none}

