/* Menú único MiMatri — estilos del header unificado.
   Todo va con prefijo .mm- para no chocar con el resto de public.css.
   Colores de marca: rojo #7C2430, negro #141210, crema #F6F1EA, beige #DED3C2. */

/* Todas las barras ocupan el ancho completo (fondo continuo) pero su contenido
   vive dentro de un ancho máximo centrado, igual que el resto del sitio. */
.mm-inner { width: 100%; max-width: 1180px; margin: 0 auto; }

/* public.css subraya todos los enlaces; en el menú no corresponde */
.mm-avisos a, .mm-header a, .mm-cajon a { text-decoration: none; }

/* [hidden] pierde contra un display propio: hay que reponerlo explícitamente,
   si no las subcategorías y el cajón aparecen siempre abiertos */
.mm-subs[hidden], .mm-panel[hidden], .mm-cajon[hidden] { display: none; }

.mm-avisos {
  background: #141210;
  color: #F2ECE3;
  padding: 9px 22px;
  min-height: 36px;
  font-size: 11.5px;
  font-weight: 600;
  letter-spacing: .16em;
  text-transform: uppercase;
  text-align: center;
}
.mm-avisos .mm-inner { display: flex; align-items: center; gap: 10px; }
.mm-avisos__lado { flex: 1; display: flex; align-items: center; justify-content: flex-end; }
.mm-avisos__txt { transition: opacity .35s ease; }
.mm-aviso--fade { opacity: 0; }
.mm-redes { display: flex; align-items: center; gap: 6px; }
.mm-redes a {
  width: 26px; height: 26px;
  display: grid; place-items: center;
  border: 1px solid rgba(222, 211, 194, .32);
  border-radius: 3px;
  color: #DED3C2;
  transition: border-color .15s, color .15s;
}
.mm-redes a:hover { border-color: #F2ECE3; color: #FFF; }

.mm-header { background: #FFF; border-bottom: 1px solid #DED3C2; position: relative; }

.mm-top { padding: 16px 22px; border-bottom: 1px solid #EFE9DE; }
.mm-top .mm-inner { display: flex; align-items: center; gap: 18px; }

.mm-burger {
  display: none;
  background: none;
  border: none;
  cursor: pointer;
  color: #1C1A18;
  padding: 4px;
  line-height: 0;
}

.mm-logo { display: flex; align-items: center; line-height: 0; }
.mm-logo__full { height: 30px; width: auto; display: block; }
.mm-logo__m { height: 28px; width: auto; display: none; }

.mm-buscar {
  flex: 1;
  max-width: 330px;
  display: flex;
  align-items: center;
  gap: 9px;
  border: 1px solid #DED3C2;
  border-radius: 999px;
  padding: 8px 15px;
  color: #8A7F70;
}
.mm-buscar:focus-within { border-color: #8A7F70; }
.mm-buscar input {
  border: none;
  outline: none;
  background: none;
  font: inherit;
  font-size: 13px;
  color: #1C1A18;
  width: 100%;
}
.mm-buscar input::placeholder { color: #8A7F70; }

.mm-top__derecha { margin-left: auto; display: flex; align-items: center; gap: 16px; }
.mm-pais {
  display: flex; align-items: center; gap: 5px;
  font-size: 12.5px; color: #8A7F70; letter-spacing: .04em;
}
.mm-cuenta { font-size: 13px; color: #1C1A18; display: inline-flex; align-items: center; gap: 6px; }
.mm-cuenta:hover { color: #7C2430; }
.mm-cuenta__icono { display: none; flex: none; }
.mm-cta {
  border: 1px solid #DED3C2;
  border-radius: 999px;
  padding: 10px 22px;
  font-size: 14px;
  font-weight: 600;
  color: #7C2430;
  background: #FFF;
  white-space: nowrap;
  box-shadow: 0 1px 3px rgba(20, 18, 16, .06);
  transition: border-color .15s, box-shadow .15s;
}
.mm-cta:hover { border-color: #7C2430; box-shadow: 0 2px 8px rgba(124, 36, 48, .14); }

.mm-serv { padding: 0 22px; overflow-x: auto; border-bottom: 1px solid #DED3C2; }
.mm-serv .mm-inner { display: flex; align-items: stretch; justify-content: center; gap: 38px; }
.mm-serv__btn {
  background: none;
  border: none;
  border-bottom: 2px solid transparent;
  cursor: pointer;
  font: inherit;
  font-size: 14px;
  color: #1C1A18;
  padding: 14px 2px 13px;
  white-space: nowrap;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  transition: color .15s;
}
.mm-serv__btn:hover { color: #7C2430; }
.mm-serv__icono { flex: none; }
.mm-serv__btn.is-activa { border-bottom-color: #7C2430; color: #7C2430; font-weight: 600; }
.mm-caret { transition: transform .2s; }
.mm-serv__btn[aria-expanded="true"] .mm-caret { transform: rotate(180deg); }

.mm-panel { background: #FFF; border-bottom: 1px solid #DED3C2; padding: 24px 22px 22px; }
.mm-panel__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 24px 28px; }
.mm-panel__grid--venta { grid-template-columns: repeat(auto-fit, minmax(240px, 1fr)); }
.mm-col { display: flex; flex-direction: column; gap: 3px; }
.mm-col h4 {
  margin: 0 0 7px;
  font-size: 10px;
  font-weight: 400;
  letter-spacing: .15em;
  text-transform: uppercase;
  color: #8A7F70;
}
.mm-cat { font-size: 13.5px; color: #1C1A18; padding: 3px 0; line-height: 1.35; }
.mm-cat:hover { color: #7C2430; }
.mm-fuera { font-size: 10.5px; color: #8A7F70; letter-spacing: .04em; }

.mm-cat-row { display: flex; align-items: center; gap: 4px; }
.mm-cat-row > .mm-cat, .mm-cat-row > .mm-cajon__link { flex: 1; min-width: 0; }
.mm-subtoggle {
  width: 22px; height: 22px; flex: none;
  display: grid; place-items: center;
  background: none; border: none; padding: 0;
  cursor: pointer; color: #8A7F70; line-height: 0;
}
.mm-subtoggle:hover { color: #7C2430; }
.mm-subtoggle svg { transition: transform .18s ease; }
.mm-subtoggle[aria-expanded="true"] svg { transform: rotate(180deg); }
.mm-subs { display: flex; flex-direction: column; gap: 2px; }
.mm-subs a { font-size: 12.5px; color: #8A7F70; padding: 2px 0 2px 11px; }
.mm-subs a:hover { color: #7C2430; }

.mm-panel__pie {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 18px;
  margin-top: 20px;
  padding-top: 14px;
  border-top: 1px solid #EFE9DE;
}
.mm-pie-link { font-size: 13px; font-weight: 600; color: #7C2430; }
.mm-pie-link--suave { font-weight: 400; color: #8A7F70; }
.mm-pie-link--suave:hover { color: #7C2430; }
.mm-acciones { margin-left: auto; display: flex; flex-wrap: wrap; gap: 10px; }
.mm-btn-rojo {
  background: #7C2430;
  border: 1px solid #7C2430;
  color: #F6F1EA;
  border-radius: 999px;
  padding: 9px 20px;
  font-size: 13px;
  font-weight: 600;
  white-space: nowrap;
  transition: background .15s, border-color .15s;
}
.mm-btn-rojo:hover { background: #5C1A24; border-color: #5C1A24; color: #FFF; }

.mm-cajon { display: none; }
.mm-cajon__sec {
  margin: 0;
  padding: 14px 16px 6px;
  font-size: 10px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #8A7F70;
}
.mm-cajon__link {
  display: block;
  padding: 12px 16px;
  font-size: 15px;
  color: #1C1A18;
  border-bottom: 1px solid #EFE9DE;
}
.mm-cajon__link:hover { color: #7C2430; }
.mm-cajon .mm-cat-row { border-bottom: 1px solid #EFE9DE; padding-right: 10px; }
.mm-cajon .mm-cat-row .mm-cajon__link { border-bottom: none; }
.mm-subs--cajon { padding: 4px 0 8px; background: #F6F1EA; }
.mm-subs--cajon a { padding: 6px 16px 6px 34px; font-size: 14px; }
.mm-cajon__acciones { display: flex; flex-wrap: wrap; gap: 10px; padding: 12px 16px 4px; }

/* En el celular, "Proveedores" es un botón que despliega sus categorías:
   el cajón se abre corto y las 19 categorías solo aparecen si las piden. */
.mm-cajon__boton {
  width: 100%;
  display: flex; align-items: center; gap: 10px;
  background: none; border: none; border-bottom: 1px solid #EFE9DE;
  font: inherit; font-size: 15px; color: #1C1A18;
  padding: 12px 16px; cursor: pointer; text-align: left;
}
.mm-cajon__boton:hover { color: #7C2430; }
.mm-cajon__boton .mm-caret { margin-left: auto; transition: transform .18s ease; }
.mm-cajon__boton[aria-expanded="true"] { color: #7C2430; font-weight: 600; }
.mm-cajon__boton[aria-expanded="true"] .mm-caret { transform: rotate(180deg); }
.mm-cajon__grupo { background: #F6F1EA; }
.mm-cajon__grupo[hidden] { display: none; }
.mm-cajon__grupo .mm-cajon__sec { padding: 12px 16px 4px; }
.mm-cajon__grupo .mm-cajon__link { padding-left: 24px; background: #F6F1EA; }
.mm-cajon__grupo .mm-cat-row { padding-left: 8px; }

@media (max-width: 900px) {
  .mm-top { padding: 12px 14px; }
  .mm-top .mm-inner { gap: 10px; }
  /* la hamburguesa va siempre al extremo derecho, después de la acción */
  .mm-logo { order: 1; }
  .mm-top__derecha { order: 2; margin-left: auto; gap: 10px; }
  .mm-burger { order: 3; margin-left: 2px; }
  .mm-serv .mm-inner { justify-content: flex-start; }
  .mm-burger { display: block; }
  .mm-logo__full { display: none; }
  .mm-logo__m { display: block; }
  .mm-buscar { display: none; }
  .mm-pais { display: none; }
  /* la cuenta queda fuera del cajón, como ícono al lado de la hamburguesa */
  .mm-cuenta { padding: 4px; color: #1C1A18; }
  .mm-cuenta__icono { display: block; }
  .mm-cuenta__txt { display: none; }
  .mm-cta { padding: 8px 16px; font-size: 13px; }
  .mm-serv { display: none; }
  .mm-panel { display: none; }
  .mm-cajon { display: block; }
  .mm-avisos { font-size: 10px; letter-spacing: .12em; }
}

@media (prefers-reduced-motion: reduce) {
  .mm-avisos__txt, .mm-caret, .mm-subtoggle svg, .mm-cta, .mm-btn-rojo { transition: none; }
}
