:root{
  --lima:#83C341; --morado:#8759B5; --azul:#33BDEA; --naranja:#F7941E;
  --rosa:#EC1E79; --amarillo:#FDB913; --beige:#F6F0E6; --crema:#FCF8F1;
  --tinta:#3D4550; --gris:#6B7280; --linea:#ececec;
  --shadow:0 14px 34px rgba(61,69,80,.10); --shadow-sm:0 6px 16px rgba(61,69,80,.08);
}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{font-family:'Nunito',sans-serif;color:var(--tinta);background:#fff;line-height:1.6;overflow-x:hidden;}
h1,h2,h3,h4,.fred{font-family:'Fredoka',sans-serif;font-weight:600;line-height:1.1;}
a{text-decoration:none;color:inherit;}
img{max-width:100%;display:block;}
.wrap{max-width:1160px;margin:0 auto;padding:0 22px;}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:'Fredoka',sans-serif;font-weight:600;font-size:16px;padding:13px 24px;border-radius:50px;border:none;cursor:pointer;transition:transform .15s ease, box-shadow .15s ease;}
.btn:hover{transform:translateY(-2px);}
.btn-rosa{background:var(--rosa);color:#fff;box-shadow:0 8px 20px rgba(236,30,121,.32);}
.btn-naranja{background:var(--naranja);color:#fff;box-shadow:0 8px 20px rgba(247,148,30,.32);}
.btn-azul{background:var(--azul);color:#fff;box-shadow:0 8px 20px rgba(51,189,234,.32);}
.btn-lima{background:var(--lima);color:#fff;box-shadow:0 8px 20px rgba(131,195,65,.32);}
.btn-ghost{background:#fff;color:var(--tinta);border:2px solid var(--linea);}
.btn-ghost:hover{border-color:var(--azul);color:var(--azul);}
.eyebrow{font-family:'Fredoka',sans-serif;font-weight:600;letter-spacing:.5px;text-transform:uppercase;font-size:13px;display:inline-block;padding:6px 14px;border-radius:50px;}
.sec{padding:74px 0;}
.sec-title{font-size:38px;margin-bottom:14px;}
.sec-lead{font-size:18px;color:var(--gris);max-width:640px;}
.center{text-align:center;}
.center .sec-lead{margin-left:auto;margin-right:auto;}

/* NAV */
header{position:sticky;top:0;z-index:100;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-bottom:1px solid var(--linea);}
.nav{display:flex;align-items:center;justify-content:space-between;height:74px;position:relative;}
.nav .logo{display:flex;align-items:center;gap:10px;font-family:'Fredoka',sans-serif;font-weight:700;font-size:20px;}
.nav .logo img{height:52px;width:52px;border-radius:50%;object-fit:cover;}
.nav .logo b{color:var(--rosa);}
.nav .logo b span{color:var(--azul);}
.nav ul{display:flex;gap:26px;list-style:none;font-family:'Fredoka',sans-serif;font-weight:500;font-size:15.5px;}
.nav ul a{color:var(--tinta);transition:color .15s;}
.nav ul a:hover{color:var(--rosa);}
.nav .cta-nav{display:flex;align-items:center;gap:12px;}
.burger{display:none;font-size:26px;background:none;border:none;cursor:pointer;color:var(--tinta);}

/* HERO */
.hero{position:relative;background:var(--beige);overflow:hidden;padding:60px 0 70px;}
.blob{position:absolute;border-radius:50%;filter:blur(6px);opacity:.55;z-index:0;}
.hero-grid{position:relative;z-index:2;display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center;}
.hero h1{font-size:52px;font-weight:700;margin-bottom:18px;}
.hero h1 .w1{color:var(--rosa);} .hero h1 .w2{color:var(--azul);} .hero h1 .w3{color:var(--naranja);}
.hero .sub{font-family:'Fredoka',sans-serif;font-weight:500;font-size:23px;color:var(--morado);margin-bottom:16px;}
.hero p.lede{font-size:17px;color:#5c636e;margin-bottom:26px;max-width:520px;}
.hero .btns{display:flex;gap:14px;flex-wrap:wrap;margin-bottom:22px;}
.hero .chips{display:flex;gap:10px;flex-wrap:wrap;}
.chip{font-family:'Fredoka',sans-serif;font-weight:500;font-size:13px;background:#fff;border-radius:50px;padding:7px 15px;box-shadow:var(--shadow-sm);}
.chip.c1{color:var(--lima);} .chip.c2{color:var(--azul);} .chip.c3{color:var(--rosa);}
.hero-photo{position:relative;}
.hero-photo .frame{border-radius:28px;overflow:hidden;box-shadow:var(--shadow);border:6px solid #fff;transform:rotate(-2deg);}
.hero-photo .frame img{width:100%;height:430px;object-fit:cover;}
.badge-float{position:absolute;font-family:'Fredoka',sans-serif;font-weight:600;color:#fff;border-radius:20px;padding:12px 16px;box-shadow:var(--shadow);z-index:3;}
.badge-10{bottom:-18px;left:-18px;background:var(--lima);text-align:center;transform:rotate(-4deg);}
.badge-10 b{display:block;font-size:26px;} .badge-10 span{font-size:11px;}
.badge-star{top:-16px;right:22px;background:var(--amarillo);color:#fff;border-radius:50%;width:64px;height:64px;display:flex;align-items:center;justify-content:center;font-size:13px;text-align:center;line-height:1.1;transform:rotate(8deg);}

/* MARQUEE STRIP */
.strip{background:var(--morado);color:#fff;padding:16px 0;overflow:hidden;}
.strip .track{display:flex;gap:36px;white-space:nowrap;font-family:'Fredoka',sans-serif;font-weight:500;font-size:17px;animation:scroll 26s linear infinite;}
.strip .track span{display:inline-flex;align-items:center;gap:36px;}
.strip .dot{color:var(--amarillo);}
@keyframes scroll{from{transform:translateX(0);}to{transform:translateX(-50%);}}

/* QUE ES */
.split{display:grid;grid-template-columns:1fr 1fr;gap:52px;align-items:center;}
.split .photo{border-radius:26px;overflow:hidden;box-shadow:var(--shadow);border:5px solid #fff;}
.split .photo img{width:100%;height:420px;object-fit:cover;}
.split.rev .photo{order:-1;}
.p-lead{font-size:17px;color:#54606b;margin-bottom:16px;}
.hl{background:linear-gradient(transparent 60%, #ffe9a8 60%);font-weight:700;}

/* PASOS */
.pasos{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:40px;}
.paso{background:#fff;border-radius:20px;padding:24px 18px;box-shadow:var(--shadow-sm);border-top:5px solid;text-align:center;transition:transform .18s;}
.paso:hover{transform:translateY(-6px);}
.paso .num{font-family:'Fredoka',sans-serif;font-weight:700;font-size:15px;color:#fff;width:40px;height:40px;border-radius:50%;display:flex;align-items:center;justify-content:center;margin:0 auto 12px;}
.paso .ico{font-size:30px;margin-bottom:8px;}
.paso h4{font-size:18px;margin-bottom:8px;}
.paso p{font-size:13.5px;color:var(--gris);}
.p1{border-color:var(--rosa);} .p1 .num{background:var(--rosa);}
.p2{border-color:var(--naranja);} .p2 .num{background:var(--naranja);}
.p3{border-color:var(--amarillo);} .p3 .num{background:var(--amarillo);}
.p4{border-color:var(--azul);} .p4 .num{background:var(--azul);}
.p5{border-color:var(--lima);} .p5 .num{background:var(--lima);}
.secret{text-align:center;margin-top:32px;font-family:'Fredoka',sans-serif;font-weight:500;font-size:22px;color:var(--morado);}

/* HABILIDADES */
.hab-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px;margin-top:40px;}
.hab{background:var(--crema);border-radius:18px;padding:22px 18px;transition:transform .18s, box-shadow .18s;}
.hab:hover{transform:translateY(-5px);box-shadow:var(--shadow-sm);background:#fff;}
.hab .ic{width:52px;height:52px;border-radius:15px;display:flex;align-items:center;justify-content:center;font-size:26px;margin-bottom:12px;}
.hab h4{font-size:17px;margin-bottom:6px;}
.hab p{font-size:13.5px;color:var(--gris);}

/* BANDA INGLES */
.ingles{background:linear-gradient(120deg,var(--azul),#1aa5da);color:#fff;border-radius:32px;overflow:hidden;display:grid;grid-template-columns:1.1fr .9fr;align-items:center;box-shadow:var(--shadow);}
.ingles .txt{padding:52px 46px;}
.ingles .eyebrow{background:rgba(255,255,255,.2);color:#fff;}
.ingles h2{font-size:34px;color:#fff;margin:12px 0 14px;}
.ingles p{font-size:16.5px;color:rgba(255,255,255,.92);margin-bottom:18px;}
.ingles .quote{font-family:'Fredoka',sans-serif;font-weight:600;font-size:22px;background:rgba(255,255,255,.15);display:inline-block;padding:10px 20px;border-radius:50px;}
.ingles .ph{height:100%;min-height:340px;}
.ingles .ph img{width:100%;height:100%;object-fit:cover;}

/* STAT 10 */
.stat10{background:var(--beige);text-align:center;border-radius:32px;padding:52px 30px;}
.stat10 .big{font-family:'Fredoka',sans-serif;font-weight:700;font-size:74px;color:var(--rosa);line-height:1;}
.stat10 .big span{color:var(--lima);}
.stat10 p{font-size:19px;color:#54606b;margin-top:8px;}

/* ESCUELAS */
.logos{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:36px 0;}
.logo-box{background:#fff;border:1px solid #eee;border-radius:16px;height:96px;display:flex;align-items:center;justify-content:center;padding:14px;box-shadow:0 4px 14px rgba(0,0,0,.05);}
.logo-box img{max-width:100%;max-height:100%;object-fit:contain;}
.escuela-cta{background:linear-gradient(120deg,var(--lima),#6fb536);color:#fff;border-radius:26px;padding:34px 40px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:var(--shadow);}
.escuela-cta h3{font-size:25px;color:#fff;margin-bottom:6px;}
.escuela-cta p{color:rgba(255,255,255,.9);font-size:15px;}

/* DESCARGABLES */
.desc-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:16px;margin-top:36px;}
.desc-card{background:#fff;border-radius:18px;padding:22px 16px;text-align:center;box-shadow:var(--shadow-sm);border-bottom:4px solid;}
.desc-card .ic{font-size:34px;margin-bottom:10px;}
.desc-card h4{font-size:15.5px;margin-bottom:6px;}
.desc-card p{font-size:12.5px;color:var(--gris);}
.d1{border-color:var(--rosa);} .d2{border-color:var(--naranja);} .d3{border-color:var(--azul);} .d4{border-color:var(--lima);} .d5{border-color:var(--morado);}
.popup-note{margin-top:26px;background:#fff;border:2px solid var(--amarillo);border-radius:20px;padding:22px 26px;display:flex;align-items:center;gap:20px;box-shadow:var(--shadow-sm);}
.popup-note .em{font-size:40px;}
.popup-note h4{font-size:18px;margin-bottom:4px;color:var(--tinta);}
.popup-note p{font-size:14px;color:var(--gris);}

/* FORM */
.form-sec{background:var(--morado);color:#fff;border-radius:34px;overflow:hidden;display:grid;grid-template-columns:1fr 1.1fr;box-shadow:var(--shadow);}
.form-sec .info{padding:52px 46px;}
.form-sec .info h2{font-size:33px;color:#fff;margin-bottom:14px;}
.form-sec .info p{color:rgba(255,255,255,.9);font-size:16px;margin-bottom:22px;}
.form-sec .info .tick{display:flex;align-items:center;gap:10px;margin-bottom:10px;font-size:15px;}
.form-sec .info .tick .b{background:var(--amarillo);color:var(--morado);width:24px;height:24px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-weight:800;flex:none;}
.form-card{background:#fff;padding:38px;}
.form-card h3{color:var(--tinta);font-size:23px;margin-bottom:18px;}
.form-card label{display:block;font-size:13px;font-weight:700;color:var(--tinta);margin-bottom:5px;}
.form-card .field{margin-bottom:14px;}
.form-card input,.form-card select{width:100%;padding:12px 14px;border:2px solid var(--linea);border-radius:12px;font-family:'Nunito',sans-serif;font-size:15px;color:var(--tinta);}
.form-card input:focus,.form-card select:focus{outline:none;border-color:var(--azul);}
.form-card .two{display:grid;grid-template-columns:1fr 1fr;gap:12px;}

/* FAQ */
.faq{max-width:820px;margin:36px auto 0;}
.qa{background:#fff;border:1px solid var(--linea);border-radius:16px;margin-bottom:12px;overflow:hidden;}
.qa .q{padding:18px 22px;font-family:'Fredoka',sans-serif;font-weight:500;font-size:17px;cursor:pointer;display:flex;justify-content:space-between;align-items:center;gap:16px;}
.qa .q .plus{color:var(--rosa);font-size:24px;transition:transform .2s;flex:none;}
.qa .a{max-height:0;overflow:hidden;transition:max-height .3s ease;color:var(--gris);font-size:15px;}
.qa .a p{padding:0 22px 18px;}
.qa.open .a{max-height:220px;}
.qa.open .plus{transform:rotate(45deg);}

/* FOOTER */
footer{background:var(--tinta);color:#fff;padding:56px 0 24px;margin-top:20px;}
.foot-grid{display:grid;grid-template-columns:1.4fr 1fr 1fr 1.2fr;gap:30px;}
.foot-brand .logo{display:flex;align-items:center;gap:10px;font-family:'Fredoka',sans-serif;font-weight:700;font-size:20px;margin-bottom:12px;}
.foot-brand .logo img{height:46px;width:46px;border-radius:50%;}
.foot-brand p{color:rgba(255,255,255,.65);font-size:14px;}
footer h5{font-family:'Fredoka',sans-serif;font-weight:600;font-size:16px;margin-bottom:14px;color:var(--amarillo);}
footer ul{list-style:none;}
footer ul li{margin-bottom:9px;}
footer ul a{color:rgba(255,255,255,.75);font-size:14px;}
footer ul a:hover{color:#fff;}
.foot-bottom{border-top:1px solid rgba(255,255,255,.13);margin-top:40px;padding-top:20px;display:flex;justify-content:space-between;flex-wrap:wrap;gap:10px;font-size:13px;color:rgba(255,255,255,.55);}
.foot-bottom a{color:var(--azul);}

/* WHATSAPP FLOAT */
.wa{position:fixed;bottom:24px;right:24px;width:60px;height:60px;border-radius:50%;background:#25D366;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 24px rgba(37,211,102,.5);z-index:90;transition:transform .15s;}
.wa:hover{transform:scale(1.08);}
.wa svg{width:34px;height:34px;fill:#fff;}

/* MODAL POPUP */
.modal-bg{position:fixed;inset:0;background:rgba(61,69,80,.55);backdrop-filter:blur(3px);display:none;align-items:center;justify-content:center;z-index:200;padding:20px;}
.modal-bg.show{display:flex;}
.modal{background:#fff;border-radius:26px;max-width:440px;width:100%;padding:36px 34px;position:relative;box-shadow:0 30px 70px rgba(0,0,0,.3);text-align:center;}
.modal .close{position:absolute;top:16px;right:18px;font-size:26px;color:#bbb;cursor:pointer;background:none;border:none;}
.modal .em{font-size:48px;margin-bottom:8px;}
.modal h3{font-size:24px;margin-bottom:8px;}
.modal p{font-size:14.5px;color:var(--gris);margin-bottom:18px;}
.modal input{width:100%;padding:12px 14px;border:2px solid var(--linea);border-radius:12px;font-family:'Nunito';font-size:15px;margin-bottom:11px;}
.modal input:focus{outline:none;border-color:var(--azul);}
.modal .btn{width:100%;justify-content:center;}
.modal small{display:block;margin-top:12px;color:#aaa;font-size:11.5px;}

@media(max-width:900px){
  .nav .cta-nav .btn{display:none;}
  .nav ul{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.12);border-radius:0 0 18px 18px;padding:6px 0;z-index:60;}
  .nav ul.show{display:flex;}
  .nav ul li{width:100%;}
  .nav ul a{display:block;padding:13px 24px;}
  .burger{display:block;}
  .hero-grid,.split,.ingles,.form-sec{grid-template-columns:1fr;}
  .split.rev .photo{order:0;}
  .hero h1{font-size:38px;} .hero .sub{font-size:19px;}
  .hero-photo{margin-top:20px;}
  .pasos{grid-template-columns:1fr 1fr;}
  .hab-grid{grid-template-columns:1fr 1fr;}
  .desc-grid{grid-template-columns:1fr 1fr 1fr;}
  .logos{grid-template-columns:1fr 1fr;}
  .ingles .ph{min-height:220px;}
  .sec-title{font-size:30px;} .sec{padding:52px 0;}
  .foot-grid{grid-template-columns:1fr 1fr;}
  .escuela-cta{flex-direction:column;text-align:center;}
}
@media(max-width:560px){
  .pasos,.hab-grid,.desc-grid,.form-card .two,.foot-grid{grid-template-columns:1fr;}
  .hero h1{font-size:32px;}
  .popup-note{flex-direction:column;text-align:center;gap:14px;padding:24px 22px;}
  .popup-note>div{flex:none!important;width:100%;}
  .popup-note .em{font-size:46px;}
  .popup-note .btn{width:100%;box-sizing:border-box;}
}
/* Confirmación discreta en formularios (reemplaza alert) */
.form-msg{margin-top:12px;background:#e9f9ef;color:#1e8e4e;padding:10px 13px;border-radius:11px;font-size:14px;font-weight:600;line-height:1.35;display:none;}
.form-msg.bad{background:#fdeef0;color:#c0392b;}

/* Fun Abacus Online */
.online-sec{background:linear-gradient(135deg,#e9f7fc 0%,#f6f0e6 100%);}
.online-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:44px;align-items:center;}
.online-txt .btn{margin-top:8px;}
.online-visual{display:flex;justify-content:center;}
.online-card{background:#fff;border-radius:28px;padding:24px;box-shadow:0 24px 55px rgba(51,189,234,.20);max-width:400px;width:100%;text-align:center;}
.online-card img{width:78%;max-width:300px;height:auto;display:block;margin:0 auto 14px;}
.online-chips{display:flex;flex-wrap:wrap;gap:8px;justify-content:center;}
.online-chips span{background:#eaf7fb;color:#1a97c9;font-family:'Fredoka',sans-serif;font-weight:600;font-size:12.5px;padding:6px 13px;border-radius:50px;}
@media(max-width:900px){.online-grid{grid-template-columns:1fr;} .online-visual{order:-1;} .online-card{max-width:340px;}}
