/* Light, high-contrast theme with safe-area fixes */
*{box-sizing:border-box}html,body{margin:0;padding:0}
:root{
  --bg:#f9fbff; --bg-alt:#ffffff; --card:#ffffff;
  --text:#111; --muted:#5a5f6f; --brand:#3a57ff; --accent:#00bfa5;
  --radius:16px; --shadow:0 8px 24px rgba(0,0,0,.08); --navH:58px;
}
html{background:var(--bg)}
body{font-family:Inter,system-ui,Segoe UI,Roboto,Arial,sans-serif;background:var(--bg);color:var(--text);line-height:1.6;overflow-x:hidden}
.container{width:min(1100px,92%);margin:0 auto}
.section{padding:80px 0} .section.alt{background:#f4f6fb}
h1{font-size:clamp(30px,4.2vw,56px);margin:0 0 12px;line-height:1.15}
h2{font-size:clamp(24px,3vw,36px);margin:0 0 10px}
h3{font-size:20px;margin:0 0 8px}
p{margin:0 0 6px;color:var(--muted)}
.brand{background:linear-gradient(90deg,var(--brand),var(--accent));-webkit-background-clip:text;background-clip:text;color:transparent}

/* Nav */
.nav{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.96);border-bottom:1px solid rgba(0,0,0,.08);backdrop-filter:saturate(120%) blur(6px);padding-top:calc(env(safe-area-inset-top,0))}
.nav-inner{display:flex;align-items:center;justify-content:space-between;padding:10px 0;gap:12px}
.logo{font-weight:900;text-decoration:none;color:var(--text)} .logo span{color:var(--brand)}
.menu{display:flex;align-items:center;gap:14px} .menu a{color:var(--text);text-decoration:none;font-weight:600}
.menu a:hover{color:var(--brand)}
.nav-toggle{display:none;background:none;border:none;width:40px;height:40px;border-radius:8px;position:relative}
.nav-toggle span{position:absolute;left:9px;right:9px;height:2px;background:#111;border-radius:2px;transition:.25s}
.nav-toggle span:nth-child(1){top:12px} .nav-toggle span:nth-child(2){top:19px} .nav-toggle span:nth-child(3){top:26px}
.nav-open .nav-toggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.nav-open .nav-toggle span:nth-child(2){opacity:0}
.nav-open .nav-toggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.btn{display:inline-block;padding:12px 18px;border-radius:999px;text-decoration:none;font-weight:800;letter-spacing:.2px;box-shadow:var(--shadow);transition:transform .15s ease, box-shadow .15s ease}
.btn.small{padding:10px 14px;font-size:14px} .btn.block{display:block;text-align:center;margin-top:8px}
.btn.primary{background:linear-gradient(90deg,var(--brand),var(--accent));color:#fff;border:none}
.btn.primary2{background:linear-gradient(90deg,var(--brand),var(--accent));color:#fff;border:none}
.btn.outline{border:2px solid var(--brand);color:var(--brand);background:#fff}
.btn:hover{transform:translateY(-1px)}

/* Sticky marquee */
.marquee{position:sticky;top:var(--navH);background:linear-gradient(90deg,var(--brand),var(--accent));color:#fff;font-weight:900;font-size:16px;white-space:nowrap;overflow:hidden;z-index:90;border-bottom:1px solid rgba(0,0,0,.06)}
.marquee span{display:inline-block;padding:8px 0;padding-left:100%;animation:marquee 12s linear infinite}
@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-100%)}}

/* Hero */
.hero{padding:56px 0 72px}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:36px;align-items:center}
.hero-img{width:100%;height:auto;border-radius:18px;box-shadow:var(--shadow)}
.ticks{list-style:none;padding:0;margin:14px 0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:6px 14px}
.ticks li::before{content:'✓ ';color:var(--brand);font-weight:900}
.cta-row{display:flex;gap:10px;flex-wrap:wrap;margin-top:12px}

/* Cards & grids */
.card{background:var(--card);border:1px solid rgba(0,0,0,.08);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow)}
.features{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:14px;margin-top:12px}
.grid-subjects{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:10px;margin-top:10px}
.s{display:grid;place-items:center;height:64px;font-weight:700}

