/* Mix Mix Group — estilos de sitio, construidos SOBRE mixmix-brand/mixmix.css.
   No se pisa ninguna regla dura de marca (sin radios, filetes 2px, todo a la izquierda,
   fotografía en escala de grises). Este archivo solo añade layout de página. */

/* — botones: el hover con --mm-gold-ink (pensado para texto pequeño) se
   veía turbio sobre negro, lo cambiamos por el dorado vibrante — */
.mm-btn:hover { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }
.mm-btn-secondary:hover { background: var(--mm-gold-soft); border-color: var(--mm-black); color: var(--mm-black); }

html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } }
[id] { scroll-margin-top: 90px; }

/* — utilidades de estructura — */
.mm-skip {
  position: absolute; left: -9999px; top: 0; z-index: 100;
  background: var(--mm-gold); color: var(--mm-black);
  padding: 10px 16px; font-family: var(--mm-font-display); font-weight: 700;
}
.mm-skip:focus { left: 0; }

/* — encabezado — */
.mm-header {
  background: var(--mm-black);
  border-bottom: var(--mm-rule) solid var(--mm-gold);
  position: sticky; top: 0; z-index: 20;
}
.mm-header .mm-container {
  display: flex; align-items: center; justify-content: space-between;
  gap: var(--mm-space-4); padding-top: var(--mm-space-4); padding-bottom: var(--mm-space-4);
  flex-wrap: wrap;
}
.mm-header .mm-logo { color: var(--mm-bone); font-size: clamp(22px, 3vw, 30px); text-decoration: none; display: block; }
.mm-header .mm-logo span { color: var(--mm-gold); }
.mm-logo-img { display: block; height: 46px; width: auto; }
.mm-navlinks { display: flex; gap: var(--mm-space-6); list-style: none; margin: 0; padding: 0; flex-wrap: wrap; }
.mm-navlinks a {
  font-family: var(--mm-font-display); font-weight: 600; font-size: 12px;
  letter-spacing: var(--mm-track-label); text-transform: uppercase;
  color: var(--mm-stone-onblack); text-decoration: none;
}
.mm-navlinks a:hover, .mm-navlinks a[aria-current="page"] { color: var(--mm-gold); }

/* — hero — */
.mm-hero { background: var(--mm-black); color: var(--mm-bone); border-bottom: var(--mm-rule) solid var(--mm-black); }
.mm-hero .mm-display { color: var(--mm-bone); }
.mm-hero .mm-display em { color: var(--mm-gold); font-style: normal; }
.mm-hero .mm-body { color: var(--mm-stone-onblack); }
.mm-hero .mm-script { margin: -6px 0 var(--mm-space-4); font-size: clamp(36px, 6vw, 68px); }
.mm-hero h1.mm-display + .mm-script { margin-top: -10px; }
.mm-hero-actions { display: flex; gap: var(--mm-space-3); flex-wrap: wrap; margin-top: var(--mm-space-6); }
.mm-hero .mm-btn:not(.mm-btn-secondary) { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }
.mm-hero .mm-btn:not(.mm-btn-secondary):hover { background: var(--mm-gold-soft); border-color: var(--mm-gold-soft); }
.mm-hero .mm-btn:not(.mm-btn-secondary):active { background: var(--mm-wine); border-color: var(--mm-wine); color: var(--mm-bone); }
.mm-hero .mm-btn-secondary { color: var(--mm-bone); border-color: var(--mm-bone); }
.mm-hero .mm-btn-secondary:hover { background: var(--mm-gold-soft); color: var(--mm-black); border-color: var(--mm-gold-soft); }

/* — grid de columnas fijas: evita huecos negros cuando el número de
   tarjetas no llena una fila completa del grid modular — */
.mm-grid-fixed { grid-template-columns: 1fr; }
@media (min-width: 560px) { .mm-grid-fixed { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .mm-grid-fixed { grid-template-columns: repeat(4, 1fr); } }

.mm-grid-2 { grid-template-columns: 1fr; }
@media (min-width: 560px) { .mm-grid-2 { grid-template-columns: repeat(2, 1fr); } }

/* — pilares / grid de producto — */
.mm-pillars-grid { margin-top: var(--mm-space-8); }
.mm-pillar-num { font-family: var(--mm-font-logo); font-size: 40px; color: var(--mm-gold); line-height: 1; }

/* — quote / pull-quote — */
.mm-quote {
  border-left: var(--mm-rule) solid var(--mm-gold);
  padding-left: var(--mm-space-6);
  margin: 0;
}
.mm-quote p { font-family: var(--mm-font-body); font-size: clamp(18px, 2vw, 24px); line-height: 1.5; margin: 0 0 var(--mm-space-3); }
.mm-quote cite { font-family: var(--mm-font-display); font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; font-style: normal; color: var(--mm-stone-ink); }

/* — estadísticas del dolor — */
.mm-stats { display: flex; gap: var(--mm-rule); background: var(--mm-black); padding: var(--mm-rule); margin: var(--mm-space-8) 0; flex-wrap: wrap; }
.mm-stat { flex: 1 1 200px; background: var(--mm-bone); padding: clamp(20px,3vw,32px); }
.mm-stat .mm-stat-num { font-family: var(--mm-font-logo); font-size: clamp(40px,6vw,64px); color: var(--mm-wine); line-height: 1; display: block; }

/* — fundador (foto real, blanco y negro por regla de marca) — */
/* La sección de Historia "sangra" la foto hasta el filete negro inferior:
   quitamos el padding-bottom de la sección y se lo devolvemos solo al
   bloque de texto, así la imagen llega exacta hasta la línea. */
.mm-historia-section { padding-bottom: 0; }
.mm-founder { display: grid; grid-template-columns: 300px 1fr; gap: var(--mm-space-8); align-items: stretch; margin-top: var(--mm-space-8); }
.mm-founder-photo { height: 100%; min-height: 320px; }
.mm-founder-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center top; }
.mm-founder .mm-quote { padding-bottom: clamp(40px, 6vw, 72px); }
@media (max-width: 640px) {
  .mm-founder { grid-template-columns: 1fr; }
  .mm-founder-photo { order: 2; height: auto; min-height: 0; }
  .mm-founder-photo img { height: auto; object-fit: initial; }
  .mm-founder .mm-quote { order: 1; padding-bottom: var(--mm-space-6); }
}

/* — iconos de línea (pilares / catálogo): sustituyen fotografía de producto — */
.mm-icon { width: 34px; height: 34px; display: block; margin-bottom: var(--mm-space-3); stroke: var(--mm-gold); fill: none; stroke-width: 1.6; }
.mm-hero-art { display: none; }
@media (min-width: 900px) {
  .mm-hero-grid { display: grid; grid-template-columns: 1.4fr 1fr; gap: var(--mm-space-8); align-items: center; }
  .mm-hero-art { display: block; stroke: var(--mm-gold); fill: none; stroke-width: 1.2; opacity: 0.9; }
}

/* — mentores — */
.mm-mentor-name { font-family: var(--mm-font-display); font-weight: 800; font-size: 17px; margin: 0 0 4px; }
.mm-mentor-role { font-family: var(--mm-font-display); font-size: 13px; color: var(--mm-stone-ink); margin: 0; }

/* — filtros por departamento — */
.mm-filter-bar { display: flex; flex-wrap: wrap; gap: var(--mm-space-2); margin-top: var(--mm-space-4); }
.mm-filter-btn {
  font-family: var(--mm-font-display); font-weight: 600; font-size: 12px;
  letter-spacing: 0.06em; text-transform: uppercase; cursor: pointer;
  padding: 10px 18px; border: var(--mm-rule) solid var(--mm-black);
  background: transparent; color: var(--mm-black);
}
.mm-filter-btn:hover { background: var(--mm-gold-soft); }
.mm-filter-btn.active { background: var(--mm-black); color: var(--mm-bone); }
.mm-filter-btn.active:hover { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }

/* — catálogo de N tarjetas sueltas (cada una con su propio filete, no
   depende del fondo negro del contenedor): así un número impar de
   tarjetas nunca deja huecos negros al final de una fila — */
.mm-catalog-grid {
  display: grid; grid-template-columns: 1fr; gap: var(--mm-space-4);
  margin-top: var(--mm-space-8);
}
@media (min-width: 560px) { .mm-catalog-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 900px) { .mm-catalog-grid { grid-template-columns: repeat(3, 1fr); } }
.mm-catalog-card {
  border: var(--mm-rule) solid var(--mm-black); background: var(--mm-white);
  padding: clamp(20px, 3vw, 28px); display: flex; flex-direction: column; gap: var(--mm-space-2);
}
.mm-catalog-card .mm-product-title { font-size: 20px; }
.mm-catalog-card .mm-price-row { margin-top: auto; padding-top: var(--mm-space-3); }

