/* Seccion del curso en la portada (2026-10-19), con las mismas piezas que los planes de coaching (.plan, .tema) */
#curso { scroll-margin-top: 70px; }
/* encabezado con impacto: emblema Challenger con anillos hextech detras, titulo dorado metalico como la portada */
.cu-hero { position: relative; isolation: isolate; display: flex; flex-direction: column; align-items: center; text-align: center; padding: 80px 0 50px; margin-bottom: 26px; }
.cu-fondo { position: absolute; inset: -30px 0 0; z-index: -1; display: grid; place-items: center; pointer-events: none; }
.cu-fondo > * { grid-area: 1 / 1; }
.cu-fondo img { width: clamp(240px, 30vw, 400px); opacity: .28; filter: drop-shadow(0 0 40px rgba(10, 200, 185, .5)); animation: pt-flota 6s ease-in-out infinite; }
.cu-anillo { border-radius: 50%; }
.cu-anillo.a1 { width: clamp(340px, 46vw, 620px); aspect-ratio: 1;
                background: repeating-conic-gradient(rgba(200, 170, 110, .6) 0 2deg, transparent 2deg 10deg);
                -webkit-mask: radial-gradient(circle, transparent 63%, #000 64%, #000 69%, transparent 70%); mask: radial-gradient(circle, transparent 63%, #000 64%, #000 69%, transparent 70%);
                animation: cu-gira 50s linear infinite; }
.cu-anillo.a2 { width: clamp(290px, 39vw, 520px); aspect-ratio: 1; border: 1px solid rgba(10, 200, 185, .35); border-top-color: #cdfafa; border-bottom-color: #cdfafa;
                box-shadow: 0 0 60px rgba(10, 200, 185, .22), inset 0 0 70px rgba(10, 200, 185, .16); animation: cu-gira 22s linear infinite reverse; }
.cu-rayos { width: clamp(380px, 52vw, 700px); aspect-ratio: 1; border-radius: 50%; opacity: .5; filter: blur(8px);
            background: conic-gradient(transparent 0 20deg, rgba(205, 250, 250, .28) 30deg, transparent 40deg 140deg, rgba(200, 170, 110, .3) 150deg, transparent 160deg 260deg, rgba(205, 250, 250, .22) 270deg, transparent 280deg);
            animation: cu-gira 16s linear infinite; }
@keyframes cu-gira { to { rotate: 360deg; } }
.cu-kicker { margin-bottom: 18px; }
.cu-tit { margin: 0; }
.cu-tit .pt-tit { font-size: clamp(2.8rem, 8vw, 6.4rem); }
.cu-hero .pt-sub { font-size: clamp(.95rem, 1.6vw, 1.15rem); }

/* cifras en marcos hextech, cuentan desde 0 */
.cu-cifras { display: grid; grid-template-columns: repeat(4, 1fr); gap: 14px; max-width: 860px; margin: 0 auto 54px; }
.cu-cifras div { position: relative; text-align: center; padding: 18px 8px 16px; background: linear-gradient(180deg, rgba(1, 10, 19, .88), rgba(10, 20, 30, .72));
                 border: 1px solid rgba(200, 170, 110, .6); box-shadow: inset 0 0 0 3px rgba(1, 10, 19, .9), inset 0 0 0 4px rgba(200, 170, 110, .2), 0 10px 30px rgba(0, 0, 0, .5);
                 clip-path: polygon(10px 0, calc(100% - 10px) 0, 100% 10px, 100% calc(100% - 10px), calc(100% - 10px) 100%, 10px 100%, 0 calc(100% - 10px), 0 10px); }
.cu-cifras div::before { content: ''; position: absolute; left: 50%; top: 0; width: 46%; height: 2px; translate: -50% 0; background: linear-gradient(90deg, transparent, #cdfafa, transparent); box-shadow: 0 0 12px #0ac8b9; }
.cu-cifras b { display: block; font-family: 'Cinzel', 'Domine', serif; font-weight: 900; font-size: clamp(2.1rem, 4vw, 3.1rem); line-height: 1.05; color: #f0e6d2;
               background: linear-gradient(180deg, #fffbef, #f0e6d2 35%, #c8aa6e 60%, #8a6a32 75%, #f5e7c4); -webkit-background-clip: text; background-clip: text; -webkit-text-fill-color: transparent;
               filter: drop-shadow(0 0 14px rgba(200, 170, 110, .45)); }
.cu-cifras span { font: 700 .72rem 'Cinzel', serif; letter-spacing: .25em; text-transform: uppercase; color: #a8e8e8; }

/* roles: medallas hexagonales doradas; una luz pasa de una a otra */
.cu-roles { display: flex; justify-content: center; flex-wrap: wrap; gap: clamp(14px, 3vw, 36px); margin: 0 auto; }
.cu-rol { display: flex; flex-direction: column; align-items: center; gap: 12px; }
.cu-rol .hex { position: relative; width: 96px; aspect-ratio: 1 / 1.1; display: grid; place-items: center;
               clip-path: polygon(50% 0, 100% 25%, 100% 75%, 50% 100%, 0 75%, 0 25%); background: linear-gradient(180deg, #f0e6d2, #c8aa6e 45%, #785a28);
               transition: transform .3s, filter .3s; animation: cu-luz 5s ease-in-out infinite; animation-delay: calc(var(--i) * 1s); }
.cu-rol .hex::before { content: ''; position: absolute; inset: 3px; clip-path: inherit;
                       background: radial-gradient(circle at 50% 35%, color-mix(in srgb, var(--rc) 50%, #0a1420), #010a13 74%); }
.cu-rol img { position: relative; width: 52%; filter: brightness(0) invert(1) sepia(.6) saturate(1.4) drop-shadow(0 0 6px rgba(240, 230, 210, .7)); transition: filter .3s; }
.cu-rol b { font: 900 .8rem 'Cinzel', serif; letter-spacing: .2em; text-transform: uppercase; color: #f0e6d2; text-shadow: 0 0 10px rgba(200, 170, 110, .5); }
.cu-rol:hover .hex { transform: translateY(-8px) scale(1.08); filter: drop-shadow(0 0 22px var(--rc)); }
.cu-rol:hover img { filter: brightness(0) invert(1) drop-shadow(0 0 10px var(--rc)); }
@keyframes cu-luz { 0%, 14%, 100% { filter: none; transform: none; } 7% { filter: drop-shadow(0 0 26px var(--rc)) brightness(1.3); transform: translateY(-7px); } }
.cu-rango { text-align: center; margin: 18px 0 50px; font: 700 .8rem 'Cinzel', serif; letter-spacing: .25em; text-transform: uppercase; color: rgba(240, 230, 210, .72); }
.cu-planes { grid-template-columns: repeat(3, 1fr); }
.cu-planes .plan-emblema img { width: 120px; height: auto; filter: drop-shadow(0 0 18px var(--c)); }
.cu-top { scale: 1.04; box-shadow: 0 0 60px rgba(255, 176, 32, .25); }
.cu-antes { font-size: .7em; text-decoration-color: #ff4a55; text-decoration-thickness: 2px; color: rgba(255, 210, 210, .5); margin-right: 8px; align-self: center; }
.cu-mas { text-align: center; margin-top: 30px; }
.cu-ver { display: inline-flex; padding: 10px 22px; border-radius: 99px; cursor: pointer; font: inherit; font-size: .8rem; font-weight: 800; letter-spacing: 2px; text-transform: uppercase;
          color: var(--c); background: color-mix(in srgb, var(--c) 12%, transparent); border: 1px solid color-mix(in srgb, var(--c) 55%, transparent); }
.cu-ver:hover { background: color-mix(in srgb, var(--c) 22%, transparent); box-shadow: 0 0 18px color-mix(in srgb, var(--c) 40%, transparent); }
.cu-ver span:first-child::after { content: ' ▾'; } .cu-ver span:last-child::after { content: ' ▴'; }
.cu-ver span + span { display: none; }
.cu-ver.abierto span:first-child { display: none; } .cu-ver.abierto span + span { display: inline; }
.cu-temas { margin-top: 26px; }
.cu-temas .tema li { cursor: default; }
.cu-temas .acc { font-size: .62rem; letter-spacing: 2px; padding: 2px 8px; border-radius: 20px; color: #000; font-weight: 800; margin-left: 6px; vertical-align: middle; }
.cu-coach { text-align: center; margin-top: 34px; color: rgba(255, 210, 210, .7); }
.cu-coach a { color: #ff4a55; font-weight: 700; }
@media (max-width: 860px) {
  .cu-planes { grid-template-columns: 1fr; }
  .cu-top { scale: 1; }
  .cu-cifras { grid-template-columns: repeat(2, 1fr); }
  .cu-roles { flex-wrap: nowrap; gap: 8px; }
  .cu-rol .hex { width: 58px; }
  .cu-rol b { font-size: .58rem; letter-spacing: .1em; }
  .cu-hero { padding-top: 46px; }
}
.cu-temas .tema li { opacity: 1 !important; translate: none !important; }
@media (prefers-reduced-motion: reduce) { .cu-anillo, .cu-rayos, .cu-fondo img, .cu-rol .hex { animation: none; } }
.cu-dev { font-size: .74rem !important; opacity: .8; } .cu-dev a { color: #ffb020; }
/* barra fija del celular: curso + coaching */
.cta-movil.cta-curso { gap: 8px; } .cta-curso span { display: flex; flex-direction: column; line-height: 1.15; margin-right: auto; } .cta-curso span small { font-size: .72rem; opacity: .8; }
.cta-curso a { padding: 10px 12px !important; } .cta-curso a.oro { background: linear-gradient(135deg, #b8860b, #ffb020) !important; color: #120800 !important; }


/* 2026-10-19 tráiler del curso (vertical) entre la portada y las cifras */
.cu-trailer { max-width: 400px; margin: 10px auto 46px; text-align: center; }
.cu-trailer .promo-tit { color: #f2c46d; }
.cu-trailer .promo-marco { border-color: rgba(242, 196, 109, .5); box-shadow: 0 0 60px rgba(242, 196, 109, .25); }
