/* Portada general de MÉRITO INFINITO. Se apoya en marca.css + identidad.css. */
.portada-top .wrap{justify-content:space-between}
.portada-marca{text-decoration:none;color:inherit;display:inline-flex;min-width:0}
.portada-top .nav a{color:var(--muted);text-decoration:none;font-weight:500;padding:8px 12px;border-radius:9px}
.portada-top .nav a:hover{color:var(--fg);background:var(--surface-2)}
.heroe{background:radial-gradient(110% 120% at 25% 0%,#1B3C6B 0%,#142D50 55%,#0F2240 100%);color:#F7F5F0;margin:0 calc(-1 * max(16px,env(safe-area-inset-left,0px))) 0 calc(-1 * max(16px,env(safe-area-inset-left,0px)));padding-block:28px 36px;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}
.heroe-grid{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:24px;align-items:center}
.heroe-logo .mi-apertura-svg{max-width:520px}
.heroe-texto{display:grid;gap:16px}
.heroe-marca{display:flex;flex-direction:column;gap:6px;font-family:"Poppins",system-ui,sans-serif;font-weight:700;font-size:clamp(2.6rem,6vw,4.6rem);line-height:1;letter-spacing:.01em}
.heroe-marca span:first-child{color:#F7F5F0}.heroe-marca span:last-child{color:#6BBCE0}
.heroe-eslogan{font-family:"Poppins",system-ui,sans-serif;font-size:clamp(1.15rem,2.2vw,1.5rem);color:#E2C68E;line-height:1.3}
.heroe-respaldo{font-size:.9rem;color:#C9D3E0}
@media (max-width:860px){.heroe-grid{grid-template-columns:minmax(0,1fr);text-align:center}.heroe-marca{align-items:center}.heroe-logo .mi-apertura-svg{max-width:340px}}
.portada-main{display:grid;gap:56px;padding-block:48px 24px}
.bienvenida{display:grid;gap:14px;max-width:68ch}
.bienvenida h2{font-size:clamp(1.6rem,3vw,2.2rem)}
.bienvenida p{font-size:1.06rem;color:var(--muted)}
.bienvenida .btn{justify-self:start}
.sec-cab{display:grid;gap:6px;margin-bottom:18px;max-width:68ch}
.sec-cab h2{font-size:clamp(1.35rem,2.4vw,1.75rem)}
.tarjetas{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:16px}
.programa{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:22px;display:grid;gap:12px;align-content:start;min-width:0}
.programa.activo{border-color:color-mix(in srgb,var(--gold) 55%,var(--line));box-shadow:var(--shadow)}
.programa.proximo{background:var(--bg-2)}
.programa.proximo h3,.programa.proximo p{color:var(--muted)}
.programa-cab{display:flex;justify-content:space-between;align-items:center}
.programa-icono{width:60px;height:60px;border-radius:14px;display:grid;place-items:center;background:var(--surface-2);color:var(--fg)}
.programa.activo .programa-icono{background:#142D50;color:#F7F5F0}
.programa h3{font-size:1.25rem}
.programa p{color:var(--muted)}
.programa-datos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:6px 18px;font-size:.92rem}
.programa-datos b{font-family:var(--f-display);color:var(--fg)}
.programa-perfiles{font-size:.86rem}
.programa .row{gap:10px;flex-wrap:wrap}
.pasos{list-style:none;counter-reset:paso;margin:0;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,190px),1fr));gap:12px}
.pasos li{counter-increment:paso;background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:16px;display:grid;gap:6px;align-content:start}
.pasos li::before{content:counter(paso);width:30px;height:30px;border-radius:50%;display:grid;place-items:center;background:#142D50;color:#F7F5F0;font-family:var(--f-display);font-weight:600;box-shadow:inset 0 0 0 2px #C59A48}
.pasos span{color:var(--muted);font-size:.92rem}
.portada-pie{padding-block:24px 36px;border-top:1px solid var(--line-soft);margin-top:24px}
