.avx-gallery{ display:flex;flex-wrap:wrap;gap:28px;align-items:flex-start; }
.avx-drawer{
  --d-dark:#222222; --d-lime:#DBF84C; --d-purple:#551D87;
  --d-ink:#4F4F4F; --d-section:#454545; --d-chev:#9D9D9D;
  --d-bar:#FAF6FD; --d-bg-list:#F4F4F4; --d-divider:#ececec;
  --d-foot-text:#B5B5B5; --d-social:#C9B6E4;
  width:360px; max-width:100%;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
  background:#fff; overflow:hidden; -webkit-font-smoothing:antialiased;
  box-sizing:border-box; position:relative;
}
.avx-drawer *,.avx-drawer *::before,.avx-drawer *::after{ box-sizing:border-box; }

/* CABECERA */
.avx-d__head{ background:var(--d-dark); height:64px; padding:0 20px; display:flex; align-items:center; justify-content:space-between; }
.avx-d__actions{ display:flex;align-items:center;gap:16px;margin-left:auto; }
.avx-d__icon-btn{ background:none;border:none;padding:0;cursor:pointer;color:#fff;display:flex;align-items:center;justify-content:center; }
.avx-d__icon-btn--close{ width:30px;height:30px;border:1.6px solid #fff;border-radius:50%; }
.avx-d__icon-btn--close svg{ width:14px;height:14px; }

/* BARRA DE TÍTULO (lavanda) */
.avx-sec__head{ background:var(--d-bar); padding:13px 20px; display:flex;align-items:center;justify-content:space-between; border-bottom:1px solid #DCC5F2; }
.avx-sec--acc .avx-sec__head{ border-top:1px solid #DCC5F2; }
.avx-sec__head--back{ justify-content:flex-start; gap:8px; }
.avx-back{ background:none;border:none;padding:0;cursor:pointer;display:flex;align-items:center;color:var(--d-section); }
.avx-back svg{ width:20px;height:20px; }
.avx-sec__title{ font-family:'Visby CF',sans-serif; font-size:17px; font-weight:600; line-height:28px; letter-spacing:-0.01em; color:var(--d-section); white-space:nowrap; }
.avx-sec__title--page{ font-size:18px; }

/* FILAS (sobre #F4F4F4) */
.avx-nav{ list-style:none;margin:0;padding:6px 0;background:var(--d-bg-list); }
.avx-row{ width:100%;display:flex;align-items:center;gap:14px;background:none;border:none;min-height:44px;padding:0 20px;cursor:pointer;text-align:left;font-family:inherit; }
.avx-row__icon{ flex:0 0 auto;width:24px;height:24px;color:var(--d-purple);display:flex;align-items:center;justify-content:center; }
.avx-row__icon svg{ width:100%;height:100%;display:block; }
.avx-row__label{ flex:1;font-size:16px;font-weight:500;color:var(--d-ink); }
.avx-row__label b{ color:var(--d-section);font-weight:600; }
.avx-row__chev{ flex:0 0 auto;color:var(--d-chev);display:flex;align-items:center; }
.avx-row__chev svg{ width:18px;height:18px; }
.avx-row--all .avx-row__label{ font-weight:600;color:var(--d-section); }
.avx-nav__label{ list-style:none;padding:10px 20px 4px;font-size:13px;font-weight:600;color:#6D6D6D; }

/* TOGGLE MODO OSCURO */
.avx-toggle{ flex:0 0 auto;display:inline-flex;align-items:center;gap:4px;background:#EDEDED;border:1px solid #ADADAD;border-radius:100px;height:40px;padding:4px;cursor:pointer;font-family:inherit; }
.avx-toggle__knob{ width:32px;height:32px;border-radius:50%;background:var(--d-purple);display:flex;align-items:center;justify-content:center;flex:0 0 auto; }
.avx-toggle__knob svg{ width:17px;height:17px;color:#EDE3F7; }
.avx-toggle__label{ font-size:14px;line-height:18px;font-weight:500;color:#545454;white-space:nowrap;padding-right:6px; }

/* FOOTER */
.avx-d__foot{ background:var(--d-dark);padding:22px 20px 26px; }
.avx-d__brand{ display:flex;align-items:center;gap:10px;margin-bottom:16px; }
.avx-d__brand-text{ font-family:'Visby CF',sans-serif;font-weight:400;font-size:17px;line-height:1.2;color:#fff; }
.avx-d__brand-x{ width:26px;height:26px;flex:0 0 auto; }
.avx-d__rule{ height:1px;background:rgba(255,255,255,.18);margin:0 0 16px; }
.avx-d__follow{ font-size:13px;color:var(--d-foot-text);margin:0 0 14px; }
.avx-social{ list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:14px; }
.avx-social li{ display:flex;align-items:center;gap:12px; }
.avx-social__icon{ width:22px;height:22px;color:var(--d-social);display:flex;align-items:center;justify-content:center;flex:0 0 auto; }
.avx-social__icon svg{ width:100%;height:100%; }
.avx-social__label{ font-size:14px;color:#fff; }

/* ── Protección contra estilos globales del tema (Elementor Pro) ─────────── */
/* Colores exactos del CSS del HTML del drawer (variables --d-*) */

/* Fondo de listas: #F4F4F4, nunca lima */
#avxDrawer .avx-nav{
  background:#F4F4F4 !important; /* --d-bg-list */
}

/* Barras de título de sección: fondo lavanda */
#avxDrawer .avx-sec__head{
  background:#FAF6FD !important; /* --d-bar */
  border-bottom:1px solid #DCC5F2 !important;
}
#avxDrawer .avx-sec--acc .avx-sec__head{
  border-top:1px solid #DCC5F2 !important;
}

/* Título de sección (EXPLORAR / ACCESOS RÁPIDOS): Visby CF, 17px, #454545 */
#avxDrawer .avx-sec__title{
  font-family:'Visby CF',sans-serif !important;
  font-size:17px !important;
  font-weight:600 !important;
  line-height:28px !important;
  letter-spacing:-0.01em !important;
  color:#454545 !important; /* --d-section */
  text-transform:none !important;
  white-space:nowrap !important;
}
#avxDrawer .avx-sec__title--page{ font-size:18px !important; }

/* Filas: sin fondo externo, sin text-transform, tipografía exacta del diseño */
#avxDrawer .avx-row{
  background:none !important;
  background-color:transparent !important;
  text-transform:none !important;
  font-family:'Inter',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif !important;
  letter-spacing:normal !important;
}
#avxDrawer .avx-row__label{
  font-size:16px !important;
  font-weight:500 !important;
  color:#4F4F4F !important; /* --d-ink */
  text-transform:none !important;
  letter-spacing:normal !important;
}
#avxDrawer .avx-row__label b{
  color:#454545 !important; /* --d-section */
  font-weight:600 !important;
}
#avxDrawer .avx-row--all .avx-row__label{
  font-weight:600 !important;
  color:#454545 !important; /* --d-section */
}

/* Iconos de fila: púrpura del diseño */
#avxDrawer .avx-row__icon{
  color:#551D87 !important; /* --d-purple */
}

/* Chevrones: gris del diseño */
#avxDrawer .avx-row__chev{
  color:#9D9D9D !important; /* --d-chev */
}

