/* Outlet Medina — ficha de producto. Migrado de docs/prototipo-web/producto-v3.html.
   Todo va dentro de .om-prod para no chocar con Salient. */
.om-prod{--om-radio:14px;font-family:var(--om-fuente);color:var(--om-tinta);line-height:1.5;-webkit-font-smoothing:antialiased;background:#fff}
.om-prod *{box-sizing:border-box}
.om-prod a{text-decoration:none;box-shadow:none;border:0}
.om-prod h1,.om-prod h2,.om-prod h3{font-family:var(--om-fuente);color:inherit;margin:0}
.om-prod ul{list-style:none;margin:0;padding:0}
.om-prod li{list-style:none;margin:0}
.om-prod form{margin:0}
.om-prod .wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.om-prod .wrap{width:min(1200px,100% - 32px);margin-inline:auto}
.om-prod .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 22px;border-radius:999px;font-weight:700;font-size:15px;border:2px solid transparent;cursor:pointer;transition:.15s}
.om-prod .btn-rojo{background:var(--om-rojo);color:#fff}
.om-prod .btn-rojo:hover{background:var(--om-rojo-osc)}
.om-prod .btn-azul{background:var(--om-azul);color:#fff}
.om-prod .btn-azul:hover{background:var(--om-azul-osc)}
.om-prod .btn-blanco{background:#fff;color:var(--om-tinta)}
.om-prod .btn-borde{border-color:currentColor;color:#fff}
.om-prod .sub{color:var(--om-gris);margin-top:6px}
@media (min-width:1001px){.om-prod .slide .wrap{padding-inline:64px}
}
.om-prod .grid-prod{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}
.om-prod .prod{border:1px solid var(--om-linea);border-radius:var(--om-radio);overflow:hidden;background:#fff;transition:.15s;display:flex;flex-direction:column}
.om-prod .prod:hover{box-shadow:var(--om-sombra);transform:translateY(-3px)}
.om-prod .prod .img{position:relative;aspect-ratio:1/1;background:linear-gradient(160deg,#f1f0ee,#e6e4e0);display:grid;place-items:center;color:#9a9893;font-weight:600;font-size:13px;text-align:center;padding:10px}
.om-prod .desc{position:absolute;top:12px;left:12px;background:var(--om-azul);color:#fff;font-weight:800;font-size:13px;padding:5px 10px;border-radius:8px}
.om-prod .cond{position:absolute;bottom:10px;left:10px;background:#fff;border-radius:8px;padding:4px 9px;font-size:12px;font-weight:700;box-shadow:0 2px 8px rgba(0,0,0,.1)}
.om-prod .prod .info{padding:14px 16px 18px;display:flex;flex-direction:column;gap:8px;flex:1}
.om-prod .prod .marca{font-size:12px;color:var(--om-gris);font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.om-prod .prod h3{font-size:15px;line-height:1.3;font-weight:700}
.om-prod .precios{display:flex;align-items:baseline;gap:10px;margin-top:auto}
.om-prod .precios .nuevo{font-size:24px;font-weight:800;color:var(--om-azul)}
.om-prod .precios .ant{font-size:13px;color:var(--om-gris);text-decoration:line-through}
.om-prod .disp{font-size:12.5px;color:var(--om-gris)}
.om-prod .prod .btn{justify-content:center;padding:10px;font-size:14px;margin-top:6px}
.om-prod .ejemplo{font-size:11px;color:#b45309;font-weight:700}
@media (max-width:1000px){.om-prod .grid-prod{grid-template-columns:repeat(2,1fr)}
}
.om-prod #servicios, .om-prod #servicios p, .om-prod #servicios li, .om-prod #servicios span, .om-prod #servicios div, .om-prod #servicios a, .om-prod #servicios .sub{font-weight:700;color:var(--om-tinta)}
.om-prod .marcas-carrusel{overflow:hidden;position:relative;-webkit-mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent);mask-image:linear-gradient(90deg,transparent,#000 6%,#000 94%,transparent)}
.om-prod .marcas-carrusel .pista{display:flex;width:max-content;animation:om-girar 50s linear infinite}
.om-prod .marcas-carrusel:hover .pista, .om-prod .marcas-carrusel:focus-within .pista, .om-prod .marcas-carrusel:active .pista{animation-play-state:paused}
@media (prefers-reduced-motion:reduce){.om-prod .marcas-carrusel .pista{animation:none;width:auto;flex-wrap:wrap;justify-content:center;gap:10px}
.om-prod .marcas-carrusel{-webkit-mask-image:none;mask-image:none}
}
.om-prod .prod .img img{width:100%;height:100%;object-fit:contain;display:block}
.om-prod .prod h3 a{color:inherit}
.om-prod .prod h3{margin:0}
.om-prod .btn{text-decoration:none}
.om-prod .btn-azul,.om-prod .btn-azul:hover{color:#fff}
.om-prod .btn-rojo,.om-prod .btn-rojo:hover{color:#fff}


/* --- específico de la ficha --- */
.om-prod .pr-lay{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(0,1fr);gap:48px;align-items:start;margin-top:8px}
.om-prod .gal{display:grid;grid-template-columns:84px minmax(0,1fr);gap:14px;height:min(80vh,720px);position:relative}
.om-prod .gal-th{display:flex;flex-direction:column;gap:10px;overflow:auto;scrollbar-width:none;overscroll-behavior:contain}
.om-prod .gal-th::-webkit-scrollbar{display:none}
.om-prod .gal-th button{flex:none;width:84px;height:84px;border-radius:12px;border:2px solid var(--om-linea);background:linear-gradient(160deg,#f1f0ee,#e6e4e0);cursor:pointer;font-size:11px;font-weight:700;color:#9a9893;padding:0;transition:.12s}
.om-prod .gal-th button:hover{border-color:#b9b9c0}
.om-prod .gal-th button.on{border-color:var(--om-azul);box-shadow:0 0 0 2px rgba(37,99,235,.18)}
.om-prod .gal-main{overflow-y:auto;overscroll-behavior:contain;scroll-snap-type:y proximity;display:grid;gap:14px;border-radius:18px;scrollbar-width:thin;scrollbar-color:#c9c9d1 transparent}
.om-prod .gal-main figure{aspect-ratio:1/1;border-radius:18px;border:1px solid var(--om-linea);background:linear-gradient(160deg,#f7f6f4,#e9e7e3);display:grid;place-items:center;color:#9a9893;font-weight:700;font-size:15px;scroll-snap-align:start;margin:0}
.om-prod .gal-n{position:absolute;left:calc(84px + 14px + 14px);top:14px;background:rgba(27,27,31,.78);color:#fff;font-size:13px;font-weight:700;border-radius:999px;padding:5px 12px;z-index:3;pointer-events:none}
.om-prod .gal-hint{position:absolute;right:16px;bottom:14px;background:#fff;border:1px solid var(--om-linea);border-radius:999px;padding:7px 14px;font-size:12.5px;font-weight:700;color:var(--om-gris);box-shadow:var(--om-sombra);z-index:3;pointer-events:none;transition:opacity .3s}
.om-prod .gal.visto .gal-hint{opacity:0}
.om-prod .pr-info .marca-l{display:flex;align-items:center;gap:10px;margin-bottom:10px;flex-wrap:nowrap}
.om-prod .pr-info .marca-l img{height:24px;flex:none;width:auto;display:block}
.om-prod .pr-info .marca-l .om-etq-cond{align-self:center;font-size:12px}
.om-prod .tag-s{white-space:nowrap;font-size:12px;font-weight:800;border-radius:999px;padding:4px 11px;background:var(--om-fondo);color:var(--om-tinta)}
.om-prod .tag-c{white-space:nowrap;font-size:12px;font-weight:800;border-radius:999px;padding:4px 11px;background:#b45309;color:#fff}
.om-prod .pr-info h1{font-size:clamp(26px,3vw,36px);line-height:1.12;letter-spacing:-.02em;margin-bottom:18px}
.om-prod .pr-precio{display:flex;align-items:center;gap:22px;padding:18px 0;border-top:1px solid var(--om-linea);border-bottom:1px solid var(--om-linea);flex-wrap:wrap}
.om-prod .pr-precio small{display:block;font-size:13px;color:var(--om-gris);font-weight:600}
.om-prod .pr-precio s{font-size:18px;color:var(--om-gris);font-weight:700}
.om-prod .pr-precio .nuevo{font-size:40px;font-weight:800;letter-spacing:-.02em;line-height:1.1}
.om-prod .pr-precio .div{width:1px;align-self:stretch;background:var(--om-linea)}
.om-prod .pr-precio .desc{position:static;font-size:15px;padding:7px 12px}
.om-prod .pr-stock{margin:16px 0 4px;font-weight:800;color:#b45309;display:flex;align-items:center;gap:8px}
.om-prod .pr-stock::before{content:"";width:9px;height:9px;border-radius:50%;background:#b45309}
.om-prod .pr-buy{display:flex;gap:12px;margin:18px 0;flex-wrap:wrap}
.om-prod .pr-buy .btn{padding:16px 30px;font-size:17px;flex:1;justify-content:center;min-width:220px}
.om-prod .pr-meta{font-size:14.5px;display:grid;gap:4px;margin-bottom:18px}
.om-prod .pr-meta b{font-weight:800}
.om-prod .pr-meta a{color:var(--om-azul);font-weight:600}
.om-prod .pr-ent{display:grid;gap:10px;border:1px solid var(--om-linea);border-radius:16px;padding:16px 18px;background:#fff}
.om-prod .pr-ent div{display:flex;gap:12px;align-items:center;font-size:14.5px;font-weight:700}
.om-prod .pr-ent i{font-style:normal;width:34px;height:34px;border-radius:10px;background:var(--om-fondo);display:grid;place-items:center;color:var(--om-rojo);font-weight:800;flex:none}
.om-prod .pr-ent span{color:var(--om-gris);font-weight:600;display:block;font-size:13px}
.om-prod .acc-w{margin-top:40px;display:grid;gap:14px}
.om-prod .acc{border:1px solid var(--om-linea);border-radius:18px;padding:0;background:#fff;overflow:hidden}
.om-prod .acc+.acc{margin-top:0}
.om-prod .acc>summary{padding:22px 26px;font-size:19px;font-weight:800;cursor:pointer;list-style:none;display:flex;justify-content:space-between;align-items:center}
.om-prod .acc>summary::-webkit-details-marker{display:none}
.om-prod .acc>summary::after, .om-prod .acc[open]>summary::after{content:"";width:11px;height:11px;border-right:3px solid var(--om-tinta);border-bottom:3px solid var(--om-tinta);transform:rotate(45deg);margin:-5px 4px 0 0;transition:.18s;color:inherit;font-size:0}
.om-prod .acc[open]>summary::after{transform:rotate(225deg);margin-top:5px}
.om-prod .acc>summary:hover{background:var(--om-fondo)}
.om-prod .acc-b{padding:4px 26px 26px}
.om-prod .ficha{width:100%;border-collapse:collapse;font-size:15px}
.om-prod .ficha th, .om-prod .ficha td{text-align:left;padding:12px 16px;border-top:1px solid var(--om-linea)}
.om-prod .ficha th{width:38%;font-weight:700;color:var(--om-gris)}
.om-prod .ficha td{font-weight:700}
.om-prod .ficha tr:nth-child(odd){background:var(--om-fondo)}
.om-prod .aviso-est{background:#fff4e5;border:1px solid #f6d7a8;border-radius:14px;padding:16px 18px;font-weight:700;line-height:1.5}
.om-prod .rel{margin-top:54px}
.om-prod .rel h2{margin-bottom:18px}
.om-prod .grid-prod .prod .precios .nuevo{color:var(--om-tinta)}
@media (max-width:900px){.om-prod .pr-lay{grid-template-columns:1fr;gap:24px}
.om-prod .gal{display:block;height:auto}
.om-prod .gal-th{display:none}
.om-prod .gal-main{display:flex;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;gap:10px;border-radius:0;scrollbar-width:none;overscroll-behavior:auto}
.om-prod .gal-main::-webkit-scrollbar{display:none}
.om-prod .gal-main figure{flex:0 0 100%;scroll-snap-align:center}
.om-prod .gal-n{left:14px}
.om-prod .gal-hint{display:none}
}
@media (max-width:640px){.om-prod .pr-precio .nuevo{font-size:32px}
.om-prod .pr-buy .btn{min-width:100%}
.om-prod .acc>summary{padding:18px 18px;font-size:17px}
.om-prod .acc-b{padding:2px 14px 18px}
.om-prod .ficha th{width:46%}
}
.om-prod .ir-det{margin-left:auto;display:inline-flex;align-items:center;gap:8px;font-size:13px;font-weight:800;color:var(--om-rojo);border:1.5px solid var(--om-rojo);border-radius:999px;padding:5px 13px;text-decoration:none;background:#fff;transition:.15s;white-space:nowrap}
.om-prod .ir-det:hover{background:var(--om-rojo);color:#fff}
.om-prod .ir-det i{font-style:normal}
.om-prod .acc{scroll-margin-top:250px}
.om-prod .acc.flash{animation:flash 1.4s ease}
@media (max-width:1180px){.om-prod .pr-info .marca-l{flex-wrap:wrap}
}
@media (max-width:640px){.om-prod .ir-det{margin-left:0;width:100%;justify-content:center;padding:8px 13px}
}

/* --- Ajustes de la migración a WordPress --- */
.om-prod .migas{font-size:14px;color:var(--om-gris);margin-bottom:14px}.om-prod .migas a{color:var(--om-azul);font-weight:600}
.om-prod .rel{margin-top:54px}
.om-prod .grid-prod{grid-template-columns:repeat(4,1fr)}
@media (max-width:1000px){.om-prod .grid-prod{grid-template-columns:repeat(2,1fr)}}
.om-prod .grid-prod .prod .precios .nuevo{color:var(--om-tinta)}
.om-prod .prod .img{display:block;overflow:hidden;padding:0}
.om-prod .prod .img img{width:100%;height:100%;object-fit:contain;display:block}
.om-prod .prod h3 a{color:inherit}
.om-prod .btn-azul,.om-prod .btn-azul:hover{color:#fff}
.om-prod .gal-main figure img{width:100%;height:100%;object-fit:contain;display:block;border-radius:18px}
.om-prod .gal-th button img{width:100%;height:100%;object-fit:cover;border-radius:10px;display:block}
.om-prod .gal:not(:has(.gal-th)){display:block;height:auto}
.om-prod .gal-main.una{overflow:visible}
.om-prod .pr-stock.agotado{color:var(--om-rojo)}.om-prod .pr-stock.agotado::before{background:var(--om-rojo)}
.om-prod .pr-buy form{display:contents}
.om-prod .acc.om-flash{animation:om-flash 1.4s ease;border-color:var(--om-rojo)}
.om-prod .acc-w{margin-top:40px}
.om-prod .woocommerce-message,.om-prod .woocommerce-error,.om-prod .woocommerce-info{margin:0 0 16px;padding:14px 18px;border-radius:12px;border:1px solid var(--om-linea);background:var(--om-fondo);list-style:none}
.om-prod .woocommerce-message a.button{float:right;margin-left:12px}
.om-prod .pr-info h1{margin-top:0}
.om-prod .pr-info .marca-l b{font-weight:800}

/* Detalles del producto (separados de la descripción) */
.om-prod .det-extra{margin-top:18px;font-size:15.5px;line-height:1.6;color:var(--om-tinta)}
.om-prod .det-extra h4{font-size:15.5px;font-weight:800;margin:18px 0 8px}
.om-prod .det-extra p{margin:0 0 10px;font-weight:600}
.om-prod .det-extra ul{margin:0 0 10px;padding-left:22px;list-style:disc}
.om-prod .det-extra li{list-style:disc;margin:0 0 5px;font-weight:600}
.om-prod .ficha td[colspan]{font-weight:700}
.om-prod .ficha-intro{margin:0 0 14px;font-size:15.5px;line-height:1.65;color:var(--om-tinta)}
.om-prod .det-contacto{list-style:none;margin:14px 0 0;padding:0;font-size:15.5px;line-height:1.7}
.om-prod .det-contacto li{list-style:none;margin:0 0 4px}
.om-prod .det-contacto a{color:var(--om-tinta);font-weight:700;text-decoration:none;white-space:nowrap}
.om-prod .det-contacto a:hover{color:var(--om-rojo)}
/* Salient agrega padding-bottom a los <p>: se anula para que no queden líneas sueltas con huecos */
.om-prod .det-extra p,.om-prod .ficha-intro,.om-prod .acc-b p{padding:0!important;margin:0 0 8px!important;line-height:1.55}
.om-prod .det-extra h4{padding:0!important;margin:14px 0 6px!important}
.om-prod .det-extra li{padding:0!important}

/* --- Celular: precios y botón de las tarjetas --- */
.om-prod .prod .precios{flex-wrap:wrap;gap:2px 8px}
.om-prod .prod .btn{display:flex!important;align-items:center;justify-content:center!important;text-align:center!important;width:100%!important;box-sizing:border-box;margin-inline:0!important}
@media (max-width:640px){
.om-prod .prod .info{padding:12px 12px 14px}
.om-prod .prod .precios .nuevo{font-size:19px}
.om-prod .prod .precios .ant{font-size:12px}
.om-prod .prod .btn{padding:10px 8px!important;font-size:14px}
}

/* Descripción por plantilla (Núcleo): código, embalaje y características destacadas */
.om-prod .det-extra .det-cod{font-size:15.5px;margin:0 0 8px!important}
.om-prod .det-extra .det-caja,.om-prod .det-extra .det-repuesto{margin:0 0 10px!important;font-weight:800}
.om-prod .ficha-dest{margin-top:22px}
.om-prod .ficha-dest h4{font-size:15.5px;font-weight:800;margin:0 0 12px!important;padding:0!important}
.om-prod .ficha-dest ul{list-style:none!important;margin:0!important;padding:0!important;display:grid;grid-template-columns:1fr 1fr;gap:10px 28px}
.om-prod .ficha-dest li{list-style:none!important;position:relative;padding:0 0 0 28px!important;font-weight:600;line-height:1.5}
.om-prod .ficha-dest li::before{content:"\2713";position:absolute;left:0;top:0;width:20px;height:20px;border-radius:50%;background:var(--om-fondo);color:var(--om-rojo);font-weight:800;font-size:13px;line-height:20px;text-align:center}
@media(max-width:700px){.om-prod .ficha-dest ul{grid-template-columns:1fr}}

/* Repuestos (plantilla): textos fijos y modelos compatibles */
.om-prod .det-extra .det-fijo{margin:0 0 10px!important;font-weight:600}
.om-prod .det-extra .det-rojo{color:var(--om-rojo);font-weight:800}
.om-prod .det-extra .det-funcion{font-weight:600}
.om-prod .modelos{list-style:none!important;margin:0!important;padding:0!important}
.om-prod .modelos li{list-style:none!important;padding:9px 0!important;border-top:1px solid var(--om-linea);font-weight:600}
.om-prod .modelos li:first-child{border-top:0}

/* Cuadro "Detalles del producto": todo en MAYÚSCULAS y negritas; el embalaje va al final, destacado. */
.om-prod #det .acc-b,.om-prod #det .acc-b *{text-transform:uppercase!important;font-weight:800!important}
.om-prod #det .det-extra .det-caja{margin:18px 0 0!important;font-size:1.02em}
/* Separación inferior para que la ficha no quede pegada al pie de página. */
.om-prod .acc-w{margin-bottom:64px}

/* Productos relacionados: separación del pie y enlaces de contacto. */
.om-prod .rel{margin-bottom:72px}
.om-prod #det a.om-nw{text-decoration:none}
.om-prod #det a.om-nw:hover{text-decoration:underline}
