/* Empleo web oficial · V56. Estilos limitados al apartado de empleo. */
.employment-v56{--job-ink:#113456;--job-muted:#52657a;--job-border:#d7e2ee}
.employment-v56 [hidden]{display:none!important}
.employment-v56 :is(input,select,textarea,button,a,summary):focus-visible{outline:3px solid #216cc0;outline-offset:3px}
.employment-v56 .employment-intro{background:#fff;padding:48px 0 38px}
.employment-v56 .employment-intro h1{color:var(--blue);max-width:850px;line-height:1.05;letter-spacing:-2px}
.employment-v56 .employment-intro> .wrap >p{color:var(--job-muted);font-size:18px;max-width:760px}
.employment-paths{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:30px}
.employment-path{display:flex;align-items:center;gap:15px;background:#f2f6fb;border:1px solid var(--job-border);border-radius:16px;padding:20px;text-decoration:none;color:var(--job-ink)}
.employment-path:hover{border-color:var(--blue);background:#eaf2fb}
.employment-path strong,.employment-path small{display:block}
.employment-path strong{font-size:18px;line-height:1.3}
.employment-path small{font-size:13px;color:var(--job-muted);margin-top:5px}
.employment-path>span:last-child{margin-left:auto;font-size:24px;color:var(--blue)}
.path-number{display:grid;place-items:center;background:var(--blue);color:white;border-radius:10px;font-size:14px;font-weight:850;min-width:42px;height:42px}
.employment-v56 .jobs-vacancies-section{background:#f5f8fc;padding:48px 0}
.employment-v56 :is(#vacantes,#jobApplicationForm){scroll-margin-top:135px}
.employment-v56 .section-heading h2{font-size:clamp(27px,3vw,38px);letter-spacing:-1px;line-height:1.15}
.employment-v56 .section-heading p{font-size:15px;color:var(--job-muted);max-width:790px}
.employment-filters{display:grid;grid-template-columns:1fr 1fr auto;gap:14px;align-items:end;margin-top:22px}
.employment-filters label{display:grid;gap:7px;font-size:13px;font-weight:750;color:var(--job-ink)}
.employment-v56 :is(input,select,textarea){max-width:100%;min-width:0;font:inherit}
.employment-filters :is(input,select){width:100%;height:48px;border:1px solid #bdcfe0;padding:10px 12px;border-radius:10px;background:#fff;font-size:15px;color:#243b54}
.employment-result-count{font-size:13px;color:var(--job-muted);margin:18px 0 12px}
.employment-v56 .public-vacancies-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.employment-v56 .public-vacancy-card{padding:25px;gap:17px;border-radius:18px;box-shadow:0 5px 18px rgba(20,50,80,.03);min-width:0}
.employment-v56 .vacancy-card-top{flex-wrap:wrap;gap:8px}
.employment-v56 .vacancy-open{font-size:10px;padding:6px 10px;letter-spacing:.25px}
.employment-v56 .vacancy-card-top time{font-size:12px;color:#58697b}
.employment-v56 .public-vacancy-card h3{font-size:25px;line-height:1.2;color:var(--job-ink)}
.employment-location{padding:15px 17px;border-radius:12px;border-left:4px solid var(--blue);background:#eff5fc;display:grid;gap:4px}
.employment-location .location-label{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.5px;color:#4b6480}
.employment-location strong{font-size:18px;color:var(--blue);line-height:1.4}
.employment-location address{font-style:normal;font-size:14px;color:#425c75;line-height:1.5}
.employment-job-meta{margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 18px}
.employment-job-meta>div:last-child:nth-child(odd){grid-column:1/-1}
.employment-job-meta dt{font-size:11px;font-weight:750;text-transform:uppercase;letter-spacing:.4px;color:#60758a}
.employment-job-meta dd{margin:3px 0 0;font-size:14px;color:var(--job-ink);font-weight:600;line-height:1.5}
.employment-description{border-top:1px solid #e4eaf1;padding-top:13px;font-size:14px}
.employment-description summary{color:var(--blue);font-weight:750;cursor:pointer;padding:2px 0}
.employment-description p{color:var(--job-muted);line-height:1.7;margin:12px 0 0}
.employment-v56 .employment-apply{margin-top:auto;font-size:14px;min-height:48px}
.employment-empty{border:1px solid var(--job-border);background:#fff;border-radius:16px;padding:30px;text-align:center}
.employment-empty h3{margin:0 0 10px;color:var(--job-ink);font-size:23px}
.employment-empty p{color:var(--job-muted);margin:0 auto 18px;max-width:570px;font-size:15px}
.employment-application-section{background:#fff}
.employment-v56 .jobs-grid{grid-template-columns:minmax(0,.72fr) minmax(0,1fr);gap:55px;align-items:start}
.employment-v56 .jobs-copy h2{font-size:34px;line-height:1.1;letter-spacing:-1px}
.employment-v56 .jobs-copy>p{font-size:15px;color:var(--job-muted);line-height:1.75;margin:19px 0 24px}
.employment-steps{list-style:none;padding:0;counter-reset:steps;display:grid;gap:18px;margin:25px 0 30px}
.employment-steps li{position:relative;padding-left:47px;counter-increment:steps}
.employment-steps li:before{content:counter(steps);position:absolute;left:0;top:1px;width:32px;height:32px;display:grid;place-items:center;border-radius:50%;background:#eaf2fb;color:var(--blue);font-size:13px;font-weight:800}
.employment-steps b,.employment-steps span{display:block}
.employment-steps b{font-size:15px;color:var(--job-ink)}
.employment-steps span{font-size:13px;color:var(--job-muted);margin-top:4px}
.employment-v56 .jobs-photo-card{margin:0 0 25px;border-radius:14px;overflow:hidden}
.employment-v56 .jobs-photo-card img{height:230px;width:100%;object-fit:cover}
.employment-v56 .jobs-photo-card figcaption{background:#f5f8fc;padding:12px 15px;font-size:12px;color:var(--job-muted)}
.employment-benefits h3{font-size:18px;color:var(--job-ink);margin:0 0 10px}
.employment-benefits ul{font-size:14px;line-height:1.7;color:var(--job-muted);padding-left:20px}
.employment-benefits li+li{margin-top:7px}
.employment-v56 .job-form{padding:30px;gap:22px;box-shadow:0 8px 32px rgba(14,45,80,.04);min-width:0}
.employment-form-heading h2{font-size:30px!important;letter-spacing:-.8px!important;line-height:1.2!important;margin:10px 0 8px!important}
.employment-form-heading p{font-size:12px;color:var(--job-muted);margin:0}
.employment-v56 .job-form fieldset{margin:0;padding:20px 0 0;border:0;border-top:1px solid #e5ebf2;min-width:0;display:grid;gap:14px}
.employment-v56 .job-form legend{padding:0 0 12px;color:var(--job-ink);font-size:16px;font-weight:800;line-height:1.3;width:100%}
.employment-v56 .job-form legend span{display:inline-grid;place-items:center;background:#eaf2fb;color:var(--blue);width:26px;height:26px;border-radius:7px;margin-right:6px;font-size:13px}
.employment-v56 .job-form label{font-size:13px;line-height:1.45;gap:7px;font-weight:750;color:var(--job-ink)}
.employment-v56 .job-form label>small{display:inline;font-weight:450;font-size:12px}
.employment-v56 .job-form :is(input,select,textarea){font-size:15px;border-color:#bdcfe0;line-height:1.5;width:100%;background:#fff;color:#213b55}
.employment-v56 .job-form :is(input,select){min-height:47px}
.employment-v56 .job-form input[type=checkbox]{width:19px;height:19px;min-height:0;padding:0;accent-color:var(--blue)}
.employment-v56 .job-form input[type=file]{font-size:13px;background:#f7fafd;padding:12px;border-style:dashed;cursor:pointer}
.employment-v56 .job-form input::file-selector-button{border:0;background:var(--blue);color:white;border-radius:6px;padding:8px 10px;margin:0 8px 3px 0;cursor:pointer}
.employment-v56 .job-form small{font-size:12px;font-weight:400;color:var(--job-muted);line-height:1.6}
.employment-selected{padding:16px;background:#eff5fc;border-radius:10px;display:grid;gap:5px;color:var(--blue)}
.employment-selected strong{font-size:15px}
.employment-selected span{font-size:13px;line-height:1.5;color:var(--job-ink)}
.employment-preferences{display:grid;gap:12px;padding:17px;background:#fafbfd;border:1px solid var(--job-border);border-radius:10px}
.employment-preferences h3{font-size:15px;color:var(--job-ink);margin:0}
.employment-preferences p{font-size:12px;color:var(--job-muted);margin:0}
.employment-v56 .job-form .checkline{gap:10px;align-items:start}
.employment-v56 .job-form .checkline span{font-size:12px;line-height:1.6}
.employment-v56 .job-form .checkline a{color:var(--blue);text-underline-offset:2px}
.employment-v56 .employment-submit{font-size:15px;min-height:51px}
.employment-submit:disabled{opacity:.7;cursor:wait}
.employment-submit-help{margin:-10px 0 0;text-align:center;font-size:12px;color:var(--job-muted)}
.employment-file-status{font-size:12px;color:#246641;overflow-wrap:anywhere}
.employment-file-status.is-error{color:#aa1422}
.employment-feedback{padding:20px;border:1px solid currentColor;scroll-margin-top:140px;font-weight:400}
.employment-feedback h3{margin:0 0 10px;font-size:19px}
.employment-feedback p{margin:8px 0;font-size:13px;line-height:1.6;overflow-wrap:anywhere}
.employment-feedback small{color:inherit!important;overflow-wrap:anywhere}
.employment-internal{padding:25px 0;background:#f5f8fc;border-top:1px solid var(--job-border)}
.employment-internal .wrap{display:flex;justify-content:space-between;align-items:center;gap:20px}
.employment-internal b{font-size:14px;color:var(--job-ink)}
.employment-internal p{font-size:12px;color:var(--job-muted);margin:4px 0 0}
@media(max-width:950px){.employment-v56 .jobs-grid{grid-template-columns:1fr;gap:30px}.employment-v56 .jobs-copy .jobs-photo-card,.employment-benefits{display:none}.employment-steps{grid-template-columns:repeat(3,1fr)}.employment-filters{grid-template-columns:1fr 1fr}.employment-filters button{grid-column:1/-1;justify-self:start}}
@media(max-width:650px){.employment-v56 .employment-intro{padding:32px 0}.employment-v56 .employment-intro h1{font-size:40px;letter-spacing:-1.5px}.employment-v56 .employment-intro> .wrap >p{font-size:16px}.employment-paths{grid-template-columns:1fr;gap:12px;margin-top:24px}.employment-path{padding:16px;gap:12px}.employment-path strong{font-size:16px}.employment-path small{font-size:12px}.employment-v56 .public-vacancies-grid{grid-template-columns:1fr;gap:16px}.employment-v56 .public-vacancy-card{padding:20px}.employment-v56 .public-vacancy-card h3{font-size:23px}.employment-location strong{font-size:17px}.employment-v56 .jobs-vacancies-section{padding:35px 0}.employment-filters{grid-template-columns:1fr}.employment-filters button{grid-column:auto}.employment-steps{grid-template-columns:1fr;margin-bottom:0;gap:14px}.employment-v56 .job-form{padding:20px 16px;border-radius:16px}.employment-v56 .job-form .two{grid-template-columns:1fr;gap:14px}.employment-v56 .job-form :is(input,select,textarea){font-size:16px}.employment-v56 .job-form input[type=file]{font-size:12px}.employment-v56 .job-form legend{font-size:15px}.employment-form-heading h2{font-size:27px!important}.employment-internal .wrap{align-items:flex-start;flex-direction:column;gap:12px}.employment-v56 :is(#vacantes,#jobApplicationForm){scroll-margin-top:88px}.employment-feedback{scroll-margin-top:90px}}
@media(prefers-reduced-motion:reduce){.employment-v56{scroll-behavior:auto}.employment-v56 *{transition:none!important}}
