/* ==========================================================
   RM2026 Header — Anti flash drawer móvil
   Evita que el panel móvil aparezca 1 segundo al cargar
   ========================================================== */

body.rm2026-header-active:not(.rm2026-menu-open) .rm2026-header__drawer,
body.rm2026-header-active:not(.rm2026-menu-open) .rm2026-header__mobile-panel,
body.rm2026-header-active:not(.rm2026-menu-open) .rm2026-header__overlay {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
}

body.rm2026-header-active:not(.rm2026-menu-open) .rm2026-header__drawer,
body.rm2026-header-active:not(.rm2026-menu-open) .rm2026-header__mobile-panel {
  transform: translate3d(-110%, 0, 0) !important;
}

body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer,
body.rm2026-header-active.rm2026-menu-open .rm2026-header__mobile-panel {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
  transform: translate3d(0, 0, 0) !important;
}

body.rm2026-header-active.rm2026-menu-open .rm2026-header__overlay {
  opacity: 1 !important;
  visibility: visible !important;
  pointer-events: auto !important;
}
/* ==========================================================
   RM2026 — Header global de prueba
   Archivo: /rm2026/assets/css/rm2026-header.css
   ========================================================== */

body.rm2026-header-active {
  --rm2026-header-blue: #185dc5;
  --rm2026-header-blue-hover: #0f4da8;
  --rm2026-header-blue-night: #0b2f6b;
  --rm2026-header-blue-dark: #08265a;
  --rm2026-header-gold: #b7791f;
  --rm2026-header-text: #0f172a;
  --rm2026-header-white: #ffffff;
  --rm2026-header-soft: #eef4ff;
  --rm2026-header-whatsapp: #166534;
  --rm2026-header-whatsapp-hover: #14532d;
  --rm2026-header-font: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
}

body.rm2026-header-active.rm2026-menu-open {
  overflow: hidden;
}

body.rm2026-header-active .rm2026-header,
body.rm2026-header-active .rm2026-header *,
body.rm2026-header-active .rm2026-header *::before,
body.rm2026-header-active .rm2026-header *::after {
  box-sizing: border-box;
}

body.rm2026-header-active .rm2026-header {
  position: sticky;
  top: 0;
  z-index: 2147482000;
  width: 100%;
  border-bottom: 3px solid var(--rm2026-header-gold);
  background: linear-gradient(180deg, var(--rm2026-header-blue) 0%, var(--rm2026-header-blue-hover) 100%);
  color: var(--rm2026-header-white);
  font-family: var(--rm2026-header-font);
  box-shadow: 0 8px 24px rgba(15, 23, 42, 0.12);
}

body.rm2026-header-active .rm2026-header a,
body.rm2026-header-active .rm2026-header a:visited,
body.rm2026-header-active .rm2026-header a:active {
  color: inherit;
  text-decoration: none;
}

body.rm2026-header-active .rm2026-header button {
  font-family: inherit;
}

body.rm2026-header-active .rm2026-header svg,
body.rm2026-header-active .rm2026-header svg path {
  fill: currentColor;
}

body.rm2026-header-active .rm2026-header__bar {
  display: grid;
  grid-template-columns: auto minmax(180px, auto) minmax(0, 1fr) auto;
  align-items: center;
  gap: 18px;
  width: min(1180px, calc(100% - 40px));
  min-height: 72px;
  margin: 0 auto;
}

body.rm2026-header-active .rm2026-header__brand {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: #ffffff;
  font-size: clamp(1.42rem, 2vw, 2rem);
  font-weight: 650;
  letter-spacing: -0.035em;
  line-height: 1;
  white-space: nowrap;
}

body.rm2026-header-active .rm2026-header__brand:hover {
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__toggle {
  display: none;
}

body.rm2026-header-active .rm2026-header__nav {
  min-width: 0;
}

body.rm2026-header-active .rm2026-header__nav-list {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.rm2026-header-active .rm2026-header__nav-item {
  position: relative;
  display: flex;
  align-items: center;
  min-width: 0;
}

body.rm2026-header-active .rm2026-header__nav-item > a {
  display: inline-flex;
  align-items: center;
  min-height: 42px;
  padding: 10px 10px;
  border-radius: 12px;
  color: rgba(255, 255, 255, 0.94);
  font-size: 0.94rem;
  font-weight: 700;
  line-height: 1.1;
  white-space: nowrap;
}

body.rm2026-header-active .rm2026-header__nav-item > a:hover,
body.rm2026-header-active .rm2026-header__nav-item:focus-within > a {
  background: rgba(255, 255, 255, 0.11);
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__submenu-toggle {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 38px;
  margin-left: -6px;
  border: 0;
  border-radius: 10px;
  background: transparent;
  color: rgba(255, 255, 255, 0.86);
  cursor: pointer;
}

body.rm2026-header-active .rm2026-header__submenu-toggle span {
  display: block;
  font-size: 0.82rem;
  line-height: 1;
  transition: transform 0.18s ease;
}

body.rm2026-header-active .rm2026-header__nav-item.is-submenu-open > .rm2026-header__submenu-toggle span,
body.rm2026-header-active .rm2026-header__nav-item:focus-within > .rm2026-header__submenu-toggle span,
body.rm2026-header-active .rm2026-header__nav-item:hover > .rm2026-header__submenu-toggle span {
  transform: rotate(180deg);
}

body.rm2026-header-active .rm2026-header__submenu {
  position: absolute;
  top: calc(100% + 10px);
  left: 0;
  z-index: 2147482100;
  display: grid;
  gap: 4px;
  width: 270px;
  margin: 0;
  padding: 10px;
  border: 1px solid rgba(255, 255, 255, 0.14);
  border-radius: 18px;
  background: linear-gradient(180deg, var(--rm2026-header-blue-night) 0%, var(--rm2026-header-blue-dark) 100%);
  box-shadow: 0 18px 42px rgba(15, 23, 42, 0.28);
  list-style: none;
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
  transform: translateY(6px);
  transition: opacity 0.16s ease, transform 0.16s ease, visibility 0.16s ease;
}

body.rm2026-header-active .rm2026-header__nav-item:hover > .rm2026-header__submenu,
body.rm2026-header-active .rm2026-header__nav-item:focus-within > .rm2026-header__submenu,
body.rm2026-header-active .rm2026-header__nav-item.is-submenu-open > .rm2026-header__submenu {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  transform: translateY(0);
}

body.rm2026-header-active .rm2026-header__submenu a {
  display: flex;
  align-items: center;
  min-height: 40px;
  padding: 10px 12px;
  border-radius: 12px;
  color: rgba(255, 255, 255, 0.92);
  font-size: 0.92rem;
  font-weight: 650;
  line-height: 1.2;
}

body.rm2026-header-active .rm2026-header__submenu a:hover,
body.rm2026-header-active .rm2026-header__submenu a:focus-visible {
  background: rgba(255, 255, 255, 0.12);
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 10px;
}

body.rm2026-header-active .rm2026-header__search-toggle,
body.rm2026-header-active .rm2026-header__cta {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 42px;
  border-radius: 14px;
  text-decoration: none;
}

body.rm2026-header-active .rm2026-header__search-toggle {
  width: 42px;
  border: 1px solid rgba(255, 255, 255, 0.24);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  cursor: pointer;
}

body.rm2026-header-active .rm2026-header__search-toggle:hover,
body.rm2026-header-active .rm2026-header__search-toggle[aria-expanded="true"] {
  background: rgba(255, 255, 255, 0.15);
}

body.rm2026-header-active .rm2026-header__cta {
  gap: 8px;
  padding: 11px 16px;
  border: 1px solid rgba(255, 255, 255, 0.12);
  background: var(--rm2026-header-whatsapp);
  color: #ffffff;
  box-shadow: 0 10px 22px rgba(22, 101, 52, 0.18);
  font-size: 0.94rem;
  font-weight: 850;
  line-height: 1;
  white-space: nowrap;
}

body.rm2026-header-active .rm2026-header__cta:hover {
  background: var(--rm2026-header-whatsapp-hover);
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__search-panel {
  position: absolute;
  left: 0;
  right: 0;
  top: 100%;
  z-index: 2147481900;
  padding: 12px 20px;
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  background: var(--rm2026-header-blue-night);
  box-shadow: 0 12px 28px rgba(15, 23, 42, 0.18);
}

body.rm2026-header-active .rm2026-header__search-form {
  display: flex;
  width: min(920px, 100%);
  margin: 0 auto;
  border: 1px solid rgba(255, 255, 255, 0.24);
  border-radius: 16px;
  background: #ffffff;
  overflow: hidden;
}

body.rm2026-header-active .rm2026-header__search-form input {
  flex: 1;
  min-width: 0;
  height: 46px;
  padding: 0 14px;
  border: 0;
  background: #ffffff;
  color: var(--rm2026-header-text);
  font-size: 1rem;
  outline: none;
}

body.rm2026-header-active .rm2026-header__search-form button {
  width: 52px;
  border: 0;
  background: #ffffff;
  color: var(--rm2026-header-blue-night);
  cursor: pointer;
}

body.rm2026-header-active .rm2026-header__overlay {
  position: fixed;
  inset: 0;
  z-index: 2147482500;
  background: rgba(15, 23, 42, 0.58);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.18s ease;
}

body.rm2026-header-active.rm2026-menu-open .rm2026-header__overlay {
  opacity: 1;
  pointer-events: auto;
}

body.rm2026-header-active .rm2026-header__drawer {
  position: fixed;
  top: 0;
  left: 0;
  z-index: 2147483000;
  display: flex;
  flex-direction: column;
  width: min(380px, 92vw);
  height: 100dvh;
  max-width: 100%;
  border-right: 1px solid rgba(255, 255, 255, 0.16);
  background:
    radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.08), transparent 34%),
    linear-gradient(180deg, var(--rm2026-header-blue) 0%, var(--rm2026-header-blue-night) 100%);
  color: #ffffff;
  box-shadow: 24px 0 60px rgba(15, 23, 42, 0.34);
  overflow: hidden;
  transform: translateX(-105%);
  transition: transform 0.22s ease;
}

body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer {
  transform: translateX(0);
}

body.rm2026-header-active .rm2026-header__drawer-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  min-height: 76px;
  padding: 16px 18px;
  border-bottom: 3px solid var(--rm2026-header-gold);
}

body.rm2026-header-active .rm2026-header__drawer-brand {
  color: #ffffff;
  font-size: 1.42rem;
  font-weight: 650;
  letter-spacing: -0.035em;
  line-height: 1;
}

body.rm2026-header-active .rm2026-header__drawer-close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 46px;
  height: 46px;
  border: 2px solid rgba(255, 255, 255, 0.88);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
  font-size: 2rem;
  line-height: 1;
  cursor: pointer;
}