/* Footer: fondo oscuro */
#avxDrawer .avx-d__foot{
  background:#222222 !important; /* --d-dark */
}
#avxDrawer .avx-d__brand-text{
  font-family:'Visby CF',sans-serif !important;
  font-weight:400 !important;
  font-size:17px !important;
  line-height:1.2 !important;
  color:#fff !important;
  text-transform:none !important;
}
#avxDrawer .avx-d__follow{
  font-size:13px !important;
  color:#B5B5B5 !important; /* --d-foot-text */
  text-transform:none !important;
}
#avxDrawer .avx-social__label{
  font-size:14px !important;
  color:#fff !important;
  text-transform:none !important;
}
#avxDrawer .avx-social__icon{
  color:#C9B6E4 !important; /* --d-social */
}

/* Etiqueta de subsección (ej. "Subcategorías de Construcción") */
#avxDrawer .avx-nav__label{
  font-size:13px !important;
  font-weight:600 !important;
  color:#6D6D6D !important;
  text-transform:none !important;
}

/* P1a — Fondo oscuro llena todo el alto: flex column en la pantalla, footer crece */
#avxDrawer .avx-drawer{
  display:flex !important;
  flex-direction:column !important;
  min-height:100% !important;
}
#avxDrawer .avx-d__foot{
  flex-grow:1 !important;
}

