/* ═══════════════════════════════════════════════════════════════
   FPO.CSS — Estilos exclusivos para fichas FP a Distancia
   Cargado externamente desde todas las fichas /fp-a-distancia/
═══════════════════════════════════════════════════════════════ */

/* VARIABLES */
:root{--p:#1a3c6e;--pl:#2557a7;--acc:#f0a500;--acc2:#e05c2a;--bg:#f8f7f3;--w:#fff;--txt:#1a1a2e;--mu:#6b7280;--br:#e2e0d8;--r:10px}

/* RESET & BASE */

/* NAV & LINKS — sin subrayado en menú */
a{text-decoration:none}
.anav-link{text-decoration:none}
nav a{text-decoration:none}

*{box-sizing:border-box;margin:0;padding:0}
body{font-family:'Inter',sans-serif;background:var(--bg);color:var(--txt);font-size:15px;line-height:1.6}
a{color:var(--pl)}
img{max-width:100%}
button{font-family:inherit}
h1,h2,h3,h4,h5{font-weight:700;line-height:1.2}

/* H2 CON LÍNEA AMARILLA */
.ficha-sec h2{
  font-size:1rem;
  font-weight:800;
  color:var(--p);
  margin-bottom:.8rem;
  padding-left:.7rem;
  border-left:3px solid var(--acc);
}

/* TOPBAR */
.topbar{background:#f0f4fa;border-bottom:1px solid var(--br);height:32px;display:flex;align-items:center}
.topbar-in{max-width:1280px;margin:auto;padding:0 1.5rem;display:flex;gap:1.2rem;align-items:center;width:100%}
.topbar a{font-size:.7rem;color:var(--mu);text-decoration:none}
.topbar a:hover{color:var(--p)}

/* HEADER — gestionado por nav.js */

/* BREADCRUMB */
.bc{max-width:1280px;margin:auto;padding:.35rem 1.5rem;font-size:.68rem;color:var(--mu);display:flex;gap:3px;align-items:center;flex-wrap:nowrap;overflow:hidden;white-space:nowrap}
@media(max-width:600px){.bc{font-size:.6rem;padding:.3rem .8rem}}

/* ANAV */
.anav{background:#fff;border-bottom:1px solid var(--br);position:sticky;top:56px;z-index:800;overflow:hidden}
.anav-in{max-width:1280px;margin:auto;padding:0 1.5rem;display:flex;gap:0;overflow-x:auto;scrollbar-width:none;justify-content:center}
.anav-in::-webkit-scrollbar{display:none}
.anav-link{white-space:nowrap;padding:.6rem .85rem;font-size:.75rem;font-weight:600;color:var(--mu);text-decoration:none;border-bottom:2px solid transparent;transition:color .15s,border-color .15s}
.anav-link:hover{color:var(--p);border-bottom-color:var(--acc)}
@media(max-width:700px){.anav-in{justify-content:flex-start}}

/* FBODY LAYOUT */
.fbody{max-width:1280px;margin:1.5rem auto;padding:0 1.5rem;display:grid;grid-template-columns:1fr 300px;gap:2rem;box-sizing:border-box}
@media(max-width:900px){.fbody{grid-template-columns:1fr}}
@media(max-width:900px){.fbody aside{display:none}}

/* FICHA SECTIONS */
.ficha-sec{margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--br)}
.ficha-sec:last-child{border-bottom:none}

/* FHERO */
.fhero{overflow:hidden}
.fbadges{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:.5rem}
.fb{font-size:.68rem;font-weight:700;padding:.2rem .55rem;border-radius:4px;background:rgba(255,255,255,.15);color:#fff}

/* BUTTONS */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:.4rem;border-radius:6px;font-weight:700;font-size:.8rem;padding:.55rem 1.1rem;cursor:pointer;text-decoration:none;border:1.5px solid transparent;transition:opacity .15s}
.btn:hover{opacity:.88}
.ba{background:var(--acc);color:#fff;border-color:var(--acc)}
.bo{background:transparent;color:var(--p);border-color:var(--p)}
.bg2{background:#fff;color:var(--p);border-color:var(--p)}
.bw{background:transparent;color:var(--w);border-color:var(--w)}
.bsm{font-size:.75rem;padding:.4rem .8rem}
.blg{font-size:.85rem;padding:.65rem 1.3rem}

/* CTA BANNER */
.cban{background:linear-gradient(90deg,var(--p),var(--pl));color:#fff;border-radius:var(--r);padding:1.4rem;text-align:center;margin:1.2rem 0}
.cban p{opacity:.84;font-size:.8rem;margin-bottom:.8rem}

/* ASIDE CARD */
.acard{background:#fff;border:1px solid var(--br);border-radius:var(--r);padding:1rem}
.irow{display:flex;justify-content:space-between;align-items:center;padding:.35rem 0;border-bottom:1px solid var(--br);font-size:.78rem}
.irow:last-of-type{border-bottom:none}
.irow span:first-child{color:var(--mu)}
.irow span:last-child{font-weight:600;color:var(--p)}
.lead-submit{background:var(--acc);color:#fff;border:none;border-radius:6px;padding:.6rem;font-size:.8rem;font-weight:700}

/* ASIGNATURAS GRID */
.asig-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.4rem;margin:.6rem 0}
.asig-item{background:var(--bg);border:1px solid var(--br);border-radius:6px;padding:.45rem .7rem;font-size:.79rem;color:var(--txt);display:flex;align-items:center;gap:.4rem}
.asig-item::before{content:"";width:5px;height:5px;min-width:5px;border-radius:50%;background:var(--acc);display:block}
@media(max-width:600px){.asig-grid{grid-template-columns:1fr}}

/* ADMISION */
.admision-wrap{background:var(--bg);border:1px solid var(--br);border-radius:var(--r);padding:1.2rem;margin:.5rem 0}
.admision-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem}
@media(max-width:700px){.admision-grid{grid-template-columns:1fr}}
.admision-step{text-align:center}
.admision-num{width:32px;height:32px;border-radius:50%;background:var(--p);color:#fff;font-weight:800;font-size:.9rem;display:flex;align-items:center;justify-content:center;margin:0 auto .5rem}
.admision-step p{font-size:.8rem;color:var(--txt);line-height:1.5}

/* FINANCIACION */
.fin-block{background:#fff;border:1px solid var(--br);border-radius:var(--r);padding:1.2rem}
.fin-sub{font-size:.82rem;color:var(--mu);margin-bottom:.8rem}
.fin-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:.6rem}
@media(max-width:700px){.fin-grid{grid-template-columns:1fr}}
.fin-item{display:flex;gap:.5rem;align-items:flex-start;font-size:.8rem}
.fin-ico{color:var(--acc);font-weight:700;font-size:1rem;flex-shrink:0}

/* WHY GRID — sin stickers, solo texto */
.why-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin:.8rem 0}
.why-item{background:var(--w);padding:.8rem;border-radius:8px;border:1px solid var(--br)}
.why-item strong{font-size:.82rem;color:var(--p);display:block;margin-bottom:.2rem}
.why-item p{font-size:.78rem;color:var(--mu)}
@media(max-width:600px){.why-grid{grid-template-columns:1fr}}

/* FAQ */
.faq-a{display:block;max-height:0;overflow:hidden;padding:0 1rem;font-size:.85rem;line-height:1.8;color:var(--txt);background:var(--bg)}
.faq-inner{padding:.8rem 0 1rem}

/* FOOTER */
.fcol-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:1.5rem}
.fcol a{display:block;font-size:.75rem;color:rgba(255,255,255,.7);text-decoration:none;margin-bottom:.35rem}
.fcol a:hover{color:#fff}

/* RESPONSIVE */
@media(max-width:600px){
  .fhero{padding:1.5rem 1rem}
  .fbody{padding:0 .8rem;margin:1rem auto}
  .bc{padding:.3rem .8rem}
  .anav-in{padding:0 .8rem}
}

/* HEADER — evitar doble barra en móvil cuando nav.js inyecta mob-nav-bar */
/* El .site-header vacío se oculta; nav.js inyecta su propia barra */
@media(max-width:768px){
  .site-header:empty{display:none}
}
/* Logo idéntico al resto del sitio */
.logo{font-weight:800;font-size:1.15rem;color:#1a3c6e;text-decoration:none;letter-spacing:-.5px}