/* — catálogo de manuales — */
.mm-product-card { display: flex; flex-direction: column; gap: var(--mm-space-3); }
.mm-product-title { font-family: var(--mm-font-logo); font-size: 28px; letter-spacing: 0.02em; margin: 0; }
.mm-product-desc { font-family: var(--mm-font-body); font-size: 15px; line-height: 1.5; flex-grow: 1; }
.mm-price-row { display: flex; align-items: baseline; gap: var(--mm-space-2); margin-top: var(--mm-space-2); }
.mm-price { font-family: var(--mm-font-display); font-weight: 800; font-size: 26px; }
.mm-price-old { font-family: var(--mm-font-display); font-size: 15px; color: var(--mm-stone-ink); text-decoration: line-through; }
.mm-bundle-cell { border: var(--mm-rule) solid var(--mm-gold); }

/* — página de producto individual — */
.mm-breadcrumb { font-family: var(--mm-font-display); font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-breadcrumb a { color: var(--mm-stone-ink); }

/* Layout de página de producto: NO usa .mm-grid (ese lleva fondo negro
   pensado para filas de tarjetas parejas); aquí las dos columnas casi
   nunca miden lo mismo, así que usamos fondo neutro + buybox pegajoso. */
.mm-product-layout { display: grid; grid-template-columns: 1fr; gap: var(--mm-space-8); margin-top: var(--mm-space-6); align-items: start; }
@media (min-width: 900px) { .mm-product-layout { grid-template-columns: 2fr 1fr; } }
.mm-buybox { position: sticky; top: calc(var(--mm-space-8) + 64px); }
/* — bloques de contenido dentro de "Qué incluye" (kit con varias categorías) — */
.mm-kit-block { margin-top: var(--mm-space-8); padding-top: var(--mm-space-6); border-top: 1px solid var(--mm-stone); }
.mm-kit-block:first-of-type { border-top: 0; padding-top: 0; }
.mm-kit-block-head { display: flex; align-items: baseline; justify-content: space-between; gap: var(--mm-space-3); flex-wrap: wrap; }
.mm-kit-block-head h3 { font-family: var(--mm-font-display); font-weight: 800; font-size: 19px; margin: 0; }
.mm-kit-count { font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-gold-ink); white-space: nowrap; }
.mm-kit-block .mm-checklist { margin-top: var(--mm-space-2); }
.mm-stat-callout {
  display: flex; align-items: baseline; gap: var(--mm-space-3); flex-wrap: wrap;
  border: var(--mm-rule) solid var(--mm-gold); padding: var(--mm-space-4) var(--mm-space-6);
  margin-top: var(--mm-space-6);
}
.mm-stat-callout .mm-pillar-num { font-size: 48px; }

/* — acordeón "comprar por separado" dentro de un bloque de kit — */
.mm-buy-accordion { border: var(--mm-rule) solid var(--mm-black); margin-top: var(--mm-space-4); }
.mm-buy-accordion summary {
  cursor: pointer; list-style: none; padding: var(--mm-space-3) var(--mm-space-4);
  display: flex; align-items: center; justify-content: space-between; gap: var(--mm-space-3);
  font-family: var(--mm-font-display); font-weight: 700; font-size: 14px;
}
.mm-buy-accordion summary::-webkit-details-marker { display: none; }
.mm-buy-accordion summary::after { content: "+"; font-size: 20px; color: var(--mm-gold-ink); flex-shrink: 0; }
.mm-buy-accordion[open] summary::after { content: "\2212"; }
.mm-buy-accordion summary:hover { background: var(--mm-gold-soft); }
.mm-buy-list { list-style: none; margin: 0; padding: 0 var(--mm-space-4) var(--mm-space-4); border-top: 1px solid var(--mm-stone); }
.mm-buy-item {
  display: flex; align-items: center; justify-content: space-between; gap: var(--mm-space-3);
  padding: var(--mm-space-2) 0; border-bottom: 1px solid var(--mm-stone);
}
.mm-buy-item:last-child { border-bottom: 0; }
.mm-buy-title { font-family: var(--mm-font-body); font-size: 14px; }
.mm-buy-price { font-family: var(--mm-font-display); font-weight: 700; font-size: 13px; white-space: nowrap; margin-left: auto; margin-right: var(--mm-space-3); }
.mm-buy-item .mm-btn { padding: 6px 14px; font-size: 10px; flex-shrink: 0; }
.mm-buy-group {
  font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label);
  text-transform: uppercase; color: var(--mm-gold-ink); padding: var(--mm-space-4) 0 var(--mm-space-1);
  border-bottom: 1px solid var(--mm-black);
}
.mm-theme-items { padding: 0 var(--mm-space-4) var(--mm-space-3); margin: 0; border-top: 1px solid var(--mm-stone); }

/* — oferta de paquete por categoría (upsell dentro de un mm-kit-block) — */
.mm-bundle-offer {
  display: flex; align-items: center; justify-content: space-between; gap: var(--mm-space-4);
  flex-wrap: wrap; border: var(--mm-rule) solid var(--mm-gold);
  padding: var(--mm-space-3) var(--mm-space-4); margin-top: var(--mm-space-3);
}
.mm-bundle-offer p { margin: 0; font-family: var(--mm-font-body); font-size: 14px; }
.mm-bundle-offer strong { font-family: var(--mm-font-display); }
.mm-bundle-offer .mm-price-old { font-size: 12px; margin-left: 6px; }
.mm-bundle-offer .mm-btn { flex-shrink: 0; }

.mm-checklist { list-style: none; margin: var(--mm-space-4) 0; padding: 0; }
.mm-checklist li {
  font-family: var(--mm-font-body); font-size: 16px; line-height: 1.5;
  padding: var(--mm-space-2) 0 var(--mm-space-2) var(--mm-space-6);
  border-bottom: 1px solid var(--mm-stone);
  position: relative;
}
.mm-checklist li:last-child { border-bottom: 0; }
.mm-checklist li::before {
  content: "\2713"; position: absolute; left: 0; top: var(--mm-space-2);
  color: var(--mm-gold); font-family: var(--mm-font-display); font-weight: 800;
}
.mm-buybox { border: var(--mm-rule) solid var(--mm-black); padding: clamp(20px,3vw,32px); background: var(--mm-white); }
.mm-buybox .mm-btn { width: 100%; justify-content: center; font-size: 16px; padding: 16px var(--mm-space-4); }
.mm-guarantee { font-family: var(--mm-font-display); font-size: 12px; color: var(--mm-stone-ink); margin-top: var(--mm-space-3); }
.mm-faq dt { font-family: var(--mm-font-display); font-weight: 700; font-size: 15px; margin-top: var(--mm-space-4); }
.mm-faq dd { font-family: var(--mm-font-body); font-size: 15px; margin: 4px 0 0; color: var(--mm-stone-ink); }

/* — gracias / descarga — */
.mm-download-box { border: var(--mm-rule) solid var(--mm-gold); padding: clamp(24px,4vw,40px); background: var(--mm-black); color: var(--mm-bone); }
.mm-download-box .mm-btn { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }
.mm-download-box .mm-btn:hover { background: var(--mm-gold-soft); border-color: var(--mm-gold-soft); }
.mm-download-items-list { list-style: none; margin: var(--mm-space-3) 0 0; padding: 0; }
.mm-download-item {
  display: flex; align-items: center; justify-content: space-between; gap: var(--mm-space-4);
  padding: var(--mm-space-3) 0; border-bottom: 1px solid var(--mm-stone);
}
.mm-download-item:last-child { border-bottom: 0; }
.mm-download-group {
  font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label);
  text-transform: uppercase; color: var(--mm-gold); padding: var(--mm-space-5, 20px) 0 var(--mm-space-1);
  border-bottom: 1px solid var(--mm-stone);
}
.mm-download-item span { font-family: var(--mm-font-body); font-size: 15px; color: var(--mm-bone); }
.mm-download-item .mm-btn { padding: 8px 14px; font-size: 11px; flex-shrink: 0; color: var(--mm-bone); border-color: var(--mm-bone); background: transparent; }
.mm-download-item .mm-btn:hover { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }

/* — formulario de contacto — */
.mm-form { display: flex; flex-direction: column; gap: var(--mm-space-4); max-width: 520px; }
.mm-field label { display: block; font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; margin-bottom: 6px; color: var(--mm-stone-ink); }
.mm-field textarea.mm-input { resize: vertical; min-height: 120px; font-family: var(--mm-font-body); }

/* — footer — */
.mm-footer { background: var(--mm-black); color: var(--mm-stone-onblack); }
.mm-footer .mm-container { padding-top: var(--mm-space-8); padding-bottom: var(--mm-space-8); }
.mm-footer .mm-navlinks { margin-bottom: var(--mm-space-6); }
.mm-footer-legal { font-family: var(--mm-font-display); font-size: 12px; }

