/* Dropdown "Servicios" in the main menu (9-nov-2026). New file name = no 30-day cache problem. */
.nav-drop { position: relative; display: inline-flex; align-items: center; }
.nav-drop > a::after {
  content: ""; display: inline-block; margin-left: 6px; vertical-align: middle;
  border: 4px solid transparent; border-top-color: currentColor; border-bottom: 0;
}
.nav-drop-menu {
  display: none; position: absolute; top: calc(100% + 12px); left: -16px; z-index: 60;
  grid-template-columns: repeat(3, max-content); column-gap: 8px; padding: 12px 6px 8px; width: max-content;
  background: #fff; border: 1px solid #e3e6e1; border-radius: 12px;
  box-shadow: 0 14px 32px rgba(27, 33, 29, 0.14);
}
.nav-drop-col { display: flex; flex-direction: column; }
.nav-drop-menu::before { content: ""; position: absolute; left: 0; right: 0; top: -14px; height: 14px; }
.nav-drop:hover .nav-drop-menu, .nav-drop:focus-within .nav-drop-menu { display: grid; }
.main-nav .nav-drop-menu a.nav-drop-all { grid-column: 1 / -1; }
@media (max-width: 1060px) { .nav-drop-menu { left: -125px; } }
.main-nav .nav-drop-menu a { display: block; padding: 7px 18px; font-size: 14.5px; font-weight: 500; white-space: nowrap; }
.main-nav .nav-drop-menu a:hover { background: #f2f5f1; }
.nav-drop-label {
  padding: 8px 18px 3px; font-size: 11px; font-weight: 700; letter-spacing: 0.07em; white-space: nowrap;
  text-transform: uppercase; color: #7c8880;
}
.main-nav .nav-drop-menu a.nav-drop-all { margin-top: 6px; padding-top: 10px; border-top: 1px solid #e3e6e1; font-weight: 600; }
/* mobile menu (opened with the burger): the sizes are shown as an indented list */
.main-nav.is-open .nav-drop { display: flex; flex-direction: column; align-items: stretch; }
.main-nav.is-open .nav-drop > a::after { display: none; }
.main-nav.is-open .nav-drop-menu {
  display: flex; flex-direction: column; position: static; min-width: 0; padding: 4px 0 4px 14px;
  border: 0; border-radius: 0; box-shadow: none; background: transparent;
}
.main-nav.is-open .nav-drop-menu::before { display: none; }
.main-nav.is-open .nav-drop-menu a { padding: 6px 0; }
.main-nav.is-open .nav-drop-label { padding: 8px 0 2px; }
.main-nav.is-open .nav-drop-menu a.nav-drop-all { border-top: 0; margin-top: 0; padding-top: 6px; }
