/* Rastreo Panamá — la tienda de Odoo hereda el sistema visual (brief 6.6).
   Todo acotado a .oe_website_sale (listado, ficha, carrito, checkout). Solo estilos visuales:
   no cambia estructura ni comportamiento del flujo de compra. */

@font-face {
  font-family: "Inter"; font-style: normal; font-weight: 400 600; font-display: swap;
  src: url(https://fonts.gstatic.com/s/inter/v20/UcC73FwrK3iLTeHuS_nVMrMxCp50SjIa1ZL7.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
@font-face {
  font-family: "Manrope"; font-style: normal; font-weight: 700 800; font-display: swap;
  src: url(https://fonts.gstatic.com/s/manrope/v23/xn7gYHE41ni1AdIRggexSg.woff2) format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

.oe_website_sale {
  --rp-navy: #0B1B3A;
  --rp-blue: #0083CD;
  --rp-blue-ink: #0069A8;
  --rp-red: #CF0B2C;
  --rp-red-hover: #B00926;
  --rp-ink: #0F172A;
  --rp-slate: #475569;
  --rp-bg: #F6F8FB;
  --rp-line: #E2E8F0;
  font-family: "Inter", "Segoe UI", system-ui, sans-serif;
  color: var(--rp-ink);
}
.oe_website_sale h1, .oe_website_sale h2, .oe_website_sale h3, .oe_website_sale h4,
.oe_website_sale .h1, .oe_website_sale .h2, .oe_website_sale .h3 {
  font-family: "Manrope", "Segoe UI", system-ui, sans-serif;
  font-weight: 800;
  letter-spacing: -0.02em;
  color: var(--rp-ink);
}
.oe_website_sale a:not(.btn) { color: var(--rp-blue-ink); }

/* Botones: rojo solo para la acción principal (Agregar al carrito, Pagar) */
.oe_website_sale .btn { border-radius: 999px; font-weight: 600; }
.oe_website_sale .btn-primary {
  background-color: var(--rp-red); border-color: var(--rp-red); color: #fff;
}
.oe_website_sale .btn-primary:hover, .oe_website_sale .btn-primary:focus-visible {
  background-color: var(--rp-red-hover); border-color: var(--rp-red-hover); color: #fff;
}
.oe_website_sale .btn-secondary, .oe_website_sale .btn-outline-primary {
  background-color: transparent; border-color: var(--rp-navy); color: var(--rp-navy);
}
.oe_website_sale .btn-secondary:hover, .oe_website_sale .btn-outline-primary:hover { background-color: var(--rp-navy); color: #fff; }
.oe_website_sale :focus-visible { outline: 3px solid #4DA8E8; outline-offset: 2px; }

/* Tarjetas del listado */
.oe_website_sale .oe_product_cart {
  border: 1px solid var(--rp-line); border-radius: 16px; overflow: hidden; background: #fff;
  transition: border-color .2s, transform .2s, box-shadow .2s;
}
.oe_website_sale .oe_product_cart:hover {
  border-color: var(--rp-blue); transform: translateY(-2px);
  box-shadow: 0 1px 2px rgba(15, 23, 42, .06), 0 8px 24px rgba(15, 23, 42, .08);
}
.oe_website_sale .oe_product_image { background: var(--rp-bg); }
.oe_website_sale .o_wsale_products_item_title a { color: var(--rp-ink); font-weight: 600; }
.oe_website_sale .product_price, .oe_website_sale .oe_price { font-variant-numeric: tabular-nums; }
.oe_website_sale .oe_product .oe_price {
  font-family: "Manrope", "Segoe UI", system-ui, sans-serif; font-weight: 800; color: var(--rp-ink);
}

/* Categorías */
.oe_website_sale .wsale_products_categories_list .active,
.oe_website_sale .wsale_products_categories_list a.fw-bold { color: var(--rp-navy); font-weight: 700; }
.oe_website_sale .o_wsale_filmstrip_item { border-radius: 12px; }

/* Ficha de producto */
.oe_website_sale #product_details h1 { font-size: clamp(26px, 2vw + 16px, 36px); }
.oe_website_sale #product_details .text-muted,
.oe_website_sale #product_details [itemprop="description"] { color: var(--rp-slate) !important; }

/* Pie de página nuevo (website.rp_footer) en las páginas con el layout de Odoo: tienda, carrito, cuenta.
   Mismas reglas que en rp-theme.css, acotadas a .rp-pie. */
.rp-pie {
  --rp-white: #FFFFFF; --rp-mist: #94A3B8; --rp-sky: #4DA8E8; --rp-line-dark: rgba(255, 255, 255, .12);
  --rp-gutter: clamp(16px, 4vw, 32px); --rp-max: 1200px;
  font-family: "Inter", "Segoe UI", system-ui, sans-serif; line-height: 1.55; -webkit-font-smoothing: antialiased;
}
.rp-pie *, .rp-pie *::before, .rp-pie *::after { box-sizing: border-box; }
.rp-pie p { margin: 0 0 1em; }
.rp-pie ul { margin: 0; padding: 0; }
.rp-pie a { text-decoration: none; }
.rp-pie a:hover { text-decoration: underline; text-underline-offset: 3px; }
.rp-pie :focus-visible { outline: 3px solid var(--rp-sky); outline-offset: 3px; border-radius: 6px; }
.rp-pie .rp-container { width: 100%; max-width: calc(var(--rp-max) + 2 * var(--rp-gutter)); margin: 0 auto; padding: 0 var(--rp-gutter); }
.rp-pie .rp-mt-0 { margin-top: 0; }
.rp-pie .rp-footer { background: #071330; color: var(--rp-mist); padding: clamp(56px, 8vw, 88px) 0 32px; font-size: 15px; }
.rp-pie .rp-footer a { color: var(--rp-mist); }
.rp-pie .rp-footer a:hover { color: var(--rp-white); }
.rp-pie .rp-footer__grid { display: grid; gap: 40px 24px; grid-template-columns: repeat(2, 1fr); }
.rp-pie .rp-footer__brand { grid-column: 1 / -1; }
.rp-pie .rp-footer__brand img { height: 44px; width: auto; margin-bottom: 16px; }
.rp-pie .rp-footer__brand p { margin: 0 0 6px; }
.rp-pie .rp-footer h3 { font-family: inherit; font-size: 13px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--rp-white); margin: 0 0 14px; line-height: 1.25; }
.rp-pie .rp-footer ul { list-style: none; display: grid; gap: 10px; }
.rp-pie .rp-social { display: flex; gap: 10px; margin-top: 16px; }
.rp-pie .rp-social a { display: grid; place-items: center; width: 40px; height: 40px; border-radius: 50%; border: 1px solid var(--rp-line-dark); }
.rp-pie .rp-social a:hover { border-color: var(--rp-sky); }
.rp-pie .rp-social svg { width: 18px; height: 18px; }
.rp-pie .rp-footer__legal { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px 24px; margin-top: 48px; padding-top: 24px; border-top: 1px solid var(--rp-line-dark); font-size: 14px; }
.rp-pie .rp-footer__legal ul { display: flex; flex-wrap: wrap; gap: 8px 20px; }
@media (min-width: 960px) {
  .rp-pie .rp-footer__grid { grid-template-columns: 1.4fr repeat(4, 1fr); }
  .rp-pie .rp-footer__brand { grid-column: auto; }
}
.rp-pie .rp-wa-float {
  position: fixed; z-index: 1040; right: 16px; bottom: 16px; display: grid; place-items: center;
  width: 56px; height: 56px; border-radius: 50%; background: #25D366; color: var(--rp-white);
  box-shadow: 0 8px 24px rgba(0, 0, 0, .25); transition: transform .2s;
}
.rp-pie .rp-wa-float:hover { transform: scale(1.06); text-decoration: none; }
.rp-pie .rp-wa-float svg { width: 30px; height: 30px; }
@media (min-width: 960px) { .rp-pie .rp-wa-float { right: 24px; bottom: 24px; } }

@media (prefers-reduced-motion: reduce) {
  .oe_website_sale .oe_product_cart { transition: none; }
  .oe_website_sale .oe_product_cart:hover { transform: none; }
}
