/* Footer compartido: superficie continua y contraste independiente de los resets. */
html body:not(#redfe-identity-override) footer.footerpie#contacto {
  width:100%; max-width:none; margin:0; padding:0; background:#080808 !important;
  color:#fff !important; -webkit-text-fill-color:#fff !important;
}
html body:not(#redfe-identity-override) footer.footerpie#contacto :is(.footerpie__main,.footerpie__legal) {
  background:transparent !important;
}
html body:not(#redfe-identity-override) footer.footerpie#contacto :is(.footerpie__main,.footerpie__legal) * {
  background-color:transparent !important; color:#fff !important; -webkit-text-fill-color:#fff !important;
}
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main {
  display:grid; grid-template-columns:.9fr 1.3fr 1.15fr 1.1fr; width:min(1440px,100%);
  max-width:1440px; margin:0 auto; padding:40px 32px; gap:0;
}
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div {
  min-width:0; margin:0; padding:0 24px; border:0; align-self:stretch;
}
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div:first-child { padding-left:0; }
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div:last-child { padding-right:0; }
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div+div { border-left:1px solid #ffffff35; }
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main :is(a,p) { font-family:"Figtree",sans-serif; font-size:14px; line-height:1.65; overflow-wrap:anywhere; }
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__logo { display:flex; flex-direction:column; align-items:flex-start; gap:6px; font-size:12px; letter-spacing:.22em; }
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__logo strong { font-size:42px; line-height:1; letter-spacing:.06em; }
html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__legal { display:flex; justify-content:space-between; flex-wrap:wrap; gap:12px 24px; padding:18px max(32px,calc((100% - 1376px)/2)); border-top:1px solid #ffffff35; }
html body:not(#redfe-identity-override) footer.footerpie#contacto a:focus-visible { outline:2px solid #fff; outline-offset:4px; }
html body:not(#redfe-identity-override) footer.footerpie#contacto::before,
html body:not(#redfe-identity-override) footer.footerpie#contacto::after { content:none; }
@media(max-width:1100px) {
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 0; }
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div:nth-child(odd) { padding-left:0; border-left:0; }
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div:nth-child(even) { padding-right:0; }
}
@media(max-width:600px) {
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main { grid-template-columns:minmax(0,1fr); padding:32px 24px; gap:24px; }
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div:nth-child(n) { grid-column:auto; padding:24px 0 0; border:0; border-top:1px solid #ffffff35; }
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__main>div:first-child { padding:0; border:0; }
 html body:not(#redfe-identity-override) footer.footerpie#contacto .footerpie__legal { flex-direction:column; align-items:flex-start; padding:20px 24px 132px; }
}
