/* Estilos exclusivos de Vacantes; el resto del sitio conserva styles.css. */
.vacancies-page main{background:var(--soft);min-height:60vh}
.vacancies-page .vacancy-heading{max-width:780px;margin-bottom:42px}
.vacancies-page .vacancy-heading h1{font-size:clamp(2.6rem,5vw,4.4rem);line-height:1.06}
.vacancies-page .vacancy-heading p:not(.eyebrow){color:var(--muted)}
.vacancies-page .vacancy-status{color:var(--muted);margin-bottom:20px}
/* Filas automáticas: cada tarjeta y sus detalles determinan su altura natural. */
.vacancies-page .vacancy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-auto-flow:row;grid-auto-rows:auto;align-items:start;gap:22px}
.vacancies-page .vacancy-card{position:relative;min-width:0;height:auto;max-height:none;align-self:start;overflow-wrap:anywhere}
.vacancies-page .vacancy-card:hover{transform:none}
.vacancies-page .vacancy-card h2{font-size:1.5rem;line-height:1.2;letter-spacing:-.02em}
.vacancies-page .vacancy-card p{min-height:0}
.vacancies-page .vacancy-meta{margin:20px 0;color:var(--muted);font-size:.9rem}
.vacancies-page .vacancy-meta div{display:grid;grid-template-columns:100px minmax(0,1fr);gap:12px;margin-bottom:8px}
.vacancies-page .vacancy-meta dt{font-weight:700;color:var(--ink)}
.vacancies-page .vacancy-meta dd{margin:0}
.vacancies-page .vacancy-text{white-space:pre-wrap}
.vacancies-page .vacancy-details{position:static;height:auto;max-height:none;border-top:1px solid var(--line);padding-top:16px}
.vacancies-page .vacancy-details summary{cursor:pointer;color:var(--purple);font-weight:700}
.vacancies-page .vacancy-details h3{font-size:1rem;margin:22px 0 10px}
.vacancies-page .vacancy-reference{margin:16px 0 0;font-size:.8rem}
.vacancies-page .vacancy-apply{margin-top:24px;padding-top:22px;border-top:1px solid var(--line)}
.vacancies-page .vacancy-apply h3{margin:0 0 10px}
.vacancies-page .vacancy-apply .btn-primary{color:#fff;font-size:.93rem;max-width:100%}
.vacancies-page .vacancy-apply .vacancy-apply-note{font-size:.78rem;line-height:1.5;margin:12px 0 0;color:var(--muted)}
.vacancies-page .vacancy-apply a:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
.vacancies-page [data-vacantes-retry]{margin-bottom:24px;font-family:inherit;cursor:pointer}
.vacancies-page [hidden]{display:none!important}
.vacancies-page summary:focus-visible,.vacancies-page button:focus-visible{outline:3px solid var(--teal);outline-offset:4px}
@media(max-width:700px){.vacancies-page .vacancy-grid{grid-template-columns:1fr}}
