@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700;800&family=Outfit:wght@400;500;600;700;800;900&display=swap');
:root{--ink:#17213c;--muted:#68728b;--bg:#f7f8ff;--blue:#2939df;--pink:#ff3c80}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);font-family:'DM Sans',system-ui,sans-serif;color:var(--ink)}a{text-decoration:none}.top{background:white;position:sticky;top:0;z-index:10;box-shadow:0 3px 20px #19235b0c}.nav{max-width:1240px;margin:auto;padding:17px 24px;display:flex;align-items:center;justify-content:space-between}.brand{font:900 28px Outfit;color:#2634cc;letter-spacing:-1.3px}.brand span{color:#ff467d}.right{font-size:13px;font-weight:800;color:#2435c8;background:#eff0ff;padding:12px 17px;border-radius:50px}.hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#1929a9 0%,#5735d8 56%,#b72ec8 100%);color:white}.hero:before,.hero:after{content:'';position:absolute;border:1px solid #ffffff36;border-radius:50%;width:650px;height:650px;right:-140px;top:-380px}.hero:after{width:440px;height:440px;right:-120px;top:120px;background:#ff5c8225;border:0;filter:blur(15px)}.hero-inner{position:relative;z-index:1;max-width:1240px;margin:auto;padding:90px 24px 94px}.eyebrow{display:inline-block;border:1px solid #ffffff6b;background:#ffffff21;padding:11px 18px;border-radius:30px;font-size:12px;font-weight:800;letter-spacing:1px}.hero h1{font:900 clamp(43px,6.2vw,86px)/1.04 Outfit,sans-serif;letter-spacing:-2.5px;max-width:980px;margin:27px 0 23px}.hero h1 em{font-style:normal;color:#ffe477}.hero p{max-width:630px;font-size:18px;line-height:1.65;color:#f0eaff}.hero-stats{display:flex;gap:30px;flex-wrap:wrap;margin:28px 0}.hero-stats span{font-size:13px;color:#edeaff}.hero-stats b{font-size:22px;color:white;margin-right:5px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:25px}.btn{display:inline-flex;align-items:center;justify-content:center;border-radius:13px;font-weight:800;transition:transform .2s,box-shadow .2s}.btn:hover{transform:translateY(-3px)}.btn-white{background:#ffe477;color:#19215a;padding:16px 25px;box-shadow:0 8px 25px #17117d44}.btn-outline{border:1px solid #ffffff90;color:white;padding:16px 25px}.container{max-width:1240px;margin:auto;padding:64px 24px 70px}.heading h2{font:850 clamp(27px,3.2vw,42px) Outfit;margin:0 0 8px;letter-spacing:-1px}.sparkle{color:#ff4683}.heading p{margin:0;color:var(--muted)}.filters{display:flex;flex-wrap:wrap;gap:9px;margin:28px 0 32px}.filter{cursor:pointer;border:1px solid #dfe2f1;background:white;color:#4a5374;border-radius:50px;padding:12px 20px;font:800 13px 'DM Sans',sans-serif}.filter.active{background:#2638db;color:white;border-color:#2638db;box-shadow:0 6px 16px #2738db33}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{background:white;border-radius:22px;overflow:hidden;box-shadow:0 7px 30px #26347712;border:1px solid #e7e8f4;transition:transform .2s,box-shadow .2s}.card:hover{transform:translateY(-6px);box-shadow:0 17px 45px #26347725}.card-top{min-height:116px;background:linear-gradient(120deg,var(--a),var(--b));display:flex;justify-content:space-between;align-items:flex-start;gap:8px;padding:23px 23px;position:relative;overflow:hidden}.card-top:after{content:'✦';font-size:110px;color:#ffffff20;position:absolute;right:18px;top:14px}.monthtag,.category{position:relative;z-index:1;border-radius:30px;font-size:10px;letter-spacing:.7px;font-weight:900;padding:9px 11px;background:#ffffff36;color:white;backdrop-filter:blur(6px)}.category{background:white;color:var(--a)}.card-body{padding:25px 23px 22px}.card h3{font:800 21px/1.3 Outfit;margin:0 0 15px;min-height:108px;letter-spacing:-.3px}.speaker{color:#4b567b;font-size:13px;font-weight:700;margin-bottom:20px}.details{background:#f6f7fd;padding:15px;border-radius:13px;display:grid;gap:12px}.detail{font-size:13px;line-height:1.45;display:flex;gap:9px;color:#404b6b}.detail b{color:#182448}.cta{width:100%;margin-top:19px;background:#16a65c;color:white;padding:15px 10px;box-shadow:0 6px 14px #16a65c27;font-size:14px}.cta:hover{background:#0b8c49}.note{font-size:11px;line-height:1.5;text-align:center;color:#7c839a;margin:12px 0 0}.why{margin-top:65px;padding:37px 42px;border-radius:24px;background:#eaeaff;border:1px solid #dcdcff}.why h2{font:800 26px Outfit;margin:0 0 12px}.why p{color:#4e5879;line-height:1.7;margin:0;max-width:860px}.footer{background:#151e4e;color:white;padding:30px 24px;text-align:center}.footer p{font-size:12px;color:#b6bde1}.empty{padding:20px}@media(max-width:950px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}.card h3{min-height:0}}@media(max-width:620px){.nav{padding:14px 17px}.brand{font-size:24px}.right{font-size:11px}.hero-inner{padding:67px 20px 72px}.hero h1{letter-spacing:-1.5px}.hero p{font-size:15px}.hero-stats{gap:17px}.hero-stats b{font-size:18px}.container{padding:45px 15px}.cards{grid-template-columns:1fr;gap:16px}.card-top{min-height:100px}.card h3{font-size:22px}.why{padding:26px 21px}.why h2{font-size:23px}}
/* Tarjetas compactas: sin clasificación por edades */
.cards{gap:14px;grid-template-columns:repeat(4,minmax(0,1fr))}
.card{border-radius:16px}.card-top{min-height:49px;padding:12px 15px}.card-top:after{font-size:62px;top:-10px}.monthtag{padding:6px 9px;font-size:10px}.category{display:none}.card-body{padding:15px}.card h3{font-size:16px;line-height:1.3;min-height:0;margin:0 0 10px}.speaker{font-size:12px;margin-bottom:10px}.details{padding:10px;gap:6px;border-radius:9px}.detail{font-size:11px;gap:6px}.cta{font-size:12px;padding:11px 8px;margin-top:11px;border-radius:9px}.note{display:none}
@media(max-width:1100px){.cards{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:760px){.cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.cards{grid-template-columns:1fr}.card-body{padding:14px}.card h3{font-size:17px}.card-top{min-height:43px}}

/* Conversión directa y cabecera reducida */
.hero-inner{padding:30px 24px 34px}.hero h1{font-size:clamp(32px,4.1vw,53px);letter-spacing:-1.4px;margin:12px 0}.hero p{font-size:14px;line-height:1.45;margin:0;max-width:730px}.eyebrow{padding:7px 12px;font-size:10px}.hero-actions{margin-top:16px}.btn-white{padding:12px 20px}.container{padding-top:28px}.filters{margin:17px 0 19px}.heading h2{font-size:clamp(24px,2.6vw,34px)}
/* Fondos vivos por taller, sin etiquetas por edades */
.card{background:linear-gradient(155deg,color-mix(in srgb,var(--a) 13%,white),color-mix(in srgb,var(--b) 21%,white));border:1px solid color-mix(in srgb,var(--a) 24%,white)}.card-top{background:linear-gradient(110deg,var(--a),var(--b))}.card-body{background:transparent}.details{background:#ffffffbb}.cta{background:#098d4c;color:#fff;box-shadow:0 5px 13px #056e3836}.cta:hover{background:#06763f}
.faq{margin-top:32px}.faq h2{font:800 27px Outfit;margin:0 0 15px}.faq details{background:#fff;border:1px solid #e1e4f3;border-radius:13px;padding:15px 19px;margin:9px 0}.faq summary{font-weight:800;cursor:pointer}.faq details p{color:#4e5879;font-size:14px;line-height:1.6;margin:10px 0 0}.footer-links{display:flex;justify-content:center;flex-wrap:wrap;gap:20px;margin:15px 0}.footer-links a{color:#fff;text-decoration:underline;text-underline-offset:4px;font-size:13px}
@media(max-width:620px){.hero-inner{padding:25px 17px 28px}.hero h1{font-size:34px}.hero p{font-size:13px}.container{padding-top:23px}.faq h2{font-size:23px}}

/* Ilustraciones temáticas dentro del espacio original de cada tarjeta */
.card-top{isolation:isolate}.card-top:after{display:none}.topic-img{position:absolute;right:0;top:-27px;width:112px;height:100px;object-fit:contain;pointer-events:none;z-index:0}.monthtag{z-index:1;max-width:calc(100% - 72px)}
.faq{margin-top:35px}.faq h2{font:800 26px Outfit,sans-serif;margin:0 0 18px}.faq details{background:#fff;border:1px solid #e1e4f3;border-radius:13px;margin:9px 0;padding:15px 18px}.faq summary{font-weight:800;cursor:pointer;font-size:14px}.faq p{font-size:14px;line-height:1.7;color:#46506c;margin:12px 0 2px}.footer-links{display:flex;justify-content:center;gap:22px;flex-wrap:wrap}.footer-links a{color:#fff;text-decoration:underline;text-underline-offset:3px}