@media (max-width: 640px) {
  .mm-header .mm-container { flex-direction: column; align-items: flex-start; }
  .mm-bundle-cell { grid-template-columns: 1fr !important; }
}

/* ===== Catálogo en gris mármol (descargables y kits): sin dorado, sin botones transparentes ===== */
:root {
  --mm-marble: #F7F6F3;       /* tarjetas: casi blanco, gris cálido */
  --mm-marble-line: #D9D6CF;  /* filetes claros */
  --mm-ink-soft: #3A3A39;     /* hover de botones */
}
.mm-tag-soft { background: var(--mm-marble); color: var(--mm-stone-ink); border: 1px solid var(--mm-marble-line); align-self: flex-start; }

.mm-catalog-card {
  background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-marble-line);
  transition: border-color .15s ease;
}
.mm-catalog-card:hover { border-color: var(--mm-stone); }
.mm-catalog-card .mm-btn:hover, .mm-buy-item .mm-btn:hover, .mm-bundle-offer .mm-btn:hover {
  background: var(--mm-ink-soft); border-color: var(--mm-ink-soft); color: var(--mm-bone);
}

.mm-buy-accordion { background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-marble-line); }
.mm-buy-accordion summary:hover { background: var(--mm-white); }
.mm-buy-accordion summary::after { color: var(--mm-stone-ink); }
.mm-buy-list { border-top: 1px solid var(--mm-marble-line); }
.mm-buy-item { border-bottom: 1px solid var(--mm-marble-line); }
.mm-buy-item .mm-btn, .mm-buy-item .mm-btn-secondary {
  background: var(--mm-black); border-color: var(--mm-black); color: var(--mm-bone);
}
.mm-buy-group { color: var(--mm-stone-ink); border-bottom: 1px solid var(--mm-marble-line); }
.mm-theme-items { border-top: 1px solid var(--mm-marble-line); }

.mm-bundle-offer { background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-marble-line); }
.mm-bundle-offer .mm-btn, .mm-bundle-offer .mm-btn-secondary {
  background: var(--mm-black); border-color: var(--mm-black); color: var(--mm-bone);
}

