/* VH Canonical Header/Footer v2 (2026-05-06) */
header{position:fixed;top:0;left:0;right:0;background:#fff;padding:0 2.5rem;display:flex;align-items:center;justify-content:space-between;height:72px;box-shadow:0 1px 8px rgba(5,117,224,0.08);z-index:1000}
header .logo{font-size:1.4rem;font-weight:700;text-decoration:none;display:flex;align-items:center;flex-shrink:0}
header .nav-menu{display:flex;list-style:none;gap:0;margin:0 0 0 2rem;padding:0;flex:1}
header .nav-menu li{margin:0}
header .nav-menu li a{text-decoration:none;color:#4789C4;font-size:0.85rem;font-weight:500;padding:0.5rem 0.9rem;transition:color 0.2s;white-space:nowrap}
header .nav-menu li a:hover{color:#0575E0}
header .nav-menu li a.nav-destacado{color:#0575E0;font-weight:600;background:rgba(5,117,224,0.06);border-radius:6px}
header .nav-menu li a .dropdown-arrow{font-size:0.6rem;margin-left:3px;opacity:0.6}
header .nav-right{display:flex;align-items:center;gap:1rem;flex-shrink:0}
header .nav-tel{color:#0575E0;text-decoration:none;font-weight:600;font-size:0.95rem;white-space:nowrap}
header .hamburger{display:none;background:none;border:none;cursor:pointer;padding:0.5rem;z-index:1002}
header .hamburger span{display:block;width:22px;height:2px;background:#0575E0;margin:5px 0;transition:all 0.3s ease}
header .hamburger.active span:nth-child(1){transform:rotate(45deg) translate(5px,5px)}
header .hamburger.active span:nth-child(2){opacity:0}
header .hamburger.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}
.nav-menu.open{display:flex !important;position:fixed;top:72px;left:0;right:0;bottom:0;background:#fff;flex-direction:column;padding:2rem;margin:0;z-index:999}

.footer{background:#052F5C !important;color:rgba(255,255,255,0.6);font-size:0.78rem}
.footer .logo{color:#fff}
.footer-inner{max-width:1280px;margin:0 auto;padding:3rem 2.5rem 2rem;display:grid;grid-template-columns:1.5fr 1fr 1fr 1fr;gap:3rem}
.footer-brand p{color:rgba(255,255,255,0.55);font-size:0.78rem;line-height:1.7;margin:1rem 0 0}
.footer-col-title{font-family:'JetBrains Mono',ui-monospace,monospace;font-size:0.7rem;font-weight:600;letter-spacing:0.14em;text-transform:uppercase;color:rgba(255,255,255,0.65);margin:0 0 1rem}
.footer-links{list-style:none;display:flex;flex-direction:column;gap:0.5rem;padding:0;margin:0}
.footer-links a{color:rgba(255,255,255,0.7);text-decoration:none;font-size:0.85rem;transition:color 0.2s}
.footer-links a:hover{color:#fff}
.footer-bottom{max-width:1280px;margin:0 auto;padding:1.5rem 2.5rem;border-top:1px solid rgba(255,255,255,0.08);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem;font-size:0.74rem;color:rgba(255,255,255,0.5)}
.footer-bottom a{color:rgba(255,255,255,0.6);text-decoration:underline}
.footer-cif{font-size:.74rem;opacity:.85;letter-spacing:.02em}

.footer-rrss{list-style:none !important;display:flex;flex-wrap:wrap;gap:10px;padding:0;margin:1.25rem 0 0}
.footer-rrss li{margin:0}
.footer-rrss a{display:inline-flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;background:rgba(255,255,255,0.08);color:#fff !important;transition:all .25s ease}
.footer-rrss a:hover{background:#75D1F2;color:#052F5C !important;transform:translateY(-2px)}
.footer-rrss svg{width:18px;height:18px;display:block;fill:currentColor}

.footer-oficinas{max-width:1280px;margin:0 auto;padding:2rem 2.5rem;border-top:1px solid rgba(255,255,255,0.18);border-bottom:1px solid rgba(255,255,255,0.18);display:grid;grid-template-columns:repeat(2,1fr);gap:2.5rem}
.footer-oficina-title{font-family:'JetBrains Mono',ui-monospace,monospace !important;font-size:0.78rem !important;letter-spacing:0.16em !important;text-transform:uppercase !important;color:#75D1F2 !important;margin:0 0 0.85rem !important;font-weight:700 !important}
.footer-oficina-addr,.footer-oficina-tel,.footer-oficina-hours{color:rgba(255,255,255,0.92) !important;margin:0 0 0.5rem !important;line-height:1.5 !important;font-size:0.88rem !important}
.footer-oficina-tel a{color:#fff !important;text-decoration:none !important;font-weight:600 !important;font-size:1rem !important}
.footer-oficina-tel a:hover{color:#75D1F2 !important}
.footer-oficina-hours{color:rgba(255,255,255,0.72) !important;font-size:0.8rem !important}

body{padding-top:72px}
body.page-id-22,body.page-id-32,body.page-id-30,body.page-id-24,body.page-id-34,body.page-id-1337,body.elementor-canvas-template{padding-top:0}

@media (max-width:768px){
  header{padding:0 1.25rem}
  header .nav-menu{display:none}
  header .nav-tel{display:none}
  header .hamburger{display:block}
  .footer-inner{grid-template-columns:1fr 1fr;gap:2rem;padding:2.5rem 1.25rem 1.5rem}
  .footer-oficinas{grid-template-columns:1fr;gap:2rem;padding:2rem 1.25rem}
  .footer-bottom{padding:1.5rem 1.25rem;flex-direction:column;align-items:flex-start}
}
@media (max-width:600px){
  .footer-inner{grid-template-columns:1fr;gap:1.5rem}
}