/* ============================================================
   ASAI PREMIUM LAYER — unified type, spacing & surface system
   Loaded LAST on every page; surgical !important where the old
   GHL template fights back. Brand: #00b1fc on near-black.
   ============================================================ */
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@500;600;700;800&family=Inter:wght@300;400;500;600&display=swap');

:root{
  --asai-accent:#00b1fc;
  --asai-accent-2:#0f8fd6;
  --asai-ink:#eef3f8;
  --asai-muted:#93a1b3;
  --asai-line:rgba(255,255,255,.09);
  --asai-card:rgba(17,21,28,.66);
  --asai-glow:0 10px 40px -12px rgba(0,177,252,.35);
  --asai-radius:16px;
}

/* ---------- 1. TYPE SYSTEM — one family pair everywhere ---------- */
body{
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
h1,h2,h3,h4,h5,h6,
.hero-title,.gradient-heading,.section-title,.plan-name,.stat-number{
  font-family:'Poppins','Inter',sans-serif !important;
  letter-spacing:-.015em;
  font-weight:700;
}
h1,.hero-title{line-height:1.08 !important}
h2{line-height:1.18 !important}
p,li{line-height:1.68}
p{color:var(--asai-ink)}
.hero-subtitle,.plan-subtitle,.sub{color:var(--asai-muted) !important;font-weight:300}

/* kill the template's font zoo (Lato/Montserrat/Roboto mix) */
[style*="Lato"],[style*="Montserrat"],[style*="Roboto"],[style*="Open Sans"]{
  font-family:'Inter',sans-serif !important;
}

/* ---------- 2. SPACING RHYTHM ---------- */
section,.ghl-custom-wrapper{scroll-margin-top:80px}
.ghl-custom-wrapper{padding-top:88px;padding-bottom:88px}
@media(max-width:767px){
  .ghl-custom-wrapper{padding-top:52px !important;padding-bottom:52px !important}
}
.section-title{margin-bottom:14px !important}
.section-title + p{margin-top:0;margin-bottom:36px}

/* ---------- 3. BUTTONS — one primary, one secondary ---------- */
.btn,.btn-primary,.btn-choose,.c-button .button,.cta,
a[class*="btn"]:not(.btn-secondary):not(.btn-outline){
  font-family:'Poppins','Inter',sans-serif !important;
  font-weight:600 !important;
  letter-spacing:.01em;
  border-radius:13px !important;
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease !important;
}
.btn-primary,.btn-choose.primary,
a.btn-primary,.btn-plat{
  background:linear-gradient(135deg,#22c3ff,#0784d8 60%) !important;
  color:#04121b !important;
  box-shadow:var(--asai-glow) !important;
  border:0 !important;
}
.btn-primary:hover,.btn-choose.primary:hover,.btn-plat:hover{
  transform:translateY(-2px);
  filter:brightness(1.07);
  box-shadow:0 14px 46px -12px rgba(0,177,252,.5) !important;
}
.btn-secondary,.btn-outline,.btn-choose:not(.primary){
  background:rgba(255,255,255,.03) !important;
  border:1px solid rgba(0,177,252,.4) !important;
  color:var(--asai-ink) !important;
}
.btn-secondary:hover,.btn-outline:hover,.btn-choose:not(.primary):hover{
  border-color:var(--asai-accent) !important;
  transform:translateY(-2px);
  box-shadow:0 8px 30px -14px rgba(0,177,252,.35);
}

/* ---------- 4. CARDS & SURFACES ---------- */
.price-card,.pricing-card,.tier,.panel,.tips,
.feature-card,[class*="card"]:not(.c-button){
  border-radius:var(--asai-radius) !important;
  border:1px solid var(--asai-line);
  transition:transform .22s ease, box-shadow .22s ease, border-color .22s ease;
}
.price-card:hover,.pricing-card:hover,.tier:hover,.feature-card:hover{
  transform:translateY(-4px);
  border-color:rgba(0,177,252,.45) !important;
  box-shadow:0 22px 60px -24px rgba(0,0,0,.85), 0 0 34px -14px rgba(0,177,252,.3);
}
.price-card.popular,.tier.featured{
  border-color:rgba(0,177,252,.55) !important;
  box-shadow:0 0 60px -22px rgba(0,177,252,.4);
}
.popular-badge,.flag{
  font-family:'Poppins',sans-serif !important;
  letter-spacing:.08em;font-weight:600;
}

/* ---------- 5. STATS ---------- */
.stat-number{
  background:linear-gradient(135deg,#fff,#7fd4ff 70%);
  -webkit-background-clip:text;background-clip:text;color:transparent !important;
  font-weight:800;
}
.stat-label{color:var(--asai-muted) !important;font-size:13px;letter-spacing:.06em;text-transform:uppercase}

/* ---------- 6. GRADIENT HEADINGS — consistent accent ---------- */
.gradient-heading,.grad-text{
  background:linear-gradient(120deg,#ffffff 10%,#59c8ff 55%,#0784d8) !important;
  -webkit-background-clip:text !important;background-clip:text !important;
  color:transparent !important;
}

/* ---------- 7. FAQ / DETAILS ---------- */
details{
  border:1px solid var(--asai-line);border-radius:12px;
  padding:14px 18px;margin-bottom:10px;background:rgba(255,255,255,.02);
}
details summary{cursor:pointer;font-weight:600;font-family:'Poppins',sans-serif;list-style:none}
details summary::-webkit-details-marker{display:none}
details summary::after{content:'+';float:right;color:var(--asai-accent);font-weight:600}
details[open] summary::after{content:'\2212'}
details[open]{border-color:rgba(0,177,252,.35)}

/* ---------- 8. GLOBAL FINISH ---------- */
::selection{background:rgba(0,177,252,.35);color:#fff}
html{scroll-behavior:smooth}
a{transition:color .15s ease}
:focus-visible{outline:2px solid var(--asai-accent);outline-offset:2px;border-radius:6px}
img,video{border-radius:inherit}
hr{border:0;border-top:1px solid var(--asai-line)}

/* nav links breathing room + hover */
nav a,.nav-links a,.nav-menu-desktop a{transition:color .15s ease,opacity .15s ease}
nav a:hover,.nav-links a:hover{color:var(--asai-accent) !important}

/* footer alignment */
footer{border-top:1px solid var(--asai-line)}
footer a:hover{color:var(--asai-accent) !important}

/* ---------- 9. VOICE CTA — the standout button (free call) ---------- */
.asai-voice-cta{
  background:linear-gradient(135deg,#3ecf8e,#00b1fc 70%) !important;
  animation:asaiVoicePulse 2.2s ease-in-out infinite;
  display:inline-flex;align-items:center;gap:9px;
}
.asai-voice-cta:hover{transform:translateY(-2px) scale(1.02)}
.asai-live-dot{width:9px;height:9px;border-radius:50%;background:#0f4;box-shadow:0 0 10px rgba(0,255,90,.9);animation:asaiDotBlink 1.6s ease-in-out infinite;display:inline-block}
@keyframes asaiVoicePulse{0%,100%{box-shadow:0 0 0 0 rgba(0,177,252,.45),0 10px 36px -10px rgba(0,177,252,.55)}50%{box-shadow:0 0 0 12px rgba(0,177,252,0),0 10px 36px -10px rgba(0,177,252,.55)}}
@keyframes asaiDotBlink{0%,100%{opacity:1}50%{opacity:.35}}
