/* Outlet Medina — "chrome" del sitio: barra roja, cabecera, menú con paneles, pie, redes y WhatsApp.
   Portado del prototipo (docs/prototipo-web). Todo va con prefijo om- para no chocar con Salient. */

:root{
  --om-rojo:#d7000f; --om-rojo-osc:#a8000c; --om-azul:#2563eb; --om-azul-osc:#1d4ed8;
  --om-tinta:#1b1b1f; --om-gris:#5f6368; --om-linea:#e7e7ea; --om-fondo:#f7f6f4;
  --om-sombra:0 6px 24px rgba(20,20,30,.08);
  --om-fuente:"Inter","Segoe UI",system-ui,-apple-system,Roboto,Helvetica,Arial,sans-serif;
  --om-aviso-h:38px;
}
html{scroll-behavior:smooth}

.om-aviso,.om-header,.om-footer,.om-redes,.om-wsp,.om-mega{font-family:var(--om-fuente);line-height:1.5;color:var(--om-tinta);-webkit-font-smoothing:antialiased}
.om-aviso *,.om-header *,.om-footer *,.om-redes *,.om-mega *{box-sizing:border-box}
.om-header a,.om-footer a,.om-redes a,.om-mega a,.om-aviso a,.om-wsp{text-decoration:none;box-shadow:none;border:0}
.om-header ul,.om-footer ul,.om-mega ul{list-style:none;margin:0;padding:0}
.om-header p,.om-footer p,.om-mega p,.om-footer h4{margin:0;padding:0}
.om-wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.om-nw{white-space:nowrap}