.mm-filter-btn { background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-marble-line); color: var(--mm-black); }
.mm-filter-btn:hover { background: #E2E0DB; border-color: var(--mm-stone); }
.mm-filter-btn.active { background: var(--mm-black); border-color: var(--mm-black); color: var(--mm-bone); }
.mm-filter-btn.active:hover { background: var(--mm-ink-soft); border-color: var(--mm-ink-soft); color: var(--mm-bone); }

.mm-kit-count { color: var(--mm-stone-ink); }
.mm-kit-block { border-top-color: var(--mm-marble-line); }
/* ===== Paquetes por perfil ===== */
.mm-catalog-card .mm-product-desc { font-family: var(--mm-font-body); font-size: 14px; line-height: 1.5; margin: 0; color: var(--mm-stone-ink); }
.mm-pkg-choose { display: block; font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); margin-top: var(--mm-space-2); }
.mm-select {
  display: block; width: 100%; margin-top: 6px; padding: 10px var(--mm-space-3);
  font-family: var(--mm-font-body); font-size: 14px; text-transform: none; letter-spacing: 0;
  background: #fff; color: var(--mm-black); border: var(--mm-rule) solid var(--mm-marble-line);
}
.mm-select:focus { outline: var(--mm-rule) solid var(--mm-black); outline-offset: 1px; }
.mm-pkg-details { margin-top: var(--mm-space-3); border-top: 1px solid var(--mm-marble-line); }
.mm-pkg-details summary { cursor: pointer; list-style: none; padding: var(--mm-space-3) 0; font-family: var(--mm-font-display); font-weight: 700; font-size: 13px; display: flex; justify-content: space-between; }
.mm-pkg-details summary::-webkit-details-marker { display: none; }
.mm-pkg-details summary::after { content: "+"; font-size: 18px; color: var(--mm-stone-ink); }
.mm-pkg-details[open] summary::after { content: "\2212"; }
.mm-pkg-details .mm-checklist { margin: 0 0 var(--mm-space-3); border-top: 0; padding: 0; }
.mm-pkg-details .mm-checklist li { font-size: 14px; padding-top: 6px; padding-bottom: 6px; border-bottom: 1px solid var(--mm-marble-line); }
.mm-pkg-details .mm-checklist li.mm-buy-group { border-bottom: 1px solid var(--mm-black); padding-left: 0; }
.mm-pkg-details .mm-checklist li.mm-buy-group::before { content: none; }
/* ===== Precio por documento, catálogo completo y ofertas por categoría ===== */
.mm-per { font-family: var(--mm-font-display); font-weight: 600; font-size: 12px; letter-spacing: 0.04em; color: var(--mm-stone-ink); margin: 2px 0 0; }
.mm-bundle-offer .mm-per { display: inline-block; margin-left: var(--mm-space-2); }
.mm-bundle-offer[hidden] { display: none; }
.mm-catalog-offer {
  display: grid; grid-template-columns: 1fr; gap: var(--mm-space-6);
  background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-black); padding: var(--mm-space-6);
}
.mm-catalog-offer .mm-product-title { font-size: clamp(24px, 3.2vw, 34px); margin: var(--mm-space-2) 0; }
.mm-catalog-offer .mm-product-desc { font-family: var(--mm-font-body); font-size: 15px; line-height: 1.55; margin: 0; max-width: 56ch; }
.mm-catalog-offer-buy { display: flex; flex-direction: column; gap: var(--mm-space-2); align-self: end; }
.mm-catalog-offer-buy .mm-price { font-size: clamp(30px, 4vw, 40px); }
.mm-catalog-offer-buy .mm-btn { margin-top: var(--mm-space-3); }
@media (min-width: 820px) {
  .mm-catalog-offer { grid-template-columns: 1.4fr 1fr; align-items: end; }
}
/* ===== Secciones colapsables, listas con filtros y buscador ===== */
.mm-acc-group { margin-top: var(--mm-space-4); border-top: var(--mm-rule) solid var(--mm-black); }
.mm-acc { border-bottom: var(--mm-rule) solid var(--mm-black); }
.mm-acc > summary {
  list-style: none; cursor: pointer; display: flex; align-items: baseline; flex-wrap: wrap; gap: var(--mm-space-1) var(--mm-space-4);
  padding: 20px 36px 20px 0; position: relative;
}
.mm-acc > summary::-webkit-details-marker { display: none; }
.mm-acc > summary::after { content: "+"; position: absolute; right: 4px; top: 50%; transform: translateY(-50%); font-family: var(--mm-font-display); font-size: 28px; line-height: 1; }
.mm-acc[open] > summary::after { content: "\2212"; }
.mm-acc > summary:hover .mm-acc-title { text-decoration: underline; text-underline-offset: 4px; }
.mm-acc-title { font-family: var(--mm-font-display); font-weight: 800; font-size: clamp(20px, 2.6vw, 26px); }
.mm-acc-meta { font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-acc-body { padding: 0 0 var(--mm-space-8); }
.mm-acc-tools { margin: var(--mm-space-3) 0 0; font-family: var(--mm-font-body); font-size: 13px; color: var(--mm-stone-ink); }
.mm-link-btn { background: none; border: 0; padding: 0; font: inherit; color: var(--mm-black); text-decoration: underline; text-underline-offset: 3px; cursor: pointer; }
.mm-link-btn:hover { text-decoration-thickness: 2px; }

.mm-search {
  display: block; width: 100%; box-sizing: border-box; padding: 12px var(--mm-space-4);
  font-family: var(--mm-font-body); font-size: 15px; background: #fff; color: var(--mm-black);
  border: var(--mm-rule) solid var(--mm-black); border-radius: 0; appearance: none; -webkit-appearance: none;
}
.mm-search:focus { outline: var(--mm-rule) solid var(--mm-black); outline-offset: 2px; }
.mm-search-big { padding: 16px 20px; font-size: 17px; }
.mm-search-results { margin-top: var(--mm-space-3); background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-marble-line); padding: var(--mm-space-2) var(--mm-space-4) var(--mm-space-4); }
.mm-list-tools { margin-top: var(--mm-space-4); }
.mm-list-count { margin: var(--mm-space-3) 0 0; font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-list-empty { font-family: var(--mm-font-body); font-size: 14px; color: var(--mm-stone-ink); margin: var(--mm-space-4) 0; }
.mm-list-empty[hidden], .mm-search-results[hidden], .mm-buy-item[hidden] { display: none; }
.mm-filter-btn.is-empty { opacity: 0.4; }
.mm-buy-flat { border: var(--mm-rule) solid var(--mm-marble-line); background: var(--mm-marble); padding: 0 var(--mm-space-4); margin-top: var(--mm-space-3); }
.mm-search-results .mm-buy-flat { border: 0; background: transparent; padding: 0; margin-top: 0; }
.mm-row-tag { display: inline-block; margin-left: var(--mm-space-2); padding: 1px 6px; font-family: var(--mm-font-display); font-weight: 600; font-size: 10px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); border: 1px solid var(--mm-marble-line); background: #fff; vertical-align: 1px; }
@media (max-width: 600px) {
  .mm-buy-item { flex-wrap: wrap; }
  .mm-buy-title { flex-basis: 100%; }
  .mm-buy-price { margin-left: 0; }
}
.mm-catalog-card .mm-price-row { flex-wrap: wrap; align-items: baseline; row-gap: 0; }
.mm-catalog-card .mm-price { white-space: nowrap; font-size: clamp(24px, 2.4vw, 28px); }
.mm-catalog-card .mm-price-old { white-space: nowrap; }.mm-buy-flat.is-filtered .mm-row-tag { display: none; }
/* ===== Tienda: carrito, cuenta, descargas ===== */
button.mm-btn { font-family: var(--mm-font-display); }
.mm-nav-util a { white-space: nowrap; }
.mm-cart-count {
  display: inline-block; min-width: 18px; padding: 0 5px; margin-left: 2px; text-align: center;
  background: var(--mm-gold); color: var(--mm-black); font-size: 11px; line-height: 18px; font-weight: 700;
}
.mm-btn.is-in { background: var(--mm-white); color: var(--mm-black); border-color: var(--mm-black); }
.mm-btn.is-in:hover { background: var(--mm-marble-line); border-color: var(--mm-black); color: var(--mm-black); }
.mm-btn.is-owned { background: transparent; color: var(--mm-stone-ink); border-color: var(--mm-marble-line); }
.mm-btn.is-owned:hover { background: transparent; color: var(--mm-black); border-color: var(--mm-black); }

.mm-toast {
  position: fixed; left: 50%; bottom: 20px; transform: translate(-50%, 140%); z-index: 50;
  display: flex; gap: var(--mm-space-4); align-items: center; max-width: calc(100vw - 32px);
  background: var(--mm-black); color: var(--mm-bone); padding: 12px var(--mm-space-4);
  border: var(--mm-rule) solid var(--mm-black); font-family: var(--mm-font-body); font-size: 14px;
  transition: transform .25s ease;
}
.mm-toast.is-on { transform: translate(-50%, 0); }
.mm-toast a { color: var(--mm-gold); font-family: var(--mm-font-display); font-weight: 700; font-size: 12px; letter-spacing: 0.06em; text-transform: uppercase; white-space: nowrap; }

.mm-demo-note { margin: var(--mm-space-3) 0 var(--mm-space-6); padding: 8px var(--mm-space-3); background: var(--mm-marble); border-left: 4px solid var(--mm-black); font-family: var(--mm-font-body); font-size: 13px; }

.mm-cart-lines { list-style: none; margin: 0; padding: 0; border-top: var(--mm-rule) solid var(--mm-black); }
.mm-cart-line { display: flex; justify-content: space-between; gap: var(--mm-space-4); padding: var(--mm-space-4) 0; border-bottom: 1px solid var(--mm-marble-line); }
.mm-cart-title { margin: 0; font-family: var(--mm-font-display); font-weight: 700; font-size: 16px; }
.mm-cart-kind { margin: 2px 0 0; font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-cart-warn { margin: 4px 0 0; font-family: var(--mm-font-body); font-size: 13px; color: var(--mm-wine); }
.mm-cart-right { display: flex; flex-direction: column; align-items: flex-end; gap: 4px; flex-shrink: 0; }
.mm-cart-price { font-family: var(--mm-font-display); font-weight: 800; font-size: 17px; white-space: nowrap; }
.mm-cart-right .mm-link-btn { font-size: 13px; font-family: var(--mm-font-body); }
.mm-cart-sum { margin: var(--mm-space-3) 0 0; }
.mm-cart-sum div { display: flex; justify-content: space-between; padding: 6px 0; border-bottom: 1px solid var(--mm-marble-line); font-family: var(--mm-font-body); font-size: 14px; }
.mm-cart-sum dt, .mm-cart-sum dd { margin: 0; }
.mm-cart-total { font-family: var(--mm-font-display) !important; font-weight: 800; font-size: 20px !important; border-bottom: 0 !important; padding-top: var(--mm-space-3) !important; }
#cart-tips { margin-top: var(--mm-space-6); display: grid; gap: var(--mm-space-3); }
#cart-tips .mm-bundle-offer { align-items: center; }

.mm-auth { max-width: 460px; margin-top: var(--mm-space-4); }
.mm-auth form { margin-top: var(--mm-space-4); display: grid; gap: var(--mm-space-4); }
.mm-field { display: grid; gap: 6px; font-family: var(--mm-font-display); font-weight: 600; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-field .mm-search { text-transform: none; letter-spacing: 0; font-weight: 400; }
.mm-field[hidden] { display: none; }
.mm-thanks { background: var(--mm-black); border: var(--mm-rule) solid var(--mm-gold); padding: var(--mm-space-6); margin-bottom: var(--mm-space-6); }

.mm-order .mm-acc-body { padding-bottom: var(--mm-space-6); }
.mm-order-line { margin: var(--mm-space-4) 0 var(--mm-space-2); font-family: var(--mm-font-body); font-size: 15px; }
.mm-order-line .mm-cart-kind { display: inline; margin-left: var(--mm-space-2); }
.mm-dl-list { list-style: none; margin: 0; padding: 0; border: var(--mm-rule) solid var(--mm-marble-line); background: var(--mm-marble); }
.mm-dl-more .mm-dl-list { margin-top: var(--mm-space-2); }
.mm-dl-item { display: flex; align-items: center; justify-content: space-between; gap: var(--mm-space-3); padding: 8px var(--mm-space-3); border-bottom: 1px solid var(--mm-marble-line); font-family: var(--mm-font-body); font-size: 14px; }
.mm-dl-item:last-child { border-bottom: 0; }
.mm-dl-item .mm-btn { padding: 6px 14px; font-size: 10px; flex-shrink: 0; background: var(--mm-black); color: var(--mm-bone); }
.mm-dl-item .mm-btn:hover { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }
.mm-dl-group { padding: 10px var(--mm-space-3) 4px; font-family: var(--mm-font-display); font-weight: 700; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); border-bottom: 1px solid var(--mm-black); }
.mm-dl-more { margin-top: var(--mm-space-2); }
.mm-dl-more summary { cursor: pointer; padding: var(--mm-space-2) 0; font-family: var(--mm-font-display); font-weight: 700; font-size: 13px; text-decoration: underline; text-underline-offset: 3px; }
@media (max-width: 600px) {
  .mm-cart-line { flex-direction: column; }
  .mm-cart-right { flex-direction: row; align-items: baseline; justify-content: space-between; width: 100%; }
}
/* ===== Home: paquetes por perfil ===== */
.mm-home-pkg { display: block; color: inherit; text-decoration: none; }
.mm-home-pkg .mm-h2 { font-size: clamp(20px, 2vw, 24px); margin: var(--mm-space-2) 0; }
.mm-home-pkg .mm-body { font-size: 15px; }
.mm-home-pkg-meta { margin: var(--mm-space-4) 0 0; font-family: var(--mm-font-display); font-weight: 700; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-home-pkg:hover { background: var(--mm-white); }
.mm-home-pkg:hover .mm-h2 { text-decoration: underline; text-underline-offset: 4px; }.mm-home-pkg { display: flex; flex-direction: column; }
.mm-home-pkg-meta { margin-top: auto; padding-top: var(--mm-space-4); }
/* ===== Home: auditorias ===== */
.mm-grid-3 { grid-template-columns: 1fr; }
@media (min-width: 900px) { .mm-grid-3 { grid-template-columns: repeat(3, 1fr); } }
.mm-audit-grid { margin-top: var(--mm-space-8); }
.mm-audit-grid .mm-cell, .mm-audit-grid .mm-cell-dark { display: flex; flex-direction: column; }
.mm-audit-grid .mm-h2 { font-size: clamp(20px, 2vw, 26px); margin: var(--mm-space-2) 0; }
.mm-audit-grid .mm-home-pkg-meta { margin-top: auto; padding-top: var(--mm-space-4); }
.mm-chips { display: flex; flex-wrap: wrap; gap: 6px; margin: var(--mm-space-3) 0 0; }
.mm-chips span { padding: 3px 10px; border: 1px solid var(--mm-black); font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-stat-source { margin: var(--mm-space-2) 0 0; font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: 0.04em; color: var(--mm-stone-ink); }

/* ===== Evidencia: 4 videos verticales en una fila; al dar clic se amplian ===== */
.mm-videos { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--mm-space-3); margin-top: var(--mm-space-8); }
@media (min-width: 900px) { .mm-videos { grid-template-columns: repeat(4, 1fr); gap: var(--mm-space-4); } }
.mm-videos[hidden] { display: none; }
.mm-video {
  position: relative; display: flex; flex-direction: column; justify-content: flex-end; align-items: flex-start; gap: 6px;
  aspect-ratio: 9 / 16; max-height: 70vh; width: 100%; padding: var(--mm-space-4); text-align: left;
  background: var(--mm-black); color: var(--mm-bone); border: var(--mm-rule) solid var(--mm-black); cursor: pointer; font-family: var(--mm-font-display);
}
.mm-video:hover:not(:disabled) { border-color: var(--mm-gold); }
.mm-video:focus-visible { outline: 3px solid var(--mm-gold); outline-offset: 2px; }
.mm-video.is-placeholder { cursor: default; background: repeating-linear-gradient(135deg, #141414 0 14px, #1b1b1b 14px 28px); border-style: dashed; border-color: var(--mm-stone-ink); }
.mm-video-net { position: absolute; top: var(--mm-space-4); left: var(--mm-space-4); font-size: 11px; font-weight: 700; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-gold); }
.mm-video-play { position: absolute; top: 50%; left: 50%; width: 56px; height: 56px; transform: translate(-50%, -60%); border: 2px solid var(--mm-bone); border-radius: 50%; }
.mm-video-play::after { content: ""; position: absolute; top: 50%; left: 54%; transform: translate(-50%, -50%); border-style: solid; border-width: 10px 0 10px 17px; border-color: transparent transparent transparent var(--mm-bone); }
.mm-video.is-placeholder .mm-video-play { opacity: 0.35; }
.mm-video-title { font-family: var(--mm-font-body); font-size: 15px; line-height: 1.3; }
.mm-video-cta { margin-top: 4px; padding: 6px 12px; font-size: 11px; font-weight: 700; letter-spacing: 0.06em; text-transform: uppercase; background: var(--mm-gold); color: var(--mm-black); }
.mm-video.is-placeholder .mm-video-cta { background: transparent; color: var(--mm-stone-onblack); padding-left: 0; }
.mm-video:hover:not(:disabled) .mm-video-cta { background: var(--mm-bone); }

.mm-vmodal { padding: 0; border: var(--mm-rule) solid var(--mm-gold); background: var(--mm-black); color: var(--mm-bone); max-width: 96vw; max-height: 96vh; overflow: auto; }
.mm-vmodal::backdrop { background: rgba(0, 0, 0, 0.82); }
.mm-vmodal-bar { display: flex; align-items: center; justify-content: space-between; gap: var(--mm-space-4); padding: 10px var(--mm-space-4); font-family: var(--mm-font-display); font-weight: 700; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-vmodal-close { background: var(--mm-gold); color: var(--mm-black); border: 0; padding: 6px 12px; font: inherit; cursor: pointer; }
.mm-vmodal-close:hover { background: var(--mm-bone); }
.mm-vmodal-stage { display: flex; justify-content: center; background: #000; }
.mm-vmodal-stage iframe { display: block; border: 0; max-width: 92vw; }
/* ===== Reputacion: logos de emprendimientos y clientes (5 por fila) ===== */
.mm-logos { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--mm-space-3); margin-top: var(--mm-space-6); }
@media (min-width: 600px) { .mm-logos { grid-template-columns: repeat(3, 1fr); } }
@media (min-width: 900px) { .mm-logos { grid-template-columns: repeat(5, 1fr); gap: var(--mm-space-4); } }
.mm-logos[hidden] { display: none; }
.mm-logo-cell {
  display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 6px;
  aspect-ratio: 3 / 2; padding: var(--mm-space-4); background: var(--mm-white); border: var(--mm-rule) solid var(--mm-black);
}
.mm-logo-cell img { max-width: 80%; max-height: 70%; object-fit: contain; }
a.mm-logo-cell:hover { border-color: var(--mm-gold); }
.mm-logo-cell.is-placeholder { background: transparent; border-style: dashed; border-color: var(--mm-stone-ink); color: var(--mm-stone-ink); }
.mm-logo-ph { font-family: var(--mm-font-display); font-weight: 800; font-size: 18px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-logo-ph-name { font-family: var(--mm-font-body); font-size: 13px; }
/* ===== Cabecera: menu compacto en celular, iconos de cuenta y carrito ===== */
.mm-header nav { margin-left: auto; }
.mm-menu-btn {
  display: none; padding: 8px 14px; background: transparent; color: var(--mm-bone); border: var(--mm-rule) solid var(--mm-bone);
  font-family: var(--mm-font-display); font-weight: 600; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; cursor: pointer;
}
.mm-menu-btn:hover, .mm-menu-btn[aria-expanded="true"] { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }
.mm-header-util { display: flex; align-items: center; gap: 2px; margin-left: var(--mm-space-4); }
.mm-header-util a { position: relative; display: inline-flex; align-items: center; justify-content: center; width: 40px; height: 40px; color: var(--mm-stone-onblack); }
.mm-header-util a:hover, .mm-header-util a[aria-current="page"], .mm-header-util a.is-in { color: var(--mm-gold); }
.mm-header-util .mm-cart-count { position: absolute; top: 3px; right: 0; margin: 0; }
.mm-cart-count[hidden] { display: none; }
@media (max-width: 760px) {
  .mm-header .mm-container { flex-direction: row; align-items: center; flex-wrap: wrap; gap: var(--mm-space-3); }
  .mm-menu-btn { display: inline-flex; }
  .mm-header-util { margin-left: auto; }
  .mm-header nav { display: none; order: 9; flex-basis: 100%; margin-left: 0; }
  .mm-header nav.is-open { display: block; }
  .mm-header .mm-navlinks { flex-direction: column; gap: 0; border-top: 1px solid #333; }
  .mm-header .mm-navlinks a { display: block; padding: 14px 0; border-bottom: 1px solid #262625; font-size: 13px; }
  .mm-menu-btn { margin-left: auto; }
  .mm-header-util + .mm-menu-btn { margin-left: 0; }
}
/* Pie: tres columnas con listas en vertical (Sitio, Equipo, Legal); en móvil se apilan */
.mm-footer-cols { display: grid; grid-template-columns: repeat(3, minmax(0, max-content)); gap: var(--mm-space-6) clamp(40px, 8vw, 112px); margin-bottom: var(--mm-space-8); }
.mm-footer-title { font-family: var(--mm-font-display); font-weight: 700; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-gold); margin: 0 0 var(--mm-space-3); }
.mm-footer-list { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: var(--mm-space-2); }
.mm-footer-list a { font-family: var(--mm-font-display); font-weight: 600; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-onblack); text-decoration: none; display: inline-block; padding: 3px 0; }
.mm-footer-list a:hover, .mm-footer-list a:focus-visible, .mm-footer-list a[aria-current="page"] { color: var(--mm-gold); }
@media (max-width: 640px) { .mm-footer-cols { grid-template-columns: 1fr; gap: var(--mm-space-6); } }

/* secciones del catalogo: el titulo es un encabezado real dentro del summary */
h2.mm-acc-title { margin: 0; }

/* cifras y testimonios */
.mm-stats-strip { margin: var(--mm-space-8) 0; }
.mm-testimonials { display: grid; grid-template-columns: 1fr; gap: var(--mm-space-4); margin-top: var(--mm-space-6); }
@media (min-width: 900px) { .mm-testimonials { grid-template-columns: repeat(3, 1fr); } }
.mm-testimonial { margin: 0; }
.mm-testimonial p { font-size: 17px; }
.mm-testimonial cite { display: block; margin-top: var(--mm-space-3); font-style: normal; font-family: var(--mm-font-display); font-weight: 600; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-testimonials[hidden], .mm-stats[hidden] { display: none; }

/* aviso de modo vista previa (?demo=1) */
.mm-preview-badge { position: fixed; left: 12px; bottom: 12px; z-index: 60; padding: 6px 10px; background: var(--mm-wine); color: var(--mm-bone); font-family: var(--mm-font-display); font-weight: 700; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-preview-badge a { color: var(--mm-bone); text-decoration: underline; margin-left: 6px; }

/* paginas legales y formulario de contacto */
.mm-legal { max-width: 760px; }
.mm-legal h2 { font-size: 20px; margin-top: var(--mm-space-8); }
.mm-legal p, .mm-legal li { font-family: var(--mm-font-body); font-size: 16px; line-height: 1.6; }
.mm-legal ul { padding-left: 1.2em; }
.mm-form select.mm-input { width: 100%; }
.mm-form .mm-trap { position: absolute; left: -9999px; }
.mm-form-msg { padding: var(--mm-space-3) var(--mm-space-4); border-left: 4px solid var(--mm-black); background: var(--mm-marble); font-family: var(--mm-font-body); font-size: 15px; }
.mm-form-msg[hidden] { display: none; }
.mm-ladder { display: grid; grid-template-columns: 1fr; gap: var(--mm-space-4); }
@media (min-width: 900px) { .mm-ladder.mm-ladder-3 { grid-template-columns: repeat(3, 1fr); } }
.mm-check { display: flex; gap: var(--mm-space-2); align-items: flex-start; font-family: var(--mm-font-body); font-size: 13px; margin-top: var(--mm-space-3); }
.mm-check input { margin-top: 3px; }
.mm-social { display: flex; flex-wrap: wrap; gap: var(--mm-space-4); margin: 0 0 var(--mm-space-4); }
.mm-social[hidden] { display: none; }
.mm-social a { font-family: var(--mm-font-display); font-weight: 700; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-gold); text-decoration: underline; text-underline-offset: 4px; }
.mm-social-light { margin-top: var(--mm-space-4); }
.mm-social-light a { color: var(--mm-black); }
/* ===== Clientes: resenas con logo ===== */
.mm-reviews { display: grid; grid-template-columns: 1fr; gap: var(--mm-space-4); margin-top: var(--mm-space-6); }
@media (min-width: 640px) { .mm-reviews { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 980px) { .mm-reviews { grid-template-columns: repeat(3, 1fr); } }
.mm-reviews[hidden] { display: none; }
.mm-review { display: flex; flex-direction: column; gap: var(--mm-space-3); padding: var(--mm-space-6); background: var(--mm-white); border: var(--mm-rule) solid var(--mm-black); }
.mm-review.is-placeholder { background: transparent; border-style: dashed; border-color: var(--mm-stone-ink); }
.mm-review-logo { display: flex; align-items: center; justify-content: flex-start; height: 56px; }
.mm-review-logo img { max-height: 56px; max-width: 70%; object-fit: contain; }
.mm-review-logo.is-placeholder { justify-content: flex-start; gap: var(--mm-space-3); height: 56px; padding: 0 var(--mm-space-3); border: 1px dashed var(--mm-stone-ink); color: var(--mm-stone-ink); width: max-content; max-width: 100%; }
.mm-review-logo .mm-logo-ph { font-size: 14px; }
.mm-review-logo .mm-logo-ph-name { font-size: 12px; }
.mm-review-quote { margin: 0; font-family: var(--mm-font-body); font-size: 17px; line-height: 1.5; }
.mm-review.is-placeholder .mm-review-quote { color: var(--mm-stone-ink); }
.mm-review-by { margin: auto 0 0; display: flex; flex-direction: column; gap: 2px; padding-top: var(--mm-space-3); border-top: 1px solid var(--mm-marble-line); font-family: var(--mm-font-display); font-size: 13px; }
.mm-review-by strong { font-weight: 800; letter-spacing: 0.02em; }
.mm-review-by span { font-family: var(--mm-font-body); font-size: 13px; color: var(--mm-stone-ink); }
/* ===== Paquetes: rejilla adaptativa; "Ver qué incluye" flota sin mover las demás tarjetas ===== */
.mm-catalog-grid { grid-template-columns: repeat(auto-fill, minmax(270px, 1fr)); }
.mm-catalog-card { position: relative; }
@media (min-width: 560px) {
  .mm-pkg-details > .mm-checklist {
    position: absolute; left: -2px; right: -2px; top: calc(100% - 1px); z-index: 10;
    max-height: min(60vh, 420px); overflow-y: auto; margin: 0;
    padding: clamp(20px, 3vw, 28px);              /* mismo margen interior que las tarjetas */
    scrollbar-gutter: stable both-edges;           /* la barra de desplazamiento no desbalancea los márgenes */
    background: var(--mm-white); border: var(--mm-rule) solid var(--mm-black);
    box-shadow: 0 12px 24px rgba(0, 0, 0, 0.18);
  }
  .mm-pkg-details[open] summary { color: var(--mm-black); }
}
/* ===== Manuales por volumen: escalones y barra de seleccion ===== */
.mm-tiers { display: grid; grid-template-columns: repeat(2, 1fr); gap: var(--mm-space-3); margin-top: var(--mm-space-3); }
@media (min-width: 560px) { .mm-tiers { grid-template-columns: repeat(4, 1fr); } }
@media (min-width: 900px) { .mm-tiers { grid-template-columns: repeat(7, 1fr); } }
.mm-tier { padding: var(--mm-space-3) var(--mm-space-4); background: var(--mm-marble); border: var(--mm-rule) solid var(--mm-marble-line); }
.mm-tier p { margin: 0; }
.mm-tier-n { font-family: var(--mm-font-display); font-size: 13px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-tier-n strong { font-size: 24px; color: var(--mm-black); letter-spacing: 0; }
.mm-tier-price { margin-top: 2px !important; font-family: var(--mm-font-display); font-weight: 800; font-size: 18px; white-space: nowrap; }
.mm-pick { display: flex; align-items: center; gap: var(--mm-space-3); cursor: pointer; flex: 1; min-width: 0; }
.mm-pick input { width: 20px; height: 20px; flex-shrink: 0; accent-color: var(--mm-black); cursor: pointer; }
.mm-pick input:disabled { cursor: not-allowed; }
.mm-buy-item.is-picked { background: var(--mm-white); }
.mm-pickbar {
  position: sticky; bottom: 12px; z-index: 12; margin-top: var(--mm-space-4);
  display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: var(--mm-space-3);
  padding: var(--mm-space-3) var(--mm-space-4); background: var(--mm-white); border: var(--mm-rule) solid var(--mm-black); box-shadow: 0 8px 20px rgba(0, 0, 0, 0.18);
}
.mm-pickbar[hidden] { display: none; }
.mm-pickbar p { margin: 0; font-family: var(--mm-font-body); font-size: 15px; }
.mm-pickbar-price { font-family: var(--mm-font-display); font-weight: 800; font-size: 20px; }
.mm-pickbar-hint { font-size: 13px !important; color: var(--mm-stone-ink); margin-top: 2px !important; }
.mm-pickbar-actions { display: flex; align-items: center; gap: var(--mm-space-4); }
.mm-cart-discount { background: var(--mm-marble); padding-left: var(--mm-space-3); padding-right: var(--mm-space-3); }
.mm-cart-hint { margin: 4px 0 0; font-family: var(--mm-font-body); font-size: 13px; }
/* ===== Acceso: Google y recuperar contraseña ===== */
.mm-auth-or { display: flex; align-items: center; gap: var(--mm-space-3); margin: var(--mm-space-4) 0 0; font-family: var(--mm-font-display); font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-auth-or::before, .mm-auth-or::after { content: ""; flex: 1; height: 1px; background: var(--mm-marble-line); }
.mm-form-msg { margin: 0; }
#forgot-form, #reset-form { margin-top: var(--mm-space-4); display: grid; gap: var(--mm-space-4); }
#forgot-link, #forgot-back { justify-self: start; font-size: 13px; font-family: var(--mm-font-body); }
.mm-header-util[hidden] { display: none; }

/* ===== Header: el icono de cuenta (y el carrito) va hasta el extremo derecho ===== */
.mm-header .mm-logo { order: 1; }
.mm-header nav { order: 2; }
.mm-header .mm-header-util { order: 3; margin-left: var(--mm-space-4); }
.mm-header .mm-menu-btn { order: 2; }
@media (max-width: 760px) {
  .mm-header .mm-menu-btn { order: 2; margin-left: auto; }
  .mm-header .mm-header-util { order: 3; margin-left: 0; }
  .mm-header nav { order: 9; }
}
/* ===== Header: el icono queda pegado a "Contacto", como un enlace más del menú, al final de la fila ===== */
.mm-header .mm-header-util { margin-left: var(--mm-space-2); gap: var(--mm-space-3); }   /* + 16 px de separación del contenedor = 24 px, igual que entre enlaces */
.mm-header .mm-header-util a { width: 24px; height: 40px; }
.mm-header .mm-header-util .mm-cart-count { right: -6px; }
@media (max-width: 760px) {
  .mm-header .mm-header-util { margin-left: 0; }
}
.mm-audit-grid .mm-tag { align-self: flex-start; margin: var(--mm-space-3) 0 0; }

.mm-expert-bio { margin: var(--mm-space-3) 0 0; font-family: var(--mm-font-body); font-size: 14px; line-height: 1.55; color: var(--mm-ink-soft); }

/* ===== Expertos: foto cuadrada ===== */
.mm-expert-photo { display: block; flex: none; width: 84px; height: 84px; object-fit: cover; object-position: 50% 20%; border: var(--mm-rule) solid var(--mm-black); margin: 0; background: var(--mm-marble); }
.mm-expert-photo-ph { display: flex; align-items: center; justify-content: center; background: var(--mm-black); border-color: var(--mm-black); color: var(--mm-gold); }
.mm-experts .mm-cell { display: flex; align-items: flex-start; gap: var(--mm-space-4); padding: var(--mm-space-4); }
.mm-experts .mm-mentor-name { margin: 0; font-size: 16px; }
.mm-experts .mm-mentor-role { margin: 2px 0 0; font-size: 13px; }
.mm-experts .mm-expert-bio { margin-top: var(--mm-space-2); font-size: 13px; line-height: 1.5; }
.mm-cart-fab { position: fixed; right: 20px; bottom: 20px; z-index: 40; display: flex; align-items: center; justify-content: center; width: 58px; height: 58px; background: var(--mm-black); color: var(--mm-bone); border: var(--mm-rule) solid var(--mm-gold); box-shadow: 0 8px 22px rgba(0, 0, 0, 0.35); text-decoration: none; }
.mm-cart-fab:hover, .mm-cart-fab:focus-visible { background: var(--mm-gold); color: var(--mm-black); border-color: var(--mm-gold); }
.mm-cart-fab:focus-visible { outline: 3px solid var(--mm-bone); outline-offset: 3px; }
.mm-cart-fab .mm-cart-count { position: absolute; top: -12px; right: -12px; margin: 0; min-width: 22px; line-height: 22px; font-size: 12px; box-shadow: 0 0 0 2px var(--mm-black); }
.mm-cart-fab.is-bump { animation: mm-fab-bump 0.45s ease; }
@keyframes mm-fab-bump { 0% { transform: scale(1); } 35% { transform: scale(1.18) rotate(-6deg); } 70% { transform: scale(0.96); } 100% { transform: scale(1); } }
@media (prefers-reduced-motion: reduce) { .mm-cart-fab.is-bump { animation: none; } }
@media (max-width: 600px) {
  .mm-cart-fab { right: 14px; bottom: 14px; width: 54px; height: 54px; }
  .mm-toast { bottom: 82px; left: 14px; right: 14px; max-width: none; transform: translate(0, 220%); }
  .mm-toast.is-on { transform: translate(0, 0); }
}
/* ===== Compra sin cuenta ===== */
.mm-guest-note { margin: var(--mm-space-4) 0 0; padding: var(--mm-space-4); background: var(--mm-marble); border-left: 4px solid var(--mm-gold); }
.mm-guest-note p { margin: 0 0 var(--mm-space-3); font-family: var(--mm-font-body); font-size: 14px; line-height: 1.5; }
.mm-guest-note .mm-btn { width: 100%; }
#guest-box .mm-field { margin-top: var(--mm-space-4); }
#guest-box .mm-cart-warn { margin: var(--mm-space-2) 0 0; }
.mm-guest-save { margin-top: var(--mm-space-6); padding: clamp(20px,3vw,32px); background: var(--mm-black); border: var(--mm-rule) solid var(--mm-gold); max-width: 640px; }
.mm-guest-save .mm-btn { background: var(--mm-gold); border-color: var(--mm-gold); color: var(--mm-black); }
.mm-guest-save .mm-btn:hover { background: var(--mm-gold-soft); border-color: var(--mm-gold-soft); }
.mm-guest-save .mm-field { color: var(--mm-bone); }
.mm-guest-form { display: grid; gap: var(--mm-space-4); margin: var(--mm-space-4) 0; }
/* Expertos: siempre los tres en una fila, completos dentro de la pantalla (en móvil, foto arriba y texto centrado) */
.mm-experts { grid-template-columns: repeat(3, minmax(0, 1fr)); }
@media (max-width: 899px) {
  .mm-experts .mm-cell { flex-direction: column; align-items: center; text-align: center; gap: var(--mm-space-3); padding: var(--mm-space-3); }
  .mm-experts .mm-expert-photo { width: min(96px, 100%); height: auto; aspect-ratio: 1; }
  .mm-experts .mm-expert-bio { display: none; }
}
@media (max-width: 599px) {
  .mm-experts .mm-cell { padding: var(--mm-space-3) 6px; gap: 8px; }
  .mm-experts .mm-expert-photo { width: min(72px, 100%); }
  .mm-experts .mm-mentor-name { font-size: 12.5px; line-height: 1.2; overflow-wrap: anywhere; }
  .mm-experts .mm-mentor-role { font-size: 11px; line-height: 1.25; }
}.mm-expert-photo-cut { background: transparent; }

/* ===== Página del chef (chef-adrian.html) ===== */
.mm-expert-link { display: inline-block; margin-top: 6px; font-family: var(--mm-font-display); font-weight: 600; font-size: 12px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); text-decoration: underline; text-underline-offset: 3px; }
.mm-expert-link:hover, .mm-expert-link:focus-visible { color: var(--mm-black); }
.mm-chef-hero { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 300px); gap: var(--mm-space-8); align-items: center; }
.mm-chef-photo { display: block; width: 100%; max-width: 300px; height: auto; aspect-ratio: 1; object-fit: cover; object-position: 50% 15%; border: var(--mm-rule) solid var(--mm-gold); justify-self: end; }
.mm-chef-note { font-size: 14px; margin: var(--mm-space-2) 0 0; }
.mm-chef-cols { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 300px); gap: var(--mm-space-12, 56px); align-items: start; }
.mm-cv { list-style: none; margin: var(--mm-space-6) 0 0; padding: 0; border-left: var(--mm-rule) solid var(--mm-black); }
.mm-cv li { position: relative; padding: 0 0 var(--mm-space-6) var(--mm-space-6); }
.mm-cv li::before { content: ""; position: absolute; left: -7px; top: 6px; width: 12px; height: 12px; background: var(--mm-gold); border: 2px solid var(--mm-black); }
.mm-cv-when { margin: 0; font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-wine); }
.mm-cv-role { margin: 2px 0 0; font-family: var(--mm-font-display); font-weight: 800; font-size: 17px; }
.mm-cv-what { margin: 4px 0 0; font-family: var(--mm-font-body); font-size: 15px; color: var(--mm-ink-soft); max-width: 62ch; }
.mm-chef-steps { margin-top: var(--mm-space-8); }
.mm-chef-steps ol { margin: var(--mm-space-3) 0 0; padding-left: 1.2em; font-family: var(--mm-font-body); display: grid; gap: var(--mm-space-2); max-width: 70ch; }
@media (max-width: 820px) {
  .mm-chef-hero, .mm-chef-cols { grid-template-columns: minmax(0, 1fr); }
  .mm-chef-photo { justify-self: start; max-width: 220px; order: -1; }
}
/* ===== Vista de pedidos (admin-pedidos.html) ===== */
.mm-adm-key { display: grid; gap: var(--mm-space-4); max-width: 420px; margin-top: var(--mm-space-4); }
.mm-adm-stats { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: var(--mm-space-3); margin: var(--mm-space-4) 0; }
.mm-adm-stat { border: var(--mm-rule) solid var(--mm-black); background: var(--mm-white); padding: var(--mm-space-4); display: grid; gap: 2px; min-width: 0; }
.mm-adm-stat b { font-family: var(--mm-font-logo); font-weight: 400; font-size: 32px; line-height: 1; overflow-wrap: anywhere; }
.mm-adm-stat span { font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; }
.mm-adm-stat small, .mm-adm-sub { display: block; font-size: 12px; color: var(--mm-stone-ink); }
.mm-adm-tools { display: flex; flex-wrap: wrap; gap: var(--mm-space-3); align-items: center; margin-bottom: var(--mm-space-4); }
.mm-adm-tools .mm-search { flex: 1 1 260px; min-width: 0; }
.mm-adm-wrap { overflow-x: auto; border: var(--mm-rule) solid var(--mm-black); background: var(--mm-white); }
.mm-adm-table { border-collapse: collapse; width: 100%; min-width: 720px; font-family: var(--mm-font-body); font-size: 14px; }
.mm-adm-table th { text-align: left; font-family: var(--mm-font-display); font-weight: 700; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; padding: 10px 12px; border-bottom: var(--mm-rule) solid var(--mm-black); white-space: nowrap; }
.mm-adm-table td { padding: 10px 12px; border-bottom: 1px solid var(--mm-marble-line); vertical-align: top; overflow-wrap: anywhere; }
.mm-adm-table tr:last-child td { border-bottom: 0; }
.mm-adm-num { white-space: nowrap; text-align: right; font-variant-numeric: tabular-nums; }
.mm-adm-pill { display: inline-block; padding: 2px 8px; font-family: var(--mm-font-display); font-weight: 700; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; border: 1px solid var(--mm-black); white-space: nowrap; }
.mm-adm-pill.is-paid { background: var(--mm-black); color: var(--mm-bone); }
.mm-adm-pill.is-expired { color: var(--mm-stone-ink); border-color: var(--mm-stone-ink); }.mm-adm-key[hidden] { display: none; }
.mm-chef-photo-cut { background: var(--mm-marble); }
.mm-chef-stats .mm-stat { flex: 1 1 170px; padding: clamp(16px,2vw,24px); }
.mm-chef-stats .mm-stat-num { font-size: clamp(30px, 3.4vw, 44px); overflow-wrap: anywhere; }

/* Historia: segundo fundador (foto a la derecha en pantallas anchas) y firma bajo cada texto */
@media (min-width: 641px) { .mm-founder-rev { grid-template-columns: 1fr 300px; } }
.mm-founder-sign { font-family: var(--mm-font-display) !important; font-weight: 600; font-size: 12px !important; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); margin-top: var(--mm-space-4) !important; }
.mm-founder-sign a { color: inherit; text-decoration: underline; text-underline-offset: 3px; }
.mm-founder-sign a:hover, .mm-founder-sign a:focus-visible { color: var(--mm-black); }

/* Expertos: bloque propio y mapa de quién trabaja cada área */
.mm-experts-section { background: var(--mm-white); }
.mm-experts-section .mm-cell { background: var(--mm-marble); }
.mm-area-map { list-style: none; margin: var(--mm-space-3) 0 0; padding: var(--mm-rule); display: flex; flex-wrap: wrap; gap: var(--mm-rule); background: var(--mm-black); }
.mm-area-map li { flex: 1 1 170px; display: grid; gap: 4px; padding: var(--mm-space-4); background: var(--mm-white); min-width: 0; }
.mm-area-name { font-family: var(--mm-font-display); font-weight: 600; font-size: 11px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-area-map a { font-family: var(--mm-font-display); font-weight: 800; font-size: 16px; color: var(--mm-black); text-decoration: underline; text-underline-offset: 3px; overflow-wrap: anywhere; }
.mm-area-map a:hover, .mm-area-map a:focus-visible { color: var(--mm-wine); }

/* ===== Clientes: barra de logos que se desplaza sola en bucle ===== */
.mm-marquee { margin-top: var(--mm-space-6); overflow: hidden; border-block: var(--mm-rule) solid var(--mm-black); background: var(--mm-white);
  -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); }
.mm-marquee[hidden] { display: none; }
.mm-marquee-track { display: flex; width: max-content; animation: mm-marquee 36s linear infinite; }
.mm-marquee:hover .mm-marquee-track { animation-play-state: paused; }
.mm-marquee-group { display: flex; flex: none; align-items: center; gap: clamp(24px, 5vw, 64px); margin: 0; padding: var(--mm-space-4) clamp(12px, 2.5vw, 32px); list-style: none; }
.mm-marquee-group li { flex: none; }
.mm-marquee-group img { display: block; height: clamp(64px, 9vw, 96px); width: auto; }
@keyframes mm-marquee { from { transform: translateX(0); } to { transform: translateX(calc(-100% / var(--mm-copies, 2))); } }
@media (prefers-reduced-motion: reduce) {
  .mm-marquee { overflow-x: auto; -webkit-mask-image: none; mask-image: none; }
  .mm-marquee-track { animation: none; }
  .mm-marquee-group[aria-hidden="true"] { display: none; }
}

/* Logos de clientes: versión de un solo tono (misma escala visual) y, al pasar el cursor o tocar, su color original */
.mm-marquee-group li { position: relative; }
.mm-marquee-group .mm-logo-mono { opacity: 0.8; transition: opacity 0.25s ease; }
.mm-marquee-group .mm-logo-color { position: absolute; inset: 0; opacity: 0; transition: opacity 0.25s ease; }
.mm-marquee-group li:hover .mm-logo-color, .mm-marquee-group li:focus-within .mm-logo-color { opacity: 1; }
.mm-marquee-group li:hover .mm-logo-mono, .mm-marquee-group li:focus-within .mm-logo-mono { opacity: 0; }
@media (prefers-reduced-motion: reduce) { .mm-marquee-group .mm-logo-mono, .mm-marquee-group .mm-logo-color { transition: none; } }

/* Emprendimientos: cuatro logos por fila, a color y sin recuadro */
@media (min-width: 900px) { .mm-logos-4 { grid-template-columns: repeat(4, 1fr); } .mm-logos-5 { grid-template-columns: repeat(5, 1fr); } }
@media (max-width: 899px) { .mm-logos-5 .mm-logo-cell:last-child { grid-column: 1 / -1; justify-self: center; width: 50%; } }
.mm-logos .mm-logo-cell:not(.is-placeholder) img { width: 100%; height: auto; max-width: 100%; max-height: none; }
/* Emprendimientos: logos sin recuadro, directamente sobre el fondo */
.mm-logos .mm-logo-cell:not(.is-placeholder) { border: 0; background: transparent; aspect-ratio: auto; padding: var(--mm-space-3) var(--mm-space-4); }

/* Lema destacado bajo el título de una sección (Mentores) */
.mm-slogan { margin: var(--mm-space-2) 0 var(--mm-space-4); font-family: var(--mm-font-logo); font-weight: 400; font-size: clamp(30px, 5vw, 54px); line-height: 1; letter-spacing: 0.04em; text-transform: uppercase; color: var(--mm-wine); text-wrap: balance; }

/* Descargables: imagen de manuales y hojas impresos junto al título */
.mm-hero-mockup { display: block; width: 100%; max-width: 560px; height: auto; margin: var(--mm-space-6) auto 0; justify-self: center; }
@media (min-width: 900px) { .mm-hero-mockup { margin-top: 0; max-width: none; } }
@media (min-width: 900px) { .mm-hero-grid-wide { grid-template-columns: 1fr 1.05fr; } }

/* Historia: foto del chef a cuerpo más ancho (con brazos), anclada abajo y con un pequeño desborde a la izquierda en pantallas anchas */
@media (min-width: 641px) { .mm-founder-wide { grid-template-columns: 340px 1fr; } }
.mm-founder-wide .mm-founder-photo { display: flex; align-items: flex-end; align-self: end; height: auto; min-height: 0; }
.mm-founder-wide .mm-founder-photo img { width: 100%; height: auto; object-fit: contain; }
@media (min-width: 1100px) {
  .mm-founder-wide { grid-template-columns: 330px 1fr; }
  .mm-founder-wide .mm-founder-photo { width: 430px; margin-left: -70px; }
}
@media (max-width: 640px) { .mm-founder-wide .mm-founder-photo { order: 2; } }

/* MixMix App: maqueta de la app en la portada de la página y lista de "hoy" con marcas rojas */
.mm-checklist-no li::before { content: "\2715"; color: var(--mm-wine); }
.mm-app-shot { background: var(--mm-white); color: var(--mm-black); border: 1px solid var(--mm-stone-onblack); box-shadow: 0 18px 40px rgba(0, 0, 0, 0.35); overflow: hidden; font-family: var(--mm-font-display); }
.mm-app-bar { display: flex; align-items: center; gap: 6px; padding: 9px 12px; background: var(--mm-marble); border-bottom: 1px solid var(--mm-marble-line); }
.mm-app-bar i { width: 9px; height: 9px; border-radius: 50%; background: var(--mm-stone); display: block; }
.mm-app-bar span { margin-left: 8px; font-size: 10px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-app-body { display: grid; grid-template-columns: 112px minmax(0, 1fr); min-height: 260px; }
.mm-app-side { background: var(--mm-marble); border-right: 1px solid var(--mm-marble-line); padding: 12px 10px; display: flex; flex-direction: column; gap: 6px; font-size: 10px; color: var(--mm-stone-ink); }
.mm-app-side b { font-size: 8px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-wine); margin-top: 4px; }
.mm-app-side span { padding: 3px 6px; }
.mm-app-side span.on { background: var(--mm-black); color: var(--mm-bone); font-weight: 700; }
.mm-app-main { padding: 14px; }
.mm-app-cards { display: grid; grid-template-columns: repeat(3, 1fr); gap: 8px; }
.mm-app-card { border: 1px solid var(--mm-marble-line); padding: 8px 10px; }
.mm-app-card small { display: block; font-size: 8px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
.mm-app-card strong { display: block; font-size: 17px; font-weight: 800; margin-top: 2px; }
.mm-app-card.on { background: var(--mm-black); border-color: var(--mm-black); color: var(--mm-bone); }
.mm-app-card.on small { color: var(--mm-stone-onblack); }
.mm-app-rows { margin-top: 12px; border: 1px solid var(--mm-marble-line); }
.mm-app-rows > div { display: grid; grid-template-columns: 1fr auto auto; gap: 10px; padding: 7px 10px; font-size: 10.5px; border-bottom: 1px solid var(--mm-marble-line); }
.mm-app-rows > div:last-child { border-bottom: 0; }
.mm-app-rows > .h { background: var(--mm-marble); font-weight: 700; font-size: 8px; letter-spacing: var(--mm-track-label); text-transform: uppercase; color: var(--mm-stone-ink); }
@media (max-width: 520px) { .mm-app-body { grid-template-columns: 1fr; } .mm-app-side { display: none; } }