body.rm2026-header-active .rm2026-header__drawer-search {
  display: flex;
  min-height: 50px;
  margin: 18px 18px 10px;
  border: 2px solid rgba(255, 255, 255, 0.72);
  border-radius: 16px;
  overflow: hidden;
}

body.rm2026-header-active .rm2026-header__drawer-search input {
  flex: 1;
  min-width: 0;
  height: 50px;
  padding: 0 14px;
  border: 0;
  background: transparent;
  color: #ffffff;
  font-size: 1rem;
  font-weight: 600;
  outline: none;
}

body.rm2026-header-active .rm2026-header__drawer-search input::placeholder {
  color: rgba(255, 255, 255, 0.82);
}

body.rm2026-header-active .rm2026-header__drawer-search button {
  width: 54px;
  border: 0;
  background: transparent;
  color: #ffffff;
  cursor: pointer;
}

body.rm2026-header-active .rm2026-header__drawer-nav {
  flex: 1;
  min-height: 0;
  padding: 6px 18px 20px;
  overflow-y: auto;
  -webkit-overflow-scrolling: touch;
}

body.rm2026-header-active .rm2026-header__drawer-nav ul {
  display: grid;
  gap: 4px;
  margin: 0;
  padding: 0;
  list-style: none;
}

body.rm2026-header-active .rm2026-header__drawer-nav li {
  margin: 0;
  padding: 0;
}

body.rm2026-header-active .rm2026-header__drawer-nav a {
  display: flex;
  align-items: center;
  min-height: 54px;
  border-radius: 14px;
  color: rgba(255, 255, 255, 0.96);
  font-size: 1.08rem;
  font-weight: 700;
  line-height: 1.2;
}

body.rm2026-header-active .rm2026-header__drawer-nav > ul > li > a,
body.rm2026-header-active .rm2026-header__drawer-row > a {
  padding: 12px 12px;
}

body.rm2026-header-active .rm2026-header__drawer-nav a:hover,
body.rm2026-header-active .rm2026-header__drawer-nav a:focus-visible {
  background: rgba(255, 255, 255, 0.10);
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__drawer-row {
  display: grid;
  grid-template-columns: minmax(0, 1fr) 48px;
  align-items: center;
  gap: 8px;
}

body.rm2026-header-active .rm2026-header__drawer-row button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid rgba(255, 255, 255, 0.42);
  border-radius: 14px;
  background: rgba(255, 255, 255, 0.06);
  color: #ffffff;
  cursor: pointer;
}

body.rm2026-header-active .rm2026-header__drawer-row button span {
  display: block;
  font-size: 1.18rem;
  line-height: 1;
  transition: transform 0.18s ease;
}

body.rm2026-header-active .rm2026-header__drawer-item--has-submenu.is-submenu-open > .rm2026-header__drawer-row button span {
  transform: rotate(180deg);
}

body.rm2026-header-active .rm2026-header__drawer-submenu {
  display: none !important;
  gap: 2px !important;
  margin: 4px 0 8px 12px !important;
  padding: 8px 0 8px 14px !important;
  border-left: 2px solid rgba(183, 121, 31, 0.75);
}

body.rm2026-header-active .rm2026-header__drawer-item--has-submenu.is-submenu-open > .rm2026-header__drawer-submenu {
  display: grid !important;
}

body.rm2026-header-active .rm2026-header__drawer-submenu a {
  min-height: 44px;
  padding: 8px 10px;
  color: rgba(255, 255, 255, 0.88);
  font-size: 0.96rem;
  font-weight: 650;
}

body.rm2026-header-active .rm2026-header__drawer-cta {
  display: grid;
  gap: 10px;
  padding: 16px 18px calc(18px + env(safe-area-inset-bottom));
  border-top: 1px solid rgba(255, 255, 255, 0.14);
  background: rgba(8, 38, 90, 0.54);
}

body.rm2026-header-active .rm2026-header__drawer-whatsapp,
body.rm2026-header-active .rm2026-header__drawer-secondary {
  display: flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 16px;
  border-radius: 16px;
  font-size: 0.98rem;
  font-weight: 850;
  line-height: 1.15;
  text-align: center;
}

body.rm2026-header-active .rm2026-header__drawer-whatsapp {
  background: var(--rm2026-header-whatsapp);
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__drawer-secondary {
  border: 1px solid rgba(255, 255, 255, 0.26);
  background: rgba(255, 255, 255, 0.08);
  color: #ffffff;
}

body.rm2026-header-active .rm2026-header__sr {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  border: 0 !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
}

body.rm2026-header-active .rm2026-header a:focus-visible,
body.rm2026-header-active .rm2026-header button:focus-visible,
body.rm2026-header-active .rm2026-header input:focus-visible {
  outline: 3px solid rgba(255, 255, 255, 0.38);
  outline-offset: 3px;
}

@media (max-width: 1120px) {
  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: auto minmax(160px, auto) minmax(0, 1fr) auto;
    gap: 12px;
    width: min(100% - 28px, 1180px);
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    padding-inline: 8px;
    font-size: 0.9rem;
  }

  body.rm2026-header-active .rm2026-header__cta span {
    display: none;
  }

  body.rm2026-header-active .rm2026-header__cta {
    width: 44px;
    padding: 0;
  }
}

@media (max-width: 959px) {
  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: 52px minmax(0, 1fr) 52px;
    min-height: 76px;
    gap: 10px;
    width: min(100% - 28px, 1180px);
  }

  body.rm2026-header-active .rm2026-header__toggle {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: 6px;
    width: 52px;
    height: 52px;
    border: 2px solid rgba(255, 255, 255, 0.88);
    border-radius: 16px;
    background: rgba(255, 255, 255, 0.08);
    color: #ffffff;
    cursor: pointer;
  }

  body.rm2026-header-active .rm2026-header__toggle span {
    display: block;
    width: 24px;
    height: 2px;
    border-radius: 999px;
    background: currentColor;
  }

  body.rm2026-header-active .rm2026-header__brand {
    justify-self: center;
    font-size: clamp(1.55rem, 7vw, 2.15rem);
    text-align: center;
  }

  body.rm2026-header-active .rm2026-header__nav,
  body.rm2026-header-active .rm2026-header__search-toggle {
    display: none;
  }

  body.rm2026-header-active .rm2026-header__actions {
    justify-self: end;
  }

  body.rm2026-header-active .rm2026-header__cta {
    width: 52px;
    height: 52px;
    padding: 0;
    border-radius: 16px;
  }

  body.rm2026-header-active .rm2026-header__cta span {
    display: none;
  }
}

