/* Página del curso PCP lean (usa los tokens de styles.css) */
[hidden]{display:none !important;}
.curso-hero{background:linear-gradient(160deg,var(--violet-900),var(--violet-700));color:#fff;padding:54px 0 44px;}
.curso-hero .eyebrow{color:#C4B5FD;}
.curso-hero .eyebrow .tick{background:#C4B5FD;}
.curso-hero h1{font-size:clamp(28px,4.6vw,44px);max-width:860px;margin-bottom:12px;}
.curso-hero .lead{max-width:760px;color:#E9E3FB;font-size:16.5px;margin:0 0 18px;}
.chips{display:flex;gap:8px;flex-wrap:wrap;}
.chips span{font-family:var(--mono);font-size:11.5px;letter-spacing:.04em;background:rgba(255,255,255,.14);border:1px solid rgba(255,255,255,.25);padding:6px 12px;border-radius:999px;}

.curso-grid{display:grid;grid-template-columns:minmax(0,1fr) 340px;gap:32px;padding-top:30px;padding-bottom:50px;align-items:start;}
@media (max-width:960px){.curso-grid{grid-template-columns:1fr;}}
.curso-main h2{font-size:23px;margin:30px 0 12px;}
.cbox{background:#fff;border:1px solid var(--line);border-radius:14px;padding:22px 24px;margin-bottom:6px;}
.cbox h2{margin-top:0 !important;}
.learn-list,.incl-list{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px 28px;}
@media (max-width:700px){.learn-list,.incl-list{grid-template-columns:1fr;}}
.learn-list li{font-size:14.5px;padding-left:24px;position:relative;}
.learn-list li::before{content:"✓";position:absolute;left:0;color:var(--green-700);font-weight:700;}
.incl-list li{font-size:14.5px;display:flex;gap:10px;align-items:flex-start;}
.incl-list li span:first-child{flex:0 0 22px;text-align:center;}

.sum-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px;font-size:13.5px;color:var(--slate);}
.sum-row button{background:none;border:0;color:var(--violet-700);font-weight:700;font-size:13.5px;cursor:pointer;font-family:var(--body);padding:0;}
.mod{border:1px solid var(--line);background:#fff;margin-bottom:-1px;}
.mod:first-child{border-radius:12px 12px 0 0;}.mod:last-child{border-radius:0 0 12px 12px;margin-bottom:0;}
.mod > summary{list-style:none;cursor:pointer;padding:16px 20px;display:flex;justify-content:space-between;gap:14px;align-items:center;background:var(--paper-dim);}
.mod > summary::-webkit-details-marker{display:none;}
.mod > summary::before{content:"⌄";font-size:18px;color:var(--slate);margin-right:2px;transition:transform .2s ease;}
.mod[open] > summary::before{transform:rotate(180deg);}
.mod-t{flex:1;font-family:var(--display);font-weight:700;font-size:16px;}
.mod-n{font-size:12.5px;color:var(--slate);text-align:right;}
@media (max-width:600px){.mod > summary{flex-wrap:wrap;}.mod-n{text-align:left;flex-basis:100%;}}
.mod.locked > summary{opacity:.75;}
.les{display:flex;align-items:center;gap:12px;padding:13px 20px;border-top:1px solid var(--line);font-size:14.5px;text-decoration:none;color:var(--ink);}
a.les:hover{background:var(--paper-dim);}
.les-video{display:block;padding:0;}
.les-video > summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:13px 20px;}
.les-video > summary::-webkit-details-marker{display:none;}
.les-video > summary:hover{background:var(--paper-dim);}
.les-ico{flex:0 0 24px;text-align:center;font-size:15px;color:var(--violet-700);}
.les-t{flex:1;}
.les-tag{font-family:var(--mono);font-size:11px;letter-spacing:.04em;color:var(--slate);white-space:nowrap;}
.les-tag.ok{color:var(--violet-700);font-weight:500;}
.les.soon{color:var(--slate);}
.player{padding:0 20px 18px;}
.player-empty{aspect-ratio:16/9;border-radius:12px;background:linear-gradient(155deg,var(--violet-900),var(--violet-700));color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:16px;}
.player-empty span{font-size:34px;opacity:.85;}
.player-empty p{margin:6px 0 0;font-size:14px;color:#E9E3FB;}
.player iframe,.player video{width:100%;aspect-ratio:16/9;border:0;border-radius:12px;background:#000;display:block;}
.lock-msg{padding:18px 20px;text-align:center;border-top:1px solid var(--line);}
.lock-msg p{color:var(--slate);font-size:14px;}

.curso-side{position:sticky;top:90px;}
@media (max-width:960px){.curso-side{position:static;}}
.curso-side .cbox{padding:20px;}
.curso-side h3{font-size:17px;margin:0 0 4px;}
.access-kind{font-family:var(--mono);font-size:11px;color:var(--green-700);letter-spacing:.06em;text-transform:uppercase;margin:0 0 10px;}
#accessList{list-style:none;margin:0 0 14px;padding:0;font-size:13.5px;display:grid;gap:5px;}
#accessList li.on{color:var(--green-700);font-weight:600;}
#accessList li.off{color:var(--slate);}
.curso-side .btn{width:100%;justify-content:center;margin-top:8px;}
.side-note{font-size:12.5px;color:var(--slate);margin:10px 0 0;}

#pcpGate{position:fixed;inset:0;z-index:1500;background:rgba(251,250,254,.97);display:flex;align-items:center;justify-content:center;padding:20px;}
#pcpGate .gbox{max-width:420px;width:100%;background:#fff;border:1px solid var(--line);border-radius:16px;padding:28px;display:grid;gap:12px;text-align:center;box-shadow:0 20px 50px -20px rgba(28,23,48,.35);position:relative;}
#pcpGate h2{margin:0;font-size:22px;color:var(--violet-700);}
#pcpGate p{margin:0;font-size:14px;color:var(--slate);}
#pcpGate input{padding:12px;border:1.5px solid var(--line);border-radius:8px;font-size:15px;text-align:center;text-transform:uppercase;font-family:var(--body);}
#pcpGate .gerr{color:#DC2626;font-size:13px;min-height:16px;}
#pcpGate .gclose{position:absolute;top:8px;right:12px;background:none;border:0;font-size:24px;color:var(--slate);cursor:pointer;}

/* ---- avance del curso ---- */
.les-row{display:flex;align-items:center;border-top:1px solid var(--line);}
.les-row .les{flex:1;border-top:0;min-width:0;}
.done-btn{flex:0 0 auto;margin:0 16px 0 4px;display:inline-flex;align-items:center;gap:6px;border:1.5px solid var(--line);background:#fff;color:var(--slate);border-radius:999px;padding:6px 12px;font-family:var(--body);font-size:12px;font-weight:600;cursor:pointer;white-space:nowrap;}
.done-btn:hover:not(:disabled){border-color:var(--green-500);color:var(--green-700);}
.done-btn:disabled{opacity:.45;cursor:not-allowed;}
.done-btn .done-ic{font-size:11px;opacity:.5;}
.done-btn.on{background:rgba(22,163,74,.1);border-color:var(--green-500);color:var(--green-700);}
.done-btn.on .done-ic{opacity:1;}
.done-row{padding:0 20px 16px;display:flex;justify-content:flex-end;}
.done-row .done-btn{margin:0;}
.les-check{display:none;color:var(--green-700);font-weight:700;margin-right:6px;}
.is-done .les-check{display:inline;}
.is-done .les-t{color:var(--slate);}
@media (max-width:600px){.les-row{flex-wrap:wrap;}.les-row .les{flex-basis:100%;padding-bottom:6px;}.les-row .done-btn{margin:0 20px 12px;}}
.prog-pct{font-family:var(--display);font-size:34px;font-weight:700;color:var(--violet-700);line-height:1.1;margin:4px 0 8px;}
.prog-bar{height:10px;background:var(--paper-dim);border-radius:999px;overflow:hidden;}
.prog-bar i{display:block;height:100%;width:0;background:linear-gradient(90deg,var(--violet-500),var(--green-500));transition:width .3s ease;}
.mod-prog{font-weight:500;color:var(--green-700);}

/* ---- modalidad, precios y consultas ---- */
.info-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0 0 18px;padding:0 !important;}
@media (max-width:1120px){.info-cards{grid-template-columns:repeat(2,minmax(0,1fr));}}
@media (max-width:560px){.info-cards{grid-template-columns:1fr;}}
.icard{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px 20px;}
.icard-h{display:flex;align-items:center;gap:8px;color:var(--violet-700);font-size:13.5px;font-weight:600;margin-bottom:10px;}
.icard-h span{color:var(--slate);}
.icard b{display:block;font-family:var(--display);font-size:17px;margin-bottom:6px;}
.icard p{margin:0;font-size:13.5px;color:var(--slate);}
.paybox{margin-top:30px;border-color:var(--violet-500);box-shadow:0 10px 30px -18px rgba(91,33,182,.45);}
.paybox h3{margin:0;font-size:14.5px;color:var(--slate);font-weight:600;}
.price-big{font-family:var(--display);font-size:36px;font-weight:700;color:var(--ink);line-height:1.15;margin:6px 0 0;}
.price-sub{margin:2px 0 8px;font-size:14.5px;color:var(--ink);}
.price-save{margin:0 0 12px;font-size:13px;color:var(--green-700);font-weight:600;}
.pay-facts{margin:0 0 14px;display:grid;}
.pay-facts div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:13.5px;}
.pay-facts dt{color:var(--slate);}
.pay-facts dd{margin:0;font-weight:600;text-align:right;}
.pay-more{margin-top:10px;font-size:13.5px;}
.pay-more summary{cursor:pointer;color:var(--violet-700);font-weight:700;padding:6px 0;}
#payMods{display:grid;gap:6px;margin-top:6px;}
.pay-mod{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;text-align:left;border:1.5px solid var(--line);background:#fff;border-radius:10px;padding:10px 12px;font-family:var(--body);font-size:13px;color:var(--ink);cursor:pointer;}
.pay-mod:hover:not(:disabled){border-color:var(--violet-500);background:var(--paper-dim);}
.pay-mod:disabled{opacity:.55;cursor:default;}
.pay-mod b{white-space:nowrap;color:var(--violet-700);font-size:12.5px;}
.pay-msg{font-size:13px;margin:12px 0 0;padding:10px 12px;background:rgba(22,163,74,.08);border:1px solid var(--green-500);border-radius:10px;color:var(--ink);}
.pay-msg a{color:var(--violet-700);font-weight:700;}
.cons-form{display:grid;gap:12px;max-width:620px;margin-top:14px;}
.cons-form label{display:grid;gap:5px;font-size:13px;color:var(--slate);font-weight:600;}
.cons-form input[type=text],.cons-form input[type=email],.cons-form select,.cons-form textarea{width:100%;box-sizing:border-box;padding:11px 12px;border:1.5px solid var(--line);border-radius:8px;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;}
.cons-form textarea{resize:vertical;}
.cons-bot{position:absolute !important;left:-9999px;width:1px;height:1px;overflow:hidden;}
.cons-row{display:flex;align-items:center;gap:14px;flex-wrap:wrap;}
#cEstado{font-size:13.5px;color:var(--slate);}
#consList{margin-top:22px;}
#consList h3{font-size:15px;margin:0 0 10px;}
.cons-item{border:1px solid var(--line);border-radius:10px;padding:12px 14px;margin-bottom:8px;background:var(--paper-dim);}
.cons-top{display:flex;justify-content:space-between;gap:10px;font-size:13px;}
.cons-top span{color:var(--slate);}
.cons-item p{margin:6px 0;font-size:14px;}
.cons-item small{color:var(--green-700);font-weight:600;}

/* ---- metodología, acreditación, destinatarios, docente, inscripción y licencias ---- */
.sec-info{margin-top:30px;padding:0 !important;}

.curso-main .sec-info h2{display:flex;align-items:center;gap:10px;font-size:23px;margin:0 0 4px;padding-bottom:12px;border-bottom:1px solid var(--line);}
.sec-arr{display:inline-flex;color:#DC2626;}
.sec-info > p{margin:14px 0 10px;}
.sec-info h3{font-size:15.5px;margin:18px 0 6px;}
.sec-list{margin:12px 0 0;padding-left:22px;display:grid;gap:8px;}
.docente{margin-top:16px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:20px 22px;}
.docente-h{display:flex;align-items:center;gap:14px;margin-bottom:12px;}
.docente-h img{width:72px;height:72px;border-radius:50%;object-fit:cover;flex:0 0 72px;}
.docente-h b{display:block;font-family:var(--display);font-size:18px;}
.docente-h span{font-family:var(--mono);font-size:11px;letter-spacing:.08em;color:var(--slate);}
.docente p{margin:0 0 10px;font-size:14.5px;color:var(--slate);}
.docente-mas summary{cursor:pointer;font-weight:700;color:var(--ink);text-decoration:underline;font-size:14px;width:max-content;}
.docente-mas[open] summary{margin-bottom:10px;}
.docente-mas a{color:var(--violet-700);font-weight:700;}
.pasos{display:grid;gap:12px;margin-top:16px;}
.paso{background:#fff;border:1px solid var(--line);border-radius:14px;padding:16px 20px;}
.paso-h{display:flex;align-items:center;gap:8px;color:var(--violet-700);font-size:13.5px;font-weight:600;margin-bottom:6px;}
.paso-h span{color:var(--slate);}
.paso b{display:block;font-family:var(--display);font-size:17px;margin-bottom:4px;}
.paso p{margin:0;font-size:14px;color:var(--slate);}
.paso a{color:var(--violet-700);font-weight:700;}
.licencias{margin-top:0;}
.licencias .lic-ic{color:#DC2626;margin-bottom:8px;}
.licencias > p{margin:0 0 14px;color:var(--slate);font-size:14.5px;}
.lic-tiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-bottom:16px;}
@media (max-width:700px){.lic-tiers{grid-template-columns:repeat(2,minmax(0,1fr));}}
.lic-tiers span{display:block;background:var(--paper-dim);border-radius:10px;padding:10px 12px;font-size:12.5px;color:var(--slate);}
.lic-tiers b{display:block;font-family:var(--display);font-size:16px;color:var(--violet-700);margin-top:2px;}
.lic-form{display:grid;grid-template-columns:minmax(0,1fr) 150px;gap:12px;margin-bottom:14px;}
@media (max-width:600px){.lic-form{grid-template-columns:1fr;}}
.lic-form label{display:grid;gap:5px;font-size:13px;color:var(--slate);font-weight:600;}
.lic-form select,.lic-form input{width:100%;box-sizing:border-box;padding:11px 12px;border:1.5px solid var(--line);border-radius:8px;font-family:var(--body);font-size:15px;color:var(--ink);background:#fff;}
.lic-total{margin:0 0 14px;display:grid;}
.lic-total div{display:flex;justify-content:space-between;gap:12px;padding:9px 0;border-top:1px solid var(--line);font-size:14px;}
.lic-total dt{color:var(--slate);}.lic-total dd{margin:0;font-weight:600;}
.lic-total .tot{font-size:17px;}.lic-total .tot dd{color:var(--violet-700);font-family:var(--display);font-size:20px;}
#licBtn{width:100%;justify-content:center;border-radius:999px;}

/* ---- bloques que se comprimen, como el contenido del curso ---- */
.acc-group{margin-top:30px;}
.acc-group .mod{margin-bottom:-1px;}
.acc-body{padding:18px 20px 20px;border-top:1px solid var(--line);font-size:14.5px;}
.acc-body > p:first-child,.acc-body > ul:first-child{margin-top:0;}
.acc-body .sec-list{margin-top:0;}
.acc-body h3{font-size:15.5px;margin:16px 0 6px;}
.acc-body .docente{margin-top:0;border:0;padding:0;}
.acc-body .pasos{margin-top:0;}
.paso-h i{font-style:normal;display:inline-flex;align-items:center;justify-content:center;width:22px;height:22px;border-radius:50%;background:var(--violet-700);color:#fff;font-size:12px;font-weight:700;}
.acc-group .mod > summary{background:#fff;}
.acc-group .mod{background:#fff;}

/* ---- inscripción y carrito ---- */
.enroll{border-color:var(--violet-500);box-shadow:0 10px 30px -18px rgba(91,33,182,.45);}
.enroll h3{margin:0;font-size:14.5px;color:var(--slate);font-weight:600;}
.enroll .btn{width:100%;justify-content:center;margin-top:8px;}
.paybox h2{margin:0 0 8px !important;}
.pay-intro{margin:0 0 12px;color:var(--slate);font-size:14.5px;}
.paybox .pay-facts{margin-bottom:18px;}
.cart-grid{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(0,1fr);gap:22px;align-items:start;}
@media (max-width:860px){.cart-grid{grid-template-columns:1fr;}}
.cart-grid h3{font-size:15px;margin:0 0 10px;}
.cart-opts{display:grid;gap:8px;}
.cart-opt{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;border:1.5px solid var(--line);border-radius:10px;padding:10px 12px;font-size:13.5px;background:#fff;}
.cart-opt.main{border-color:var(--violet-500);background:var(--paper-dim);}
.cart-opt b{display:block;font-size:13.5px;}
.cart-opt small{display:block;color:var(--slate);font-size:12px;margin-top:2px;}
.cart-price{font-weight:700;color:var(--violet-700);white-space:nowrap;}
.cart-add{padding:7px 12px !important;font-size:12.5px !important;white-space:nowrap;}
.cart-add:disabled{opacity:.55;cursor:default;}
@media (max-width:520px){.cart-opt{grid-template-columns:1fr auto;}.cart-opt .cart-add{grid-column:1/-1;width:100%;justify-content:center;}}
.cart-box{border:1.5px solid var(--line);border-radius:12px;padding:16px;background:#fff;position:sticky;top:90px;}
@media (max-width:860px){.cart-box{position:static;}}
.cart-line{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:8px 0;border-top:1px solid var(--line);font-size:13.5px;}
.cart-line:first-child{border-top:0;}
.cart-x{background:none;border:0;font-size:20px;line-height:1;color:var(--slate);cursor:pointer;padding:0 4px;}
.cart-empty-t{margin:0;color:var(--slate);font-size:13.5px;}
.cart-tot{display:flex;justify-content:space-between;align-items:baseline;border-top:2px solid var(--line);margin-top:8px;padding-top:10px;font-size:15px;}
.cart-tot b{font-family:var(--display);font-size:24px;color:var(--violet-700);}
.cart-hint{margin:10px 0 0;font-size:12.5px;color:var(--green-700);font-weight:600;}
.cart-box .btn-primary{width:100%;justify-content:center;margin-top:12px;}
.cart-box .btn-primary:disabled{opacity:.5;cursor:not-allowed;}
.cart-clear{display:block;margin:8px auto 0;background:none;border:0;color:var(--slate);font-size:12.5px;text-decoration:underline;cursor:pointer;font-family:var(--body);}
.cart-links{display:grid;gap:6px;margin:8px 0;}
.cart-links .btn{justify-content:center;width:100%;}
@media (max-width:960px){.curso-side{display:contents;}.enroll{order:-1;}.curso-main{order:0;}.curso-side > .cbox:not(.enroll){order:1;}}
#payBox{scroll-margin-top:90px;}
#preguntas-frecuentes{scroll-margin-top:90px;}
.acc-body .faq-item{background:#fff;}

.icard-avance .prog-pct{font-size:30px;margin:0 0 8px;}
.icard-avance #progTxt{margin:8px 0 0;font-size:13px;color:var(--slate);}
.icard-avance .avance-note{margin:6px 0 0 !important;font-size:12px !important;color:var(--slate);}

.alias-box{margin-top:14px;padding-top:14px;border-top:1px dashed var(--line);}
.alias-box[hidden]{display:none !important;}
.alias-box p{margin:0 0 8px;font-size:13px;color:var(--slate);}
.alias-row{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.alias-row code{flex:1 1 auto;min-width:0;text-align:center;white-space:nowrap;background:var(--paper-dim);border:1px solid var(--line);border-radius:8px;padding:9px 12px;font-family:var(--mono);font-size:14px;color:var(--ink);font-weight:700;}
.alias-row{flex-wrap:nowrap;}
.alias-copy{flex:0 0 42px;width:42px;height:42px;display:inline-flex;align-items:center;justify-content:center;border:1.5px solid var(--violet-700);background:#fff;color:var(--violet-700);border-radius:8px;cursor:pointer;}
.alias-copy:hover{background:var(--paper-dim);}
.alias-copy.ok{background:var(--green-500);border-color:var(--green-500);color:#fff;}
.alias-msg{display:block;min-height:16px;margin-top:4px;font-size:12px;color:var(--green-700);font-weight:600;}
.alias-after{margin-top:8px !important;}
.alias-after a{color:var(--violet-700);font-weight:700;}

.alias-nota{margin-top:12px;padding:10px 12px;background:rgba(22,163,74,.08);border:1px solid var(--green-500);border-radius:10px;font-size:13px;color:var(--ink);}
.alias-nota b{color:var(--green-700);}
.alias-nota .btn{display:flex;width:100%;justify-content:center;margin-top:8px;padding:8px 12px !important;font-size:12.5px !important;}
