/* Plantilla de página de producto */
.portada.prod .cont{grid-template-columns:.9fr 1.1fr;min-height:560px;padding-bottom:60px}
.portada.prod h1{font-size:54px}
.pantalla-prod{border-radius:16px;overflow:hidden;box-shadow:0 30px 70px rgba(20,0,70,.45),0 0 0 6px rgba(255,255,255,.14)}
.bloques{display:flex;flex-direction:column;gap:110px}
.bloque{display:grid;grid-template-columns:1fr 1.05fr;gap:70px;align-items:center}
.bloque.inv > div:first-child{order:2}
.bloque h3{font-size:36px;font-weight:300;margin:10px 0 14px}
.bloque p{font-size:18px;margin-bottom:16px}
.bloque ul{margin:0 0 26px 0;list-style:none}
.bloque li{font-size:17px;padding-left:22px;position:relative;margin-bottom:10px}
.bloque li::before{content:"";position:absolute;left:0;top:9px;width:9px;height:9px;border-radius:50%;box-shadow:inset 0 0 0 2px var(--magenta-osc)}
.bloque .img{border-radius:18px;overflow:hidden;box-shadow:0 18px 44px rgba(40,10,90,.2);background:#fff}
.precio{background:var(--gris-2)}
.planes{display:grid;grid-template-columns:repeat(2,minmax(0,420px));gap:30px;justify-content:center;margin-top:50px}
.plan{background:#fff;border-radius:16px;padding:38px 34px;box-shadow:0 0 2px rgba(51,51,51,.16),2px 4px 14px rgba(51,51,51,.12)}
.plan .nom{font-size:20px;font-weight:600}
.plan .cifra{font-size:60px;font-weight:300;line-height:1.1;color:var(--magenta-osc);margin-top:10px}
.plan .per{color:var(--texto-2);margin-bottom:22px}
.plan ul{list-style:none;margin-bottom:28px}
.plan li{padding:10px 0;border-top:1px solid var(--linea);font-size:16px}
@media (max-width:1180px){
  .portada.prod .cont,.bloque,.planes{grid-template-columns:1fr}
  .bloque.inv > div:first-child{order:0}
  .bloques{gap:60px}
  .portada.prod h1{font-size:40px}
}

/* Cabecera centrada con la pantalla debajo, como la del LMS de isEazy */
.portada.prod-c{padding-bottom:230px;text-align:center}
.portada.prod-c .cont{display:block;min-height:0;padding-top:54px;padding-bottom:0}
.portada.prod-c .marca-prod{color:#fff;margin-bottom:22px}
.portada.prod-c h1{font-size:58px;max-width:980px;margin:0 auto 22px}
.portada.prod-c p.sub{margin:0 auto 34px;max-width:900px}
.portada.prod-c .botones{justify-content:center}
.bajo-cab{margin-top:-190px;position:relative;z-index:2;padding-bottom:20px}
.bajo-cab .carrusel{margin-top:0;text-align:center}
/* Rejilla de funcionalidades */
.seis{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:50px}
.seis.cuatro{grid-template-columns:repeat(4,1fr)}
.func{background:#fff;border-radius:16px;padding:32px 30px;box-shadow:0 0 2px rgba(51,51,51,.16),2px 4px 14px rgba(51,51,51,.12)}
.func img{height:56px;width:auto;margin-bottom:18px}
.func h4{font-size:22px;font-weight:500;margin-bottom:10px;line-height:1.25}
.func p{font-size:17px}
.func.grande{background:linear-gradient(160deg,#faf5ff 0%,#fff 70%);box-shadow:inset 0 0 0 1px #e6d8fa}
.plan .cifra small{font-size:20px;color:var(--texto-2)}
/* Ilustración compuesta de cabecera */
.ilustra.chica{min-height:440px}
.ilustra.chica img{position:absolute;max-width:none}
.ilustra.chica .i1{left:14%;top:12%;width:50%}
.ilustra.chica .i2{right:6%;bottom:8%;width:38%}
.ilustra.chica .i3{left:10%;bottom:14%;width:17%}
@media (max-width:1180px){
  .portada.prod-c h1{font-size:38px}
  .portada.prod-c{padding-bottom:150px}
  .bajo-cab{margin-top:-120px}
  .seis,.seis.cuatro{grid-template-columns:1fr 1fr}
  .ilustra.chica{min-height:320px}
}
@media (max-width:640px){.seis,.seis.cuatro{grid-template-columns:1fr}}

.seis.cinco{grid-template-columns:repeat(6,1fr)}
.seis.cinco .func{grid-column:span 2}
.seis.cinco .func:nth-child(4){grid-column:2 / span 2}
@media (max-width:1180px){.seis.cinco{grid-template-columns:1fr 1fr}.seis.cinco .func,.seis.cinco .func:nth-child(4){grid-column:auto}}
@media (max-width:640px){.seis.cinco{grid-template-columns:1fr}}

/* Autoescuelas: tarjetas numeradas, tres momentos y frase destacada */
.portada.prod h1{font-size:46px;line-height:1.08}
.entr.destac{font-size:24px;font-weight:500;color:var(--magenta-osc);margin-top:26px}
.seis.numeradas .func{position:relative}
.func .n{position:absolute;right:24px;top:22px;font-size:44px;font-weight:200;line-height:1;color:#d9c2f7}
.exp{background:var(--gris-2)}
.tres-t{display:grid;grid-template-columns:repeat(3,1fr);gap:30px;margin-top:50px;position:relative}
.tres-t::before{content:"";position:absolute;left:8%;right:8%;top:34px;height:2px;background:linear-gradient(90deg,var(--rosa),var(--violeta),var(--indigo));opacity:.35}
.paso-t{background:#fff;border-radius:16px;padding:34px 30px;position:relative;box-shadow:0 0 2px rgba(51,51,51,.16),2px 4px 14px rgba(51,51,51,.1)}
.paso-t .n{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:50%;background:linear-gradient(135deg,var(--rosa),var(--indigo));color:#fff;font-weight:600;font-size:20px;margin-bottom:16px}
.paso-t h4{font-size:23px;font-weight:500;margin-bottom:10px}
.paso-t p{font-size:17px}
@media (max-width:1180px){.tres-t{grid-template-columns:1fr}.tres-t::before{display:none}.portada.prod h1{font-size:36px}}

/* Connect: degradado propio, tarjetas de solución y cuatro pasos */
.portada.g-connect{background:linear-gradient(129deg,#2a0a8c 0%,#5a12c0 42%,#c40fd6 100%)}
.banda.g-connect .caja{background:linear-gradient(120deg,#c40fd6 0%,#5a12c0 55%,#2a0a8c 100%)}
.ilustra.chica.una .i1{left:22%;top:8%;width:56%}
.func.sol{display:flex;flex-direction:column;align-items:flex-start}
.func.sol .lema{font-weight:600;color:var(--magenta-osc);margin-bottom:10px}
.func.sol p:not(.lema):not(.nota){flex:1}
.func.sol .nota{font-size:14px;color:var(--texto-2);margin-top:12px;font-style:italic}
.func.sol .vermas{margin-top:18px;font-size:15px;padding:8px 16px}
.tres-t.cuatro-t{grid-template-columns:repeat(4,1fr)}
.paso-t .n{font-size:17px}
@media (max-width:1180px){.tres-t.cuatro-t{grid-template-columns:1fr 1fr}}
@media (max-width:640px){.tres-t.cuatro-t{grid-template-columns:1fr}}

/* Horas del CAP */
.horas-cap{background:linear-gradient(180deg,#faf5ff 0%,#fff 100%)}
.resumen-h{display:grid;grid-template-columns:repeat(3,1fr);gap:26px;max-width:980px;margin:46px auto 0}
.resumen-h > div{background:#fff;border-radius:18px;padding:30px 20px;text-align:center;box-shadow:inset 0 0 0 1px #e6d8fa}
.resumen-h .num{font-size:78px;font-weight:300;line-height:1;color:var(--indigo);letter-spacing:-2px}
.resumen-h p{font-size:18px;margin-top:8px}
.resumen-h .dest{background:var(--grad-cabecera);box-shadow:0 18px 40px rgba(120,20,200,.28);color:#fff}
.resumen-h .dest .num{color:#fff}
.barras-h{max-width:980px;margin:46px auto 0;display:flex;flex-direction:column;gap:30px}
.cab-h{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:10px}
.cab-h b{font-size:22px;font-weight:500}
.cab-h span{font-size:17px;color:var(--texto-2)}
.barra-h{display:flex;height:52px;border-radius:14px;overflow:hidden;background:#e8e4f2}
.barra-h i{display:flex;align-items:center;font-style:normal;min-width:0}
.barra-h i em{font-style:normal;font-size:16px;font-weight:500;padding:0 16px;white-space:nowrap}
.barra-h .v{background:linear-gradient(90deg,#8a14d8,#c40fd6 60%,#d60082);color:#fff}
.barra-h .p{background:#d9d3ea;color:#3a2c66}
.fila-h p{font-size:16px;color:var(--texto-2);margin-top:8px}
.leyenda-h{display:flex;gap:28px;justify-content:center;margin-top:30px;font-size:16px}
.leyenda-h i{display:inline-block;width:16px;height:16px;border-radius:5px;margin-right:8px;vertical-align:-2px}
.leyenda-h .v{background:linear-gradient(90deg,#8a14d8,#d60082)}
.leyenda-h .p{background:#d9d3ea}
.desglose{max-width:980px;margin:40px auto 0;background:#fff;border-radius:18px;box-shadow:inset 0 0 0 1px #e6d8fa;padding:6px 30px}
.desglose summary{cursor:pointer;list-style:none;padding:20px 0;font-size:19px;font-weight:600;color:var(--magenta-osc);display:flex;justify-content:space-between;align-items:center}
.desglose summary::-webkit-details-marker{display:none}
.desglose summary::after{content:"+";font-size:28px;font-weight:300;line-height:1}
.desglose[open] summary::after{content:"\2212"}
.desglose h4{font-size:20px;font-weight:500;margin:26px 0 12px}
.desglose > p{font-size:17px;margin-bottom:24px}
.tabla-h{overflow-x:auto;margin-bottom:10px}
table.horas{width:100%;border-collapse:collapse;font-size:16px}
table.horas th{text-align:left;font-size:13px;letter-spacing:.06em;text-transform:uppercase;color:var(--texto-2);font-weight:600;padding:10px 12px;border-bottom:2px solid #e6d8fa}
table.horas td{padding:11px 12px;border-bottom:1px solid var(--linea)}
table.horas .n{text-align:right;white-space:nowrap}
table.horas td.v{color:var(--magenta-osc);font-weight:600}
table.horas tfoot td{font-weight:600;border-bottom:0;background:#faf5ff}
.nota-h{max-width:980px;margin:26px auto 0;text-align:center;font-size:16px;color:var(--texto-2)}
@media (max-width:1180px){.resumen-h .num{font-size:56px}}
@media (max-width:640px){.resumen-h{grid-template-columns:1fr}.barra-h i em{font-size:13px;padding:0 8px}.desglose{padding:6px 16px}}