@media (max-width: 420px) {
  body.rm2026-header-active .rm2026-header__bar {
    width: min(100% - 22px, 1180px);
    grid-template-columns: 48px minmax(0, 1fr) 48px;
    min-height: 72px;
  }

  body.rm2026-header-active .rm2026-header__toggle,
  body.rm2026-header-active .rm2026-header__cta {
    width: 48px;
    height: 48px;
    border-radius: 15px;
  }

  body.rm2026-header-active .rm2026-header__brand {
    font-size: clamp(1.38rem, 7vw, 1.9rem);
  }

  body.rm2026-header-active .rm2026-header__drawer {
    width: min(370px, 92vw);
  }

  body.rm2026-header-active .rm2026-header__drawer-brand {
    font-size: 1.28rem;
  }
}
/* ==========================================================
   RM2026 Header — Ajuste V2 prueba
   Sticky real + responsive + menú móvil + submenús desktop
   ========================================================== */

body.rm2026-header-active {
  --rm2026-header-h: 76px;
  padding-top: var(--rm2026-header-h);
}

body.rm2026-header-active .rm2026-header {
  position: fixed !important;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2147482000;
}

body.admin-bar.rm2026-header-active .rm2026-header {
  top: 32px;
}

body.admin-bar.rm2026-header-active {
  padding-top: calc(var(--rm2026-header-h) + 32px);
}

@media (max-width: 782px) {
  body.admin-bar.rm2026-header-active .rm2026-header {
    top: 46px;
  }

  body.admin-bar.rm2026-header-active {
    padding-top: calc(var(--rm2026-header-h) + 46px);
  }
}

/* Marca con claim superior */
body.rm2026-header-active .rm2026-header__brand,
body.rm2026-header-active .rm2026-header__drawer-brand {
  display: grid !important;
  gap: 3px;
  align-items: center;
  justify-items: center;
  text-align: center;
}

body.rm2026-header-active .rm2026-header__brand-kicker {
  display: block;
  color: rgba(255, 255, 255, 0.86);
  font-size: 0.68rem;
  font-weight: 800;
  letter-spacing: 0.13em;
  line-height: 1;
  text-transform: uppercase;
}

body.rm2026-header-active .rm2026-header__brand-name {
  display: block;
  color: #ffffff;
  font-size: inherit;
  font-weight: inherit;
  letter-spacing: inherit;
  line-height: 1;
}

/* Desktop más limpio */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: minmax(230px, auto) minmax(0, 1fr) auto;
    width: min(1280px, calc(100% - 48px));
    min-height: 76px;
    gap: 22px;
  }

  body.rm2026-header-active .rm2026-header__toggle {
    display: none !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    justify-self: start;
  }

  body.rm2026-header-active .rm2026-header__nav-list {
    justify-content: center;
    gap: 2px;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    min-height: 42px;
    padding: 10px 9px;
    font-size: 0.92rem;
    font-weight: 750;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle {
    width: 22px !important;
    height: 38px !important;
    margin-left: -5px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  body.rm2026-header-active .rm2026-header__submenu {
    width: 340px !important;
    padding: 12px !important;
    border-radius: 18px !important;
  }

  body.rm2026-header-active .rm2026-header__submenu a {
    min-height: 42px !important;
    padding: 10px 13px !important;
    font-size: 0.94rem !important;
    line-height: 1.25 !important;
    white-space: normal !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
  }

  body.rm2026-header-active .rm2026-header__actions {
    min-width: 190px;
    gap: 10px;
  }

  body.rm2026-header-active .rm2026-header__search-toggle {
    display: inline-flex !important;
    flex: 0 0 42px;
  }

  body.rm2026-header-active .rm2026-header__cta {
    width: auto !important;
    min-width: 142px !important;
    padding: 11px 16px !important;
    border-radius: 15px !important;
  }

  body.rm2026-header-active .rm2026-header__cta span {
    display: inline !important;
  }
}

/* Tablet y portátil pequeño: usar hamburguesa antes */
@media (max-width: 1240px) {
  body.rm2026-header-active {
    --rm2026-header-h: 76px;
  }

  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: 52px minmax(0, 1fr) 52px !important;
    width: min(100% - 28px, 1180px) !important;
    min-height: 76px !important;
    gap: 10px !important;
  }

  body.rm2026-header-active .rm2026-header__toggle {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-direction: column !important;
    gap: 6px !important;
    width: 52px !important;
    height: 52px !important;
    border: 2px solid rgba(255, 255, 255, 0.88) !important;
    border-radius: 16px !important;
    background: rgba(255, 255, 255, 0.08) !important;
    color: #ffffff !important;
    cursor: pointer !important;
  }

  body.rm2026-header-active .rm2026-header__toggle span {
    display: block !important;
    width: 24px !important;
    height: 2px !important;
    border-radius: 999px !important;
    background: currentColor !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    justify-self: center !important;
    font-size: clamp(1.38rem, 4vw, 1.9rem) !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    font-size: 0.58rem !important;
    letter-spacing: 0.12em !important;
  }

  body.rm2026-header-active .rm2026-header__nav,
  body.rm2026-header-active .rm2026-header__search-toggle {
    display: none !important;
  }

  body.rm2026-header-active .rm2026-header__actions {
    justify-self: end !important;
  }

  body.rm2026-header-active .rm2026-header__cta {
    width: 52px !important;
    min-width: 52px !important;
    height: 52px !important;
    padding: 0 !important;
    border-radius: 16px !important;
  }

  body.rm2026-header-active .rm2026-header__cta span {
    display: none !important;
  }
}

/* Drawer móvil refinado */
body.rm2026-header-active .rm2026-header__overlay[hidden] {
  display: none !important;
}

body.rm2026-header-active.rm2026-menu-open .rm2026-header__overlay {
  display: block !important;
  opacity: 1 !important;
  pointer-events: auto !important;
}

body.rm2026-header-active .rm2026-header__drawer {
  width: min(390px, 92vw) !important;
}

body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer {
  transform: translateX(0) !important;
}

body.rm2026-header-active .rm2026-header__drawer-nav a {
  font-size: 1.04rem !important;
}

body.rm2026-header-active .rm2026-header__drawer-submenu a {
  font-size: 0.95rem !important;
}

/* Móvil pequeño */
@media (max-width: 430px) {
  body.rm2026-header-active {
    --rm2026-header-h: 72px;
  }

  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: 48px minmax(0, 1fr) 48px !important;
    width: min(100% - 22px, 1180px) !important;
    min-height: 72px !important;
  }

  body.rm2026-header-active .rm2026-header__toggle,
  body.rm2026-header-active .rm2026-header__cta {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    border-radius: 15px !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    font-size: clamp(1.24rem, 6.2vw, 1.72rem) !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    display: none !important;
  }
}
/* ==========================================================
   RM2026 Header — Ajuste V3 refinamiento visual
   Hamburguesa, buscador, drawer, destacados y submenús
   ========================================================== */

/* Hamburguesa visible y premium */
body.rm2026-header-active .rm2026-header__toggle {
  position: relative !important;
  overflow: hidden !important;
  background:
    linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0.08)),
    rgba(11, 47, 107, 0.24) !important;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,0.18), 0 8px 18px rgba(15,23,42,0.16) !important;
}

body.rm2026-header-active .rm2026-header__toggle span {
  display: none !important;
}

