/* 30-oct-2026 — CSS del diseño de Claude Design aprobado por el CTO (artifact UrhD2Lo2FjwQAPUdVVfDS2: formate.css + store.css).
   Copiado tal cual salvo: variables en .fm-page (no en :root) y, al final, lo que el lienzo no dibujaba (respuestas de las
   preguntas, vídeo, Nextend en el acceso, ancho completo dentro de las plantillas de la web). */
/* (30-oct) reglas del lienzo con «.fm-page » delante: así ganan al reseteo de márgenes de .fm-page p/h/ul (en el lienzo lo anulaba). */
.fm-page{
  --marca:#3fc1a1; --marca-hover:#31c19c; --marca-texto:#2a826c; --marca-suave:#e6f7f2;
  --azul:#006fb9; --marino:#0d2b4e; --marino-claro:#163c6a;
  --texto:#1f2b38; --texto-suave:#4c4c4c; --sobre-oscuro-suave:#b9c7d8;
  --fondo-suave:#f6f8fa; --borde:#dde3ea; --borde-fuerte:#8a97a6;
  --pie:#f95111; --pie-texto:#c53a05; --pie-suave:#feece5;
  --f-tit:Poppins,"Segoe UI",system-ui,sans-serif;
  --f-txt:Roboto,"Helvetica Neue",Arial,sans-serif;
  --sombra-1:0 1px 2px rgba(13,43,78,.06),0 4px 12px rgba(13,43,78,.06);
  --sombra-2:0 2px 4px rgba(13,43,78,.08),0 12px 28px rgba(13,43,78,.12);
}
.fm-page{font-family:var(--f-txt);color:var(--texto);background:#fff;font-size:16px;line-height:26px;overflow-x:clip;-webkit-font-smoothing:antialiased;min-height:100%}
.fm-page *{box-sizing:border-box}
.fm-page h1,.fm-page h2,.fm-page h3,.fm-page h4{font-family:var(--f-tit);font-weight:600;color:var(--marino);margin:0;text-wrap:balance}
.fm-page p{margin:0;text-wrap:pretty}
.fm-page ul,.fm-page ol{margin:0;padding:0;list-style:none}
.fm-page a{color:var(--azul)}
.fm-page .fm-wrap{max-width:1200px;margin:0 auto;padding:0 32px}


/* Cabecera del sitio (sin cambios) */
.fm-page .fm-header{background:var(--marino);height:68px;position:relative;z-index:5}
.fm-page .fm-header .fm-wrap{height:100%;display:flex;align-items:center;justify-content:space-between;gap:24px}
.fm-page .fm-logo{display:block;width:120px;height:auto}
.fm-page .fm-nav{display:flex;gap:32px;font-family:var(--f-tit);font-weight:500;font-size:14px}
.fm-page .fm-nav a{color:#fff;text-decoration:none;display:flex;align-items:center;gap:4px}
.fm-page .fm-header-acc{display:flex;align-items:center;gap:20px;color:#fff}
.fm-page .fm-icon-btn{background:none;border:0;color:#fff;padding:0;width:24px;height:24px;display:grid;place-items:center}
.fm-page .fm-btn-ghost{font-family:var(--f-tit);font-weight:600;font-size:13px;color:#fff;border:1.5px solid #fff;border-radius:999px;padding:7px 18px;text-decoration:none}


/* Botones */
.fm-page .fm-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 28px;border-radius:999px;font-family:var(--f-tit);font-weight:600;font-size:15px;line-height:20px;text-decoration:none;border:0;cursor:pointer}
.fm-page .fm-btn--primario{background:var(--marca);color:var(--marino)}
.fm-page .fm-btn--primario:hover{background:var(--marca-hover)}
.fm-page .fm-btn--borde{background:#fff;color:var(--marino);border:1.5px solid var(--marino)}
.fm-page .fm-btn--bloque{width:100%}


/* Ficha: rejilla con la caja de compra fija a la derecha */
.fm-page .fm-producto{display:grid;grid-template-columns:minmax(0,1fr) 360px;column-gap:80px}
.fm-page .fm-hero{grid-column:1;grid-row:1;background:var(--marino);box-shadow:0 0 0 100vmax var(--marino);clip-path:inset(0 -100vmax);padding:64px 0 56px;color:#fff}
.fm-page .fm-aside{grid-column:2;grid-row:1 / span 2;align-self:start;position:sticky;top:92px;margin:48px 0 96px;z-index:3}
.fm-page .fm-cuerpo{grid-column:1;grid-row:2;min-width:0;padding-bottom:96px}
.fm-page .fm-antetitulo{font-family:var(--f-tit);font-weight:600;font-size:13px;line-height:16px;letter-spacing:.08em;text-transform:uppercase;color:var(--marca-texto);margin:0 0 12px}
.fm-page .fm-hero .fm-antetitulo{color:var(--marca)}
.fm-page .fm-hero h1{color:#fff;font-size:44px;line-height:52px;letter-spacing:-.015em;max-width:16ch}
.fm-page .fm-hero-sub{font-family:var(--f-tit);font-weight:500;font-size:16px;line-height:24px;color:#fff;margin-top:16px;max-width:56ch}
.fm-page .fm-hero-lead{font-size:18px;line-height:29px;color:var(--sobre-oscuro-suave);margin-top:16px;max-width:58ch}
.fm-page .fm-hero-datos{display:flex;flex-wrap:wrap;gap:8px 20px;margin-top:20px;font-size:15px;color:#fff}
.fm-page .fm-hero-datos li{display:flex;align-items:center;gap:8px}
.fm-page .fm-hero-datos svg{color:var(--marca);flex:none}
.fm-page .fm-aviso{display:inline-flex;align-items:center;gap:8px;background:rgba(63,193,161,.14);color:#fff;border-radius:999px;padding:6px 14px 6px 12px;font-family:var(--f-tit);font-weight:500;font-size:13px;line-height:18px;margin-top:20px}
.fm-page .fm-aviso i{width:8px;height:8px;border-radius:50%;background:var(--marca);display:block}
.fm-page .fm-anclas{display:flex;flex-wrap:wrap;gap:4px 28px;margin-top:40px;padding-top:20px;border-top:1px solid rgba(255,255,255,.14)}
.fm-page .fm-anclas a{color:var(--sobre-oscuro-suave);text-decoration:none;font-family:var(--f-tit);font-weight:500;font-size:14px;line-height:44px}
.fm-page .fm-anclas a:hover{color:#fff}


/* Caja de compra */
.fm-page .fm-compra{background:#fff;border:1px solid var(--borde);border-radius:16px;box-shadow:var(--sombra-2);padding:20px 20px 4px}
.fm-page .fm-compra-img{display:block;width:100%;aspect-ratio:264/162;object-fit:cover;border-radius:10px;background:var(--fondo-suave)}
.fm-page .fm-compra-img--contain{object-fit:contain}
.fm-page .fm-compra-cuerpo{padding:20px 4px 0}
.fm-page .fm-compra .fm-antetitulo{margin-bottom:6px}
.fm-page .fm-precio{font-family:var(--f-tit);font-weight:600;font-size:34px;line-height:42px;color:var(--marino);letter-spacing:-.01em}
.fm-page .fm-precio small{font-size:18px;font-weight:500;color:var(--texto-suave);letter-spacing:0}
.fm-page .fm-compra .fm-btn{margin-top:16px}
.fm-page .fm-nota{font-size:13px;line-height:20px;color:var(--texto-suave);margin-top:12px}
.fm-page .fm-cifras{display:grid;grid-template-columns:1fr 1fr;gap:1px;background:var(--borde);border-top:1px solid var(--borde);margin:20px -24px 0;border-radius:0 0 16px 16px;overflow:hidden}
.fm-page .fm-cifras div{background:#fff;padding:14px 24px 16px}
.fm-page .fm-cifras b{display:block;font-family:var(--f-tit);font-weight:600;font-size:20px;line-height:26px;color:var(--marino)}
.fm-page .fm-cifras span{display:block;font-size:13px;line-height:18px;color:var(--texto-suave)}


/* Secciones */
.fm-page .fm-sec{padding:64px 0;border-top:1px solid var(--borde)}
.fm-page .fm-sec:first-child{border-top:0}
.fm-page .fm-sec h2{font-size:30px;line-height:38px}
.fm-page .fm-intro{color:var(--texto-suave);margin-top:8px}
.fm-page .fm-prosa{margin-top:24px;display:flex;flex-direction:column;gap:16px;font-size:17px;line-height:28px;max-width:64ch}
.fm-page .fm-prosa strong{font-weight:500;color:var(--marino)}
.fm-page .fm-media{margin-top:32px;position:relative;aspect-ratio:16/9;border-radius:12px;overflow:hidden;background:var(--marino);display:grid;place-items:center}
.fm-page .fm-media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;opacity:.35}
.fm-page .fm-media-play{position:relative;display:flex;flex-direction:column;align-items:center;gap:14px;color:#fff;font-size:14px}
.fm-page .fm-media-play span:first-child{width:72px;height:72px;border-radius:50%;background:var(--marca);color:var(--marino);display:grid;place-items:center}


/* Lista con número (aprenderás, mapa) */
.fm-page .fm-numerada{display:grid;grid-template-columns:1fr 1fr;column-gap:40px;margin-top:28px;counter-reset:n}
.fm-page .fm-numerada li{display:grid;grid-template-columns:32px 1fr;gap:12px;padding:18px 0;border-top:1px solid var(--borde);counter-increment:n}
.fm-page .fm-numerada li::before{content:counter(n,decimal-leading-zero);font-family:var(--f-tit);font-weight:600;font-size:13px;line-height:26px;color:var(--marca-texto)}


/* Checks */
.fm-page .fm-checks{display:flex;flex-direction:column;gap:12px;margin-top:16px}
.fm-page .fm-checks li{display:grid;grid-template-columns:20px 1fr;gap:12px;align-items:start}
.fm-page .fm-checks svg{margin-top:3px;color:var(--marca-texto)}
.fm-page .fm-checks--no svg{color:var(--texto-suave)}


/* Temario */
.fm-page .fm-modulos{margin-top:28px;border-bottom:1px solid var(--borde)}
.fm-page .fm-modulos details{border-top:1px solid var(--borde)}
.fm-page .fm-modulos summary{list-style:none;display:grid;grid-template-columns:52px 1fr 24px;align-items:center;gap:8px;padding:20px 0;cursor:pointer}
.fm-page .fm-modulos summary::-webkit-details-marker{display:none}
.fm-page .fm-mod-n{font-family:var(--f-tit);font-weight:600;font-size:22px;line-height:28px;color:var(--marca-texto);font-variant-numeric:tabular-nums}
.fm-page .fm-mod-t{font-family:var(--f-tit);font-weight:600;font-size:18px;line-height:26px;color:var(--marino)}
.fm-page .fm-chev{color:var(--marino);transition:transform .2s}
.fm-page details[open] > summary .fm-chev{transform:rotate(180deg)}
.fm-page .fm-mod-c{padding:0 32px 24px 60px;display:flex;flex-direction:column;gap:10px}
.fm-page .fm-mod-c h4{font-size:16px;line-height:24px}
.fm-page .fm-mod-c .fm-mod-prof{font-size:14px;line-height:22px;color:var(--texto-suave)}
.fm-page .fm-acciones{margin-top:28px;display:flex;flex-wrap:wrap;gap:12px}


/* Profesorado */
.fm-page .fm-docentes{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));column-gap:32px;margin-top:28px}
.fm-page .fm-docentes li{padding:12px 0;border-top:1px solid var(--borde);font-size:15px;line-height:22px;color:var(--marino);font-weight:500}
.fm-page .fm-docentes--dos{grid-template-columns:repeat(2,minmax(0,1fr))}
.fm-page .fm-docentes li small{display:block;font-weight:400;font-size:14px;color:var(--texto-suave)}


/* Dos columnas */
.fm-page .fm-dos{display:grid;grid-template-columns:1fr 1fr;gap:48px;margin-top:32px}
.fm-page .fm-dos h3{font-size:20px;line-height:28px}
.fm-page .fm-pie-nota{font-size:14px;line-height:22px;color:var(--texto-suave);margin-top:16px;padding-top:14px;border-top:1px solid var(--borde)}


/* FAQ */
.fm-page .fm-faq{margin-top:28px;border-bottom:1px solid var(--borde)}
.fm-page .fm-faq details{border-top:1px solid var(--borde)}
.fm-page .fm-faq summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:64px;padding:12px 0;cursor:pointer;font-family:var(--f-tit);font-weight:500;font-size:16px;line-height:24px;color:var(--marino)}
.fm-page .fm-faq summary::-webkit-details-marker{display:none}
.fm-page .fm-mas{flex:none;width:28px;height:28px;border-radius:50%;border:1.5px solid var(--borde);display:grid;place-items:center;color:var(--marino)}
.fm-page .fm-faq-grupo{margin-top:32px;font-family:var(--f-tit);font-weight:600;font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-suave)}
.fm-page .fm-faq--sec{margin-top:8px}


/* Franja final de compra */
.fm-page .fm-cierre{background:var(--marino);color:#fff;padding:56px 0}
.fm-page .fm-cierre .fm-wrap{display:flex;align-items:center;justify-content:space-between;gap:32px;flex-wrap:wrap}
.fm-page .fm-cierre h2{color:#fff;font-size:30px;line-height:38px}
.fm-page .fm-cierre p{color:var(--sobre-oscuro-suave);font-size:14px;margin-top:6px}
.fm-page .fm-cierre-compra{display:flex;align-items:center;gap:28px}
.fm-page .fm-cierre .fm-precio{color:#fff}
.fm-page .fm-cierre .fm-precio small{color:var(--sobre-oscuro-suave)}
.fm-page .fm-pie{background:#0a2440;color:var(--sobre-oscuro-suave);font-size:14px;border-top:1px solid rgba(255,255,255,.08)}
.fm-page .fm-pie .fm-wrap{height:160px;display:flex;align-items:center;justify-content:center;gap:10px}


/* Barra de compra fija en móvil */
.fm-page .fm-barra{display:none}


/* Login */
.fm-page .fm-login{background:var(--fondo-suave);padding:72px 0 96px}
.fm-page .fm-login-caja{max-width:980px;margin:0 auto;display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);background:#fff;border:1px solid var(--borde);border-radius:20px;box-shadow:var(--sombra-1);overflow:hidden}
.fm-page .fm-login-form{padding:48px 56px 44px}
.fm-page .fm-login-form h1{font-size:32px;line-height:40px;margin-top:4px}
.fm-page .fm-login-form > p{color:var(--texto-suave);margin-top:8px}
.fm-page .fm-campos{display:flex;flex-direction:column;gap:18px;margin-top:28px}
.fm-page .fm-campo{display:flex;flex-direction:column;gap:6px}
.fm-page .fm-campo label{font-family:var(--f-tit);font-weight:500;font-size:14px;line-height:20px;color:var(--marino)}
.fm-page .fm-campo input{height:48px;border:1px solid var(--borde-fuerte);border-radius:8px;padding:0 14px;font:inherit;color:var(--texto);background:#fff}
.fm-page .fm-fila{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:14px}
.fm-page .fm-fila label{display:flex;align-items:center;gap:8px;color:var(--texto)}
.fm-page .fm-fila input{width:18px;height:18px;accent-color:var(--marca-texto);margin:0}
.fm-page .fm-sep{display:flex;align-items:center;gap:14px;font-size:13px;color:var(--texto-suave);margin:24px 0 16px}
.fm-page .fm-sep::before,.fm-page .fm-sep::after{content:"";flex:1;height:1px;background:var(--borde)}
.fm-page .fm-sociales{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.fm-page .fm-social{display:flex;align-items:center;justify-content:center;gap:10px;height:48px;border:1px solid var(--borde-fuerte);border-radius:999px;background:#fff;font-family:var(--f-tit);font-weight:500;font-size:14px;color:var(--marino);cursor:pointer}
.fm-page .fm-login-lado{background:var(--marino);color:#fff;padding:48px 44px;display:flex;flex-direction:column;justify-content:space-between;gap:40px}
.fm-page .fm-login-lado h2{color:#fff;font-size:24px;line-height:32px}
.fm-page .fm-login-lado p{color:var(--sobre-oscuro-suave);margin-top:10px}
.fm-page .fm-login-lado .fm-btn{align-self:flex-start;margin-top:24px}
.fm-page .fm-login-marca{display:flex;flex-direction:column;gap:16px}
.fm-page .fm-login-marca li{display:grid;grid-template-columns:20px 1fr;gap:12px;font-size:15px;line-height:22px;color:#fff}
.fm-page .fm-login-marca svg{color:var(--marca);margin-top:1px}


/* Suscripción */
.fm-page .fm-tres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin-top:32px}
.fm-page .fm-tres li{display:flex;flex-direction:column;gap:12px;padding-top:20px;border-top:2px solid var(--marino)}
.fm-page .fm-tres h3{font-size:17px;line-height:24px}
.fm-page .fm-tres p{font-size:15px;line-height:24px;color:var(--texto-suave)}
.fm-page .fm-chips{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}
.fm-page .fm-chip{display:inline-flex;align-items:center;gap:10px;min-height:44px;padding:0 18px 0 14px;border:1px solid var(--borde);border-radius:999px;font-family:var(--f-tit);font-weight:500;font-size:14px;color:var(--marino);text-decoration:none;background:#fff}
.fm-page .fm-chip i{width:10px;height:10px;border-radius:50%;display:block}
.fm-page .fm-condiciones{margin-top:16px;border-top:1px solid var(--borde)}
.fm-page .fm-condiciones li{display:grid;grid-template-columns:140px 1fr;gap:16px;padding:12px 0;border-bottom:1px solid var(--borde);font-size:15px;line-height:22px}
.fm-page .fm-condiciones dt,.fm-page .fm-condiciones b{font-weight:500;color:var(--marino)}


/* FAI */
.fm-page .fm-pasos{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--borde);border:1px solid var(--borde);border-radius:16px;overflow:hidden;margin-top:32px;counter-reset:p}
.fm-page .fm-pasos li{background:#fff;padding:24px 24px 28px;display:flex;flex-direction:column;gap:8px;counter-increment:p}
.fm-page .fm-paso-cab{display:flex;align-items:center;justify-content:space-between}
.fm-page .fm-paso-cab::before{content:counter(p);font-family:var(--f-tit);font-weight:600;font-size:15px;width:36px;height:36px;border-radius:50%;background:var(--marino);color:#fff;display:grid;place-items:center}
.fm-page .fm-paso-verbo{font-family:var(--f-tit);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--marca-texto)}
.fm-page .fm-pasos h3{font-size:18px;line-height:26px;margin-top:8px}
.fm-page .fm-pasos p{font-size:15px;line-height:24px;color:var(--texto-suave)}
.fm-page .fm-sede{display:flex;gap:12px;align-items:flex-start;margin-top:20px;padding:16px 20px;background:var(--fondo-suave);border-radius:12px;font-size:15px;line-height:23px}
.fm-page .fm-sede svg{flex:none;color:var(--marca-texto);margin-top:2px}
.fm-page .fm-agenda{display:flex;flex-direction:column;padding:4px 0 20px}
.fm-page .fm-agenda li{display:grid;grid-template-columns:72px 1fr;gap:16px;padding:12px 0;border-top:1px dashed var(--borde);font-size:15px;line-height:23px}
.fm-page .fm-agenda li:first-child{border-top:0}
.fm-page .fm-agenda time{font-family:var(--f-tit);font-weight:600;color:var(--marino);font-variant-numeric:tabular-nums}
.fm-page .fm-agenda b{font-weight:500;color:var(--marino)}
.fm-page .fm-agenda .fm-estaciones{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}
.fm-page .fm-agenda .fm-estaciones span{font-size:13px;line-height:18px;padding:4px 10px;border-radius:999px;background:var(--marca-suave);color:var(--marino)}
.fm-page .fm-agenda--pausa{color:var(--texto-suave)}
.fm-page .fm-agenda--sangria{padding-left:60px}
.fm-page .fm-modulos .fm-mod-t small{font-family:var(--f-txt);font-weight:400;font-size:15px;color:var(--texto-suave);margin-left:8px}
.fm-page .fm-direccion{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-top:28px}
.fm-page .fm-persona{display:flex;flex-direction:column;gap:6px}
.fm-page .fm-persona .fm-rol{font-family:var(--f-tit);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--marca-texto)}
.fm-page .fm-persona h3{font-size:19px;line-height:26px}
.fm-page .fm-persona p{font-size:15px;line-height:24px;color:var(--texto-suave)}
.fm-page .fm-subtit{font-family:var(--f-tit);font-weight:600;font-size:16px;color:var(--marino);margin-top:40px}


/* Pack */
.fm-page .fm-cursos{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.fm-page .fm-curso{border:1px solid var(--borde);border-radius:16px;overflow:hidden;display:flex;flex-direction:column;background:#fff}
.fm-page .fm-curso img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover;background:var(--fondo-suave)}
.fm-page .fm-curso-c{padding:24px;display:flex;flex-direction:column;gap:6px;flex:1}
.fm-page .fm-curso h3{font-size:19px;line-height:26px}
.fm-page .fm-curso ol{margin-top:12px;counter-reset:m}
.fm-page .fm-curso ol li{display:grid;grid-template-columns:28px 1fr;padding:9px 0;border-top:1px solid var(--borde);font-size:15px;line-height:22px;counter-increment:m}
.fm-page .fm-curso ol li::before{content:counter(m,decimal-leading-zero);font-family:var(--f-tit);font-weight:600;font-size:12px;color:var(--marca-texto)}
.fm-page .fm-curso-pie{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:auto;padding-top:20px}
.fm-page .fm-curso-pie span{font-size:13px;color:var(--texto-suave)}
.fm-page .fm-curso-pie .fm-btn{min-height:44px;padding:0 20px;font-size:14px}
@media (max-width:900px){.fm-page .fm-wrap{padding:0 20px}
.fm-page .fm-header{height:60px}
.fm-page .fm-nav{display:none}
.fm-page .fm-logo{width:104px}
.fm-page .fm-header-acc{gap:16px}
.fm-page .fm-producto{grid-template-columns:minmax(0,1fr);padding:0 20px;margin:0}
.fm-page .fm-producto.fm-wrap{padding:0 20px}
.fm-page .fm-hero{padding:36px 0 64px}
.fm-page .fm-hero h1{font-size:30px;line-height:38px}
.fm-page .fm-hero-lead{font-size:16px;line-height:26px}
.fm-page .fm-anclas{flex-wrap:nowrap;overflow-x:auto;margin-top:28px;gap:0 22px}
.fm-page .fm-anclas a{white-space:nowrap}
.fm-page .fm-aside{grid-column:1;grid-row:2;position:static;margin:-40px 0 0}
.fm-page .fm-cuerpo{grid-row:3;padding-bottom:56px}
.fm-page .fm-compra{padding:16px 16px 4px;box-shadow:var(--sombra-1)}
.fm-page .fm-compra-img{display:none}
.fm-page .fm-compra-cuerpo{padding:4px 4px 0}
.fm-page .fm-cifras{margin:16px -20px 0}
.fm-page .fm-cifras div{padding:12px 20px 14px}
.fm-page .fm-sec{padding:44px 0}
.fm-page .fm-sec:first-child{padding-top:48px}
.fm-page .fm-sec h2{font-size:24px;line-height:32px}
.fm-page .fm-prosa{font-size:16px;line-height:26px}
.fm-page .fm-numerada,.fm-page .fm-dos,.fm-page .fm-tres,.fm-page .fm-cursos,.fm-page .fm-direccion{grid-template-columns:minmax(0,1fr)}
.fm-page .fm-dos{gap:36px}
.fm-page .fm-tres{gap:24px}
.fm-page .fm-docentes,.fm-page .fm-docentes--dos{grid-template-columns:minmax(0,1fr)}
.fm-page .fm-docentes li{padding:10px 0;font-size:15px}
.fm-page .fm-pasos{grid-template-columns:minmax(0,1fr)}
.fm-page .fm-mod-c{padding:0 0 20px 0}
.fm-page .fm-modulos summary{grid-template-columns:40px 1fr 24px}
.fm-page .fm-mod-t{font-size:16px;line-height:24px}
.fm-page .fm-agenda li{grid-template-columns:52px 1fr;gap:12px}
.fm-page .fm-agenda--sangria{padding-left:0}
.fm-page .fm-condiciones li{grid-template-columns:1fr;gap:2px}
.fm-page .fm-cierre{padding:40px 0}
.fm-page .fm-cierre h2{font-size:24px;line-height:32px}
.fm-page .fm-cierre-compra{width:100%;justify-content:space-between;gap:16px}
.fm-page .fm-pie .fm-wrap{height:120px}
.fm-page .fm-barra{display:flex;position:sticky;bottom:0;z-index:6;align-items:center;justify-content:space-between;gap:12px;background:#fff;border-top:1px solid var(--borde);padding:10px 20px;box-shadow:0 -6px 18px rgba(13,43,78,.08)}
.fm-page .fm-barra b{font-family:var(--f-tit);font-weight:600;font-size:18px;line-height:22px;color:var(--marino);display:block}
.fm-page .fm-barra span{font-size:12px;line-height:16px;color:var(--texto-suave)}
.fm-page .fm-barra .fm-btn{min-height:46px;padding:0 20px;font-size:14px}
.fm-page .fm-login{padding:24px 0 48px}
.fm-page .fm-login-caja{grid-template-columns:minmax(0,1fr);border-radius:16px}
.fm-page .fm-login-form{padding:28px 20px 28px}
.fm-page .fm-login-form h1{font-size:26px;line-height:34px}
.fm-page .fm-login-lado{padding:28px 20px 32px;gap:28px}
.fm-page .fm-sociales{grid-template-columns:minmax(0,1fr)}
}


/* ---------- Aware Store (store.css del lienzo) ---------- */
.fm-page .st-hero{background:var(--marino);color:#fff;padding:64px 0 60px}
.fm-page .st-hero .fm-wrap{display:block}
.fm-page .st-hero h1{color:#fff;font-size:44px;line-height:52px;letter-spacing:-.015em}
.fm-page .st-hero .fm-antetitulo{color:var(--marca)}
.fm-page .st-hero-lead{font-size:18px;line-height:29px;color:var(--sobre-oscuro-suave);margin-top:14px;max-width:56ch}
.fm-page .st-que{border:1px solid rgba(255,255,255,.16);border-radius:16px;padding:22px 24px;display:flex;flex-direction:column;gap:12px}
.fm-page .st-que h2{color:#fff;font-size:17px;line-height:24px}
.fm-page .st-que p{font-size:15px;line-height:23px;color:var(--sobre-oscuro-suave)}
.fm-page .st-formatos{display:flex;flex-wrap:wrap;gap:8px}
.fm-page .st-formatos span{font-family:var(--f-tit);font-weight:500;font-size:13px;line-height:18px;padding:5px 12px;border-radius:999px;background:rgba(255,255,255,.08);color:#fff}
.fm-page .st-que a{color:var(--marca);font-family:var(--f-tit);font-weight:500;font-size:14px;text-decoration:none}


/* Barra de filtros, como en el índice del blog */
.fm-page .st-filtros{position:sticky;top:0;z-index:4;background:#fff;border-bottom:1px solid var(--borde);box-shadow:0 6px 16px rgba(13,43,78,.04)}
.fm-page .st-filtros .fm-wrap{display:flex;flex-direction:column;gap:12px;padding-top:18px;padding-bottom:16px}
.fm-page .st-fila{display:flex;align-items:center;gap:16px}
.fm-page .st-fila-tit{flex:none;width:96px;font-family:var(--f-tit);font-weight:600;font-size:12px;letter-spacing:.08em;text-transform:uppercase;color:var(--texto-suave)}
.fm-page .st-chips{display:flex;gap:8px;flex-wrap:wrap;min-width:0}
.fm-page .st-chip{display:inline-flex;align-items:center;gap:8px;min-height:40px;padding:0 14px 0 12px;border:1px solid var(--borde);border-radius:999px;background:#fff;font-family:var(--f-tit);font-weight:500;font-size:14px;color:var(--marino);cursor:pointer;white-space:nowrap}
.fm-page .st-chip i{width:9px;height:9px;border-radius:50%;display:block;flex:none}
.fm-page .st-chip small{font-family:var(--f-txt);font-size:12px;color:var(--texto-suave)}
.fm-page .st-chip:hover{border-color:var(--borde-fuerte)}
.fm-page .st-chip.is-on{background:var(--marino);border-color:var(--marino);color:#fff}
.fm-page .st-chip.is-on small{color:var(--sobre-oscuro-suave)}
.fm-page .st-chip.is-vacio{color:#6b7684}
.fm-page .st-chip--fmt{padding:0 14px}
.fm-page .st-resumen{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:12px;border-top:1px solid var(--borde);font-size:14px;color:var(--texto-suave)}
.fm-page .st-resumen b{font-weight:500;color:var(--marino)}
.fm-page .st-orden{display:flex;align-items:center;gap:8px}
.fm-page .st-orden select{height:36px;border:1px solid var(--borde-fuerte);border-radius:8px;padding:0 10px;font:inherit;font-size:14px;color:var(--marino);background:#fff}


/* Catálogo por categoría */
.fm-page .st-catalogo{padding:56px 0 88px;background:var(--fondo-suave)}
.fm-page .st-grupo + .st-grupo{margin-top:64px}
.fm-page .st-grupo-cab{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-bottom:16px;margin-bottom:24px;border-bottom:1px solid var(--borde)}
.fm-page .st-grupo-cab div{display:flex;align-items:center;gap:12px}
.fm-page .st-grupo-cab i{width:14px;height:14px;border-radius:50%;display:block}
.fm-page .st-grupo-cab h2{font-size:26px;line-height:34px}
.fm-page .st-grupo-cab span{font-size:14px;color:var(--texto-suave)}
.fm-page .st-rejilla{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(320px,100%),1fr));gap:24px}
.fm-page .st-card{background:#fff;border:1px solid var(--borde);border-top:4px solid var(--pie);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;box-shadow:var(--sombra-1)}
.fm-page .st-card:hover{box-shadow:var(--sombra-2)}
.fm-page .st-card-img{position:relative;display:block;background:#fff;border-bottom:1px solid var(--borde)}
.fm-page .st-card-img img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain}
.fm-page .st-oferta{position:absolute;top:12px;left:12px;font-family:var(--f-tit);font-weight:600;font-size:12px;line-height:16px;padding:5px 10px;border-radius:999px;background:var(--marino);color:#fff}
.fm-page .st-card-c{padding:20px 22px 22px;display:flex;flex-direction:column;gap:12px;flex:1}
.fm-page .st-etqs{display:flex;flex-wrap:wrap;gap:6px}
.fm-page .st-etq{display:inline-flex;align-items:center;gap:6px;font-family:var(--f-tit);font-weight:600;font-size:11px;line-height:16px;letter-spacing:.06em;text-transform:uppercase;padding:4px 10px;border-radius:999px;background:var(--fondo-suave);color:var(--texto-suave)}
.fm-page .st-etq--esp{background:var(--pie-suave);color:var(--pie-texto)}
.fm-page .st-etq--esp i{width:6px;height:6px;border-radius:50%;background:var(--pie);display:block}
.fm-page .st-etq--tipo{background:var(--marca-suave);color:var(--marino)}
.fm-page .st-card h3{font-size:18px;line-height:26px}
.fm-page .st-card h3 a{color:var(--marino);text-decoration:none}
.fm-page .st-card h3 a:hover{text-decoration:underline}
.fm-page .st-meta{display:flex;flex-wrap:wrap;gap:4px 16px;font-size:14px;line-height:20px;color:var(--texto-suave)}
.fm-page .st-meta span{display:flex;align-items:center;gap:6px}
.fm-page .st-incluye{font-size:14px;line-height:21px;color:var(--texto);padding:10px 12px;background:var(--fondo-suave);border-radius:8px}
.fm-page .st-incluye b{font-weight:500;color:var(--marino)}
.fm-page .st-card-pie{margin-top:auto;padding-top:16px;border-top:1px solid var(--borde);display:flex;align-items:center;justify-content:space-between;gap:12px}
.fm-page .st-precio{display:flex;flex-direction:column}
.fm-page .st-precio s{font-size:13px;line-height:18px;color:var(--texto-suave)}
.fm-page .st-precio b{font-family:var(--f-tit);font-weight:600;font-size:22px;line-height:28px;color:var(--marino)}
.fm-page .st-card-pie .fm-btn{min-height:44px;padding:0 18px;font-size:14px}
.fm-page .st-vacio{padding:48px;text-align:center;background:#fff;border:1px dashed var(--borde-fuerte);border-radius:12px;color:var(--texto-suave)}
.fm-page .st-vacio b{display:block;font-family:var(--f-tit);font-weight:600;color:var(--marino);font-size:17px;margin-bottom:6px}


/* Store vs suscripción */
.fm-page .st-compara{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin-top:32px}
.fm-page .st-opcion{border:1px solid var(--borde);border-radius:16px;padding:32px;display:flex;flex-direction:column;gap:14px}
.fm-page .st-opcion h3{font-size:22px;line-height:30px}
.fm-page .st-opcion p{color:var(--texto-suave)}
.fm-page .st-opcion .fm-checks{margin-top:4px}
.fm-page .st-opcion--sus{background:var(--marino);border-color:var(--marino)}
.fm-page .st-opcion--sus h3{color:#fff}
.fm-page .st-opcion--sus p{color:var(--sobre-oscuro-suave)}
.fm-page .st-opcion--sus .fm-antetitulo{color:var(--marca)}
.fm-page .st-opcion .fm-btn{align-self:flex-start;margin-top:auto}
.fm-page .st-opcion .fm-antetitulo{margin:0}
.fm-page .st-tres{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;margin-top:36px;counter-reset:t}
.fm-page .st-tres li{display:flex;flex-direction:column;gap:10px}
.fm-page .st-tres h3{font-size:18px;line-height:26px}
.fm-page .st-tres p{font-size:15px;line-height:24px;color:var(--texto-suave)}
.fm-page .st-cita{background:var(--marca-suave);padding:72px 0}
.fm-page .st-cita figure{margin:0 auto;max-width:820px;display:flex;flex-direction:column;gap:20px}
.fm-page .st-cita svg{color:var(--marca-texto)}
.fm-page .st-cita blockquote{margin:0;font-family:var(--f-tit);font-weight:500;font-size:26px;line-height:38px;color:var(--marino);text-wrap:pretty}
.fm-page .st-cita figcaption{font-size:15px;line-height:22px;color:var(--texto)}
.fm-page .st-cita figcaption b{font-weight:500;color:var(--marino)}
.fm-page .st-publica{padding:40px 0}
.fm-page .st-publica .fm-wrap{display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap}
.fm-page .st-publica p{font-size:17px;line-height:26px;color:var(--marino);max-width:56ch}
@media (max-width:900px){.fm-page .st-hero{padding:36px 0 32px}
.fm-page .st-hero .fm-wrap{grid-template-columns:minmax(0,1fr);gap:28px}
.fm-page .st-hero h1{font-size:32px;line-height:40px}
.fm-page .st-hero-lead{font-size:16px;line-height:26px}
.fm-page .st-fila{flex-direction:column;align-items:flex-start;gap:8px}
.fm-page .st-fila-tit{width:auto}
.fm-page .st-chips{flex-wrap:nowrap;overflow-x:auto;width:100%;padding-bottom:2px;scrollbar-width:none}
.fm-page .st-orden span{display:none}
.fm-page .st-catalogo{padding:36px 0 56px}
.fm-page .st-grupo-cab h2{font-size:22px;line-height:30px}
.fm-page .st-compara,.fm-page .st-tres{grid-template-columns:minmax(0,1fr)}
.fm-page .st-tres{gap:28px}
.fm-page .st-opcion{padding:24px 20px}
.fm-page .st-cita{padding:48px 0}
.fm-page .st-cita blockquote{font-size:20px;line-height:30px}
}
/* ---------- Añadidos al montar en la web (30-oct-2026) ---------- */
.fm-page{max-width:none;width:100%}
.fm-page img{max-width:100%;height:auto}
.fm-page .fm-btn{text-decoration:none}
.fm-page .fm-btn--primario,.fm-page a.fm-btn--primario:hover{color:var(--marino)}
.fm-page .fm-btn--borde,.fm-page a.fm-btn--borde:hover{color:var(--marino)}
.fm-page .fm-cierre .fm-btn--primario{color:var(--marino)}
.fm-page summary{outline-offset:4px}
.fm-faq-r{padding:0 56px 20px 0;color:var(--texto-suave);display:flex;flex-direction:column;gap:10px}
.fm-faq-r a{color:var(--azul)}
.fm-faq details[open] .fm-mas svg{transform:rotate(45deg)}
.fm-mas svg{transition:transform .2s}
.fm-mod-c p{color:var(--texto-suave)}
.fm-media--video iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.fm-media--video .cmplz-placeholder-element,.fm-media--video .cmplz-blocked-content-container{position:absolute;inset:0;width:100%;height:100%}
/* tienda: «¡Oferta!» y antes/después solo si el producto está rebajado (lo decide el PHP) */
.st-precio s:empty{display:none}
/* acceso (Mi cuenta sin sesión): la tarjeta del lienzo dentro de la página de Hello */
.fm-login-pag{background:var(--fondo-suave);box-shadow:0 0 0 100vmax var(--fondo-suave);clip-path:inset(0 -100vmax);padding:48px 0 72px}
.fm-login-pag .fm-login-form h1{font-size:32px;line-height:40px}
.fm-login-pag .fm-campos .form-row{margin:0;padding:0;float:none;width:auto}
.fm-login-pag .fm-campo input.input-text{width:100%;height:48px;border:1px solid var(--borde-fuerte);border-radius:8px;padding:0 14px;font:inherit;color:var(--texto);background:#fff;box-shadow:none}
.fm-login-pag .fm-campo input.input-text:focus{outline:none;border-color:var(--marca);box-shadow:0 0 0 3px var(--marca-suave)}
.fm-login-pag .fm-fila a{color:var(--azul)}
.fm-login-pag button.fm-btn{width:100%;border-radius:999px;background:var(--marca);color:var(--marino);font-family:var(--f-tit);font-weight:600;font-size:15px;min-height:52px;border:0;padding:0 28px}
.fm-login-pag button.fm-btn:hover{background:var(--marca-hover);color:var(--marino)}
.fm-login-pag .nsl-container{padding:0!important;margin:0!important}
.fm-login-pag .nsl-container-buttons{display:grid!important;grid-template-columns:1fr 1fr;gap:12px;padding:0!important}
.fm-login-pag .nsl-container-buttons a{margin:0!important;max-width:none!important;text-decoration:none}
.fm-login-pag .nsl-button{display:flex!important;align-items:center;justify-content:center;gap:10px;width:100%!important;height:48px;border:1px solid var(--borde-fuerte)!important;border-radius:999px!important;background:#fff!important;box-shadow:none!important;color:var(--marino)!important}
.fm-login-pag .nsl-button-svg-container{padding:0!important}
.fm-login-pag .nsl-button-facebook svg path{fill:#1877F2}
.fm-login-pag .nsl-button-label-container{margin:0!important;padding:0!important;font-family:var(--f-tit);font-weight:500;font-size:14px;color:var(--marino)!important}
.fm-login-pag .nsl-button-label-container b{font-weight:500}
.fm-login-lado a.fm-btn{color:var(--marino)}
@media (max-width:900px){
  .fm-login-pag{padding:24px 0 48px}
  .fm-login-pag .nsl-container-buttons{grid-template-columns:minmax(0,1fr)}
  .fm-faq-r{padding-right:0}
}

/* precio de la franja final: .fm-cierre p (14px) lo encogía */
.fm-page .fm-cierre .fm-precio{font-size:34px;line-height:42px;margin:0}
/* acceso: el formulario de WooCommerce trae su propio recuadro */
.fm-login-pag form.woocommerce-form-login{border:0;padding:0;margin:28px 0 0;border-radius:0}
.fm-login-pag .nsl-button-label-container,.fm-login-pag .nsl-button-label-container b{font-weight:500!important}
@media (max-width:900px){.fm-page .fm-cierre .fm-precio{font-size:28px;line-height:36px}}
/* acceso: sin el hueco blanco de Hello entre la tarjeta y el pie */
.page-content:has(> .woocommerce > .fm-login-pag){padding-bottom:0}
/* pack: «Ver el curso» en una línea */
.fm-page .fm-curso-pie .fm-btn{white-space:nowrap;flex:none}
