/* Versátil Shop — estilos de los componentes reutilizables (Fase 2).
   Se carga junto a css/storefront.css; usa sus tokens (--accent, --ink, --paper, --line). */

/* ── WhatsAppCTA ────────────────────────────────────────────────────── */
.wa-cta{gap:10px;min-height:48px}
.wa-cta .wa-cta-icon{width:20px;height:20px;flex-shrink:0}
.wa-cta .wa-cta-icon svg{width:20px;height:20px;fill:currentColor;stroke:none}

/* ── ZoneSelector ───────────────────────────────────────────────────── */
.zone-selector{display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}
.zone-selector-title{margin:0;font-size:18px;font-weight:600;letter-spacing:-.3px}
.zone-field{display:flex;flex-direction:column;gap:7px}
.zone-field label{font-size:12px;font-weight:600;color:var(--muted)}
.zone-field select{appearance:auto;width:100%;min-height:48px;padding:10px 14px;font-size:15px;color:var(--ink);background:var(--paper);border:1px solid var(--line);border-radius:6px}
.zone-field select:disabled{color:var(--muted);background:#f1f1ec}
.zone-result{border:1px solid #bfd8ae;background:#f4f9ef;border-radius:8px;padding:20px}
.zone-result-ok{font-size:16px;font-weight:600;margin:0 0 14px}
.zone-result-list{list-style:none;margin:0 0 12px;padding:0;display:flex;flex-direction:column;gap:8px;font-size:14px}
.zone-result-list li strong{font-weight:600;margin-right:6px}
.zone-result-promise{font-size:13px;color:var(--muted);margin:0 0 12px}
.zone-badge{display:inline-flex;align-items:center;font-size:12px;font-weight:600;color:#1e6b2e;background:#e3f2df;border:1px solid #bcd9b5;border-radius:30px;padding:7px 13px;margin-bottom:16px}
.zone-result-cta{display:flex;flex-wrap:wrap;gap:10px}
.zone-not-listed{margin:0;font-size:13px;color:var(--muted)}
.zone-not-listed-link{display:inline-flex;font-size:13px;padding:0;min-height:0;background:none;color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.zone-selector-error{color:var(--muted);margin:0}
@media(max-width:700px){.zone-selector{padding:18px}.zone-result{padding:16px}}

/* ── CompatibilityChecker ───────────────────────────────────────────── */
.compat-checker{display:flex;flex-direction:column;gap:16px;padding:24px;background:var(--white);border:1px solid var(--line);border-radius:var(--radius)}
.compat-pregunta{margin:0;font-size:15px;font-weight:600}
.compat-opciones{display:flex;flex-wrap:wrap;gap:10px}
.compat-option{min-height:48px;padding:10px 22px;font-size:15px;font-weight:600;color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:30px;transition:border-color .15s ease,background .15s ease}
.compat-option:hover{border-color:var(--accent);background:#fff}
.compat-resultado{border:1px solid #bfd8ae;background:#f4f9ef;border-radius:8px;padding:20px}
.compat-mensaje{margin:0 0 10px;font-size:15px;line-height:1.7}
.compat-nota{margin:0 0 16px;font-size:13px;color:var(--muted)}
.compat-cta{margin-bottom:14px}
.compat-reset{background:none;border:0;color:var(--muted);font-size:12px;text-decoration:underline;text-underline-offset:4px;padding:6px 0}
.compat-error{color:var(--muted);margin:0}
@media(max-width:700px){.compat-checker{padding:18px}.compat-resultado{padding:16px}}

/* ── DeliveryLog ────────────────────────────────────────────────────── */
.delivery-log{display:flex;flex-direction:column;gap:16px}
.delivery-log-counter{display:inline-flex;align-self:flex-start;font-size:13px;font-weight:600;color:#40553e;background:#eef3ea;border:1px solid #d3dacc;border-radius:30px;padding:8px 15px;margin:0}
.delivery-log-aviso{font-size:12px;color:#7a5b2e;background:#fbf3e2;border:1px solid #ead9b8;border-radius:6px;padding:10px 14px;margin:0}
.delivery-log-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.delivery-log-entry{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:16px 18px}
.delivery-log-line{margin:0;font-size:14px;line-height:1.7;overflow-wrap:anywhere}
.delivery-log-photo{margin:12px 0 0}
.delivery-log-photo img{width:100%;max-width:420px;border-radius:6px;aspect-ratio:4/3;object-fit:cover}
.delivery-log-photo figcaption{font-size:11px;color:var(--muted);margin-top:6px}
.delivery-log-more{align-self:flex-start;min-height:44px;padding:9px 18px;font-size:13px;font-weight:600;color:var(--ink);background:none;border:1.5px solid var(--ink);border-radius:30px}
.delivery-log-more:hover{background:var(--ink);color:#fff}
.delivery-log-error{color:var(--muted);margin:0}

/* ── TrustBadges ────────────────────────────────────────────────────── */
.trust-badges{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.trust-badge{border:1px solid var(--line);background:var(--white);border-radius:8px}
.trust-badge-link{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:18px;height:100%}
.trust-badge-link:hover{border-color:var(--accent)}
.trust-badge-body{display:flex;flex-direction:column;gap:6px;min-width:0}
.trust-badge-body svg{width:26px;height:26px;color:var(--accent)}
.trust-badge-body strong{font-size:15px;font-weight:650;letter-spacing:-.2px}
.trust-badge-body span{font-size:12px;color:var(--muted);line-height:1.5}
.trust-badge-arrow{font-size:15px;color:var(--accent)}
.trust-badge:not(:has(.trust-badge-link)) .trust-badge-body{padding:18px}
@media(max-width:900px){.trust-badges{grid-template-columns:1fr}.trust-badge-link,.trust-badge:not(:has(.trust-badge-link)) .trust-badge-body{padding:15px 17px}}

/* ── Página temporal de desarrollo ──────────────────────────────────── */
.dev-banner{background:#202321;color:#f6f5f1;font-size:12px;letter-spacing:.4px;text-align:center;padding:9px 16px}
.dev-stage{padding:44px 0;border-bottom:1px solid var(--line)}
.dev-stage h2{font-size:clamp(24px,2.6vw,34px);font-weight:500;letter-spacing:-1.2px;margin:0 0 6px}
.dev-stage p.dev-desc{color:var(--muted);font-size:14px;max-width:640px;margin:0 0 22px}
.dev-row{display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.dev-note{font-size:11px;color:var(--muted);margin-top:14px}

/* ── PriceBlock (precio al estilo dominicano) ───────────────────────── */
.price-block{display:flex;flex-direction:column;gap:8px;align-items:flex-start}
.price-block-badge{display:inline-flex;font-size:11px;font-weight:700;letter-spacing:.8px;color:#fff;background:var(--accent);border-radius:4px;padding:4px 10px}
.price-block-linea{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0}
.price-block-oferta{font-size:clamp(32px,3.4vw,44px);font-weight:700;letter-spacing:-1.4px;line-height:1}
.price-block-regular{font-size:18px;color:var(--muted);text-decoration:line-through}
.price-block-ahorro{margin:0;font-size:14px;font-weight:700;color:#1e6b2e;background:#e3f2df;border:1px solid #bcd9b5;border-radius:30px;padding:6px 13px}
.price-block-confianza{margin:0;font-size:13px;line-height:1.7;color:var(--muted);max-width:460px}
.price-block-error{margin:0;color:var(--muted)}
.mups-hero .price-block{gap:10px}
.mups-hero .price-block-oferta{color:#f6f5f1}
.mups-hero .price-block-regular{color:#a5ad9f}
.mups-hero .price-block-ahorro{color:#0f2d1a;background:#c9e6c0;border-color:#9fbf92}
.mups-hero .price-block-confianza{color:#c9d2c3}
.mups-seriedad{margin-top:22px;max-width:860px}

/* ── SeriedadStack ──────────────────────────────────────────────────── */
.seriedad-stack{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.seriedad-item{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:18px;display:flex;flex-direction:column;gap:8px}
.seriedad-icono{font-size:22px;line-height:1}
.seriedad-item strong{font-size:14px;font-weight:650;letter-spacing:-.2px;line-height:1.45}
.seriedad-item p{margin:0;font-size:12px;line-height:1.6;color:var(--muted)}
@media(max-width:900px){.seriedad-stack{grid-template-columns:1fr}}
@media(max-width:640px){.seriedad-stack{grid-template-columns:1fr}}

/* ── ContraEntregaSection ───────────────────────────────────────────── */
.contra-entrega-section{display:flex;flex-direction:column;gap:18px}
.contra-entrega-titulo{font-size:clamp(22px,2.6vw,30px);font-weight:650;letter-spacing:-.8px;margin:0}
.contra-entrega-pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.contra-entrega-pasos li{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);background:var(--white);border-radius:8px;padding:20px}
.contra-entrega-numero{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.5px}
.contra-entrega-pasos p{margin:0;font-size:14px;line-height:1.7;color:#3a3d38}
@media(max-width:900px){.contra-entrega-pasos{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.contra-entrega-pasos{grid-template-columns:1fr}}

/* ── Sede de confianza: home + /nosotros ────────────────────────────── */
.hero-direccion{display:inline-flex;align-items:center;gap:6px;margin:14px 0 0;font-size:14px;font-weight:650;color:#3a3d38}
.home-hero .hero-layout{grid-template-columns:1fr;grid-template-rows:auto;min-height:0}
.home-hero .hero-copy{max-width:820px}
.home-seriedad{padding:44px 0 8px}
.nosotros-historia p{font-size:16px;line-height:1.85;color:#3a3d38;max-width:700px;margin:0 0 14px}
.nosotros-anos{display:inline-flex;font-size:13px;font-weight:650;color:#40553e;background:#eef3ea;border:1px solid #d3dacc;border-radius:30px;padding:8px 15px;margin:6px 0 0}
.nosotros-fotos{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.nosotros-fotos figure{margin:0}
.nosotros-fotos img{width:100%;border-radius:10px;aspect-ratio:16/10;object-fit:cover}
.nosotros-fotos figcaption{font-size:12px;color:var(--muted);margin-top:8px}
.nosotros-entregas-wrap{max-width:860px}
.nosotros-acciones{border:1px solid var(--line);background:var(--white);border-radius:12px;padding:30px;margin:48px 0 60px}
.nosotros-acciones h2{font-size:24px;font-weight:650;letter-spacing:-.6px;margin:0 0 18px}
.nosotros-acciones-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.nosotros-accion{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;border:1.5px solid var(--line);border-radius:10px;padding:24px 16px;min-height:150px;justify-content:center;transition:border-color .15s ease,transform .15s ease}
.nosotros-accion:hover{border-color:var(--accent);transform:translateY(-2px)}
.nosotros-accion span{font-size:30px;line-height:1}
.nosotros-accion strong{font-size:15px;font-weight:700;letter-spacing:.6px}
.nosotros-accion small{font-size:12px;color:var(--muted);line-height:1.5}
@media(max-width:640px){.nosotros-fotos{grid-template-columns:1fr}.nosotros-acciones-grid{grid-template-columns:1fr}.nosotros-acciones{padding:20px}.home-seriedad{padding-top:40px}}

/* ── Páginas de políticas ───────────────────────────────────────────── */
.policy-page{padding:48px 0 80px;max-width:860px}
.policy-head{border-bottom:1px solid var(--line);padding-bottom:26px;margin-bottom:30px}
.policy-head h1{font-size:clamp(30px,3.4vw,46px);font-weight:500;letter-spacing:-1.8px;line-height:1.15;margin:12px 0 14px}
.policy-meta{font-size:12px;color:var(--muted);margin:0}
.policy-chip{display:inline-flex;font-size:12px;font-weight:600;color:#7a5b2e;background:#fbf3e2;border:1px solid #ead9b8;border-radius:30px;padding:7px 14px;margin-top:14px}
.policy-body section{margin:0 0 28px}
.policy-body h2{font-size:19px;font-weight:650;letter-spacing:-.3px;margin:0 0 10px}
.policy-body p{font-size:15px;line-height:1.85;color:#3a3d38;margin:0 0 12px}
.policy-body p:last-child{margin-bottom:0}
.policy-cta{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:26px;margin-top:34px}
.policy-cta h2{font-size:20px;font-weight:650;letter-spacing:-.4px;margin:0 0 6px}
.policy-cta p{font-size:14px;color:var(--muted);margin:0 0 16px}
.policy-error p{color:var(--muted)}
@media(max-width:700px){.policy-page{padding:30px 0 60px}.policy-cta{padding:20px}}

/* ── Footer: dirección, horario, Instagram ──────────────────────────── */
.footer-top{grid-template-columns:1fr .85fr .9fr 1.15fr;gap:30px}
.footer-brand p{margin:0 0 4px;font-size:13px;line-height:1.7;color:#c9cfc2}
.footer-address{display:inline-block;color:#e7eae1!important;font-weight:550;margin:0 0 8px!important;text-decoration:none}.footer-address:hover{color:var(--accent)!important;text-decoration:underline}
.footer-hours{font-size:12px!important;margin:0 0 14px!important}
.footer-tel{display:block;font-size:19px;font-weight:650;color:#e7eae1;letter-spacing:-.4px;margin:0 0 6px}
.footer-tel:hover{color:var(--accent)}
.footer-phone{display:inline-block;margin:0 0 4px;font-size:16px;font-weight:650;color:#e7eae1}
.footer-phone:hover{color:var(--accent)}
.footer-instagram{display:inline-block;margin-left:14px;font-size:13px;color:#c9cfc2;text-decoration:underline;text-underline-offset:4px}
.footer-instagram:hover{color:#e7eae1}
.footer-column a{display:block;font-size:13px;line-height:1.7;color:#c9cfc2;margin:0 0 8px}
.footer-column a:hover{color:#e7eae1}
.footer-policies a{font-size:13px}
.footer-contact h2{font-size:11px;font-weight:500;margin:5px 0 20px;color:#bac2b4}
.footer-contact p{margin:0}

/* ── Página /zonas-de-entrega/ ──────────────────────────────────────── */
.zonas-hero{padding:56px 0 8px;max-width:860px}
.zonas-hero h1{font-size:clamp(30px,3.4vw,46px);font-weight:500;letter-spacing:-1.8px;line-height:1.15;margin:12px 0 14px}
.zonas-intro{font-size:16px;line-height:1.8;color:#3a3d38;max-width:640px}
.zonas-selector-wrap{max-width:640px;padding:30px 0 10px}
.zonas-seccion{padding:56px 0}
.zonas-tabla-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.zonas-tabla{width:100%;border-collapse:collapse;font-size:14px;min-width:640px}
.zonas-tabla th,.zonas-tabla td{padding:14px 16px;text-align:left;vertical-align:top;border-bottom:1px solid var(--line)}
.zonas-tabla thead th{font-size:11px;letter-spacing:1px;text-transform:uppercase;color:var(--muted);background:#f2f3ed}
.zonas-tabla tbody tr:last-child th,.zonas-tabla tbody tr:last-child td{border-bottom:0}
.zonas-tabla tbody th{font-weight:650;white-space:nowrap}
.zonas-tabla-provincia{display:block;font-size:11px;font-weight:400;color:var(--muted);margin-top:2px}
.zonas-tabla td{line-height:1.7;color:#3a3d38}
.zonas-pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.zonas-pasos li{display:flex;flex-direction:column;gap:10px;border:1px solid var(--line);background:var(--white);border-radius:8px;padding:20px}
.zonas-paso-numero{font-size:13px;font-weight:700;color:var(--accent);letter-spacing:.5px}
.zonas-pasos h3{margin:0;font-size:15px;font-weight:650;letter-spacing:-.2px;line-height:1.45}
.zonas-pasos p{margin:0;font-size:13px;line-height:1.7;color:var(--muted)}
.zonas-nota{font-size:13px;line-height:1.8;color:#7a5b2e;background:#fbf3e2;border:1px solid #ead9b8;border-radius:8px;padding:14px 18px;margin:18px 0 0}
.zonas-error{color:var(--muted)}
.cod-zonas{display:flex;flex-direction:column;gap:14px;border:1px solid #bfd8ae;background:#f4f9ef;border-radius:10px;padding:22px}
.cod-zonas-titulo{margin:0;font-size:16px;font-weight:650;letter-spacing:-.2px}
.cod-zonas-lista{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:12px}
.cod-zonas-lista li{display:flex;flex-direction:column;gap:4px;border:1px solid var(--line);background:var(--white);border-radius:8px;padding:13px 16px}
.cod-zonas-lista strong{font-size:16px;font-weight:650;color:#1e6b2e}
.cod-zonas-provincia{font-size:11px;color:var(--muted)}
.cod-zonas-municipios{font-size:12px;line-height:1.7;color:#3a3d38}
.cod-zonas-nota{margin:0;font-size:13px;color:var(--muted)}
.cod-zonas-cta{display:flex;flex-wrap:wrap;gap:10px}
.cod-zonas-enlace{font-size:13px}
.variante-selector{display:flex;flex-direction:column;gap:10px}
.variante-selector-titulo{margin:0;font-size:13px;font-weight:650;color:#3a3d38}
.mups-hero .variante-selector-titulo{color:#d5ddce}
.variante-selector-opciones{display:flex;flex-wrap:wrap;gap:10px}
.variante-chip{display:flex;flex-direction:column;align-items:flex-start;gap:3px;min-height:52px;padding:9px 16px;font-size:14px;font-weight:650;color:var(--ink);background:var(--paper);border:1.5px solid var(--line);border-radius:10px;transition:border-color .15s ease,background .15s ease}
.variante-chip span{font-size:12px;font-weight:600;color:var(--muted)}
.variante-chip:hover{border-color:var(--accent)}
.variante-chip.activa{border-color:var(--accent);background:#fff;box-shadow:0 0 0 3px #efc9a980}
.variante-chip.activa span{color:var(--accent)}
.mups-hero .variante-chip{background:#2c352c;border-color:#454e45;color:#f0f1e9}
.mups-hero .variante-chip span{color:#b7bfae}
.mups-hero .variante-chip.activa{border-color:#e8a33d;box-shadow:0 0 0 3px #e8a33d33}
.mups-variantes,.producto-variantes{margin-top:16px}
@media(max-width:900px){.zonas-pasos{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.zonas-pasos{grid-template-columns:1fr}.zonas-hero{padding-top:36px}.zonas-seccion{padding:36px 0}}

/* ── Página /entregas (registro) ────────────────────────────────────── */
.registro-hero{padding:56px 0 20px;max-width:860px}
.registro-hero h1{font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-1.5px;line-height:1.2;margin:12px 0 14px}
.registro-explicacion{font-size:15px;line-height:1.8;color:#3a3d38;max-width:680px}
.registro-seccion{padding:26px 0 60px;max-width:860px}
.registro-cta{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:26px;margin-bottom:60px;max-width:860px}
.registro-cta h2{font-size:22px;font-weight:650;letter-spacing:-.5px;margin:0 0 6px}
.registro-cta p{font-size:14px;color:var(--muted);margin:0 0 16px}
@media(max-width:640px){.registro-hero{padding-top:36px}}

/* ── Página /nosotros/ ──────────────────────────────────────────────── */
.nosotros-hero{padding:56px 0 8px;max-width:860px}
.nosotros-hero h1{font-size:clamp(30px,3.4vw,46px);font-weight:500;letter-spacing:-1.8px;line-height:1.15;margin:12px 0 16px}
.nosotros-parrafos p{font-size:16px;line-height:1.85;color:#3a3d38;max-width:700px;margin:0 0 14px}
.nosotros-seccion{padding:36px 0 8px;max-width:860px}
.nosotros-foto{margin:0}
.nosotros-foto img{width:100%;max-width:720px;border-radius:8px;aspect-ratio:16/10;object-fit:cover}
.nosotros-foto figcaption{font-size:12px;color:var(--muted);margin-top:8px}
.nosotros-mapa{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:26px;max-width:720px}
.nosotros-mapa h2{font-size:20px;font-weight:650;letter-spacing:-.4px;margin:0 0 8px}
.nosotros-mapa-direccion{font-size:15px;color:#3a3d38;margin:0 0 16px}
.nosotros-datos-titulo{font-size:20px;font-weight:650;letter-spacing:-.4px;margin:0 0 14px}
.nosotros-datos p{font-size:15px;line-height:1.8;color:#3a3d38;margin:0 0 8px}
.nosotros-cta{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:26px;margin:40px 0 60px;max-width:860px}
.nosotros-cta h2{font-size:22px;font-weight:650;letter-spacing:-.5px;margin:0 0 6px}
.nosotros-cta p{font-size:14px;color:var(--muted);margin:0 0 16px}
.nosotros-cta-botones{display:flex;flex-wrap:wrap;gap:12px}
@media(max-width:640px){.nosotros-hero{padding-top:36px}}

/* ── Landing /mini-ups/ ─────────────────────────────────────────────── */
.mups-hero{background:#252d26;color:#f6f5f1;padding:64px 0 40px}
.mups-hero-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:48px;align-items:center}
.mups-hero-copy h1{font-size:clamp(34px,4.6vw,62px);font-weight:500;letter-spacing:-2.4px;line-height:1.05;margin:14px 0 18px}
.mups-subtitulo{font-size:16px;line-height:1.8;color:#d5ddce;max-width:560px;margin:0 0 22px}
.mups-hero .eyebrow.light{color:#eab383}
.mups-precio-linea{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap}
.mups-precio-oferta{font-size:clamp(30px,3vw,40px);font-weight:650;letter-spacing:-1.2px}
.mups-precio-regular{font-size:18px;color:#8f9689;text-decoration:line-through}
.mups-hero .mups-precio-regular{color:#a5ad9f}
.mups-precio-chip{font-size:12px;font-weight:700;color:#1e6b2e;background:#e3f2df;border-radius:30px;padding:5px 11px}
.mups-hero .mups-precio-chip{color:#0f2d1a;background:#c9e6c0}
.mups-precio-nota{font-size:12px;color:#8f9689;margin:8px 0 0}
.mups-hero .mups-precio-nota{color:#a5ad9f}
.mups-hero-acciones{display:flex;flex-wrap:wrap;gap:12px;margin:22px 0 18px}
.btn-outline-light{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:48px;padding:10px 20px;border-radius:30px;font-size:14px;font-weight:600;border:1.5px solid #f6f5f1;color:#f6f5f1;background:none;transition:background .15s ease,color .15s ease}
.btn-outline-light:hover{background:#f6f5f1;color:#202321}
.mups-badge-destacado{display:inline-flex;font-size:13px;font-weight:600;color:#f6e9c9;background:#3d463c;border:1px solid #5a6459;border-radius:30px;padding:7px 14px;margin:0}
.mups-hero-visual{margin:0}
.mups-hero-visual img{width:100%;max-width:520px;margin-inline:auto;border-radius:14px;background:#fff}
.mups-hero-visual figcaption{font-size:11px;color:#a5ad9f;text-align:center;margin-top:10px}
.mups-hero-badges{margin-top:36px}
.mups-hero-badges .trust-badge{background:#2c352c;border-color:#454e45}
.mups-hero-badges .trust-badge-body span{color:#b7bfae}
.mups-hero-badges .trust-badge-body strong{color:#f0f1e9}
.mups-dolor{padding:72px 0 8px;max-width:860px;text-align:center}
.mups-dolor h2{font-size:clamp(26px,3.2vw,40px);font-weight:500;letter-spacing:-1.4px;line-height:1.25;margin:0 0 16px}
.mups-dolor p{font-size:16px;line-height:1.85;color:#3a3d38;max-width:680px;margin:0 auto}
.mups-seccion{padding:64px 0 0}
.mups-beneficios{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.mups-beneficio{display:flex;gap:10px;border:1px solid var(--line);background:var(--white);border-radius:8px;padding:18px;font-size:14px;line-height:1.7;color:#3a3d38}
.mups-beneficio::before{content:'✓';flex-shrink:0;font-weight:700;color:#1e6b2e}
.mups-compat-wrap,.mups-zona-wrap,.mups-entregas-wrap{max-width:640px}
.mups-autonomia-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:860px}
.mups-autonomia-card{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:22px}
.mups-autonomia-card h3{font-size:16px;font-weight:650;letter-spacing:-.2px;margin:0 0 10px}
.mups-autonomia-card p{font-size:15px;line-height:1.8;color:#3a3d38;margin:0}
.mups-compatibles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}
.mups-compatibles li{font-size:14px;line-height:1.6;color:#3a3d38;padding-left:18px;position:relative}
.mups-compatibles li::before{content:'·';position:absolute;left:4px;font-weight:700;color:var(--accent)}
.mups-disclaimer{font-size:12px;color:var(--muted);margin:14px 0 0;max-width:860px}
.mups-oferta-wrap{background:#eef0e7;padding:56px 0;margin-top:64px}
.mups-oferta{display:grid;grid-template-columns:1.1fr 1.1fr .9fr;gap:28px;align-items:start}
.mups-oferta-main h2{font-size:clamp(26px,3vw,38px);font-weight:500;letter-spacing:-1.4px;margin:12px 0 14px}
.mups-segunda-texto{font-size:15px;line-height:1.75;color:#3a3d38;margin:0 0 8px}
.mups-segunda-precio{font-size:20px;font-weight:650;letter-spacing:-.5px;margin:0 0 18px}
.mups-oferta-accion .btn{margin-bottom:12px}
.mups-urgencia{font-size:13px;line-height:1.7;color:var(--muted);margin:0;max-width:340px}
.mups-garantia{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:1fr 1fr;gap:14px;max-width:860px}
.mups-garantia li{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:20px;font-size:15px;line-height:1.7;color:#3a3d38}
.mups-faq{max-width:760px;display:flex;flex-direction:column;gap:10px}
.mups-faq details{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:0 20px}
.mups-faq summary{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:15px;font-weight:600;padding:17px 0;cursor:pointer;list-style:none}
.mups-faq summary::-webkit-details-marker{display:none}
.mups-faq summary span{font-size:20px;color:var(--accent);transition:transform .15s ease}
.mups-faq details[open] summary span{transform:rotate(45deg)}
.mups-faq details p{font-size:14px;line-height:1.8;color:#3a3d38;margin:0;padding:0 0 18px}
.mups-final{background:#252d26;color:#f6f5f1;text-align:center;padding:72px 0;margin-top:64px}
.mups-final h2{font-size:clamp(28px,3.4vw,44px);font-weight:500;letter-spacing:-1.6px;margin:0 0 12px}
.mups-final p{font-size:15px;color:#d5ddce;margin:0 0 24px}
.mups-final-botones{display:flex;justify-content:center}
.mups-fallo{max-width:560px;margin:40px auto;text-align:center;padding:40px 24px}
.mups-fallo h1{font-size:26px;font-weight:500;letter-spacing:-1px;margin:0 0 10px}
.mups-fallo p{color:var(--muted);margin:0 0 20px}
.mups-fallo .btn{display:inline-flex}
@media(max-width:1000px){.mups-hero-grid{grid-template-columns:1fr;gap:32px}.mups-beneficios{grid-template-columns:1fr 1fr}.mups-oferta{grid-template-columns:1fr 1fr}.mups-oferta-accion{grid-column:1/-1}}
@media(max-width:640px){.mups-hero{padding:40px 0 32px}.mups-beneficios,.mups-autonomia-grid,.mups-oferta,.mups-garantia{grid-template-columns:1fr}.mups-dolor{padding-top:48px}.mups-seccion{padding-top:44px}.mups-oferta-wrap{margin-top:44px}}

/* ── Homepage ──────────────────────────────────────────────────────── */
.home-hero{padding-bottom:56px}
.home-zonas{padding:44px 0 8px}
.home-entregas{padding:44px 0 8px}
.home-entregas-wrap{max-width:860px}

/* ── Fichas de producto (/producto/[slug]/) ─────────────────────────── */
.card-badge-destacado{background:#fbf3e2!important;color:#7a5b2e!important;border:1px solid #ead9b8}
.card-badge + .card-badge-destacado{top:40px}
@media(max-width:640px){.card-badge + .card-badge-destacado{top:32px}}
.producto-page{padding:48px 0 80px;max-width:1100px}
.producto-head{border-bottom:1px solid var(--line);padding-bottom:24px;margin-bottom:28px}
.producto-head h1{font-size:clamp(26px,3vw,40px);font-weight:500;letter-spacing:-1.4px;line-height:1.2;margin:12px 0 14px;max-width:760px}
.producto-precio{display:flex;align-items:baseline;gap:12px;flex-wrap:wrap;margin:0 0 8px}
.producto-precio strong{font-size:30px;font-weight:650;letter-spacing:-1px}
.producto-precio del{font-size:17px;color:var(--muted)}
.producto-precio span{font-size:12px;font-weight:700;color:#1e6b2e;background:#e3f2df;border-radius:30px;padding:5px 11px}
.producto-stock-line{font-size:13px;font-weight:600;color:#1e6b2e;margin:0}
.producto-stock-line.is-unavailable{color:#b3422a}
.producto-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:44px;align-items:start}
.producto-visual{margin:0}
.producto-visual img{width:100%;border-radius:10px;background:#fff}
.producto-visual figcaption{font-size:14px;line-height:1.8;color:#3a3d38;margin-top:14px}
.producto-info{display:flex;flex-direction:column;gap:22px}
.producto-bloque h2{font-size:18px;font-weight:650;letter-spacing:-.3px;margin:0 0 8px}
.producto-bloque p{font-size:15px;line-height:1.8;color:#3a3d38;margin:0}
.producto-compatibles{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:6px}
.producto-compatibles li{font-size:14px;color:#3a3d38;padding-left:18px;position:relative}
.producto-compatibles li::before{content:'·';position:absolute;left:4px;font-weight:700;color:var(--accent)}
.producto-acciones{display:flex;flex-direction:column;align-items:flex-start;gap:10px}
.producto-acciones-nota{font-size:12px;color:var(--muted);margin:0}
.producto-cruz{border:1px solid #ead9b8;background:#fbf3e2;border-radius:8px;padding:16px 18px}
.producto-cruz p{margin:0 0 10px;font-size:14px;color:#7a5b2e}
.producto-acordeones{margin-top:34px;display:flex;flex-direction:column;gap:10px;max-width:860px}
.producto-acordeones details{border:1px solid var(--line);background:var(--white);border-radius:8px;padding:0 20px}
.producto-acordeones summary{display:flex;justify-content:space-between;align-items:center;gap:14px;font-size:15px;font-weight:600;padding:17px 0;cursor:pointer;list-style:none}
.producto-acordeones summary::-webkit-details-marker{display:none}
.producto-acordeones summary span{font-size:20px;color:var(--accent);transition:transform .15s ease}
.producto-acordeones details[open] summary span{transform:rotate(45deg)}
.producto-acordeones details p,.producto-acordeones details li{font-size:14px;line-height:1.8;color:#3a3d38}
.producto-acordeones details>p,.producto-acordeones details>ul,.producto-acordeones details>.producto-acordeon-body,.producto-acordeones details>dl{padding-bottom:18px}
.producto-specs{display:grid;grid-template-columns:auto 1fr;gap:8px 20px;font-size:14px}
.producto-specs dt{color:var(--muted);font-weight:600}
.producto-specs dd{margin:0;color:#3a3d38}
.producto-confianza,.producto-zona{margin-top:44px;max-width:860px}
.producto-confianza h2,.producto-zona h2{font-size:20px;font-weight:650;letter-spacing:-.4px;margin:0 0 16px}
.zone-selector-compacto{padding:18px}
.compat-enlace{display:inline-block;font-size:13px;font-weight:600;color:var(--accent);text-decoration:underline;text-underline-offset:4px;margin:0 0 14px}
.producto-error{max-width:560px;margin:60px auto;text-align:center}
.producto-error h1{font-size:26px;font-weight:500;letter-spacing:-1px;margin:0 0 10px}
.producto-error p{color:var(--muted);margin:0 0 20px}
.producto-error .btn{display:inline-flex}
@media(max-width:860px){.producto-layout{grid-template-columns:1fr;gap:26px}.producto-page{padding:32px 0 60px}}

/* ── Homepage (bloques vivos) ──────────────────────────────────────── */
.home-zonas{padding:56px 0 20px}
.home-zonas .section-heading p{max-width:420px}
.home-zonas-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-zona-card{display:flex;flex-direction:column;gap:8px;border:1px solid var(--line);border-left:4px solid #e8a33d;background:var(--white);border-radius:10px;padding:20px;transition:border-color .15s ease,transform .15s ease,box-shadow .15s ease}
.home-zona-card:hover{border-color:#e8a33d;transform:translateY(-2px);box-shadow:0 6px 18px #e8a33d1f}
.home-zona-card h3{font-size:18px;font-weight:650;letter-spacing:-.3px;margin:0}
.home-zona-provincia{font-size:11px;color:var(--muted)}
.home-zona-card p{font-size:13px;color:#3a3d38;margin:0}
.home-zona-dias{font-size:12px!important;color:var(--muted)!important}.home-zona-dias:empty{display:none}
.home-zona-cod{display:inline-flex;align-self:flex-start;font-size:11px;font-weight:600;color:#1e6b2e;background:#e3f2df;border:1px solid #bcd9b5;border-radius:30px;padding:5px 10px}
.home-seriedad{padding:56px 0 20px}
.home-entregas{padding:56px 0 20px}
.home-entregas-wrap{max-width:860px}
@media(max-width:900px){.home-zonas-grid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.home-zonas,.home-seriedad,.home-entregas{padding-top:40px}.home-zonas-grid{grid-template-columns:1fr}}

/* ── Portada gran ecommerce ───────────────────────────────────────── */
.home-hero{padding:40px 0 22px}
.home-hero .hero-copy h1{font-size:clamp(26px,3.2vw,42px);letter-spacing:-1.6px}
.como-comprar-strip{display:flex;flex-direction:column;gap:16px;border:1px solid var(--line);background:var(--white);border-radius:12px;padding:24px;margin:48px 0 20px}
.como-comprar-cab h2{font-size:20px;font-weight:650;letter-spacing:-.5px;margin:8px 0 0}
.como-comprar-pasos{list-style:none;margin:0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.como-comprar-pasos li{display:flex;align-items:center;gap:10px;border-left:2px solid var(--accent);padding-left:12px}
.como-comprar-pasos span{font-size:12px;font-weight:700;color:var(--accent)}
.como-comprar-pasos strong{font-size:14px;font-weight:650}
.como-comprar-nota{margin:0;font-size:13px;color:var(--muted)}
@media(max-width:700px){.como-comprar-pasos{grid-template-columns:1fr}.como-comprar-pasos li{border-left:0;border-bottom:1px solid var(--line);padding:0 0 10px}.home-hero{padding:32px 0 18px}}

/* Hero compacto en móvil */
@media(max-width:700px){
.home-hero{padding:26px 0 12px}
.home-hero .hero-copy h1{font-size:25px;line-height:1.15;letter-spacing:-1.1px}
.home-hero .hero-meta{font-size:9px}
.hero-direccion{margin-top:8px;font-size:13px}
}

.home-zona-municipios{font-size:13px;font-weight:500;line-height:1.65;color:#4c4f48;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.home-zona-municipios:empty{display:none}

/* ── Asistente flotante 🤖 ─────────────────────────────────────────── */
.asistente-launcher{position:fixed;right:20px;bottom:22px;z-index:40;display:flex;align-items:center;justify-content:center;width:58px;height:58px;border-radius:50%;background:var(--ink);color:#fff;font-size:26px;box-shadow:0 6px 22px #0f2d1a40;transition:transform .15s ease;animation:asistente-pulso 3s ease-in-out infinite}
.asistente-launcher:hover{transform:translateY(-2px);animation-play-state:paused}
@keyframes asistente-pulso{0%,100%{box-shadow:0 0 0 0 rgba(32,35,33,.35)}70%{box-shadow:0 0 0 8px rgba(32,35,33,0)}}
@media(prefers-reduced-motion:reduce){.asistente-launcher{animation:none}}
.asistente-panel{border:0;border-radius:14px;padding:0;max-width:400px;width:calc(100% - 32px);background:var(--paper);color:var(--ink);box-shadow:0 30px 90px #0b120b66;animation:cod-aparecer .22s ease-out}
.asistente-panel::backdrop{background:#10150fb3;backdrop-filter:blur(2px)}
.asistente-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;padding:20px 22px 14px;border-bottom:1px solid var(--line);background:linear-gradient(180deg,#f2efe2,#f6f5f1)}
.asistente-head h2{font-size:21px;font-weight:650;letter-spacing:-.6px;margin:7px 0 0}
.asistente-sub{font-size:13px;color:var(--muted);margin:6px 0 0;line-height:1.6}
.asistente-head .dialog-close{width:40px;height:40px;flex-shrink:0;border:1px solid var(--line);border-radius:50%;background:var(--white);font-size:20px;line-height:1;color:var(--ink)}
.asistente-cuerpo{padding:14px 22px;max-height:56vh;overflow:auto}
.asistente-preguntas{display:flex;flex-direction:column;gap:10px}
.asistente-pregunta{text-align:left;min-height:48px;padding:11px 16px;font-size:14px;font-weight:600;color:var(--ink);background:var(--white);border:1.5px solid var(--line);border-radius:10px;transition:border-color .15s ease}
.asistente-pregunta:hover{border-color:var(--accent)}
.asistente-respuesta{border:1px solid #bfd8ae;background:#f4f9ef;border-radius:10px;padding:16px}
.asistente-respuesta-pregunta{margin:0 0 8px;font-size:13px;font-weight:700;color:#40553e}
.asistente-respuesta-texto{margin:0;font-size:14px;line-height:1.75;color:#3a3d38}
.asistente-volver{background:none;border:0;color:var(--accent);font-size:13px;font-weight:600;text-decoration:underline;text-underline-offset:4px;padding:12px 0 0}
.asistente-foot{padding:14px 22px 20px;border-top:1px solid var(--line)}
.asistente-foot .btn{width:100%}
@media(max-width:700px){.asistente-launcher{right:16px;bottom:16px;width:54px;height:54px;font-size:24px}.asistente-cuerpo{padding:12px 16px;max-height:60vh}}

.como-comprar-pasos li img{width:96px;height:64px;object-fit:cover;border-radius:8px;flex-shrink:0}
.como-comprar-pasos li{display:flex;align-items:center;gap:12px;border-left:0;border-bottom:1px solid var(--line);padding:0 0 12px}
@media(max-width:700px){.como-comprar-pasos li img{width:72px;height:52px}}

/* Barra de acciones del hero */
.home-acciones{display:flex;flex-wrap:wrap;gap:10px;margin:16px 0 0}
@media(max-width:700px){.home-acciones{gap:8px}.home-acciones .btn{min-height:44px;padding:9px 13px;font-size:13px;gap:8px}}

/* ── Ticker pago contra entrega ────────────────────────────────────── */
.utility-bar{height:52px;background:linear-gradient(90deg,#232923,#33291a);font-size:16px}
[data-site-header]{top:-52px}
.utility-inner{display:flex;align-items:center;height:100%;overflow:hidden;white-space:nowrap}
.utility-scroll{display:inline-block;white-space:nowrap;padding-left:100%;animation:cod-marquee 60s linear infinite;will-change:transform}
.utility-scroll::after{content:attr(data-texto);margin-left:90px;font-size:16px;font-weight:700;letter-spacing:.3px;color:#f7bd43;text-shadow:0 0 14px rgba(247,189,67,.45)}
.utility-scroll span{font-size:16px;font-weight:700;letter-spacing:.3px;color:#f7bd43;text-shadow:0 0 14px rgba(247,189,67,.45)}
.utility-scroll:hover{animation-play-state:paused}
@keyframes cod-marquee{from{transform:translateX(0)}to{transform:translateX(-100%)}}
@media(prefers-reduced-motion:reduce){.utility-scroll{animation:none;padding-left:0}.utility-scroll::after{content:none}}
@media(max-width:700px){.utility-bar{height:42px}[data-site-header]{top:-42px}.utility-scroll span,.utility-scroll::after{font-size:13px}}

.card-badge-recomendado{background:#fbf3e2;color:#7a5b2e;border:1px solid #ead9b8}
.card-badge + .card-badge-recomendado{top:40px}
.card-cod-micro{font-size:10px;font-weight:600;color:#1e6b2e;display:block;margin-top:4px}
/* ── Carrusel Destacados Versátil ───────────────────────────────────── */
.destacados-section{padding:40px 0 8px}
.destacados-carousel{position:relative}
.destacados-track{display:flex;gap:16px;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;padding-bottom:8px;scrollbar-width:none}
.destacados-track::-webkit-scrollbar{display:none}
.destacado-card{flex:0 0 100%;scroll-snap-align:start;border:1px solid var(--line);background:var(--white);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.destacado-visual{position:relative;display:block;width:100%;padding-bottom:62.5%;background:#eceee7}
.destacado-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;padding:14px;background:#fff}
.destacado-badge{position:absolute;top:10px;left:10px;background:#fbf3e2;color:#7a5b2e;border:1px solid #ead9b8;font-size:11px;font-weight:700;border-radius:30px;padding:5px 11px}
.destacado-info{padding:12px 14px 14px;display:flex;flex-direction:column;gap:7px;flex:1}
.destacado-info h3{margin:0;font-size:15px;font-weight:650;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.destacado-info h3 a{color:inherit}
.destacado-info h3 a:hover{color:var(--accent)}
.destacado-precio .price-block{gap:4px}
.destacado-precio .price-block-oferta{font-size:22px}
.destacado-precio .price-block-regular{font-size:13px}
.destacado-cod{margin:0;font-size:12px;font-weight:600;color:#1e6b2e}
.destacado-info .btn{margin-top:auto;justify-content:center;min-height:44px}
.destacados-flecha{position:absolute;top:38%;transform:translateY(-50%);width:40px;height:40px;border-radius:50%;background:var(--ink);color:#fff;font-size:18px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 14px #00000033;z-index:2}
.destacados-prev{left:6px}
.destacados-next{right:6px}
.destacados-dots{display:flex;justify-content:center;gap:8px;margin-top:12px}
.destacados-punto{width:8px;height:8px;border-radius:50%;background:#c9cdc4;padding:0}
.destacados-punto.activo{background:var(--accent)}
@media(min-width:700px){.destacado-card{flex:0 0 calc(50% - 8px)}}
@media(min-width:1000px){.destacado-card{flex:0 0 calc(33.333% - 11px)}}
@media(max-width:640px){.destacados-flecha{display:none}}
/* Tarjetas del catálogo: cuadradas y compactas */
.product-open{aspect-ratio:1}
.product-title{display:block;max-height:47px;overflow:hidden}
.card-badge-recomendado{background:#fbf3e2;color:#7a5b2e;border:1px solid #ead9b8}

/* Compactar tarjetas del catálogo */
.product-info{padding:12px 14px 14px;display:flex;flex-direction:column;gap:8px}
.product-title{max-height:47px;font-size:13px}
.product-prices{line-height:1.3}
.card-cod-micro{font-size:10px;margin-top:0}
.product-bottom{margin-top:auto}
.destacado-info h3{-webkit-line-clamp:2}
.destacado-cod{font-size:11px}

@media(max-width:640px){.product-grid{grid-template-columns:1fr 1fr;gap:12px}.product-card{display:flex;flex-direction:column}.product-card .product-open{aspect-ratio:1}.product-card .product-info{padding:8px 10px 10px}.product-card .product-title{min-height:36px}}

.card-cod-overlay{position:absolute;bottom:6px;left:6px;background:#e3f2df;color:#1e6b2e;border:1px solid #bcd9b5;font-size:9px;font-weight:700;border-radius:30px;padding:3px 8px}

@media(max-width:640px){.product-card .product-info{padding:6px 8px 8px;gap:4px}.product-card .product-title{font-size:12px;line-height:1.3}.product-card .product-prices{line-height:1.2}.product-card .product-price{font-size:15px}.product-card .product-old-price{font-size:11px}.product-card .product-add{font-size:11px;padding:6px 7px;min-height:32px;white-space:nowrap}.product-card .product-stock{font-size:10px}}

@media(max-width:640px){.catalog-section .product-card .product-info{padding:6px 8px 8px;gap:4px}.catalog-section .product-card .product-title{font-size:12px;line-height:1.3;min-height:0;max-height:34px;overflow:hidden}.catalog-section .product-card .product-prices{line-height:1.2;margin:2px 0;white-space:nowrap;display:flex;align-items:baseline;gap:6px;flex-wrap:nowrap}.catalog-section .product-card .product-price{font-size:17px;font-weight:700;letter-spacing:-.4px;display:inline}.catalog-section .product-card .product-old-price{font-size:10px}.catalog-section .product-card .product-add{font-size:11px;padding:6px 7px;min-height:30px;line-height:1;white-space:nowrap}.catalog-section .product-card .product-stock{font-size:10px}}

@media(max-width:640px){.catalog-section .product-card .product-bottom{min-height:0;display:flex;align-items:center;justify-content:space-between}}

@media(max-width:640px){.catalog-section .product-card .product-prices{margin:4px 0 6px}.catalog-section .product-card .product-stock{font-size:11px;font-weight:700;color:#1e6b2e}.catalog-section .product-card .product-status{display:flex;flex-direction:column;gap:2px;line-height:1.35;flex:1;min-width:0}.catalog-section .product-card .card-cod-micro{font-size:9px;font-weight:600;color:#3a7d45;white-space:nowrap}.catalog-section .product-card .product-bottom{display:flex;flex-direction:column;gap:3px;padding-top:2px}.catalog-section .product-card .product-bottom-row{display:flex;justify-content:space-between;align-items:center;width:100%}.catalog-section .product-card .product-add{flex:0 1 auto;min-width:0;width:auto;flex-shrink:1}}

.catalog-categories{flex-wrap:wrap}

/* ── Confianza comercial: portada dominicana ─────────────────────── */
.home-hero .hero-layout{grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr);grid-template-rows:auto;min-height:0;gap:42px;align-items:stretch}
.home-hero .hero-copy{max-width:760px;padding:38px 16px 38px 0;display:flex;flex-direction:column;justify-content:center}
.home-hero .hero-copy>.eyebrow{margin-bottom:18px;color:#566052}
.home-hero .hero-copy>p[data-home-subtitulo]{max-width:640px;font-size:17px;line-height:1.7;margin:24px 0 6px;color:#4f554d}
.home-map-link{display:inline-flex;align-items:center;min-height:48px;font-size:13px;font-weight:650;text-decoration:underline;text-underline-offset:5px}
.home-proof{background:#252d26;color:#f5f4ed;border-radius:14px;padding:32px;display:flex;flex-direction:column;box-shadow:0 18px 45px #20232116}
.home-proof-head{border-bottom:1px solid #ffffff2e;padding-bottom:22px}
.home-proof-head span{display:block;font-size:10px;letter-spacing:1.5px;color:#f0a36f;margin-bottom:8px}
.home-proof-head strong{display:block;font-size:24px;line-height:1.25;letter-spacing:-.6px;font-weight:600}
.home-proof ol{list-style:none;margin:0;padding:8px 0}
.home-proof li{display:grid;grid-template-columns:34px 1fr;gap:14px;padding:17px 0;border-bottom:1px solid #ffffff1f}
.home-proof li>span{font-size:11px;color:#f0a36f;padding-top:3px}
.home-proof li strong{display:block;font-size:15px;font-weight:650}
.home-proof li p{font-size:12px;line-height:1.6;color:#cdd2c8;margin:4px 0 0}
.home-proof-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;padding-top:18px;font-size:11px;color:#cdd2c8}
.home-proof-foot a{font-size:15px;font-weight:700;color:#fff;text-decoration:underline;text-underline-offset:4px}
.como-comprar-pasos small{display:block;font-size:11px;line-height:1.5;color:var(--muted);margin-top:3px}
.delivery-log-empty{border:1px solid var(--line);background:var(--white);border-radius:10px;padding:22px;max-width:760px}
.delivery-log-empty strong{display:block;font-size:16px;margin-bottom:7px}
.delivery-log-empty p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.mups-oferta-extra:empty{display:none}

/* Un mensaje estable inspira más confianza que una marquesina cortada. */
.utility-bar{height:44px;font-size:14px}
[data-site-header]{top:-44px}
.utility-scroll{display:block;width:100%;overflow:hidden;text-overflow:ellipsis;text-align:center;white-space:nowrap;padding-left:0;animation:none;transform:none}
.utility-scroll::after{content:none}
.utility-scroll span{font-size:14px;font-weight:700;letter-spacing:.2px;color:#f7bd43;text-shadow:none}

@media(max-width:900px){
  .home-hero .hero-layout{grid-template-columns:1fr;gap:20px}
  .home-hero .hero-copy{padding:20px 0}
  .home-proof{padding:26px}
}
@media(max-width:700px){
  .home-hero .hero-copy>p[data-home-subtitulo]{font-size:14px;line-height:1.65;margin:17px 0 5px}
  .home-proof{padding:22px}
  .home-proof-head strong{font-size:21px}
  .home-proof li{padding:14px 0}
  .home-proof-foot{align-items:flex-start;flex-direction:column;gap:5px}
  .utility-bar{height:38px}
  [data-site-header]{top:-38px}
  .utility-scroll span{font-size:11px}
}

/* ─── Áreas táctiles ≥44px (regla de rendimiento/confianza) ───────────────
   Solo amplía la zona que responde al toque. No cambia tamaños de letra ni la
   maqueta de la tarjeta: usa ::before invisibles o padding con margen negativo.
   Excepción: enlaces del pie y chips de categoría ganan unos px de alto. */
.product-card .product-info .product-title{box-sizing:content-box;padding:7px 0;margin:-7px 0}
.product-card .product-add::before{content:'';position:absolute;left:0;right:0;top:-7px;bottom:-7px}
.destacados-punto{position:relative}
.destacados-punto::before{content:'';position:absolute;top:-18px;bottom:-18px;left:-8px;right:-8px}
.destacado-info h3 a{display:inline-block;padding:12px 0;margin:-12px 0}
.home-proof-foot a{display:inline-block;padding:10px 0;margin:-10px 0}
.site-header .brand,.site-footer .brand{padding:3px 0;margin:-3px 0}
.site-footer .footer-column a{padding:11px 0;margin:0;min-height:44px;box-sizing:border-box}
.site-footer .footer-address{padding:10px 0;margin:-10px 0 -2px!important}
.site-footer .footer-phone{padding:7px 0 11px;margin:-7px 0 4px}
.site-footer .footer-bottom a{display:inline-block;padding:14px 0;margin:-14px 0}
.catalog-categories button.category-btn{min-height:44px}
.catalog-search{padding-top:0;padding-bottom:0}
.catalog-search input{min-height:52px}
.sort-label select{min-height:44px;margin-top:-7px;margin-bottom:-7px}

/* ─── Cajón de pedido: botón secundario "Seguir comprando" ─────────────────
   Contorno, debajo del CTA de WhatsApp; nunca compite con él. Hereda min-height
   ≥48px de .btn y ancho completo de .quote-footer>.btn. */
.quote-footer .quote-continue{margin-top:4px;background:transparent;color:var(--ink);border-color:#b9bcb4}
.quote-footer .quote-continue:hover{background:#e3e6dc}

/* ─── Toast "Agregado a tu pedido" con enlace "Ver pedido" ─────────────────
   El enlace tiene zona táctil de 44px sin agrandar el toast (padding + margen
   negativo). Por encima de modales y del cajón para que siempre se vea. */
#consumerToast.consumer-toast{display:flex;align-items:center;gap:14px;z-index:130}
.consumer-toast-action{flex-shrink:0;background:none;border:0;color:#f6f8ef;font:inherit;font-weight:650;text-decoration:underline;text-underline-offset:4px;padding:12px 4px;margin:-12px -4px;min-height:44px;cursor:pointer;white-space:nowrap}
.consumer-toast-action:hover{color:#ffffff;text-decoration-thickness:2px}

/* ─── Cajón de pedido: la lista no estira el hueco ─────────────────────────
   El bloque de total y botones queda justo debajo de los productos; con muchos
   productos la lista encoge y hace scroll (min-height:0). */
#quoteDrawer .quote-items{flex:0 1 auto;min-height:0}