body.rm2026-header-active .rm2026-header__toggle::before {
  content: "" !important;
  display: block !important;
  width: 27px !important;
  height: 20px !important;
  background:
    linear-gradient(#ffffff, #ffffff) 0 0 / 27px 3px no-repeat,
    linear-gradient(#ffffff, #ffffff) 0 8px / 27px 3px no-repeat,
    linear-gradient(#ffffff, #ffffff) 0 16px / 27px 3px no-repeat !important;
  border-radius: 999px !important;
}

/* Marca del drawer más premium */
body.rm2026-header-active .rm2026-header__drawer-brand {
  justify-items: start !important;
  text-align: left !important;
}

body.rm2026-header-active .rm2026-header__drawer-brand .rm2026-header__brand-kicker {
  display: block !important;
  margin-bottom: 4px !important;
  color: rgba(255,255,255,0.82) !important;
  font-size: 0.68rem !important;
  font-weight: 850 !important;
  letter-spacing: 0.13em !important;
  text-transform: uppercase !important;
}

body.rm2026-header-active .rm2026-header__drawer-brand .rm2026-header__brand-name {
  color: #ffffff !important;
  font-size: clamp(1.42rem, 5.4vw, 1.86rem) !important;
  font-weight: 750 !important;
  letter-spacing: -0.04em !important;
}

/* Lupa desktop visible */
body.rm2026-header-active .rm2026-header__search-toggle {
  color: #ffffff !important;
}

body.rm2026-header-active .rm2026-header__search-toggle svg {
  display: block !important;
  width: 23px !important;
  height: 23px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.rm2026-header-active .rm2026-header__search-toggle svg path {
  fill: #ffffff !important;
  opacity: 1 !important;
}

/* Lupa móvil más visible */
body.rm2026-header-active .rm2026-header__drawer-search button {
  width: 64px !important;
  color: #ffffff !important;
}

body.rm2026-header-active .rm2026-header__drawer-search button svg {
  display: block !important;
  width: 30px !important;
  height: 30px !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.rm2026-header-active .rm2026-header__drawer-search button svg path {
  fill: #ffffff !important;
}

/* Destacados dentro del menú móvil */
body.rm2026-header-active .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured {
  position: relative !important;
  min-height: 52px !important;
  margin: 4px 0 !important;
  padding: 12px 14px !important;
  border: 1px solid rgba(183, 121, 31, 0.58) !important;
  border-radius: 16px !important;
  background: rgba(255,255,255,0.10) !important;
  color: #ffffff !important;
  font-weight: 850 !important;
}

body.rm2026-header-active .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured:hover,
body.rm2026-header-active .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured:focus-visible {
  background: rgba(255,255,255,0.16) !important;
}

/* Quitar bloque inferior de CTAs si aún existe en caché */
body.rm2026-header-active .rm2026-header__drawer-cta {
  display: none !important;
}

/* Drawer algo más cómodo al no llevar CTAs fijos */
body.rm2026-header-active .rm2026-header__drawer-nav {
  padding-bottom: calc(28px + env(safe-area-inset-bottom)) !important;
}

/* Botones de desplegable algo menos pesados */
body.rm2026-header-active .rm2026-header__drawer-row {
  grid-template-columns: minmax(0, 1fr) 44px !important;
}

body.rm2026-header-active .rm2026-header__drawer-row button {
  width: 44px !important;
  height: 44px !important;
  border-radius: 13px !important;
}

/* Submenús desktop más anchos */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__submenu {
    width: 390px !important;
  }

  body.rm2026-header-active .rm2026-header__submenu a {
    white-space: normal !important;
    font-size: 0.95rem !important;
    line-height: 1.28 !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7) .rm2026-header__submenu {
    right: 0 !important;
    left: auto !important;
  }
}

/* Móvil: evitar que el texto de marca quede pobre */
@media (max-width: 430px) {
  body.rm2026-header-active .rm2026-header__drawer-brand .rm2026-header__brand-kicker {
    display: block !important;
    font-size: 0.62rem !important;
  }

  body.rm2026-header-active .rm2026-header__drawer-brand .rm2026-header__brand-name {
    font-size: 1.46rem !important;
  }
}
/* ==========================================================
   RM2026 Header — Ajuste V4 Desktop / Tablet
   Refinamiento PC, escritorio medio y tablet horizontal
   ========================================================== */

/* Desktop amplio: header más equilibrado */
@media (min-width: 1361px) {
  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: minmax(260px, auto) minmax(0, 1fr) auto !important;
    width: min(1360px, calc(100% - 56px)) !important;
    min-height: 78px !important;
    gap: 28px !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    font-size: clamp(1.55rem, 1.7vw, 2.05rem) !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    font-size: 0.68rem !important;
    letter-spacing: 0.14em !important;
  }

  body.rm2026-header-active .rm2026-header__nav-list {
    gap: 6px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    padding: 10px 11px !important;
    font-size: 0.96rem !important;
    font-weight: 760 !important;
  }

  body.rm2026-header-active .rm2026-header__actions {
    gap: 12px !important;
    min-width: 246px !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle {
    width: 46px !important;
    height: 46px !important;
    border-radius: 15px !important;
  }

  body.rm2026-header-active .rm2026-header__cta {
    min-width: 176px !important;
    min-height: 46px !important;
    padding: 12px 18px !important;
    border-radius: 16px !important;
    font-size: 0.96rem !important;
  }

  body.rm2026-header-active .rm2026-header__cta span {
    display: inline !important;
  }
}

/* Desktop normal: evitar compresión */
@media (min-width: 1241px) and (max-width: 1360px) {
  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: minmax(238px, auto) minmax(0, 1fr) auto !important;
    width: min(1280px, calc(100% - 44px)) !important;
    min-height: 76px !important;
    gap: 20px !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    font-size: clamp(1.42rem, 1.55vw, 1.86rem) !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    font-size: 0.62rem !important;
    letter-spacing: 0.13em !important;
  }

  body.rm2026-header-active .rm2026-header__nav-list {
    gap: 2px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    padding: 10px 8px !important;
    font-size: 0.9rem !important;
    font-weight: 760 !important;
  }

  body.rm2026-header-active .rm2026-header__actions {
    gap: 10px !important;
    min-width: 214px !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle {
    width: 44px !important;
    height: 44px !important;
    border-radius: 15px !important;
  }

  body.rm2026-header-active .rm2026-header__cta {
    min-width: 156px !important;
    min-height: 44px !important;
    padding: 11px 15px !important;
    border-radius: 15px !important;
    font-size: 0.92rem !important;
  }

  body.rm2026-header-active .rm2026-header__cta span {
    display: inline !important;
  }
}

/* Submenús desktop: más legibles y premium */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__nav-item {
    position: relative !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle {
    width: 24px !important;
    height: 38px !important;
    margin-left: -4px !important;
    border: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(255, 255, 255, 0.86) !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle span {
    font-size: 0.76rem !important;
  }

  body.rm2026-header-active .rm2026-header__submenu {
    top: calc(100% + 12px) !important;
    width: 410px !important;
    max-width: min(410px, calc(100vw - 32px)) !important;
    padding: 14px !important;
    border-radius: 20px !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255,255,255,0.08), transparent 32%),
      linear-gradient(180deg, #0b2f6b 0%, #08265a 100%) !important;
    box-shadow: 0 22px 48px rgba(15, 23, 42, 0.30) !important;
  }

  body.rm2026-header-active .rm2026-header__submenu a {
    min-height: 44px !important;
    padding: 11px 14px !important;
    border-radius: 13px !important;
    font-size: 0.95rem !important;
    font-weight: 720 !important;
    line-height: 1.28 !important;
    white-space: normal !important;
    word-break: normal !important;
    overflow-wrap: normal !important;
  }

  body.rm2026-header-active .rm2026-header__submenu a:hover,
  body.rm2026-header-active .rm2026-header__submenu a:focus-visible {
    background: rgba(255, 255, 255, 0.13) !important;
  }

  /* Servicios: desplegable centrado */
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(2) .rm2026-header__submenu {
    left: 50% !important;
    transform: translate(-50%, 6px) !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(2):hover > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(2):focus-within > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(2).is-submenu-open > .rm2026-header__submenu {
    transform: translate(-50%, 0) !important;
  }

  /* Astrología: desplegable centrado */
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(5) .rm2026-header__submenu {
    left: 50% !important;
    transform: translate(-50%, 6px) !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(5):hover > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(5):focus-within > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(5).is-submenu-open > .rm2026-header__submenu {
    transform: translate(-50%, 0) !important;
  }

  /* Tarot: evitar que se salga por la derecha */
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7) .rm2026-header__submenu {
    right: 0 !important;
    left: auto !important;
    transform: translateY(6px) !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7):hover > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7):focus-within > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7).is-submenu-open > .rm2026-header__submenu {
    transform: translateY(0) !important;
  }
}

/* Buscador desktop: panel más compacto y refinado */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__search-panel {
    padding: 14px 20px !important;
    background:
      linear-gradient(180deg, rgba(11,47,107,0.98), rgba(8,38,90,0.98)) !important;
  }

  body.rm2026-header-active .rm2026-header__search-form {
    width: min(760px, 100%) !important;
    height: 48px !important;
    border-radius: 16px !important;
  }

  body.rm2026-header-active .rm2026-header__search-form input {
    height: 48px !important;
    font-size: 0.98rem !important;
  }

  body.rm2026-header-active .rm2026-header__search-form button {
    width: 56px !important;
  }

  body.rm2026-header-active .rm2026-header__search-form button svg {
    width: 23px !important;
    height: 23px !important;
  }

  body.rm2026-header-active .rm2026-header__search-form button svg path {
    fill: #0b2f6b !important;
  }
}

/* Tablet horizontal y portátil pequeño: hamburguesa más pronto */
@media (min-width: 960px) and (max-width: 1240px) {
  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: 54px minmax(0, 1fr) 54px !important;
    width: min(100% - 36px, 1180px) !important;
    min-height: 76px !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    font-size: clamp(1.6rem, 2.8vw, 2rem) !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    display: block !important;
    font-size: 0.62rem !important;
  }

  body.rm2026-header-active .rm2026-header__toggle,
  body.rm2026-header-active .rm2026-header__cta {
    width: 54px !important;
    min-width: 54px !important;
    height: 54px !important;
  }
}

/* Admin bar en escritorio: mantener alineación */
body.admin-bar.rm2026-header-active .rm2026-header {
  top: 32px !important;
}

@media (max-width: 782px) {
  body.admin-bar.rm2026-header-active .rm2026-header {
    top: 46px !important;
  }
}
/* ==========================================================
   RM2026 Header — Ajuste V5 hamburguesa + buscador visible
   ========================================================== */

/* Hamburguesa móvil/tablet con icono real */
body.rm2026-header-active .rm2026-header__toggle {
  background:
    linear-gradient(180deg, rgba(255,255,255,0.20), rgba(255,255,255,0.08)),
    rgba(11, 47, 107, 0.34) !important;
  border: 2px solid rgba(255,255,255,0.92) !important;
  box-shadow:
    inset 0 0 0 1px rgba(255,255,255,0.16),
    0 10px 22px rgba(15,23,42,0.18) !important;
  color: #ffffff !important;
}

body.rm2026-header-active .rm2026-header__toggle::before {
  display: none !important;
  content: none !important;
}

body.rm2026-header-active .rm2026-header__toggle span {
  display: none !important;
}

body.rm2026-header-active .rm2026-header__hamburger-icon {
  display: block !important;
  width: 29px !important;
  height: 29px !important;
  color: #ffffff !important;
  fill: #ffffff !important;
  opacity: 1 !important;
  visibility: visible !important;
}

body.rm2026-header-active .rm2026-header__hamburger-icon path {
  fill: #ffffff !important;
  opacity: 1 !important;
}

/* Buscador desktop: que se entienda como buscador */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__search-toggle {
    width: auto !important;
    min-width: 108px !important;
    height: 44px !important;
    padding: 0 15px !important;
    gap: 8px !important;
    border: 1px solid rgba(255,255,255,0.34) !important;
    border-radius: 15px !important;
    background: rgba(255,255,255,0.11) !important;
    color: #ffffff !important;
    box-shadow: inset 0 0 0 1px rgba(255,255,255,0.08) !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle:hover,
  body.rm2026-header-active .rm2026-header__search-toggle[aria-expanded="true"] {
    background: rgba(255,255,255,0.18) !important;
    border-color: rgba(255,255,255,0.52) !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle svg {
    display: block !important;
    width: 20px !important;
    height: 20px !important;
    color: #ffffff !important;
    fill: #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle svg path {
    fill: #ffffff !important;
    opacity: 1 !important;
  }

  body.rm2026-header-active .rm2026-header__search-label {
    display: inline-block !important;
    color: #ffffff !important;
    font-size: 0.92rem !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }

  body.rm2026-header-active .rm2026-header__actions {
    min-width: 300px !important;
  }
}

/* En tablet/móvil el buscador exterior no se muestra: va dentro del panel */
@media (max-width: 1240px) {
  body.rm2026-header-active .rm2026-header__search-label {
    display: none !important;
  }
}
/* ==========================================================
   RM2026 Header — Ajuste V7 final
   Carets desktop + hamburguesa + logo + tarjetas drawer
   ========================================================== */

/* 1) Desktop: corregir caret/flecha de desplegables */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__nav-list {
    gap: 10px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item {
    display: inline-flex !important;
    align-items: center !important;
    gap: 3px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item--has-submenu > a {
    padding-right: 4px !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle {
    position: static !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex: 0 0 20px !important;
    width: 20px !important;
    height: 34px !important;
    margin: 0 2px 0 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 8px !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(255, 255, 255, 0.82) !important;
    transform: none !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle span {
    display: block !important;
    width: auto !important;
    height: auto !important;
    font-size: 0.72rem !important;
    line-height: 1 !important;
    transform-origin: 50% 50% !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item.is-submenu-open > .rm2026-header__submenu-toggle span,
  body.rm2026-header-active .rm2026-header__nav-item:focus-within > .rm2026-header__submenu-toggle span,
  body.rm2026-header-active .rm2026-header__nav-item:hover > .rm2026-header__submenu-toggle span {
    transform: rotate(180deg) !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    padding-left: 8px !important;
    padding-right: 8px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(6) {
    margin-right: 6px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7) {
    margin-left: 4px !important;
  }
}

/* 2) Logo textual desktop: limpio, compacto y premium */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__brand {
    display: grid !important;
    gap: 3px !important;
    justify-items: start !important;
    align-items: center !important;
    text-align: left !important;
    font-size: clamp(1.42rem, 1.5vw, 1.86rem) !important;
    line-height: 1 !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    display: block !important;
    color: rgba(255, 255, 255, 0.84) !important;
    font-size: 0.62rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.15em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
  }

  body.rm2026-header-active .rm2026-header__brand-name {
    display: block !important;
    color: #ffffff !important;
    font-size: inherit !important;
    font-weight: 780 !important;
    letter-spacing: -0.045em !important;
    line-height: 1 !important;
  }
}

/* 3) Header móvil cerrado: descriptor oculto, marca legible */
@media (max-width: 1240px) {
  body.rm2026-header-active .rm2026-header__brand {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    gap: 0 !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    display: none !important;
  }

  body.rm2026-header-active .rm2026-header__brand-name {
    display: block !important;
    color: #ffffff !important;
    font-size: clamp(1.42rem, 6.2vw, 1.92rem) !important;
    font-weight: 780 !important;
    letter-spacing: -0.045em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

/* 4) Hamburguesa móvil/tablet: evitar botón vacío */
@media (max-width: 1240px) {
  body.rm2026-header-active .rm2026-header__toggle {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 52px !important;
    min-width: 52px !important;
    height: 52px !important;
    border: 2px solid rgba(255, 255, 255, 0.9) !important;
    border-radius: 16px !important;
    background:
      linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0.07)),
      rgba(11, 47, 107, 0.28) !important;
    color: #ffffff !important;
    box-shadow:
      inset 0 0 0 1px rgba(255,255,255,0.12),
      0 8px 18px rgba(15,23,42,0.16) !important;
    overflow: hidden !important;
  }

  body.rm2026-header-active .rm2026-header__toggle span,
  body.rm2026-header-active .rm2026-header__hamburger-icon {
    display: none !important;
  }

  body.rm2026-header-active .rm2026-header__toggle::before {
    content: "" !important;
    display: block !important;
    width: 27px !important;
    height: 21px !important;
    background:
      linear-gradient(#ffffff, #ffffff) 0 0 / 27px 3px no-repeat,
      linear-gradient(#ffffff, #ffffff) 0 9px / 27px 3px no-repeat,
      linear-gradient(#ffffff, #ffffff) 0 18px / 27px 3px no-repeat !important;
    opacity: 1 !important;
    visibility: visible !important;
  }

  body.rm2026-header-active .rm2026-header__cta {
    width: 52px !important;
    min-width: 52px !important;
    height: 52px !important;
    border-radius: 16px !important;
  }
}

@media (max-width: 430px) {
  body.rm2026-header-active .rm2026-header__toggle,
  body.rm2026-header-active .rm2026-header__cta {
    width: 48px !important;
    min-width: 48px !important;
    height: 48px !important;
    border-radius: 15px !important;
  }

  body.rm2026-header-active .rm2026-header__toggle::before {
    width: 25px !important;
    height: 20px !important;
    background:
      linear-gradient(#ffffff, #ffffff) 0 0 / 25px 3px no-repeat,
      linear-gradient(#ffffff, #ffffff) 0 8.5px / 25px 3px no-repeat,
      linear-gradient(#ffffff, #ffffff) 0 17px / 25px 3px no-repeat !important;
  }
}

/* 5) Drawer: logo textual abierto con descriptor visible */
body.rm2026-header-active .rm2026-header__drawer-brand {
  display: grid !important;
  gap: 5px !important;
  justify-items: start !important;
  align-items: center !important;
  text-align: left !important;
}

body.rm2026-header-active .rm2026-header__drawer-brand .rm2026-header__brand-kicker {
  display: block !important;
  color: rgba(255, 255, 255, 0.82) !important;
  font-size: 0.66rem !important;
  font-weight: 850 !important;
  letter-spacing: 0.14em !important;
  line-height: 1 !important;
  text-transform: uppercase !important;
}

body.rm2026-header-active .rm2026-header__drawer-brand .rm2026-header__brand-name {
  display: block !important;
  color: #ffffff !important;
  font-size: clamp(1.46rem, 5.4vw, 1.86rem) !important;
  font-weight: 780 !important;
  letter-spacing: -0.045em !important;
  line-height: 1 !important;
}

/* 6) Drawer: tarjetas destacadas en vertical, sin columnas competidoras */
body.rm2026-header-active .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: center !important;
  gap: 5px !important;
  min-height: 74px !important;
  margin: 10px 0 12px !important;
  padding: 15px 18px !important;
  border-radius: 18px !important;
  background: rgba(255, 255, 255, 0.09) !important;
  color: #ffffff !important;
  text-align: left !important;
}

body.rm2026-header-active .rm2026-header__drawer-link--ruth {
  border: 1px solid rgba(22, 101, 52, 0.78) !important;
  box-shadow: inset 4px 0 0 #166534 !important;
}

body.rm2026-header-active .rm2026-header__drawer-link--gabinete {
  border: 1px solid rgba(183, 121, 31, 0.68) !important;
  box-shadow: inset 4px 0 0 #b7791f !important;
}

body.rm2026-header-active .rm2026-header__drawer-link-label {
  display: block !important;
  width: 100% !important;
  color: #ffffff !important;
  font-size: 1.18rem !important;
  font-weight: 820 !important;
  line-height: 1.18 !important;
  white-space: normal !important;
}

body.rm2026-header-active .rm2026-header__drawer-link-note {
  display: block !important;
  width: 100% !important;
  color: rgba(255, 255, 255, 0.76) !important;
  font-size: 0.86rem !important;
  font-weight: 620 !important;
  line-height: 1.22 !important;
  white-space: normal !important;
}

@media (max-width: 430px) {
  body.rm2026-header-active .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured {
    min-height: 70px !important;
    padding: 14px 16px !important;
  }

  body.rm2026-header-active .rm2026-header__drawer-link-label {
    font-size: 1.08rem !important;
  }

  body.rm2026-header-active .rm2026-header__drawer-link-note {
    font-size: 0.8rem !important;
  }
}

/* 7) Drawer: bajar peso visual general sin perder legibilidad */
body.rm2026-header-active .rm2026-header__drawer-nav a {
  font-size: 1.18rem !important;
  font-weight: 740 !important;
}

body.rm2026-header-active .rm2026-header__drawer-submenu a {
  font-size: 0.98rem !important;
  font-weight: 660 !important;
}

/* 8) Buscador desktop: mantener secundario y claro */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__search-toggle {
    min-width: 104px !important;
    height: 42px !important;
    padding: 0 14px !important;
    border-radius: 14px !important;
  }

  body.rm2026-header-active .rm2026-header__search-label {
    font-size: 0.88rem !important;
    font-weight: 780 !important;
  }
}
/* ==========================================================
   RM2026 Header — FIX desktop caret desplegables
   Corrige posición del triángulo y separación entre items
   ========================================================== */

@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__nav-list {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    column-gap: 16px !important;
    row-gap: 0 !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: flex-start !important;
    gap: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    white-space: nowrap !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item--has-submenu {
    display: inline-grid !important;
    grid-template-columns: max-content 14px !important;
    align-items: center !important;
    column-gap: 4px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    display: inline-flex !important;
    align-items: center !important;
    min-height: 42px !important;
    margin: 0 !important;
    padding: 10px 0 !important;
    border-radius: 12px !important;
    white-space: nowrap !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item--has-submenu > a {
    grid-column: 1 !important;
    padding-right: 0 !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle {
    grid-column: 2 !important;
    position: relative !important;
    top: 0 !important;
    right: auto !important;
    left: auto !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    width: 14px !important;
    min-width: 14px !important;
    max-width: 14px !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: transparent !important;
    box-shadow: none !important;
    color: rgba(255, 255, 255, 0.84) !important;
    line-height: 1 !important;
    transform: none !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle span {
    display: block !important;
    width: 14px !important;
    height: 14px !important;
    margin: 0 !important;
    padding: 0 !important;
    color: rgba(255, 255, 255, 0.84) !important;
    font-size: 0.68rem !important;
    line-height: 14px !important;
    text-align: center !important;
    transform-origin: 50% 50% !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item.is-submenu-open > .rm2026-header__submenu-toggle span,
  body.rm2026-header-active .rm2026-header__nav-item:focus-within > .rm2026-header__submenu-toggle span,
  body.rm2026-header-active .rm2026-header__nav-item:hover > .rm2026-header__submenu-toggle span {
    transform: rotate(180deg) !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(6) {
    margin-right: 10px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7) {
    margin-left: 6px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(6) > a {
    padding-right: 2px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:nth-child(7) > a {
    padding-left: 2px !important;
  }
}
/* ==========================================================
   RM2026 Header — FIX icono hamburguesa móvil
   Objetivo: mostrar tres puntos verticales blancos en móvil/tablet
   ========================================================== */

@media (max-width: 1240px) {
  body.rm2026-header-active .rm2026-header__toggle {
    position: relative !important;
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;
    overflow: hidden !important;
    color: #ffffff !important;
  }

  body.rm2026-header-active .rm2026-header__toggle span,
  body.rm2026-header-active .rm2026-header__hamburger-icon {
    display: none !important;
    opacity: 0 !important;
    visibility: hidden !important;
  }

  body.rm2026-header-active .rm2026-header__toggle::after {
    display: none !important;
    content: none !important;
  }

  body.rm2026-header-active .rm2026-header__toggle::before {
    content: "" !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    display: block !important;
    width: 5px !important;
    height: 5px !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 999px !important;
    background: #ffffff !important;
    box-shadow:
      0 -9px 0 #ffffff,
      0 9px 0 #ffffff !important;
    opacity: 1 !important;
    visibility: visible !important;
    transform: translate(-50%, -50%) !important;
    z-index: 2 !important;
  }
}

@media (max-width: 430px) {
  body.rm2026-header-active .rm2026-header__toggle::before {
    width: 5px !important;
    height: 5px !important;
    box-shadow:
      0 -8px 0 #ffffff,
      0 8px 0 #ffffff !important;
  }
}
/* ==========================================================
   RM2026 Header — FIX desktop Chromium spacing
   Corrige menú comprimido en Chrome / Edge / Norton
   Sin afectar móvil ni tablet
   ========================================================== */

@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__bar {
    width: min(1560px, calc(100% - 48px)) !important;
    grid-template-columns: minmax(230px, auto) minmax(max-content, 1fr) max-content !important;
    gap: clamp(18px, 2vw, 34px) !important;
    overflow: visible !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    min-width: 230px !important;
    max-width: none !important;
  }

  body.rm2026-header-active .rm2026-header__nav {
    justify-self: center !important;
    min-width: max-content !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
  }

  body.rm2026-header-active .rm2026-header__nav-list {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: center !important;
    justify-content: center !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    column-gap: clamp(14px, 1.15vw, 22px) !important;
    row-gap: 0 !important;
    overflow: visible !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item {
    flex: 0 0 auto !important;
    min-width: max-content !important;
    width: auto !important;
    max-width: none !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    white-space: nowrap !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item--has-submenu {
    display: inline-flex !important;
    align-items: center !important;
    gap: 4px !important;
    min-width: max-content !important;
    max-width: none !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    flex: 0 0 auto !important;
    width: auto !important;
    min-width: max-content !important;
    max-width: none !important;
    padding: 10px 0 !important;
    font-size: 0.92rem !important;
    line-height: 1.1 !important;
    white-space: nowrap !important;
    overflow: visible !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle {
    flex: 0 0 14px !important;
    width: 14px !important;
    min-width: 14px !important;
    max-width: none !important;
    height: 34px !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
  }

  body.rm2026-header-active .rm2026-header__submenu-toggle span {
    width: 14px !important;
    min-width: 14px !important;
    max-width: none !important;
    text-align: center !important;
  }

  body.rm2026-header-active .rm2026-header__actions {
    flex: 0 0 auto !important;
    justify-self: end !important;
    min-width: max-content !important;
    width: auto !important;
    max-width: none !important;
    overflow: visible !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle {
    flex: 0 0 auto !important;
  }

  body.rm2026-header-active .rm2026-header__cta {
    flex: 0 0 auto !important;
    min-width: max-content !important;
    max-width: none !important;
  }
}

@media (min-width: 1241px) and (max-width: 1420px) {
  body.rm2026-header-active .rm2026-header__bar {
    width: min(100% - 32px, 1420px) !important;
    grid-template-columns: minmax(210px, auto) minmax(max-content, 1fr) max-content !important;
    gap: 18px !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    min-width: 210px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-list {
    column-gap: 12px !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item > a {
    font-size: 0.86rem !important;
  }

  body.rm2026-header-active .rm2026-header__search-toggle {
    min-width: 92px !important;
    padding-inline: 12px !important;
  }

  body.rm2026-header-active .rm2026-header__cta {
    padding-inline: 14px !important;
  }
}
/* ==========================================================
   RM2026 Header — FIX limpio final
   Texto móvil + submenús PC sin :is() y sin PHP en CSS
   ========================================================== */

/* 1) Mantener sin hueco blanco general bajo el header */
@media (max-width: 1240px) {
  body.rm2026-header-active .site-content,
  body.rm2026-header-active #content,
  body.rm2026-header-active .neve-main,
  body.rm2026-header-active .nv-content-wrap {
    padding-top: 0 !important;
    margin-top: 0 !important;
  }
}

/* 2) Home RM2026: dar aire real al hero solo en móvil */
@media (max-width: 767px) {
  body.rm2026-header-active.rm2026-active .rm2026-section--hero {
    padding-top: clamp(82px, 18vw, 112px) !important;
  }

  body.rm2026-header-active.rm2026-active .rm2026-section--hero .rm2026-container,
  body.rm2026-header-active.rm2026-active .rm2026-section--hero .rm2026-hero {
    margin-top: 0 !important;
  }
}

/* 3) Páginas antiguas/textuales: dar aire al primer texto sin tocar imágenes */
@media (max-width: 767px) {
  body.rm2026-header-active .entry-content > h1:first-child,
  body.rm2026-header-active .entry-content > h2:first-child,
  body.rm2026-header-active .entry-content > h3:first-child,
  body.rm2026-header-active .entry-content > p:first-child,
  body.rm2026-header-active .entry-content > ul:first-child,
  body.rm2026-header-active .entry-content > ol:first-child,
  body.rm2026-header-active .nv-content-wrap > h1:first-child,
  body.rm2026-header-active .nv-content-wrap > h2:first-child,
  body.rm2026-header-active .nv-content-wrap > h3:first-child,
  body.rm2026-header-active .rm-wrap > h1:first-child,
  body.rm2026-header-active .rm-wrap > h2:first-child,
  body.rm2026-header-active .rm-wrap > h3:first-child {
    margin-top: 0 !important;
    padding-top: clamp(24px, 7vw, 42px) !important;
  }

  body.rm2026-header-active .rm-wrap > .rm-hero:first-child {
    padding-top: clamp(28px, 7vw, 46px) !important;
  }

  body.rm2026-header-active .rm-wrap > .rm-hero:first-child .rm-h1,
  body.rm2026-header-active .rm-wrap > .rm-hero:first-child h1,
  body.rm2026-header-active .rm-wrap > .rm-hero:first-child h2 {
    margin-top: 0 !important;
  }
}

/* 4) Páginas que empiezan con imagen/hero: no crear franja blanca */
@media (max-width: 767px) {
  body.rm2026-header-active .entry-content > .wp-block-cover:first-child,
  body.rm2026-header-active .entry-content > .wp-block-image:first-child,
  body.rm2026-header-active .entry-content > figure:first-child,
  body.rm2026-header-active .entry-content > img:first-child,
  body.rm2026-header-active .entry-content > picture:first-child,
  body.rm2026-header-active .entry-content > .post-thumbnail:first-child,
  body.rm2026-header-active .entry-content > .category-header:first-child,
  body.rm2026-header-active .entry-content > .category-hero:first-child,
  body.rm2026-header-active .entry-content > .ha2026-hero:first-child,
  body.rm2026-header-active .entry-content > .ha2026-header:first-child,
  body.rm2026-header-active .entry-content > .rm-category-hero:first-child {
    margin-top: 0 !important;
    padding-top: 0 !important;
  }
}

/* 5) Desktop: puente invisible para que los submenús no desaparezcan */
@media (min-width: 1241px) {
  body.rm2026-header-active .rm2026-header__nav-item--has-submenu {
    position: relative !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item--has-submenu::after {
    content: "" !important;
    position: absolute !important;
    left: -18px !important;
    right: -18px !important;
    top: 100% !important;
    height: 24px !important;
    display: block !important;
    background: transparent !important;
    pointer-events: auto !important;
    z-index: 5 !important;
  }

  body.rm2026-header-active .rm2026-header__submenu {
    top: calc(100% + 6px) !important;
    z-index: 30 !important;
    pointer-events: none !important;
  }

  body.rm2026-header-active .rm2026-header__nav-item:hover > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item:focus-within > .rm2026-header__submenu,
  body.rm2026-header-active .rm2026-header__nav-item.is-submenu-open > .rm2026-header__submenu {
    pointer-events: auto !important;
  }

  body.rm2026-header-active .rm2026-header__submenu:hover {
    pointer-events: auto !important;
  }
}
/* ==========================================================
   RM2026 Header — PARCHE V8.2 MOZILLA / MOBILE FULL DRAWER
   Sustituye completamente los parches V8 / V8.1 anteriores.
   Motivo:
   - Firefox Android gestiona peor el drawer lateral con 92vw/390px,
     flex + transform + barras dinámicas del navegador.
   - En móvil se cambia a panel full-screen estable.
   - Se reducen tamaños del menú para evitar cortes y aspecto pesado.
   Archivo: /rm2026/assets/css/rm2026-header.css
   Colocar SIEMPRE al final del archivo.
   ========================================================== */

/* ==========================================================
   0) Control general de escalado dentro del header
   ========================================================== */

body.rm2026-header-active .rm2026-header,
body.rm2026-header-active .rm2026-header__drawer {
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
}

/* ==========================================================
   1) Header cerrado móvil/tablet: 3 columnas reales
   ========================================================== */

@media (max-width: 1240px) {
  body.rm2026-header-active {
    --rm2026-header-h: 76px;
  }

  body.rm2026-header-active .rm2026-header__bar {
    display: grid !important;
    grid-template-columns: 52px minmax(0, 1fr) 52px !important;
    align-items: center !important;
    gap: 10px !important;
    width: min(100% - 28px, 1180px) !important;
    min-height: var(--rm2026-header-h) !important;
    overflow: hidden !important;
  }

  body.rm2026-header-active .rm2026-header__toggle,
  body.rm2026-header-active .rm2026-header__cta {
    width: 52px !important;
    min-width: 52px !important;
    max-width: 52px !important;
    height: 52px !important;
    min-height: 52px !important;
    max-height: 52px !important;
    padding: 0 !important;
    flex: 0 0 52px !important;
  }

  body.rm2026-header-active .rm2026-header__brand {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    justify-self: center !important;
    text-align: center !important;
  }

  body.rm2026-header-active .rm2026-header__brand-kicker {
    display: none !important;
  }

  body.rm2026-header-active .rm2026-header__brand-name {
    display: block !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
    color: #ffffff !important;
    font-size: clamp(1.22rem, 5vw, 1.58rem) !important;
    font-weight: 780 !important;
    letter-spacing: -0.04em !important;
    line-height: 1 !important;
  }
}

@media (max-width: 430px) {
  body.rm2026-header-active {
    --rm2026-header-h: 72px;
  }

  body.rm2026-header-active .rm2026-header__bar {
    grid-template-columns: 48px minmax(0, 1fr) 48px !important;
    width: min(100% - 22px, 1180px) !important;
    min-height: var(--rm2026-header-h) !important;
    gap: 8px !important;
  }

  body.rm2026-header-active .rm2026-header__toggle,
  body.rm2026-header-active .rm2026-header__cta {
    width: 48px !important;
    min-width: 48px !important;
    max-width: 48px !important;
    height: 48px !important;
    min-height: 48px !important;
    max-height: 48px !important;
    flex-basis: 48px !important;
  }

  body.rm2026-header-active .rm2026-header__brand-name {
    font-size: clamp(1.12rem, 4.9vw, 1.42rem) !important;
  }
}

/* ==========================================================
   2) Drawer móvil: estrategia full-screen estable
   Se aplica solo en móvil real. En desktop/tablet grande se respeta
   el comportamiento actual.
   ========================================================== */

@media (max-width: 767px) {

  body.rm2026-header-active.rm2026-menu-open {
    overflow: hidden !important;
  }

  body.rm2026-header-active:not(.rm2026-menu-open) .rm2026-header__drawer {
    opacity: 0 !important;
    visibility: hidden !important;
    pointer-events: none !important;
    transform: translate3d(-105%, 0, 0) !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147483000 !important;
    display: block !important;
    width: 100vw !important;
    min-width: 100vw !important;
    max-width: 100vw !important;
    height: auto !important;
    min-height: 100vh !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 0 !important;
    border-right: 0 !important;
    background:
      radial-gradient(circle at 50% 0%, rgba(255, 255, 255, 0.08), transparent 34%),
      linear-gradient(180deg, var(--rm2026-header-blue, #185dc5) 0%, var(--rm2026-header-blue-night, #0b2f6b) 100%) !important;
    color: #ffffff !important;
    box-shadow: none !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
    -webkit-overflow-scrolling: touch !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
    transform: translate3d(0, 0, 0) !important;
    contain: none !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-head {
    position: sticky !important;
    top: 0 !important;
    z-index: 3 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 12px !important;
    width: 100% !important;
    min-height: 72px !important;
    margin: 0 !important;
    padding: 14px 18px !important;
    border-bottom: 3px solid var(--rm2026-header-gold, #b7791f) !important;
    background: linear-gradient(180deg, var(--rm2026-header-blue, #185dc5) 0%, var(--rm2026-header-blue-hover, #0f4da8) 100%) !important;
    box-sizing: border-box !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-brand {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    max-width: calc(100% - 60px) !important;
    overflow: hidden !important;
    text-align: left !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-brand .rm2026-header__brand-kicker {
    display: block !important;
    margin: 0 0 5px !important;
    color: rgba(255, 255, 255, 0.82) !important;
    font-size: 0.6rem !important;
    font-weight: 850 !important;
    letter-spacing: 0.13em !important;
    line-height: 1 !important;
    text-transform: uppercase !important;
    white-space: nowrap !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-brand .rm2026-header__brand-name {
    display: block !important;
    max-width: 100% !important;
    overflow: hidden !important;
    color: #ffffff !important;
    font-size: clamp(1.25rem, 5.1vw, 1.55rem) !important;
    font-weight: 780 !important;
    letter-spacing: -0.04em !important;
    line-height: 1 !important;
    white-space: nowrap !important;
    text-overflow: ellipsis !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-close {
    display: inline-flex !important;
    flex: 0 0 46px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 46px !important;
    height: 46px !important;
    min-width: 46px !important;
    min-height: 46px !important;
    margin: 0 !important;
    padding: 0 !important;
    border-radius: 14px !important;
    box-sizing: border-box !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-search {
    display: flex !important;
    width: calc(100% - 36px) !important;
    max-width: calc(100% - 36px) !important;
    min-height: 48px !important;
    margin: 16px 18px 12px !important;
    border-radius: 16px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-search input {
    display: block !important;
    flex: 1 1 auto !important;
    min-width: 0 !important;
    width: 100% !important;
    height: 48px !important;
    font-size: 16px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-search button {
    display: inline-flex !important;
    flex: 0 0 56px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 56px !important;
    min-width: 56px !important;
    height: 48px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    max-height: none !important;
    margin: 0 !important;
    padding: 4px 18px calc(28px + env(safe-area-inset-bottom)) !important;
    overflow: visible !important;
    box-sizing: border-box !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav ul {
    display: grid !important;
    gap: 3px !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
    list-style: none !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav li {
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    padding: 0 !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav a {
    display: flex !important;
    align-items: center !important;
    width: 100% !important;
    max-width: 100% !important;
    min-height: 44px !important;
    margin: 0 !important;
    padding: 9px 10px !important;
    border-radius: 13px !important;
    color: rgba(255, 255, 255, 0.96) !important;
    font-size: clamp(1rem, 4.4vw, 1.18rem) !important;
    font-weight: 720 !important;
    line-height: 1.18 !important;
    overflow-wrap: normal !important;
    word-break: normal !important;
    white-space: normal !important;
    box-sizing: border-box !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-row {
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 42px !important;
    align-items: center !important;
    gap: 8px !important;
    width: 100% !important;
    max-width: 100% !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-row > a {
    min-width: 0 !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-row button {
    display: inline-flex !important;
    flex: 0 0 42px !important;
    align-items: center !important;
    justify-content: center !important;
    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;
    border-radius: 13px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-submenu {
    display: none !important;
    margin: 3px 0 7px 10px !important;
    padding: 6px 0 6px 12px !important;
    border-left: 2px solid rgba(183, 121, 31, 0.75) !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu.is-submenu-open > .rm2026-header__drawer-submenu {
    display: grid !important;
    gap: 2px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-submenu a {
    min-height: 38px !important;
    padding: 7px 9px !important;
    font-size: clamp(0.92rem, 3.8vw, 1rem) !important;
    font-weight: 650 !important;
    line-height: 1.18 !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured {
    display: flex !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    justify-content: center !important;
    gap: 4px !important;
    min-height: 62px !important;
    margin: 7px 0 9px !important;
    padding: 12px 14px !important;
    border-radius: 16px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-link-label {
    display: block !important;
    width: 100% !important;
    font-size: clamp(1rem, 4.4vw, 1.16rem) !important;
    line-height: 1.16 !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-link-note {
    display: block !important;
    width: 100% !important;
    font-size: clamp(0.78rem, 3.4vw, 0.86rem) !important;
    line-height: 1.18 !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__overlay {
    display: none !important;
  }
}

/* ==========================================================
   3) Firefox Android: ajustes adicionales
   ========================================================== */

@-moz-document url-prefix() {
  @media (max-width: 767px) {
    body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer {
      display: block !important;
      width: 100vw !important;
      max-width: 100vw !important;
      min-height: 100vh !important;
      overflow-x: hidden !important;
      overflow-y: auto !important;
      transform: none !important;
    }

    body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav a {
      font-size: clamp(0.98rem, 4.1vw, 1.1rem) !important;
      min-height: 42px !important;
      line-height: 1.16 !important;
    }

    body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured {
      min-height: 60px !important;
    }

    body.rm2026-header-active .rm2026-header__brand-name {
      font-size: clamp(1.12rem, 4.7vw, 1.42rem) !important;
    }
  }
}

/* ==========================================================
   4) Móvil horizontal: compactar el menú
   ========================================================== */

@media (max-width: 767px) and (orientation: landscape) {
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-head {
    min-height: 60px !important;
    padding-top: 9px !important;
    padding-bottom: 9px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-search {
    margin-top: 10px !important;
    margin-bottom: 6px !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav a {
    min-height: 38px !important;
    padding-top: 7px !important;
    padding-bottom: 7px !important;
    font-size: 0.95rem !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-nav a.rm2026-header__drawer-link--featured {
    min-height: 54px !important;
  }
}

/* ==========================================================
   5) Movimiento reducido
   ========================================================== */

@media (prefers-reduced-motion: reduce) {
  body.rm2026-header-active .rm2026-header__drawer,
  body.rm2026-header-active .rm2026-header__overlay {
    transition: none !important;
  }
}

/* ==========================================================
   RM2026 Header — PARCHE V8.5 Submenús mobile controlados por JS
   Requiere V8.2 aplicado.
   Sustituye V8.4.
   Objetivo:
   - Los submenús NO quedan desplegados fijos al abrir el menú.
   - Los submenús sí pueden abrir/cerrar tocando su flecha.
   - Evita depender de :hover / :focus-within en navegadores móviles.
   Archivo: /rm2026/assets/css/rm2026-header.css
   Colocar al final del archivo.
   JS requerido: rm2026-header-submenus-v8-5.js
   ========================================================== */

@media (max-width: 767px) {
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-submenu,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu.is-submenu-open > .rm2026-header__drawer-submenu,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu:hover > .rm2026-header__drawer-submenu,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu:focus-within > .rm2026-header__drawer-submenu,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu:active > .rm2026-header__drawer-submenu {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    height: 0 !important;
    max-height: 0 !important;
    margin: 0 !important;
    padding: 0 !important;
    border: 0 !important;
    overflow: hidden !important;
    pointer-events: none !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu.rm2026-mobile-submenu-open > .rm2026-header__drawer-submenu {
    display: grid !important;
    visibility: visible !important;
    opacity: 1 !important;
    height: auto !important;
    max-height: none !important;
    gap: 2px !important;
    margin: 3px 0 7px 10px !important;
    padding: 6px 0 6px 12px !important;
    border-left: 2px solid rgba(183, 121, 31, 0.75) !important;
    overflow: visible !important;
    pointer-events: auto !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu.is-submenu-open > .rm2026-header__drawer-row button span,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu:hover > .rm2026-header__drawer-row button span,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu:focus-within > .rm2026-header__drawer-row button span,
  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu:active > .rm2026-header__drawer-row button span {
    transform: none !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu.rm2026-mobile-submenu-open > .rm2026-header__drawer-row button span {
    transform: rotate(180deg) !important;
  }

  body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-submenu a {
    min-height: 38px !important;
    padding: 7px 9px !important;
    font-size: clamp(0.88rem, 3.6vw, 0.98rem) !important;
    font-weight: 650 !important;
    line-height: 1.16 !important;
  }
}

@-moz-document url-prefix() {
  @media (max-width: 767px) {
    body.rm2026-header-active.rm2026-menu-open .rm2026-header__drawer-item--has-submenu.rm2026-mobile-submenu-open > .rm2026-header__drawer-submenu {
      display: grid !important;
      visibility: visible !important;
      opacity: 1 !important;
      height: auto !important;
      max-height: none !important;
      overflow: visible !important;
      pointer-events: auto !important;
    }
  }
}