/* P2a/2b — Botón volver: sin fondo en reposo, hover, focus, active (anula lima y rojo de Elementor) */
#avxDrawer .avx-back,
#avxDrawer .avx-back:hover,
#avxDrawer .avx-back:focus,
#avxDrawer .avx-back:active,
#avxDrawer .avx-back:focus-visible{
  background:none !important;
  background-color:transparent !important;
  color:#454545 !important;
  border:none !important;
  outline:none !important;
  box-shadow:none !important;
}
#avxDrawer .avx-back svg{
  color:inherit !important;
}

/* ── Hamburguesa ─────────────────────────────────────────────────────────── */
.avxm-hamburger{
  display:none; /* visible solo en móvil/tablet vía media query */
  align-items:center;justify-content:center;
  width:44px;height:44px;
  background:none;border:none;padding:0;cursor:pointer;
  color:#222222;flex-shrink:0;
}
.avxm-ham-icon{ display:flex;align-items:center;justify-content:center; }
.avxm-ham-close{ display:none; }
.avxm-hamburger.avxm-is-open .avxm-ham-open { display:none; }
.avxm-hamburger.avxm-is-open .avxm-ham-close{ display:flex; }

/* ── Backdrop ────────────────────────────────────────────────────────────── */
.avxm-backdrop{
  position:fixed;inset:0;
  z-index:99997;
  background:rgba(20,16,30,.5);
  opacity:0;visibility:hidden;
  transition:opacity .28s ease, visibility .28s ease;
}
.avxm-backdrop.avxm-is-open{ opacity:1;visibility:visible; }

/* ── Panel del drawer: dropdown sobrepuesto desde el disparador ───────────── */
/* top / left / width / height se asignan por JS al abrir, anclados al botón hamburguesa */
#avxDrawer{
  position:fixed;
  width:100%;
  overflow:hidden;
  overscroll-behavior:contain;
  touch-action:pan-y;
  z-index:99998;
  background:#fff;
  border-radius:0;
  box-shadow:0 12px 40px -8px rgba(20,16,30,.28);
  opacity:0;
  visibility:hidden;
  transform:translateY(-8px);
  transition:opacity .25s ease, transform .25s ease, visibility .25s ease;
}
#avxDrawer.avxm-is-open{
  opacity:1;
  visibility:visible;
  transform:translateY(0);
}

/* ── Anular hover lima del tema (Elementor Pro) en filas del drawer ───────── */
#avxDrawer .avx-row:hover,
#avxDrawer .avx-row:focus,
#avxDrawer .avx-row:active,
#avxDrawer .avx-row:focus-visible,
#avxDrawer a.avx-row:hover,
#avxDrawer a.avx-row:focus,
#avxDrawer a.avx-row:active,
#avxDrawer a.avx-row:focus-visible{
  background:none !important;
  background-color:transparent !important;
  color:inherit !important;
  outline:none !important;
  box-shadow:none !important;
  border-color:transparent !important;
}

/* ── Hamburguesa: sin fondo lima, icono blanco en todos los estados ───────── */
.avxm-hamburger,
.avxm-hamburger:hover,
.avxm-hamburger:focus,
.avxm-hamburger:active,
.avxm-hamburger:focus-visible{
  background:none !important;
  background-color:transparent !important;
  color:#ffffff !important;
  outline:none !important;
  box-shadow:none !important;
  border:none !important;
}
