/* Estética de preparatufp.com para las páginas de convocatoria */
:root{
  --negro:#000;
  --azul-oscuro:#0F2F56;
  --azul:#14508C;
  --celeste:#6EC1E4;
  --oro:#D8BF55;
  --texto:#585858;
  --gris-fondo:#F4F5F3;
  --linea:#DCE1E6;
}
*{box-sizing:border-box}
body{margin:0;background:#fff;color:var(--texto);font-family:Manrope,system-ui,sans-serif;font-size:17px;line-height:1.65}
h1,h2,h3,h4{font-family:"Plus Jakarta Sans",Manrope,sans-serif;line-height:1.2}
a{color:var(--azul)}
:focus-visible{outline:3px solid var(--celeste);outline-offset:3px}

.cab{background:var(--negro);position:sticky;top:0;z-index:10}
.cab .in{max-width:1240px;margin:0 auto;padding:0 24px;height:92px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.cab .marca{display:flex;align-items:center;gap:18px;text-decoration:none}
.cab .marca img{width:60px;height:60px}
.cab .lema{color:#fff;border-left:1px solid #555;padding-left:18px;font-size:18px;letter-spacing:.02em;font-weight:300}
.cab .lema em{font-family:Caveat,cursive;font-style:normal;color:#8FD0EE;font-size:30px;font-weight:600}
.cab nav ul{list-style:none;margin:0;padding:0;display:flex;gap:22px;white-space:nowrap}
.cab nav a{color:var(--celeste);text-decoration:none;font-size:14.5px;padding:8px 0;border-bottom:2px solid transparent}
.cab nav a:hover,.cab nav a[aria-current]{color:var(--oro);border-bottom-color:var(--oro)}
.cab .menu-btn{display:none;background:none;border:1px solid var(--celeste);color:var(--celeste);border-radius:4px;padding:8px 14px;font:inherit}

.lienzo{background:var(--gris-fondo);max-width:1200px;margin:40px auto;padding:64px 24px 80px;border-radius:18px}
.col{max-width:820px;margin:0 auto}
.col h1{color:var(--azul-oscuro);font-weight:600;font-size:clamp(28px,3.4vw,38px);line-height:1.15;margin:0 0 28px;letter-spacing:-.01em;text-wrap:balance}
.col h2{color:var(--azul-oscuro);font-weight:600;font-size:clamp(30px,3.4vw,41px);border-bottom:2px solid var(--azul-oscuro);padding-bottom:8px;margin:64px 0 22px}
.col h3{color:var(--azul);font-weight:600;font-size:clamp(22px,2.4vw,28px);margin:40px 0 12px}
.col p{margin:0 0 16px}

.cta{display:flex;align-items:center;gap:22px;background:#fff;border:1px solid var(--linea);border-left:4px solid var(--azul-oscuro);border-radius:10px;padding:20px 26px;margin:0 auto 36px;max-width:640px;box-shadow:0 10px 30px -24px rgba(15,47,86,.35)}
.cta img{width:64px;height:64px;border-radius:50%}
.cta strong{font-family:"Plus Jakarta Sans",sans-serif;color:var(--azul-oscuro);font-size:22px;font-weight:600;flex:1}
.btn{display:inline-block;background:var(--azul-oscuro);color:#fff;font-weight:700;text-decoration:none;padding:13px 24px;font-size:15.5px;border-radius:8px;transition:background .15s}
.btn:hover{background:var(--azul)}
.botones{display:flex;flex-wrap:wrap;gap:16px;margin:18px 0 8px}

table{width:100%;border-collapse:collapse;background:#fff;margin:14px 0 26px;font-size:15.5px;border-radius:10px;overflow:hidden;box-shadow:0 1px 0 var(--linea),0 10px 30px -24px rgba(15,47,86,.35)}
th{background:var(--azul-oscuro);color:#fff;text-align:left;padding:12px 14px;font-weight:600}
td{padding:11px 14px;border-bottom:1px solid var(--linea);vertical-align:top}
tr:last-child td{border-bottom:0}
tbody tr:nth-child(even) td{background:#FAFBFC}
td.n,th.n{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}
.tabla{overflow-x:auto}
@media (max-width:600px){td.n,th.n{white-space:normal}}
.nota{font-size:15px;color:#777}
.fuente{font-size:14px;color:#777}
.aviso{background:#fff;border:1px solid var(--linea);border-left:4px solid var(--oro);border-radius:8px;padding:14px 18px;margin:18px 0}

.caso{background:#fff;padding:24px 26px;margin:0 0 16px;border:1px solid var(--linea);border-top:3px solid var(--azul-oscuro);border-radius:10px}
.caso h4{margin:0 0 6px;color:var(--azul-oscuro);font-size:19px}
.caso p{margin:0 0 10px;font-size:16px}
.caso .meta{font-size:14px;color:#888}

.pie{background:#000;color:#aaa;padding:48px 24px 28px;font-size:15px}
.pie .in{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}
.pie h4{color:var(--oro);margin:0 0 12px;font-weight:500;letter-spacing:.06em}
.pie a{color:var(--celeste);text-decoration:none}
.pie ul{list-style:none;padding:0;margin:0;display:grid;gap:6px}
.pie .legal{grid-column:1/-1;border-top:1px solid #333;padding-top:18px;font-size:13px}

@media (max-width:1100px){.cab .lema{display:none}}
@media (max-width:980px){
  .cab nav ul{display:none}
  .cab nav.abierto ul{display:flex;flex-direction:column;position:absolute;right:16px;top:84px;background:#000;padding:18px 22px;gap:12px;border:1px solid #333}
  .cab .menu-btn{display:block}
  .lienzo{margin:0;padding:40px 16px 56px;border-radius:0}
  .cta{flex-wrap:wrap}
  .pie .in{grid-template-columns:1fr}
}