/* barra roja: siempre visible */
.om-aviso{position:sticky;top:0;z-index:40;background:var(--om-rojo);color:#fff;font-size:13.5px;font-weight:600;text-align:center;padding:9px 12px}
.om-aviso span{opacity:.9;font-weight:500}
.om-aviso a.om-aviso-l{color:#fff;text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1.5px;font-weight:800}
.om-aviso a.om-aviso-l:hover{text-decoration-thickness:2.5px}

/* cabecera (queda fija justo debajo de la barra roja) */
.om-header{position:sticky;top:var(--om-aviso-h);z-index:20;background:#fff;border-bottom:1px solid var(--om-linea)}
.om-fila{display:grid;grid-template-columns:auto 1fr auto;gap:24px;align-items:center;padding:14px 0}
.om-logo{display:flex;align-items:center}
.om-logo img{height:54px;width:auto;display:block}
.om-buscador{display:flex;background:var(--om-fondo);border:2px solid transparent;border-radius:999px;overflow:hidden;max-width:640px;width:100%;margin:0 auto}
.om-buscador:focus-within{border-color:var(--om-azul);background:#fff}
.om-buscador input[type=search]{flex:1;border:0;background:transparent;padding:13px 20px;font:inherit;outline:0;box-shadow:none;height:auto;margin:0;min-width:0}
.om-buscador button{border:0;background:var(--om-rojo);color:#fff;padding:0 22px;font-weight:700;cursor:pointer;font:inherit;font-weight:700;border-radius:0;box-shadow:none}
.om-acciones{display:flex;gap:18px;align-items:center;font-weight:600;font-size:14px}
.om-acciones a{display:flex;flex-direction:column;align-items:center;font-size:12px;color:var(--om-gris);gap:2px}
.om-acciones svg{width:24px;height:24px;stroke:var(--om-tinta);fill:none;stroke-width:1.8}

/* menú de categorías */
.om-nav{position:relative;border-top:1px solid var(--om-linea)}
.om-nav-list{display:flex;gap:6px;overflow-x:auto;padding:4px 0;scrollbar-width:none}
.om-nav-list li:first-child{margin-left:auto}
.om-nav-list li:last-child{margin-right:auto}
.om-nav-list>li{margin:0;padding:0}
.om-nav-list a{display:block;padding:11px 16px;font-weight:600;font-size:15px;border-radius:10px;white-space:nowrap;color:var(--om-tinta)}
.om-nav-list a:hover{background:var(--om-fondo);color:var(--om-rojo)}
.om-nav-list a.op{color:var(--om-azul)}
.om-nav-list a.op::before{content:"● ";font-size:10px;vertical-align:2px}
.om-nav-list a.act{color:var(--om-rojo);background:var(--om-fondo)}
.om-nav-list li.tiene>a::after{content:"";display:inline-block;width:7px;height:7px;margin:0 0 3px 8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);transition:.15s}
.om-nav-list li.tiene>a.act::after{transform:rotate(225deg);margin-bottom:-2px}

/* paneles desplegables */
.om-mega{position:absolute;left:0;right:0;top:100%;background:#fff;border-top:1px solid var(--om-linea);box-shadow:0 28px 44px -12px rgba(20,20,30,.22);opacity:0;visibility:hidden;transform:translateY(-8px);transition:opacity .18s ease,transform .18s ease,visibility .18s;z-index:25;max-height:calc(100vh - 220px);overflow:auto}
.om-mega.on{opacity:1;visibility:visible;transform:none}
.om-mega-in{display:grid;grid-template-columns:260px 1fr;gap:40px;padding:32px 0 36px;align-items:start}
.om-mega-intro{background:linear-gradient(160deg,#fff5f5,#fdeaea);border:1px solid #f6d3d5;border-radius:18px;padding:24px}
.om-mega-intro small{display:block;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--om-rojo)}
.om-mega-intro b{display:block;font-size:28px;letter-spacing:-.02em;line-height:1.1;margin:6px 0 8px}
.om-mega-intro p{font-size:14px;color:var(--om-gris);margin-bottom:16px}
.om-mega-intro a{display:inline-flex;gap:8px;align-items:center;background:var(--om-rojo);color:#fff;font-weight:700;font-size:14px;padding:10px 18px;border-radius:999px}
.om-mega-intro a:hover{background:var(--om-rojo-osc)}
.om-mega-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,230px));gap:26px 34px;justify-content:center}
.om-mega-cols.om-3{grid-template-columns:repeat(3,minmax(190px,1fr));gap:10px 34px}
.om-mega-cols.om-3 .om-mega-g>a{margin-bottom:0}
@media (max-width:900px){.om-mega-cols.om-3{grid-template-columns:1fr 1fr}}
@media (max-width:480px){.om-mega-cols.om-3{grid-template-columns:1fr}}
.om-mega-sec{grid-column:1/-1;text-align:left;font-size:12px;font-weight:800;letter-spacing:.08em;text-transform:uppercase;color:var(--om-rojo);border-bottom:1px solid var(--om-linea);padding-bottom:6px;margin-top:6px}
.om-mega-sec:first-child{margin-top:0}
.om-mega-g{text-align:center}
.om-mega-g>a{display:block;font-weight:800;font-size:15.5px;padding-bottom:9px;margin-bottom:9px;border-bottom:2px solid var(--om-linea);position:relative;color:var(--om-tinta)}
.om-mega-g>a::after{content:"";position:absolute;left:50%;transform:translateX(-50%);bottom:-2px;width:34px;height:2px;background:var(--om-rojo)}
.om-mega-g>a:hover{color:var(--om-rojo)}
.om-mega-g ul{display:grid;gap:2px;justify-items:center;overflow:visible}
.om-mega-g li{margin:0}
.om-mega-g li a{display:block;font-size:14.5px;color:var(--om-gris);padding:6px 10px;border-radius:8px;transition:.12s}
.om-mega-g li a:hover{color:var(--om-rojo);background:var(--om-fondo)}

/* pie de página */
.om-footer{background:var(--om-tinta);color:#cfcfd6;padding:48px 0 24px;font-size:14.5px}
.om-footer *{color:inherit}
.om-grid-foot{display:grid;grid-template-columns:1.3fr 1fr 1fr 1fr;gap:30px}
.om-footer h4{color:#fff;margin-bottom:12px;font-size:15px;font-weight:700}
.om-footer ul{display:grid;gap:7px}
.om-footer a:hover{color:#fff}
.om-copy{border-top:1px solid #34343b;margin-top:30px;padding-top:18px;font-size:13px;color:#8b8b95;display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px}
.om-copy span{color:#8b8b95}

/* WhatsApp fijo (abajo a la derecha) */
.om-wsp{position:fixed;right:18px;bottom:18px;background:#22c55e;color:#fff;font-weight:800;padding:13px 20px;border-radius:999px;box-shadow:0 8px 24px rgba(0,0,0,.25);z-index:30}
.om-wsp:hover{color:#fff;filter:brightness(.95)}

/* redes fijas: escondidas en el borde derecho; aparecen 3 s al cargar, al tocar/pasar el mouse, y se esconden solas */
.om-redes{position:fixed;right:0;top:50%;z-index:35;display:grid;gap:8px;background:#fff;border:1px solid var(--om-linea);border-right:0;border-radius:18px 0 0 18px;padding:8px 10px 8px 8px;box-shadow:0 10px 30px rgba(20,20,30,.16);transform:translate(calc(100% - 20px),-50%);transition:transform .35s cubic-bezier(.2,.8,.2,1)}
.om-redes.abierta{transform:translate(0,-50%)}
.om-redes::before{content:"‹";position:absolute;left:0;top:50%;transform:translateY(-50%);width:20px;text-align:center;font-size:24px;font-weight:800;color:var(--om-gris);line-height:1;transition:opacity .2s}
.om-redes.abierta::before{opacity:0}
.om-redes a{width:46px;height:46px;border-radius:12px;display:grid;place-items:center;color:var(--om-tinta);background:var(--om-fondo);transition:background .15s,color .15s,transform .15s;margin-left:12px}
.om-redes:not(.abierta) a{pointer-events:none}
.om-redes a:hover{background:var(--om-rojo);color:#fff;transform:scale(1.06)}
.om-redes svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.om-redes svg.f{fill:currentColor;stroke:none}

/* celular y pantallas angostas */
@media (max-width:900px){
  .om-mega{position:fixed;left:0;right:0;top:var(--om-mega-top,200px);max-height:calc(100vh - var(--om-mega-top,200px) - 8px);overflow-y:auto;border-radius:0 0 18px 18px}
  .om-mega-in{grid-template-columns:1fr;gap:18px;padding:20px 0 26px}
  .om-mega-intro{padding:16px 18px}.om-mega-intro b{font-size:22px}.om-mega-intro p{display:none}.om-mega-intro a{margin-top:6px}
  .om-mega-cols{grid-template-columns:1fr 1fr;gap:20px 18px}
  .om-mega-g li a{padding:8px 0}
  .om-grid-foot{grid-template-columns:1fr 1fr}
}
@media (max-width:700px){
  .om-redes{padding:5px 6px 5px 4px;gap:5px;transform:translate(calc(100% - 18px),-50%)}
  .om-redes a{width:38px;height:38px;margin-left:10px}
  .om-redes svg{width:20px;height:20px}
}
@media (max-width:640px){
  .om-logo img{height:46px}
  .om-fila{grid-template-columns:1fr auto;gap:12px}
  .om-buscador{grid-column:1/-1;order:3}
  .om-acciones a .om-cart-count{display:none}
  .om-grid-foot{grid-template-columns:1fr}
}
@media (max-width:480px){.om-mega-cols{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){.om-mega{transition:none}}
@media print{.om-redes,.om-wsp{display:none}}

/* --- Ajustes tras la primera prueba en local (8 oct) --- */
/* quitar viñetas que Salient pone a las listas */
.om-nav-list li,.om-footer li,.om-mega li{list-style:none!important;margin-left:0}
.om-nav-list li::marker,.om-footer li::marker,.om-mega li::marker{content:none}
/* botón del buscador siempre rojo (Salient lo pintaba azul) */
.om-header .om-buscador button{background:var(--om-rojo)!important;color:#fff!important;border:0!important;border-radius:0!important;box-shadow:none!important;text-transform:none;letter-spacing:0}
.om-header .om-buscador button:hover{background:var(--om-rojo-osc)!important}
/* con la sesión de WordPress iniciada aparece la barra de administración (32 px): la barra roja se corre debajo */
body.admin-bar .om-aviso{top:32px}
body.admin-bar .om-header{top:calc(32px + var(--om-aviso-h))}
@media (max-width:782px){body.admin-bar .om-aviso{top:46px}body.admin-bar .om-header{top:calc(46px + var(--om-aviso-h))}}
/* que el botón de WhatsApp no tape el texto del pie */
.om-copy{padding-right:150px}
@media (max-width:640px){.om-copy{padding-right:0;padding-bottom:70px}}

/* Con la sesion de WordPress iniciada algo pisaba "position" de los paneles (quedaban en el flujo y
   estiraban la cabecera a 4190 px). Se refuerza para que siempre floten sobre la pagina. */
.om-header .om-nav .om-mega{position:absolute!important}
@media (max-width:900px){.om-header .om-nav .om-mega{position:fixed!important}}

/* Salient pone body{overflow:hidden}, lo que rompe position:sticky (la barra roja y la cabecera se iban con el scroll).
   "clip" recorta igual pero no crea un contenedor de scroll, así que sticky vuelve a funcionar. */
body{overflow:visible!important;overflow:clip!important}

/* Sin barra de administración (ver om-chrome.js): se quita el hueco reservado y los desplazamientos que lo compensaban */
html.om-sin-admin{margin-top:0!important}
html.om-sin-admin body.admin-bar .om-aviso{top:0}
html.om-sin-admin body.admin-bar .om-header{top:var(--om-aviso-h)}

/* ---- Avisos de WooCommerce (reemplazan el azul de Salient) ---- */
.om-msg{list-style:none!important;margin:0 0 18px!important;padding:14px 18px!important;border:1px solid var(--om-linea)!important;border-left:5px solid var(--om-azul)!important;border-radius:14px!important;background:#f3f7ff!important;color:var(--om-tinta)!important;font-weight:600;font-size:15px;line-height:1.5;display:flex;gap:14px;align-items:center;flex-wrap:wrap;box-shadow:none!important}
.om-msg *{color:inherit}
.om-msg::before{display:none!important}
.om-msg.om-msg-ok{border-left-color:#15803d!important;background:#f0fdf4!important}
.om-msg.om-msg-error{border-left-color:var(--om-rojo)!important;background:#fff5f5!important}
.om-msg li{margin:0!important;list-style:none!important}
.om-msg a.button,.om-msg .button{margin-left:auto;order:2;background:var(--om-azul)!important;color:#fff!important;border-radius:999px!important;padding:9px 18px!important;font-weight:700;float:none!important;text-transform:none!important;box-shadow:none!important}
.om-msg a:not(.button){color:var(--om-azul)!important;font-weight:700;text-decoration:underline}

/* ---- Aviso flotante al agregar al carrito ---- */
.om-toast{position:relative;width:100%;background:#fff;border:1px solid var(--om-linea);border-radius:18px;box-shadow:0 22px 50px rgba(20,20,30,.22);z-index:2000;overflow:hidden;transform:translateY(-12px) scale(.98);opacity:0;transition:.25s ease;font-family:var(--om-fuente);color:var(--om-tinta)}
.om-toast.on{transform:none;opacity:1}
.om-toast *{box-sizing:border-box}
.om-toast-top{display:flex;align-items:center;gap:10px;padding:16px 18px 6px;font-weight:800}
.om-toast-ok{width:26px;height:26px;border-radius:50%;background:#15803d;display:grid;place-items:center;flex:none}
.om-toast-ok svg{width:15px;height:15px;stroke:#fff;fill:none;stroke-width:3.2;stroke-linecap:round;stroke-linejoin:round}
.om-toast-x{margin-left:auto;border:0!important;background:none!important;font-size:24px;line-height:1;color:var(--om-gris)!important;cursor:pointer;padding:0 4px!important;box-shadow:none!important}
.om-toast a.om-toast-prod{display:flex;gap:14px;padding:10px;margin:0 8px;align-items:center;color:inherit;text-decoration:none;border-radius:14px;transition:.15s}
.om-toast a.om-toast-prod:hover{background:var(--om-fondo);box-shadow:inset 0 0 0 1.5px var(--om-azul)}
.om-toast a.om-toast-prod:hover b{color:var(--om-azul)}
.om-toast-img{width:74px;height:74px;border-radius:12px;background:linear-gradient(160deg,#f1f0ee,#e6e4e0);flex:none;overflow:hidden}
.om-toast-img img{width:100%;height:100%;object-fit:cover;display:block;margin:0}
.om-toast-prod span{display:block;font-size:12px;color:var(--om-gris);font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:2px}
.om-toast-prod b{display:block;font-size:14.5px;line-height:1.3;font-weight:700}
.om-toast-prod em{font-style:normal;font-weight:800;font-size:17px;display:block;margin-top:4px}
.om-toast-ir{margin-left:auto;font-style:normal;font-size:26px;color:var(--om-gris);line-height:1}
.om-toast-acc{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:8px 18px 12px}
.om-toast a.om-toast-btn{display:flex;justify-content:center;align-items:center;padding:11px 8px;border-radius:999px;font-weight:700;font-size:14px;border:2px solid transparent;text-decoration:none;text-transform:none;line-height:1.2}
.om-toast a.om-toast-lin{background:#fff;border-color:var(--om-linea);color:var(--om-tinta)}.om-toast a.om-toast-lin:hover{border-color:var(--om-tinta)}
.om-toast a.om-toast-az{background:var(--om-azul);color:#fff}.om-toast a.om-toast-az:hover{background:var(--om-azul-osc)}
.om-toast a.om-toast-seg{display:block;text-align:center;font-weight:700;font-size:14px;color:var(--om-gris);padding:2px 0 14px;text-decoration:none}
.om-toast a.om-toast-seg:hover{color:var(--om-rojo)}
.om-toast-barra{height:4px;background:var(--om-azul);transform-origin:left;animation:omtbarra 7s linear forwards}
.om-toast:hover .om-toast-barra{animation-play-state:paused}
@keyframes omtbarra{to{transform:scaleX(0)}}
.om-toast-wrap{position:fixed;top:170px;right:24px;width:390px;max-width:calc(100vw - 32px);display:flex;flex-direction:column;gap:12px;z-index:2000;pointer-events:none}
.om-toast-wrap .om-toast{pointer-events:auto}
.om-toast-msg .om-toast-top{padding-bottom:14px}
.om-toast-msg .om-toast-txt{font-weight:700;font-size:14.5px;line-height:1.4;flex:1}
.om-toast-msg .om-toast-txt a,.om-toast-msg .om-toast-txt .button{display:inline!important;background:none!important;color:var(--om-azul)!important;padding:0!important;margin:0 0 0 6px!important;border-radius:0!important;font-weight:800;text-decoration:underline;float:none!important;order:0}
.om-toast-msg.om-toast-t-error .om-toast-ok{background:#b45309}
.om-toast-msg.om-toast-t-info .om-toast-ok{background:var(--om-azul)}
.om-toast-msg.om-toast-t-error .om-toast-barra{background:#b45309}
@media (max-width:640px){.om-toast-wrap{top:auto;bottom:12px;right:16px;left:16px;width:auto}}

/* Avisos flotantes más grandes */
.om-toast-wrap{width:470px}
.om-toast-msg .om-toast-top{padding:20px 22px 20px;gap:14px}
.om-toast-msg .om-toast-ok{width:34px;height:34px}
.om-toast-msg .om-toast-ok svg{width:19px;height:19px}
.om-toast-msg .om-toast-txt{font-size:17px;line-height:1.45}
.om-toast-msg .om-toast-x{font-size:28px}
.om-toast-barra{height:5px}
.om-toast-top{font-size:17px}

/* Avisos: no pueden colapsar */
.om-toast{min-width:320px;display:block}
.om-toast-wrap{min-width:320px}
.om-toast-msg .om-toast-top{align-items:flex-start}
.om-toast-msg .om-toast-txt{min-width:0}

/* Botón de tarjeta mientras agrega, y precio del aviso en una sola línea */
a.om-cargando{opacity:.65;pointer-events:none}
.om-toast-prod em,.om-toast-prod em *{display:inline!important;white-space:nowrap}
.om-toast-prod em{display:block!important}
button.om-cargando{opacity:.65;pointer-events:none}

/* Buscador con previsualización */
.om-sug{position:absolute;z-index:100001;background:#fff;border:1px solid var(--om-linea);border-radius:18px;box-shadow:0 18px 40px rgba(0,0,0,.16);overflow:hidden;max-height:70vh;overflow-y:auto}
.om-sug[hidden]{display:none}
.om-sug .om-sug-i{display:flex;align-items:center;gap:12px;padding:10px 14px;color:var(--om-tinta)!important;text-decoration:none!important;border-bottom:1px solid var(--om-linea)}
.om-sug .om-sug-i:hover,.om-sug .om-sug-i.act{background:var(--om-fondo)}
.om-sug img,.om-sug .om-sug-img{width:52px;height:52px;object-fit:contain;border-radius:10px;background:#f4f3f1;flex:none}
.om-sug .om-sug-t{flex:1;min-width:0;display:flex;flex-direction:column;gap:2px}
.om-sug .om-sug-t b{font-size:14px;font-weight:700;line-height:1.3;text-transform:none}
.om-sug .om-sug-t small{font-size:12px;color:var(--om-gris);font-weight:600}
.om-sug .om-sug-p{font-weight:800;font-size:15px;color:var(--om-tinta);white-space:nowrap}
/* Etiqueta "Oportunidad": mismo estilo que el nivel OPORTUNIDAD de "¿Qué significa segunda selección?" (rojo, letras blancas). */
.om-etq-cond{display:inline-block;align-self:flex-start;font-size:12px;font-weight:800;padding:4px 10px;border-radius:999px;color:#fff;letter-spacing:.02em;line-height:1.2;white-space:nowrap}
.om-etq-cond.c-nuevo{background:#15803d}
.om-etq-cond.c-det{background:#b45309}
.om-etq-cond.c-op{background:var(--om-rojo)}
.prod .img .om-etq-cond{position:absolute;top:12px;right:12px;z-index:2}
.om-sug .om-sug-t .om-etq-cond{margin:2px 0}
/* Tarjetas: descuento siempre arriba a la izquierda y condición arriba a la derecha, sin pisarse (en celular se achican). */
.prod .img .desc{position:absolute;top:12px;left:12px;z-index:2}
@media(max-width:600px){
.prod .img .desc{top:8px;left:8px;font-size:11px;padding:3px 7px;border-radius:6px}
.prod .img .om-etq-cond{top:8px;right:8px;font-size:10px;padding:3px 7px;letter-spacing:0}
}
/* Botones rojos de las bandas: el texto siempre en una sola línea. */
.btn-rojo{white-space:nowrap}
.om-sug .om-sug-todos{display:block;text-align:center;padding:13px;font-weight:700;font-size:14px;color:var(--om-azul)!important;text-decoration:none!important}
.om-sug .om-sug-todos:hover{background:var(--om-fondo)}
.om-sug .om-sug-vacio{padding:18px 16px;font-size:14px;color:var(--om-gris)}
@media (max-width:700px){.om-sug img,.om-sug .om-sug-img{width:44px;height:44px}.om-sug .om-sug-p{font-size:14px}}