/* Carousel (images at 50% width) */
.carousel{position:relative;border:1px solid rgba(0,0,0,.08);border-radius:16px;padding:10px;background:#fff;overflow:hidden}
.carousel .slides{display:flex;transition:transform .45s ease}
.carousel .slide{min-width:100%;display:grid;place-items:center;padding:8px}
.carousel img{width:50%;max-width:520px;height:auto;border-radius:12px;border:1px solid rgba(0,0,0,.08);box-shadow:var(--shadow)}
.carousel .nav{position:absolute;top:50%;transform:translateY(-50%);border:none;background:#fff;box-shadow:var(--shadow);color:#111;font-size:28px;width:40px;height:40px;border-radius:50%;display:grid;place-items:center;cursor:pointer}
.carousel .prev{left:8px} .carousel .next{right:8px}
.carousel .dots{position:absolute;left:0;right:0;bottom:8px;display:flex;gap:6px;justify-content:center}
.carousel .dots button{width:10px;height:10px;border-radius:50%;border:1px solid #3a57ff;background:#fff;cursor:pointer}
.carousel .dots button.active{background:#3a57ff}

/* Pricing */
.plans{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:16px;margin-top:12px}
.plan.featured{outline:2px solid var(--brand)}
.plan .badge{display:inline-block;margin-bottom:4px;padding:6px 10px;border-radius:999px;background:rgba(58,87,255,.1);color:var(--brand);font-weight:800;border:1px solid rgba(58,87,255,.25)}
.plan ul{padding-left:18px} .plan li{margin:6px 0}

/* FAQ & Footer */
.accordion details{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:14px;margin:8px 0}
.accordion summary{cursor:pointer;font-weight:700}
.footer{padding:28px 0;background:#f1f3f9;border-top:1px solid rgba(0,0,0,.08)}
.footer-inner{display:grid;place-items:center;gap:6px}
.copy{color:var(--muted);font-size:14px}

/* Floating buttons */
.floating-wa{position:fixed;right:18px;bottom:18px;background:#25D366;border-radius:999px;width:56px;height:56px;display:grid;place-items:center;box-shadow:var(--shadow);z-index:95}
.floating-wa svg{width:28px;fill:#fff}
.socials-floating{position:fixed;right:14px;top:50%;transform:translateY(-50%);display:grid;gap:10px;z-index:94}
.socials-floating .social{width:42px;height:42px;border-radius:50%;display:grid;place-items:center;background:#fff;border:1px solid rgba(0,0,0,.1);box-shadow:0 6px 16px rgba(0,0,0,.08)}
.socials-floating svg{width:22px;fill:#111}
.socials-floating .youtube svg{fill:#ff0000}
@media (max-width:960px){ .hero-grid{grid-template-columns:1fr} }

@media (max-width:820px){
  .nav-toggle{display:block; z-index: 102;}
  .menu{position:fixed;inset:calc(var(--navH) + 0px) 0 auto 0;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.1);padding:12px 16px;display:grid;gap:10px;transform:translateY(-110%);transition:transform .25s ease; pointer-events: none; z-index: 101;}
  .nav-open .menu{transform:translateY(0); pointer-events: auto;}
  .socials-floating{right:10px;top:auto;bottom:90px;transform:none;grid-auto-flow:column;gap:8px}
}

  .menu{position:fixed;inset:calc(var(--navH) + 0px) 0 auto 0;background:#fff;box-shadow:0 10px 30px rgba(0,0,0,.1);padding:12px 16px;display:grid;gap:10px;transform:translateY(-110%);transition:transform .25s ease}
  .nav-open .menu{transform:translateY(0)}
  .socials-floating{right:10px;top:auto;bottom:90px;transform:none;grid-auto-flow:column;gap:8px}
}


/* Burger emphasis */
.nav-toggle{display:block;width:46px;height:46px;border-radius:12px;background:#fff;border:2px solid var(--brand);box-shadow:0 4px 14px rgba(58,87,255,.25);}
.nav-toggle:hover{background:linear-gradient(90deg,var(--brand),var(--accent));}
.nav-toggle:hover span{background:#fff}
.nav-toggle:focus-visible{outline:3px solid var(--accent);outline-offset:2px}
.nav-toggle span{height:3px;background:#111}


/* CTA visibility & spacing on mobile */
@media (max-width: 820px){
  .hero{padding-top: calc(72px + var(--navH) * 0.15);}
  .cta-row{margin-top:16px}
  .btn.primary, .btn.outline{min-height:48px; line-height:1; display:inline-flex; align-items:center; justify-content:center}
  .btn.primary2, .btn.outline2{min-height:24px; line-height:1; display:inline-flex; align-items:center; justify-content:center}
}
/* Prevent overlap from sticky marquee when scrolling to anchors */
:target{scroll-margin-top: calc(var(--navH) + 40px)}

/* Promo countdown */
.promo{background:linear-gradient(90deg,rgba(58,87,255,.06),rgba(0,191,165,.06));padding:30px 0}
.promo-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}
.promo-text{font-size:clamp(18px,2.4vw,22px);font-weight:800;color:#0b1b2a}
.timer{display:flex;gap:10px;align-items:flex-end}
.timer .t{background:#fff;border:1px solid rgba(0,0,0,.08);border-radius:12px;padding:8px 10px;min-width:70px;text-align:center;box-shadow:var(--shadow)}
.timer span{font-weight:900;font-size:28px;letter-spacing:1px;display:block}
.timer label{font-size:12px;color:var(--muted)}
.socials-floating .whatsapp{background:#25D366;border-color:#25D366}
.socials-floating .whatsapp svg{fill:#fff}
