.footer{position:relative;overflow:hidden;background:#111a1f;color:#cbd4d8;padding:64px 0 24px}.footer::before{content:"";position:absolute;inset:0 0 auto;height:3px;background:linear-gradient(90deg,var(--blue),var(--teal),var(--cyan),var(--teal),var(--blue))}.footer-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(180px,.75fr) minmax(220px,.8fr);gap:clamp(36px,6vw,82px);align-items:start}.footer h2{margin:0 0 18px;color:#fff;font-size:18px}.footer-identity h2{font-size:23px;margin-top:20px}.footer-logo{display:flex;min-height:58px;align-items:center}.footer-logo .custom-logo-link{display:inline-flex}.footer-logo .custom-logo{display:block;width:auto;height:auto;max-width:260px;max-height:72px;object-fit:contain}.footer-description{max-width:500px;color:#aebbc1}.footer-description p{margin:0}.footer-menu{display:grid;gap:11px;margin:0;padding:0;list-style:none}.footer-menu a{position:relative;display:inline-flex;align-items:center;color:#cbd4d8;text-decoration:none;transition:color .22s ease,transform .22s ease}.footer-menu a::before{content:"";width:0;height:2px;margin-right:0;background:var(--cyan);transition:width .22s ease,margin-right .22s ease}.footer-menu a:hover,.footer-menu a:focus-visible{color:#fff;transform:translateX(4px)}.footer-menu a:hover::before,.footer-menu a:focus-visible::before{width:14px;margin-right:8px}.footer-contact{display:grid;gap:13px}.footer-contact h2{margin-bottom:5px}.footer-contact a{display:grid;grid-template-columns:32px minmax(0,1fr);align-items:center;gap:9px;color:#cbd4d8;text-decoration:none;overflow-wrap:anywhere}.footer-contact .dashicons{display:grid;width:32px;height:32px;place-items:center;border-radius:50%;background:#ffffff0c;color:var(--cyan);font-size:17px;transition:background-color .22s ease,color .22s ease,transform .22s ease}.footer-contact a:hover,.footer-contact a:focus-visible{color:#fff}.footer-contact a:hover .dashicons,.footer-contact a:focus-visible .dashicons{transform:scale(1.08);background:var(--teal);color:#fff}.footer a:focus-visible{outline:3px solid var(--cyan);outline-offset:4px;border-radius:3px}.copyright{display:flex;justify-content:space-between;gap:24px;margin-top:48px;padding-top:22px;border-top:1px solid #ffffff18;color:#87969d;font-size:13px}.copyright span:last-child{text-align:right}@media(max-width:900px){.footer-grid{grid-template-columns:1.35fr 1fr}.footer-contact{grid-column:1/-1}}@media(max-width:620px){.footer{padding-top:48px}.footer-grid{grid-template-columns:1fr;gap:34px}.footer-contact{grid-column:auto}.footer-logo .custom-logo{max-width:220px;max-height:64px}.copyright{flex-direction:column;gap:8px}.copyright span:last-child{text-align:left}}@media(prefers-reduced-motion:reduce){.footer-menu a,.footer-menu a::before,.footer-contact .dashicons{transition:none}.footer-menu a:hover,.footer-menu a:focus-visible,.footer-contact a:hover .dashicons,.footer-contact a:focus-visible .dashicons{transform:none}}

/* Redes sociales en el footer (4.1.0) */
.footer-contact .upa-social{margin-top:6px}
.footer-contact .upa-social a{display:grid;grid-template-columns:none;width:38px;height:38px;background:#ffffff12;color:var(--cyan)}
.footer-contact .upa-social a:hover,.footer-contact .upa-social a:focus-visible{background:var(--teal);color:#fff}
.footer-contact a small{color:#87969d}
