/* Componente compartido; sus selectores no modifican el menú ni otras secciones. */
.ern-footer { box-sizing:border-box; width:100%; padding:7.32vw 3.51% 8px; background:#410000; color:#fff; font-family:Arial,Helvetica,sans-serif; }
.ern-footer.ern-footer-compact { padding-top:0; }
.ern-footer *,.ern-footer *::before,.ern-footer *::after { box-sizing:border-box; }
.ern-footer-banner { display:grid; place-items:center; width:100%; min-height:360px; aspect-ratio:1270/520; border-radius:18px; overflow:hidden; padding:35px; text-align:center; background:linear-gradient(#16000052,#16000052),url('../footer/conferencias.jpg') center / cover; }
.ern-footer-banner h2 { margin:0; max-width:100%; color:#fff; font-size:clamp(24px,2.75vw,46px); font-style:italic; font-weight:400; line-height:1.15; letter-spacing:-.045em; }
.ern-footer-banner h2 strong { display:block; margin-top:18px; font-size:clamp(22px,2vw,32px); font-weight:700; font-style:normal; letter-spacing:0; }
.ern-footer-details { display:grid; grid-template-columns:1.15fr 1.65fr .65fr; gap:12px 24px; padding:8px 30px 0; }
.ern-footer-details > div { min-width:0; }
.ern-footer-details h3 { margin:0 0 4px; color:#fff; font-size:24px; font-weight:700; line-height:1.2; }
.ern-footer-details p { margin:0; color:#fff; font-size:16px; line-height:1.5; }
.ern-footer a { color:inherit; text-decoration:none; }
.ern-footer-email p { font-size:13px; overflow-wrap:anywhere; }
.ern-footer-networks { text-align:right; }
.ern-footer-networks h3 { font-size:18px; }
.ern-footer-social { display:flex; align-items:center; justify-content:flex-end; gap:8px; }
.ern-footer-social a { display:grid; place-items:center; width:32px; height:36px; flex:none; transition:color .25s ease,transform .25s ease; }
.ern-footer-social svg { display:block; width:24px; height:24px; fill:currentColor; }
.ern-footer-social a:hover { color:#ffb6c0; transform:translateY(-2px); }
.ern-footer-phone a:hover,.ern-footer-email a:hover { text-decoration:underline; text-underline-offset:4px; }
.ern-footer a:focus-visible { outline:2px solid #fff; outline-offset:4px; }
.ern-footer .ern-footer-webapp { display:block; width:max-content; max-width:100%; margin:4px 30px 0 auto; text-align:right; font-size:8px; line-height:1.2; color:#f5f5f5; opacity:.5; letter-spacing:.3px; }
.ern-footer .ern-footer-webapp:hover,.ern-footer .ern-footer-webapp:focus-visible { opacity:.72; }
@media(max-width:900px) {
  .ern-footer-details { grid-template-columns:1fr 1.4fr; gap:12px 24px; padding:10px 16px 0; }
  .ern-footer-networks { grid-column:1/-1; }
  .ern-footer .ern-footer-webapp { margin-right:16px; }
}
@media(max-width:700px) {
  .ern-footer { padding:54px 6% 6px; }
  .ern-footer-banner { min-height:320px; aspect-ratio:auto; padding:28px 20px; border-radius:15px; background-position:58% center; }
  .ern-footer-banner h2 { font-size:clamp(25px,6.4vw,36px); line-height:1.2; }
  .ern-footer-banner h2 strong { font-size:24px; }
  .ern-footer-details { grid-template-columns:1fr; gap:12px; padding:10px 0 0; }
  .ern-footer-details h3 { font-size:22px; }
  .ern-footer-email p { font-size:14px; }
  .ern-footer-networks { grid-column:auto; }
  .ern-footer-social a { width:36px; height:40px; }
  .ern-footer .ern-footer-webapp { margin-right:0; }
}
