
/* ALET V7.31 — Menú hamburguesa responsivo */
.hamburger-v731{
  display:none !important;
  width:46px !important;
  height:46px !important;
  padding:0 !important;
  border:0 !important;
  background:transparent !important;
  align-items:center !important;
  justify-content:center !important;
  flex-direction:column !important;
  gap:5px !important;
  cursor:pointer !important;
  position:relative !important;
  z-index:1105 !important;
}
.hamburger-v731-bar{
  display:block !important;
  width:26px !important;
  height:3px !important;
  border-radius:999px !important;
  background:#0a2a53 !important;
  transition:transform .28s ease, opacity .2s ease, background .2s ease !important;
}
.hamburger-v731.is-open .hamburger-v731-bar:nth-child(1){
  transform:translateY(8px) rotate(45deg) !important;
}
.hamburger-v731.is-open .hamburger-v731-bar:nth-child(2){
  opacity:0 !important;
}
.hamburger-v731.is-open .hamburger-v731-bar:nth-child(3){
  transform:translateY(-8px) rotate(-45deg) !important;
}

/* El header deja de sentirse "pegado" en móvil */
@media (max-width: 900px){
  body > header.site-header,
  body > header.site-header.header-v724{
    position:sticky !important;
    top:0 !important;
    z-index:1100 !important;
    height:76px !important;
    min-height:76px !important;
    padding:0 18px !important;
    display:grid !important;
    grid-template-columns:auto 1fr auto !important;
    align-items:center !important;
    gap:10px !important;
    background:rgba(255,255,255,.97) !important;
    backdrop-filter:blur(12px) !important;
    -webkit-backdrop-filter:blur(12px) !important;
    box-shadow:0 4px 16px rgba(8,31,61,.08) !important;
  }

  body > header.site-header .brand,
  body > header.site-header.header-v724 .brand{
    width:auto !important;
    height:76px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    margin:0 !important;
    padding:0 !important;
    z-index:1104 !important;
  }

  body > header.site-header .brand img,
  body > header.site-header.header-v724 .brand img{
    width:auto !important;
    height:54px !important;
    max-height:54px !important;
    object-fit:contain !important;
  }

  body > header.site-header .hamburger-v731,
  body > header.site-header.header-v724 .hamburger-v731{
    display:flex !important;
    grid-column:3 !important;
    justify-self:end !important;
  }

  body > header.site-header #nav,
  body > header.site-header.header-v724 #nav{
    display:flex !important;
    position:fixed !important;
    top:76px !important;
    left:0 !important;
    right:0 !important;
    width:100% !important;
    max-height:calc(100svh - 76px) !important;
    overflow-y:auto !important;
    margin:0 !important;
    padding:18px 20px 26px !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    background:rgba(255,255,255,.985) !important;
    box-shadow:0 18px 30px rgba(8,31,61,.14) !important;
    border-top:1px solid rgba(8,31,61,.08) !important;
    transform:translateY(-115%) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    transition:transform .32s ease, opacity .24s ease, visibility .24s ease !important;
    z-index:1102 !important;
  }

  body > header.site-header #nav.open,
  body > header.site-header.header-v724 #nav.open{
    transform:translateY(0) !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  body > header.site-header #nav a,
  body > header.site-header.header-v724 #nav a{
    display:block !important;
    width:100% !important;
    padding:15px 8px !important;
    font-size:15px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    text-align:left !important;
    border-bottom:1px solid rgba(8,31,61,.08) !important;
  }

  body > header.site-header #nav a::after,
  body > header.site-header.header-v724 #nav a::after{
    bottom:8px !important;
  }

  body > header.site-header .header-cta,
  body > header.site-header.header-v724 .header-cta{
    display:none !important;
  }

  body.nav-v731-open{
    overflow:hidden !important;
  }

  html{
    scroll-padding-top:84px !important;
  }
  main > section[id]{
    scroll-margin-top:84px !important;
  }
}

/* teléfono angosto */
@media (max-width: 560px){
  body > header.site-header,
  body > header.site-header.header-v724{
    height:70px !important;
    min-height:70px !important;
    padding:0 14px !important;
  }
  body > header.site-header .brand,
  body > header.site-header.header-v724 .brand{
    height:70px !important;
  }
  body > header.site-header .brand img,
  body > header.site-header.header-v724 .brand img{
    height:48px !important;
    max-height:48px !important;
  }
  body > header.site-header #nav,
  body > header.site-header.header-v724 #nav{
    top:70px !important;
    max-height:calc(100svh - 70px) !important;
  }
  html{scroll-padding-top:78px !important}
  main > section[id]{scroll-margin-top:78px !important}
}
