/* Empleo Solidario — Header institucional 1.0.1 */
body > nav.topnav:not(.esp-topnav){display:none!important}
.esp-site-header{position:relative;z-index:20;background:#fff;border-bottom:1px solid var(--border,#E5E0D8);box-shadow:0 2px 12px rgba(127,29,29,.06)}
.esp-header-main{max-width:1200px;margin:0 auto;padding:13px 24px 11px;display:flex;align-items:center;justify-content:space-between;gap:24px}
.esp-brand{display:inline-flex;align-items:center;gap:11px;min-width:0;color:var(--green-dark,#7F1D1D)!important;text-decoration:none}
.esp-brand-flag{width:46px;height:23px;display:block;object-fit:cover;border-radius:4px;border:1px solid rgba(127,29,29,.22);box-shadow:0 2px 6px rgba(127,29,29,.14);flex:0 0 auto}
.esp-brand-name{font-family:'Source Serif 4',Georgia,'Times New Roman',serif;font-size:20px;font-weight:700;line-height:1.1;white-space:nowrap}
.esp-auth-actions{display:flex;align-items:center;gap:10px;flex:0 0 auto}
.esp-auth-link{min-height:42px;display:inline-flex;align-items:center;justify-content:center;padding:9px 18px;border-radius:999px;font-size:14px;font-weight:700;line-height:1.2;text-decoration:none;transition:transform .15s,background .15s,color .15s,border-color .15s}
.esp-auth-link:focus-visible,.esp-topnav a:focus-visible,.esp-brand:focus-visible{outline:3px solid rgba(244,196,48,.7);outline-offset:3px}
.esp-auth-login{color:var(--green-dark,#7F1D1D)!important;background:#fff;border:1px solid rgba(127,29,29,.38)}
.esp-auth-login:hover{background:var(--green-light,#FFF4BF);border-color:var(--gold,#F4C430);transform:translateY(-1px)}
.esp-auth-register{color:#fff!important;background:var(--green,#B91C1C);border:1px solid var(--green,#B91C1C)}
.esp-auth-register:hover{background:var(--green-dark,#7F1D1D);border-color:var(--green-dark,#7F1D1D);transform:translateY(-1px)}
.esp-site-header .esp-topnav{max-width:1200px;margin:0 auto;padding:0 24px 11px;display:flex;align-items:center;justify-content:center;gap:22px;overflow-x:auto;scrollbar-width:thin;-webkit-overflow-scrolling:touch;background:#fff;border:0;flex-wrap:nowrap}
.esp-site-header .esp-topnav a{flex:0 0 auto;padding:7px 0;color:var(--text-mid,#4A4A4A);font-size:13px;font-weight:600;white-space:nowrap;border-bottom:2px solid transparent;text-decoration:none}
.esp-site-header .esp-topnav a:hover,.esp-site-header .esp-topnav a.active{color:var(--green,#B91C1C);border-bottom-color:var(--gold,#F4C430)}
@media(max-width:700px){
  .esp-header-main{padding:12px 16px 10px;display:grid;grid-template-columns:1fr;gap:11px}
  .esp-brand{justify-content:center}
  .esp-brand-flag{width:40px;height:20px;border-radius:3px}
  .esp-brand-name{font-size:17px;white-space:normal;text-align:left}
  .esp-auth-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}
  .esp-auth-actions-single{grid-template-columns:1fr;max-width:190px;margin:0 auto}
  .esp-auth-link{width:100%;min-height:44px;padding:10px 12px;font-size:14px}
  .esp-site-header .esp-topnav{justify-content:flex-start;padding:0 16px 10px;gap:18px}
  .esp-site-header .esp-topnav a{font-size:13px;padding:6px 0}
}
@media(max-width:340px){
  .esp-brand-name{font-size:16px}
  .esp-auth-actions{grid-template-columns:1fr}
}
