:root{
  --azul:#2e3192;
  --azul-oscuro:#10134c;
  --azul-suave:#eef2ff;
  --rojo:#ed1c24;
  --verde:#13b56f;
  --texto:#14162b;
  --gris:#66708a;
  --linea:#e4e8f7;
  --blanco:#fff;
  --sombra:0 24px 70px rgba(30,35,110,.18);
  --radio:28px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Arial,Helvetica,sans-serif;color:var(--texto);background:#f8faff;line-height:1.6}
a{text-decoration:none;color:inherit}
img{display:block;width:100%;height:auto}
.hero{min-height:100vh;color:#fff;background:radial-gradient(circle at 80% 10%,rgba(255,255,255,.22),transparent 26rem),linear-gradient(135deg,var(--azul-oscuro),var(--azul) 58%,#666be1);position:relative;overflow:hidden}
.hero:before{content:"";position:absolute;inset:auto -9rem -14rem auto;width:32rem;height:32rem;border-radius:50%;border:46px solid rgba(255,255,255,.08)}
.hero:after{content:"";position:absolute;left:-8rem;bottom:7rem;width:22rem;height:22rem;border-radius:50%;background:rgba(237,28,36,.35);filter:blur(4px)}
.navbar{position:relative;z-index:3;width:min(1180px,92%);margin:auto;padding:24px 0;display:flex;align-items:center;justify-content:space-between;gap:18px}
.logo{display:flex;align-items:center;gap:12px;font-weight:900;text-transform:uppercase;letter-spacing:.02em}
.logo-mark{display:grid;place-items:center;width:54px;height:54px;border-radius:18px;background:#fff;color:var(--rojo);box-shadow:0 18px 45px rgba(0,0,0,.18)}
.logo strong{display:block;color:#dfe4ff}.nav-links{display:flex;gap:28px;font-weight:800}.nav-links a{opacity:.9}.nav-links a:hover{opacity:1;text-decoration:underline;text-underline-offset:8px}.menu{display:none;border:1px solid rgba(255,255,255,.3);background:rgba(255,255,255,.14);color:#fff;border-radius:14px;font-size:1.4rem;padding:8px 12px}
.hero-grid{position:relative;z-index:2;width:min(1180px,92%);margin:auto;padding:65px 0 105px;display:grid;grid-template-columns:1.05fr .85fr;align-items:center;gap:48px}.eyebrow{display:inline-flex;margin:0 0 16px;padding:9px 14px;border-radius:999px;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);color:#fff;text-transform:uppercase;letter-spacing:.14em;font-size:.75rem;font-weight:900}.eyebrow.dark{background:#eaf0ff;border-color:#dbe4ff;color:var(--azul)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(3.2rem,8vw,7.4rem);line-height:.9;margin-bottom:22px;letter-spacing:-.06em;text-transform:uppercase}h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.04;margin-bottom:14px;letter-spacing:-.045em}.lead{font-size:clamp(1.1rem,2vw,1.48rem);color:rgba(255,255,255,.88);max-width:620px;margin-bottom:30px}.hero-buttons{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;border-radius:999px;padding:13px 22px;font-weight:900;box-shadow:0 18px 40px rgba(0,0,0,.14);transition:.25s}.btn:hover{transform:translateY(-3px)}.btn-green{background:var(--verde);color:#fff}.btn-light{background:#fff;color:var(--azul)}.hero-card{background:#fff;padding:12px;border-radius:34px;box-shadow:0 34px 90px rgba(0,0,0,.32);transform:rotate(1.2deg)}.hero-card img{border-radius:24px}.section{width:min(1180px,92%);margin:auto;padding:90px 0}.section-title{text-align:center;max-width:790px;margin:0 auto 44px}.section-title.left{text-align:left;margin-left:0}.section-title p{color:var(--gris);font-size:1.06rem}.cards,.contact-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.card,.contact-card,.schedule-card,.document-image,.location-box{background:#fff;border:1px solid var(--linea);border-radius:var(--radio);box-shadow:var(--sombra)}.card{padding:32px;overflow:hidden;position:relative}.card:after{content:"";position:absolute;right:-40px;top:-40px;width:130px;height:130px;border-radius:50%;background:linear-gradient(135deg,rgba(46,49,146,.12),rgba(237,28,36,.12))}.icon{display:block;font-size:2.35rem;margin-bottom:16px}.card h3{font-size:1.35rem;margin-bottom:8px}.card p{color:var(--gris)}.schedule-section{padding:90px 4%;background:linear-gradient(180deg,#fff,var(--azul-suave))}.schedule-section>.section-title,.schedule-grid{width:min(1180px,92%);margin-left:auto;margin-right:auto}.schedule-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.schedule-card{padding:30px;min-height:260px;display:flex;flex-direction:column;justify-content:space-between}.schedule-card span,.contact-card span{display:block;color:var(--azul);font-size:.78rem;text-transform:uppercase;letter-spacing:.13em;font-weight:900}.schedule-card h3{font-size:1.55rem;margin:8px 0}.schedule-card .time{font-size:1.45rem;font-weight:900;color:var(--azul-oscuro);margin-bottom:12px}.schedule-card a{display:block;font-size:1.16rem;color:var(--verde);font-weight:900;margin-top:5px}.schedule-card.special{background:linear-gradient(135deg,var(--azul),var(--azul-oscuro));color:#fff}.schedule-card.special span,.schedule-card.special .time{color:#fff}.schedule-card.special p{color:rgba(255,255,255,.84)}.document-section{width:min(1180px,92%);margin:auto;padding:90px 0;display:grid;grid-template-columns:.8fr 1fr;gap:42px;align-items:center}.document-text p:not(.eyebrow){color:var(--gris)}.document-image{padding:12px;overflow:hidden}.document-image img{border-radius:22px}.contact{padding-top:55px}.contact-card{position:relative;overflow:hidden;padding:30px;transition:.25s}.contact-card:hover{transform:translateY(-6px)}.contact-card:before{content:"WhatsApp";position:absolute;right:-10px;top:10px;color:rgba(46,49,146,.07);font-size:2.25rem;font-weight:900;transform:rotate(-8deg)}.contact-card strong{display:block;color:var(--verde);font-size:1.68rem;margin:8px 0}.contact-card small{color:var(--gris);font-weight:800}.location{padding:90px 4%;background:linear-gradient(135deg,var(--azul-oscuro),var(--azul));position:relative;overflow:hidden}.location:before{content:"";position:absolute;left:-8rem;top:-10rem;width:25rem;height:25rem;border-radius:50%;background:rgba(255,255,255,.09)}.location-box{position:relative;z-index:1;width:min(900px,100%);margin:auto;text-align:center;padding:54px 28px;background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.24);color:#fff;backdrop-filter:blur(12px)}.location-box p:not(.eyebrow){font-size:1.24rem;color:rgba(255,255,255,.86);margin-bottom:28px}.footer{text-align:center;padding:28px 16px;background:#07091d;color:rgba(255,255,255,.76)}.footer p{margin:0}.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:30;width:62px;height:62px;border-radius:50%;display:grid;place-items:center;background:var(--verde);color:#fff;font-weight:900;box-shadow:0 18px 42px rgba(19,181,111,.42)}
.loaded .card,.loaded .schedule-card,.loaded .contact-card,.loaded .hero-card,.loaded .document-image{animation:rise .55s ease both}@keyframes rise{from{opacity:.3;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}
@media(max-width:900px){.menu{display:block}.nav-links{position:absolute;top:86px;left:0;right:0;display:none;flex-direction:column;background:rgba(16,19,76,.98);border:1px solid rgba(255,255,255,.16);border-radius:22px;padding:22px}.nav-links.open{display:flex}.hero-grid,.document-section{grid-template-columns:1fr}.hero-card{transform:none}.cards,.schedule-grid,.contact-grid{grid-template-columns:1fr}.section,.document-section{padding:68px 0}.schedule-section{padding:68px 0}.section-title.left{text-align:center;margin:auto auto 34px}.hero-grid{padding-top:34px}.whatsapp-float{width:56px;height:56px;right:16px;bottom:16px}}
@media(max-width:520px){.logo{font-size:.9rem}.logo-mark{width:48px;height:48px}h1{font-size:3rem}.hero-buttons .btn{width:100%}.hero-card{border-radius:24px;padding:8px}.hero-card img,.document-image img{border-radius:18px}.contact-card strong{font-size:1.36rem}}
