/* Piezas del curso: formularios, tarjetas, botones, temario y panel. Usa las variables de la marca. */
:root{--lmm-azul:#1f3f8f;--lmm-hondo:#142a63;--lmm-magenta:#c8236e;--lmm-turquesa:#0f9d95;--lmm-fondo:#f6f8fc;--lmm-tarjeta:#fff;--lmm-linea:#dfe5f2;--lmm-texto:#1a2138;--lmm-suave:#55607a;--lmm-campo:#fff}
@media (prefers-color-scheme:dark){:root{--lmm-tarjeta:#152042;--lmm-linea:#2b3a66;--lmm-texto:#e8edf9;--lmm-suave:#a6b1cc;--lmm-campo:#0f1a38}}

.lmm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(290px,100%),1fr));gap:16px;margin:18px 0}
.lmm-grid--4{grid-template-columns:repeat(auto-fit,minmax(min(230px,100%),1fr))}
.lmm-grid--3{grid-template-columns:repeat(auto-fit,minmax(min(260px,100%),1fr))}
.lmm-grid--catalogo{grid-template-columns:repeat(auto-fit,minmax(min(340px,100%),1fr))}
.lmm-tarjeta{background:var(--lmm-tarjeta);color:var(--lmm-texto);border:1px solid var(--lmm-linea);border-radius:16px;padding:22px;box-shadow:0 6px 20px rgba(20,42,99,.07);display:flex;flex-direction:column}
.lmm-tarjeta h3{margin:.2em 0 .4em;font-size:1.2rem;color:inherit}
.lmm-tarjeta p{margin:0 0 .8em}
.lmm-curso{border-top:6px solid var(--lmm-magenta)}
.lmm-proximo{border-style:dashed;border-top-width:1px;background:transparent;box-shadow:none}
.lmm-etiqueta{align-self:flex-start;background:var(--lmm-turquesa);color:#fff;font-weight:700;font-size:.8rem;padding:3px 11px;border-radius:999px;margin-bottom:6px}
.lmm-etiqueta--suave{background:var(--lmm-linea);color:var(--lmm-texto)}
.lmm-meta,.lmm-dur{color:var(--lmm-suave);font-size:.92rem}
.lmm-kicker-t{margin:0;color:var(--lmm-magenta);font-weight:700;text-transform:uppercase;letter-spacing:.06em;font-size:.82rem}
.lmm-acciones{margin-top:auto!important;display:flex;flex-wrap:wrap;gap:10px;padding-top:6px}

.lmm-btn{display:inline-block;background:var(--lmm-magenta);color:#fff!important;text-decoration:none;font-weight:700;border:2px solid var(--lmm-magenta);border-radius:12px;padding:10px 18px;font:inherit;font-weight:700;cursor:pointer;text-align:center}
.lmm-btn:hover{filter:brightness(.93)}
.lmm-btn--sec{background:transparent;color:var(--lmm-azul)!important;border-color:var(--lmm-azul)}
@media (prefers-color-scheme:dark){.lmm-btn--sec{color:#9db6ff!important;border-color:#9db6ff}}
.lmm-btn--grande{width:100%;padding:14px 18px;font-size:1.08rem}

.lmm-form{max-width:560px;background:var(--lmm-tarjeta);color:var(--lmm-texto);border:1px solid var(--lmm-linea);border-radius:16px;padding:22px;box-shadow:0 6px 20px rgba(20,42,99,.08)}
.lmm-form--mini{margin-top:18px;box-shadow:none}
.lmm-form__titulo{margin:0 0 6px;font-weight:700}
.lmm-campo{margin:0 0 12px}
.lmm-campo label,.lmm-form label{display:block;font-weight:700;margin:0 0 4px;font-size:.95rem}
.lmm-opc{font-weight:400;color:var(--lmm-suave)}
.lmm-form input[type=text],.lmm-form input[type=email],.lmm-form input[type=tel],.lmm-form input[type=password]{width:100%;box-sizing:border-box;min-height:46px;padding:9px 12px;font:inherit;color:var(--lmm-texto);background:var(--lmm-campo);border:1.5px solid #b9c4de;border-radius:10px}
.lmm-form input:focus{outline:3px solid var(--lmm-turquesa);outline-offset:1px;border-color:var(--lmm-turquesa)}
.lmm-form .lmm-check{display:flex;gap:10px;align-items:flex-start;font-weight:400;margin:14px 0;font-size:.93rem;line-height:1.4}
.lmm-form .lmm-check input{margin-top:3px;flex:none;width:20px;height:20px;accent-color:var(--lmm-magenta)}
.lmm-nota{margin:10px 0 0;font-size:.88rem;color:var(--lmm-suave)}
.lmm-oculto{position:absolute;left:-9999px;height:0;overflow:hidden}
.lmm-error{background:#fbe8f0;color:#8f1650;border-radius:10px;padding:10px 14px;margin:0 0 12px}
.lmm-ok,.lmm-exito{background:#e3f6f4;color:#0b5f5a;border-radius:12px;padding:14px 16px;margin:0 0 12px}
.lmm-exito h2{margin:0 0 6px;font-size:1.4rem;color:inherit}
.lmm-exito p{margin:0 0 .6em}
@media (prefers-color-scheme:dark){.lmm-error{background:#4a1a33;color:#f6b4d0}.lmm-ok,.lmm-exito{background:#0f3a3a;color:#9cece5}}
.lmm-aux{margin-top:14px;font-size:.95rem}
.lmm-saludo{font-size:1.2rem}

/* Página de inscripción: titular, formulario y beneficios */
.lmm-insc{max-width:1180px;margin:0 auto;padding:clamp(18px,4vw,48px) 16px;display:grid;gap:18px 40px;grid-template-columns:1fr;grid-template-areas:"titulo" "form" "beneficios"}
.lmm-insc__titulo{grid-area:titulo}
.lmm-insc__titulo h1{margin:.1em 0 .3em;font-size:clamp(1.7rem,6vw,2.9rem);line-height:1.1}
.lmm-insc__sub{margin:0;font-size:1.08rem;color:var(--lmm-suave)}
.lmm-insc__form{grid-area:form}
.lmm-insc__form .lmm-form{max-width:none}
.lmm-insc__beneficios{grid-area:beneficios;list-style:none;margin:0;padding:0;display:grid;gap:10px;align-content:start}
.lmm-insc__beneficios li{position:relative;padding-left:34px;font-size:1.04rem}
.lmm-insc__beneficios li::before{content:"";position:absolute;left:0;top:2px;width:22px;height:22px;border-radius:50%;background:var(--lmm-turquesa)}
.lmm-insc__beneficios li::after{content:"";position:absolute;left:7px;top:6px;width:6px;height:11px;border:solid #fff;border-width:0 2.5px 2.5px 0;transform:rotate(45deg)}
@media (min-width:900px){.lmm-insc{grid-template-columns:1.1fr .9fr;grid-template-areas:"titulo form" "beneficios form";grid-template-rows:auto 1fr;align-items:start}.lmm-insc__beneficios{align-self:start;margin-top:10px}}
@media (max-width:820px){.lmm-inscripcion .lmm-nav{display:none}}
@media (max-width:640px){
	.lmm-insc{gap:10px;padding-top:12px}
	.lmm-insc__sub,.lmm-insc__titulo .lmm-kicker-t{display:none}
	.lmm-insc__titulo h1{font-size:1.65rem;margin:0}
	.lmm-insc .lmm-form{padding:14px}
	.lmm-insc .lmm-campo{margin-bottom:8px}
	.lmm-insc .lmm-campo label{margin-bottom:2px;font-size:.88rem}
	.lmm-insc .lmm-form input[type=text],.lmm-insc .lmm-form input[type=email],.lmm-insc .lmm-form input[type=tel]{min-height:42px;padding:6px 10px}
	.lmm-insc .lmm-check{margin:8px 0;font-size:.85rem}
	.lmm-insc .lmm-nota{display:none}
}

/* Temario y secciones */
.lmm-temario{list-style:none;margin:18px 0;padding:0;display:grid;gap:12px}
.lmm-temario li{display:flex;gap:16px;align-items:center;background:var(--lmm-tarjeta);color:var(--lmm-texto);border:1px solid var(--lmm-linea);border-radius:14px;padding:14px 16px}
.lmm-temario li>div{flex:1}
.lmm-temario p{margin:.2em 0 0}
.lmm-temario__n{flex:none;width:40px;height:40px;border-radius:50%;background:var(--lmm-azul);color:#fff;font-weight:800;display:grid;place-items:center;font-family:var(--wp--preset--font-family--bricolage,inherit)}
.lmm-dos-col{display:grid;gap:24px 48px;grid-template-columns:repeat(auto-fit,minmax(min(320px,100%),1fr))}
.lmm-faq details{background:var(--lmm-tarjeta);color:var(--lmm-texto);border:1px solid var(--lmm-linea);border-radius:12px;padding:12px 16px;margin:0 0 10px}
.lmm-faq summary{cursor:pointer;font-weight:700}
.lmm-faq p{margin:.6em 0 0}

/* Páginas de módulo */
.lmm-barra-modulo{max-width:1180px;margin:0 auto;padding:12px 16px;display:flex;justify-content:space-between;gap:12px;flex-wrap:wrap;font-weight:700}
.lmm-barra-modulo span{color:var(--lmm-suave);font-weight:400}
.lmm-marco{display:block;width:100%;border:0;min-height:700px;background:transparent}

/* Formulario de contacto */
.lmm-form select,.lmm-form textarea{width:100%;box-sizing:border-box;padding:9px 12px;font:inherit;color:var(--lmm-texto);background:var(--lmm-campo);border:1.5px solid #b9c4de;border-radius:10px}
.lmm-form select{min-height:46px}
.lmm-form textarea{min-height:130px;resize:vertical}
.lmm-form select:focus,.lmm-form textarea:focus{outline:3px solid var(--lmm-turquesa);outline-offset:1px;border-color:var(--lmm-turquesa)}
.lmm-contacto{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:24px;align-items:start;margin-top:18px}
.lmm-contacto .lmm-form{max-width:none}
.lmm-contacto__datos{display:grid;gap:14px}
.lmm-contacto__datos .lmm-tarjeta{margin:0}
.lmm-desplegable{margin-top:auto}
.lmm-desplegable>summary{display:inline-block;cursor:pointer;list-style:none}
.lmm-desplegable>summary::-webkit-details-marker{display:none}
.lmm-desplegable[open]>summary{margin-bottom:12px}
.lmm-desplegable .lmm-form{box-shadow:none;padding:14px}
@media (max-width:820px){.lmm-contacto{grid-template-columns:1fr}.lmm-contacto__datos{order:2}}
@media (prefers-color-scheme:dark){.lmm-form select,.lmm-form textarea{border-color:#3a4c7e}}

/* Bloques editables: las rejillas y tarjetas hechas con grupos */
.wp-block-group.lmm-grid{display:grid}
.lmm-grid>*,.lmm-dos-col>*,.lmm-faq>*{margin-block-start:0!important;margin-block-end:0}
.wp-block-group.lmm-tarjeta>*{margin-block-start:0}
.lmm-tarjeta h3.wp-block-heading{margin:.2em 0 .4em}
.lmm-col ul{padding-left:1.2em}
.lmm-faq{display:block}
.lmm-faq>*+*{margin-top:10px!important}
.lmm-faq details.wp-block-details{margin:0}

/* Curso progresivo */
.lmm-progreso{margin:6px 0 14px}
.lmm-progreso__texto{margin:0 0 6px}
.lmm-progreso__barra{height:12px;border-radius:99px;background:var(--lmm-linea);overflow:hidden}
.lmm-progreso__barra span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--lmm-turquesa),var(--lmm-azul))}
.lmm-modulo--hecho{border-color:var(--lmm-turquesa)}
.lmm-marca{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:99px;background:#e3f6f4;color:#0b5f5a;font-weight:700;font-size:.82rem}
.lmm-modulo--siguiente{border:2px solid var(--lmm-magenta);box-shadow:0 8px 24px rgba(200,35,110,.18)}
.lmm-modulo--bloqueado{opacity:.6;background-image:repeating-linear-gradient(135deg,transparent 0 12px,rgba(20,42,99,.03) 12px 24px)}
.lmm-candado{margin-left:6px}
.lmm-bloqueo{font-weight:700;color:var(--lmm-suave)}
.lmm-aviso{background:#fff4e0;color:#7a4a00;border-radius:10px;padding:10px 14px;margin:0 0 12px}
.lmm-aviso-superado{background:#e3f6f4;color:#0b5f5a;border-radius:12px;padding:14px 16px;margin:12px 0}
.lmm-aviso-superado--error{background:#fbe8f0;color:#8f1650}
.lmm-aviso-superado a{color:inherit;font-weight:700}
.lmm-diploma{margin:22px 0;padding:20px;border:2px solid var(--lmm-turquesa);border-radius:16px;background:var(--lmm-tarjeta);color:var(--lmm-texto)}
.lmm-diploma--pendiente{border-style:dashed;border-color:var(--lmm-linea)}
.lmm-diploma h3{margin:0 0 6px}
.lmm-diploma code{font-size:1rem}
@media (prefers-color-scheme:dark){.lmm-marca{background:#0f3a3a;color:#9cece5}.lmm-aviso{background:#4a3410;color:#ffd699}.lmm-aviso-superado{background:#0f3a3a;color:#9cece5}.lmm-aviso-superado--error{background:#4a1a33;color:#f6b4d0}}

/* Plazo del curso */
.lmm-plazo,.lmm-nota.lmm-plazo{font-weight:700;color:var(--lmm-suave)}
.lmm-plazo-info{margin:0 0 12px;font-weight:700}
.lmm-aviso--plazo{border:1px solid #e8b96b}
.lmm-resumen{padding-left:1.2em;margin:0 0 16px}
.lmm-hero .lmm-plazo{color:#fff;opacity:.92}
