
/* cache-bust: 20260601-nueva-col */
/* =============================================
   OKIO BRAND V2 — GLOBAL STYLES
   Injected via website.layout inherit
   ============================================= */

/* Google Fonts */
/* Fonts loaded via link tag in xpath */

/* ── NAV ── */
header#top nav.navbar {
  background: #ffffff !important;
  border-bottom: 1px solid #DDD0C0 !important;
  box-shadow: none !important;
  padding: 16px 48px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
/* Nav links */
header#top #top_menu .nav-item > a.nav-link {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  color: #6B5D50 !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  letter-spacing: 0.3px !important;
  padding: 8px 16px !important;
  transition: color 0.2s !important;
  text-transform: none !important;
  background: none !important;
  border: none !important;
  border-radius: 0 !important;
}
header#top #top_menu .nav-item > a.nav-link:hover {
  color: #B5523A !important;
}
/* Dropdown caret — subtle small chevron */
header#top #top_menu .nav-item.dropdown > a.nav-link::after {
  content: '' !important;
  border: none !important;
  width: 4px !important;
  height: 4px !important;
  border-right: 1.2px solid #C4B8A8 !important;
  border-bottom: 1.2px solid #C4B8A8 !important;
  transform: rotate(45deg) !important;
  margin-left: 4px !important;
  margin-bottom: 3px !important;
  vertical-align: middle !important;
  display: inline-block !important;
  transition: transform 0.2s ease, border-color 0.2s ease !important;
}
header#top #top_menu .nav-item.dropdown:hover > a.nav-link::after,
header#top #top_menu .nav-item.dropdown.show > a.nav-link::after {
  border-color: #B5523A !important;
  transform: rotate(-135deg) !important;
  margin-bottom: 0 !important;
}
/* Tiendas, OKIO Learn — slightly muted per mockup */
header#top #top_menu .nav-item > a.nav-link[href*="tiendas"],
header#top #top_menu .nav-item > a.nav-link[href*="Tiendas"],
header#top #top_menu .nav-item > a.nav-link[href*="learn"],
header#top #top_menu .nav-item > a.nav-link[href*="Learn"],
header#top #top_menu .nav-item > a.nav-link[href*="blog"] {
  color: #A09080 !important;
  font-weight: 400 !important;
}
header#top #top_menu .nav-item > a.nav-link[href*="tiendas"]:hover,
header#top #top_menu .nav-item > a.nav-link[href*="learn"]:hover,
header#top #top_menu .nav-item > a.nav-link[href*="blog"]:hover {
  color: #B5523A !important;
}
/* CITA button */
header#top #top_menu .nav-item > a.nav-link[href="/appointment"],
header#top #top_menu .nav-item > a.nav-link[href*="appointment"] {
  background: #B5523A !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 8px 20px !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  border: none !important;
  transition: background 0.2s !important;
}
header#top #top_menu .nav-item > a.nav-link[href="/appointment"]:hover,
header#top #top_menu .nav-item > a.nav-link[href*="appointment"]:hover {
  background: #7A3628 !important;
  color: #ffffff !important;
}
/* Fix Odoo badge spans inside nav links */
header#top #top_menu .nav-item > a.nav-link span {
  background: transparent !important;
  color: inherit !important;
  padding: 0 !important;
  border-radius: 0 !important;
}
header#top #top_menu .nav-item > a.nav-link[href="/appointment"] span,
header#top #top_menu .nav-item > a.nav-link[href*="appointment"] span {
  color: #ffffff !important;
}

/* Nueva Colección — verde salvia highlight */
header#top #top_menu .nav-item > a.nav-link[href*="nueva-coleccion"],
header#top #top_menu .nav-item > a.nav-link.nav-link[href*="nueva-coleccion"] {
  background-color: #8B9D77 !important;
  background: #8B9D77 !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 8px 18px !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  border: none !important;
  transition: background 0.2s !important;
}
header#top #top_menu .nav-item > a.nav-link[href*="nueva-coleccion"]:hover {
  background: #7A8C68 !important;
  color: #ffffff !important;
}
header#top #top_menu .nav-item > a.nav-link[href*="nueva-coleccion"] span {
  color: #ffffff !important;
}

/* Cita to far right */
header#top #top_menu {
  display: flex !important;
  align-items: center !important;
}
header#top #top_menu .nav-item:has(> a[href="/appointment"]),
header#top #top_menu .nav-item:has(> a[href*="appointment"]) {
  order: 99 !important;
  margin-left: auto !important;
}
/* Right side icons */
/* ═══ NAV RIGHT — Brand v2 design ═══ */
header#top .o_header_sales_one_right_col {
  background: #2A2420 !important;
  border-radius: 24px !important;
  padding: 6px 18px !important;
  gap: 14px !important;
  margin-left: 12px !important;
}
header#top .o_header_sales_one_right_col a,
header#top .o_header_sales_one_right_col .nav-link {
  color: rgba(255,255,255,0.85) !important;
  font-size: 12px !important;
  font-weight: 400 !important;
  letter-spacing: 0.3px !important;
  font-family: Inter, -apple-system, sans-serif !important;
  transition: color .25s ease !important;
}
header#top .o_header_sales_one_right_col a:hover,
header#top .o_header_sales_one_right_col .nav-link:hover {
  color: #fff !important;
}
/* Search icon */
header#top .o_header_sales_one_right_col .o_searchbar_form,
header#top .o_header_sales_one_right_col .oe_search {
  border: none !important;
  background: transparent !important;
}
header#top .o_header_sales_one_right_col .fa-search,
header#top .o_header_sales_one_right_col .oi-search {
  color: rgba(255,255,255,0.7) !important;
  font-size: 14px !important;
}
/* Cart icon */
header#top .o_header_sales_one_right_col .o_wsale_my_cart a {
  color: rgba(255,255,255,0.85) !important;
}
header#top .o_header_sales_one_right_col .o_wsale_my_cart .badge {
  background: #B5523A !important;
  color: #fff !important;
  font-size: 9px !important;
  border-radius: 50% !important;
}
/* Divider */
header#top .o_header_sales_one_right_col .divider {
  display: none !important;
}
/* Logo terracota */
header#top nav.navbar .navbar-brand img {
  max-height: 40px !important;
  filter: brightness(0) saturate(100%) invert(32%) sepia(60%) saturate(1200%) hue-rotate(345deg) brightness(90%) contrast(95%) !important;
}
/* Mega menu — clean text-only layout */
header#top .dropdown-menu {
  background: #ffffff !important;
  border-bottom: 2px solid #DDD0C0 !important;
  border-top: none !important;
  border-left: none !important;
  border-right: none !important;
  border-radius: 0 !important;
  box-shadow: 0 12px 40px rgba(42,36,32,0.1) !important;
  padding: 40px 48px !important;
}
/* Mega menu column headers */
header#top .dropdown-menu h5,
header#top .dropdown-menu strong {
  font-family: 'Fraunces', Georgia, serif !important;
  color: #2A2420 !important;
  font-size: 16px !important;
  font-weight: 600 !important;
  border-bottom: 1.5px solid #DDD0C0 !important;
  padding-bottom: 8px !important;
  margin-bottom: 16px !important;
}
/* Mega menu links */
header#top .dropdown-menu a {
  color: #6B5D50 !important;
  font-size: 14px !important;
  padding: 5px 0 !important;
  transition: color 0.2s !important;
  text-transform: none !important;
  text-align: left !important;
}
header#top .dropdown-menu a:hover {
  color: #B5523A !important;
  background: transparent !important;
}
/* Mega menu nav columns — left align */
header#top .dropdown-menu .nav.flex-column {
  align-items: flex-start !important;
}
header#top .dropdown-menu .nav.flex-column .nav-link {
  text-transform: none !important;
  text-align: left !important;
}
/* Mega menu featured links */
header#top .dropdown-menu a[href*="recien-llegados"],
header#top .dropdown-menu a[href*="nueva-coleccion"] {
  color: #B5523A !important;
  font-weight: 600 !important;
}
header#top .dropdown-menu a[href="/sale"],
header#top .dropdown-menu a[href*="sale"] {
  color: #B5523A !important;
  font-weight: 700 !important;
}
/* Mega menu inner grid — center content, max-width */
header#top .dropdown-menu .container,
header#top .dropdown-menu .row {
  max-width: 700px !important;
  margin: 0 auto !important;
}
/* Mega menu — hide images, enforce text-only 2-column layout */
header#top .dropdown-menu .col-12.col-sm img {
  display: none !important;
}
header#top .dropdown-menu .col-12.col-sm h4 span {
  font-size: 16px !important;
}
/* Hide extra menu "+" */
header#top #top_menu .o_extra_menu_items > a {
  display: none !important;
}
header#top .o_top_fixed_element { z-index: 100; }
/* CITA button text override */
header#top #top_menu .nav-item > a.nav-link[href*="appointment"] span {
  font-size: 0 !important;
}
header#top #top_menu .nav-item > a.nav-link[href*="appointment"] span::after {
  content: 'AGENDAR CITA' !important;
  font-size: 12px !important;
  color: #ffffff !important;
  font-weight: 600 !important;
  letter-spacing: 0.5px !important;
}

/* ── FOOTER ── */
footer.o_footer,
footer.o_footer .o_colored_level,
footer.o_footer .o_cc,
footer.o_footer > div {
  --o-cc1-bg: #2A2420 !important;
  --o-cc1-headings: #E8C4B0 !important;
  --o-cc1-text: rgba(255,255,255,0.6) !important;
  background-color: #2A2420 !important;
  color: rgba(255,255,255,0.6) !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
}
footer.o_footer #footer { padding: 64px 48px 32px !important; }
footer.o_footer * {
  --o-cc1-bg: #2A2420 !important;
  --o-cc1-text: rgba(255,255,255,0.6) !important;
  --o-cc1-headings: #E8C4B0 !important;
}
footer.o_footer p,
footer.o_footer span,
footer.o_footer li,
footer.o_footer div {
  color: rgba(255,255,255,0.6) !important;
}
/* Footer headings — blush */
footer.o_footer h5,
footer.o_footer #footer h5,
footer.o_footer .oe_structure h5,
footer.o_footer div h5,
footer.o_footer [class*="col-lg"] h5,
footer.o_footer [class*="col-"] h5 {
  font-family: 'Fraunces', Georgia, serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  color: #E8C4B0 !important;
  margin-bottom: 16px !important;
}
/* Footer links — all links must be light, never black */
footer.o_footer a,
footer.o_footer #footer a,
footer.o_footer .oe_structure a,
footer.o_footer [class*="col-lg"] a,
footer.o_footer [class*="col-"] a,
footer.o_footer li a,
footer.o_footer .list-unstyled a {
  color: rgba(255,255,255,0.5) !important;
  font-size: 13px !important;
  transition: color 0.2s !important;
  text-decoration: none !important;
}
footer.o_footer #footer a:hover,
footer.o_footer .oe_structure a:hover,
footer.o_footer a:hover {
  color: #E8C4B0 !important;
}
/* Footer special links */
footer.o_footer a[href*="recien-llegados"],
footer.o_footer a[href*="nueva-coleccion"] {
  color: #E8C4B0 !important;
}
footer.o_footer a[href="/sale"],
footer.o_footer a[href*="sale"] {
  color: #B5523A !important;
}
/* Social icons */
footer.o_footer .social-icons a,
footer.o_footer .s_social_media a,
footer.o_footer a.icon {
  color: rgba(255,255,255,0.6) !important;
}
footer.o_footer .social-icons a:hover,
footer.o_footer a.icon:hover {
  color: #E8C4B0 !important;
}
footer.o_footer ul { list-style: none !important; padding: 0 !important; line-height: 2.2 !important; }
/* Footer logo — SVG in blush */
footer.o_footer .okio-footer-logo {
  display: block !important;
  margin-bottom: 16px !important;
}
footer.o_footer .okio-footer-logo svg {
  display: block !important;
  width: 100px !important;
  height: auto !important;
  margin-bottom: 16px !important;
}
/* Copyright bar */
footer.o_footer .o_footer_copyright,
footer.o_footer .o_footer_copyright.o_cc,
footer.o_footer .o_footer_copyright.o_colored_level {
  background: #221E1A !important;
  color: rgba(255,255,255,0.4) !important;
  padding: 16px 48px !important;
  font-size: 12px !important;
  border-top: 1px solid rgba(255,255,255,0.1) !important;
}
footer.o_footer .o_footer_copyright *,
footer.o_footer .o_footer_copyright a,
footer.o_footer .o_footer_copyright span,
footer.o_footer .o_footer_copyright p {
  color: rgba(255,255,255,0.4) !important;
}
footer.o_footer .o_footer_copyright a:hover {
  color: rgba(255,255,255,0.7) !important;
}
/* Hide native Odoo copyright text */
footer.o_footer .o_footer_copyright .o_footer_copyright_name { display: none !important; }
footer.o_footer .o_footer_copyright > .container:first-child:not([data-oe-id]) { display: none !important; }
footer.o_footer #o_footer_scrolltop_wrapper { display: none !important; }
/* Hide native okio_techspawn footer section (logo + social icons above our custom footer) */
footer.o_footer > div.footer:not(#footer) { display: none !important; }
/* Footer tagline */
footer.o_footer .okio-footer-tagline {
  color: rgba(255,255,255,0.5) !important;
  font-size: 13px !important;
  line-height: 1.7 !important;
  max-width: 280px !important;
}

/* ── BUTTONS ── */
#wrap .btn-primary,
.oe_structure .btn-primary,
a.btn-primary {
  display: inline-block;
  background: #B5523A !important;
  color: #ffffff !important;
  padding: 14px 32px;
  border-radius: 10px;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: 0.5px;
  text-transform: uppercase;
  transition: all 0.25s;
  border: none !important;
}
#wrap .btn-primary:hover,
#wrap .btn-primary:focus,
#wrap .btn-primary:active,
.oe_structure .btn-primary:hover,
.oe_structure .btn-primary:focus,
.oe_structure .btn-primary:active,
a.btn-primary:hover,
a.btn-primary:focus,
a.btn-primary:active {
  background: #7A3628 !important;
  color: #ffffff !important;
  transform: translateY(-1px);
  border: none !important;
  box-shadow: none !important;
}

/* ── WHATSAPP ── */
.whatsapp-btn {
  background: #8A9A7B !important;
  background-color: #8A9A7B !important;
}
.whatsapp-btn:hover {
  background: #7A8A6B !important;
  background-color: #7A8A6B !important;
}
.whatsapp-float { display: none !important; }

/* ── PRODUCT CARDS (Shop/Category pages) ── */
/* These styles apply globally to /shop and ALL /shop/category/* pages.
   Any new product added in Odoo automatically inherits this design.
   Matches the homepage .product-card design exactly. */

/* Card container — vertical stack layout */
.oe_product_cart {
  background: #ffffff !important;
  border-radius: 16px !important;
  overflow: visible !important;
  border: 1px solid #EDE6DC !important;
  transition: all 0.35s cubic-bezier(.4,0,.2,1) !important;
  padding: 0 !important;
  margin-bottom: 24px !important;
  box-shadow: 0 2px 12px rgba(42,36,32,0.04) !important;
  flex-direction: column !important;
}
.oe_product_cart:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(42,36,32,0.10) !important;
  border-color: #B5523A !important;
}

/* ── Force entire info section into a vertical stack ── */
.oe_product_cart .o_wsale_product_information,
.o_wsale_products_custom_grid .oe_product_cart .o_wsale_product_information {
  border: none !important;
  box-shadow: none !important;
  background: #ffffff !important;
  border-radius: 0 0 16px 16px !important;
  overflow: visible !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  height: auto !important;
  min-height: 0 !important;
  justify-content: flex-start !important;
  align-items: stretch !important;
  width: 100% !important;
}
/* Kill the horizontal spread layout — stack everything vertically */
.oe_product_cart .o_wsale_product_sub,
.o_wsale_products_custom_grid .oe_product_cart .o_wsale_product_sub {
  display: flex !important;
  flex-direction: column !important;
  align-items: flex-start !important;
  justify-content: flex-start !important;
  padding: 0 16px 16px !important;
  background: #ffffff !important;
  gap: 0 !important;
  width: 100% !important;
  flex-shrink: 0 !important;
}
/* Hide the empty add-to-cart button container */
.oe_product_cart .o_wsale_product_btn {
  display: none !important;
}

/* ── Image area — hueso background ── */
.oe_product_cart .oe_product_image {
  background: #F5F1EA !important;
  width: 100% !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
  flex-shrink: 0 !important;
  border-radius: 16px 16px 0 0 !important;
  position: relative !important;
}
.oe_product_cart .oe_product_image_link {
  background: #F5F1EA !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 20px !important;
}
.oe_product_cart .oe_product_image_img_wrapper {
  mix-blend-mode: multiply !important;
}
.oe_product_cart .oe_product_image img,
.oe_product_cart .oe_product_image_img_wrapper img,
.oe_product_cart img.img-fluid {
  mix-blend-mode: multiply !important;
  object-fit: contain !important;
}
/* Also catch any direct image links in info section */
.oe_product_cart .o_wsale_product_information > a:has(img),
.oe_product_cart .o_wsale_product_information > a:first-child:has(img),
.oe_product_cart a.d-block:has(img),
#products_grid .oe_product_cart a:has(img) {
  display: block !important;
  background: #F5F1EA !important;
  padding: 20px !important;
}

/* ── Product info text area ── */
.oe_product_cart .o_wsale_product_information_text {
  padding: 12px 16px 4px !important;
  background: #ffffff !important;
}

/* ── Product title — 13px Inter like homepage ── */
.oe_product_cart .o_wsale_products_item_title,
.oe_product_cart h6.o_wsale_products_item_title,
.o_wsale_products_custom_grid .oe_product_cart .o_wsale_products_item_title,
.o_wsale_products_custom_grid .o_wsale_products_item_title,
.o_wsale_products_custom_grid .product-name a,
.o_wsale_products_custom_grid h6.o_wsale_products_item_title,
.o_wsale_products_custom_grid .o_wsale_product_information_text .o_wsale_products_item_title,
#products_grid .oe_product_cart h6.o_wsale_products_item_title,
#products_grid .o_wsale_products_custom_grid .o_wsale_products_item_title,
#wrap .oe_product_cart .o_wsale_products_item_title {
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight: 500 !important;
  font-size: 16px !important;
  color: #2A2420 !important;
  margin-bottom: 2px !important;
  width: 100% !important;
  line-height: 1.3 !important;
  letter-spacing: 0 !important;
  text-transform: none !important;
}
.oe_product_cart .o_wsale_products_item_title a,
.o_wsale_products_custom_grid .o_wsale_products_item_title a,
#wrap .oe_product_cart .o_wsale_products_item_title a,
#wrap .oe_product_cart h6 a {
  color: #2A2420 !important;
  text-decoration: none !important;
  font-size: 16px !important;
  font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif !important;
  font-weight: 500 !important;
}
.oe_product_cart:hover .o_wsale_products_item_title a {
  color: #B5523A !important;
}

/* ── Override techspawn a.text-decoration-none width:50% float:left ── */
.oe_product_cart a.text-decoration-none,
.o_wsale_products_custom_grid .oe_product_cart a.text-decoration-none,
.o_wsale_products_custom_grid a.text-decoration-none {
  width: 100% !important;
  float: none !important;
  display: block !important;
}

/* ── Price — terracota, below dots, LEFT aligned ── */
/* JS moves .product_price into .o_wsale_product_information_text */
.oe_product_cart .product_price,
.o_wsale_products_custom_grid .oe_product_cart .product_price,
.o_wsale_products_custom_grid .product-price {
  margin-top: 6px !important;
  width: 100% !important;
  text-align: left !important;
  font-size: 14px !important;
  color: #B5523A !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: baseline !important;
  gap: 0 6px !important;
}
/* Current price first, strikethrough after */
.oe_product_cart .product_price del {
  order: 2 !important;
}
.oe_product_cart .product_price > span,
.oe_product_cart .product_price > .oe_price {
  order: 1 !important;
}
.oe_product_cart .product_price .oe_currency_value,
.o_wsale_products_custom_grid .oe_product_cart .product_price .oe_currency_value {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-weight: 700 !important;
  font-size: 14px !important;
  color: #B5523A !important;
}
.oe_product_cart .product_price .h6,
.oe_product_cart .product_price span.h6 {
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #B5523A !important;
  margin: 0 !important;
  text-align: left !important;
  position: static !important;
  right: auto !important;
  left: auto !important;
  display: inline !important;
  float: none !important;
}
/* Hide raw monetary spans (65.0, USD) that Odoo adds — keep only .h6 formatted */
.oe_product_cart .product_price > span:not(.h6):not(.mb-0):not([data-oe-type]) {
  display: none !important;
}
/* Strikethrough old price — muted, smaller */
.oe_product_cart .product_price del,
.oe_product_cart .product_price del .oe_currency_value,
.oe_product_cart .product_price del em,
.oe_product_cart .product_price del .h6 {
  color: #A89888 !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  text-decoration: line-through !important;
}

/* ── Color variant dots — 10px circles like homepage ── */
.oe_product_cart .variant_attribute,
.oe_product_cart .color_variant_images {
  margin-top: 2px !important;
  margin-bottom: 0 !important;
  padding: 0 !important;
}
/* Hide "Color" label text */
.oe_product_cart .variant_attribute > .attribute_name,
.oe_product_cart .variant_attribute > strong {
  display: none !important;
}
.oe_product_cart .o_wsale_product_attribute {
  display: flex !important;
  gap: 4px !important;
  flex-wrap: wrap !important;
  padding: 0 !important;
  margin: 4px 0 0 0 !important;
  list-style: none !important;
  align-items: center !important;
}
.oe_product_cart .o_wsale_product_attribute li,
.oe_product_cart .o_wsale_product_attribute .list-inline-item {
  margin: 0 1px 1px 0 !important;
  padding: 0 !important;
}
/* Color radio buttons — force 10px perfect circles */
.oe_product_cart .js_attribute_color,
.oe_product_cart input.js_attribute_color,
#products_grid .oe_product_cart input.js_attribute_color,
form.oe_product_cart input[type="radio"].js_attribute_color,
.oe_product_cart .list-inline-item input.js_attribute_color,
.oe_product_cart input[type="radio"][data-color],
.oe_product_cart .js_variant_change.js_attribute_color {
  width: 10px !important;
  height: 10px !important;
  min-width: 10px !important;
  max-width: 10px !important;
  min-height: 10px !important;
  max-height: 10px !important;
  margin: 1px !important;
  cursor: pointer !important;
  appearance: none !important;
  -webkit-appearance: none !important;
  border-radius: 50% !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  vertical-align: middle !important;
  padding: 0 !important;
  flex-shrink: 0 !important;
  flex-grow: 0 !important;
  aspect-ratio: 1 / 1 !important;
  box-sizing: border-box !important;
}
/* Fix labels wrapping color inputs — small solid circle with background image */
.oe_product_cart label.css_attribute_color,
.oe_product_cart .o_wsale_product_attribute label.css_attribute_color {
  width: 12px !important;
  height: 12px !important;
  min-width: 12px !important;
  min-height: 12px !important;
  max-width: 12px !important;
  max-height: 12px !important;
  border: none !important;
  border-radius: 50% !important;
  display: inline-block !important;
  padding: 0 !important;
  margin: 2px !important;
  box-sizing: border-box !important;
  vertical-align: middle !important;
  overflow: hidden !important;
  line-height: 0 !important;
  font-size: 0 !important;
  background-size: cover !important;
  background-position: center !important;
}
/* Hide the actual input inside the label — the label background IS the dot */
.oe_product_cart label.css_attribute_color input[type="radio"],
.oe_product_cart label.css_attribute_color input.js_attribute_color,
#products_grid .oe_product_cart label.css_attribute_color input,
form.oe_product_cart label.css_attribute_color input {
  display: none !important;
}
/* Also handle form-check based color inputs */
.oe_product_cart .o_wsale_product_attribute .form-check {
  padding: 0 !important;
  margin: 0 !important;
  min-height: auto !important;
}
.oe_product_cart .o_wsale_product_attribute .form-check-input {
  width: 10px !important;
  height: 10px !important;
  margin: 0 !important;
  border-radius: 50% !important;
  cursor: pointer !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  float: none !important;
}
/* Hide the text label next to the dot */
.oe_product_cart .o_wsale_product_attribute .radio_input_value,
.oe_product_cart .o_wsale_product_attribute .form-check-label {
  display: none !important;
}
.oe_product_cart .o_wsale_product_attribute label.col-form-label {
  padding: 0 !important;
  margin: 0 !important;
  line-height: 1 !important;
}
/* Variant thumbnails (small images) — make circular/small */
.oe_product_cart .o_wsale_product_attribute li img {
  width: 10px !important;
  height: 10px !important;
  border-radius: 50% !important;
  object-fit: cover !important;
}

/* ── Badges — SALE / NUEVO / -XX% — visible pills ── */
/* Odoo native ribbon (.o_ribbon) */
.o_ribbon,
.oe_product_cart .o_ribbon,
#products_grid .o_ribbon {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  z-index: 10 !important;
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  transform: none !important;
  width: auto !important;
  height: auto !important;
  white-space: nowrap !important;
  line-height: 1.3 !important;
  display: inline-block !important;
}
/* All ribbons default to Salvia accent */
.o_ribbon,
.o_ribbon.bg-danger,
.o_ribbon.bg-primary,
.o_ribbon.bg-info,
.o_ribbon.bg-warning,
.o_ribbon.bg-secondary,
.o_ribbon[class*="bg-"],
#products_grid .o_ribbon,
#products_grid .o_ribbon[class*="bg-"],
.oe_product_cart .o_ribbon,
.oe_product_cart .o_ribbon[class*="bg-"] {
  background: #8A9A7B !important;
  background-color: #8A9A7B !important;
  color: #ffffff !important;
}
/* Discount ribbon */
.o_ribbon.bg-success,
#products_grid .o_ribbon.bg-success {
  background: #7A3628 !important;
  background-color: #B5523A !important;
  color: #ffffff !important;
}
/* OKIO custom sale badge (okio_techspawn module) — same pill style */
.okio_sale_badge,
span.okio_sale_badge,
.product-card .okio_sale_badge,
.oe_product_cart .okio_sale_badge,
.oe_product_cart span.okio_sale_badge,
.o_wsale_product_information .okio_sale_badge {
  background: #B5523A !important;
  background-color: #B5523A !important;
  color: #ffffff !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 9px !important;
  font-weight: 700 !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  border-radius: 6px !important;
  padding: 4px 10px !important;
  position: absolute !important;
  top: 10px !important;
  left: 10px !important;
  right: auto !important;
  z-index: 10 !important;
  line-height: 1.3 !important;
  display: inline-block !important;
  white-space: nowrap !important;
}
/* Hide empty badges/ribbons — CSS :empty + JS fallback */
.o_ribbon:empty,
.o_ribbon.okio-empty-badge,
.okio_sale_badge:empty,
.okio_sale_badge.okio-empty-badge {
  display: none !important;
}

/* ── Shop page grid layout ── */
/* Table-based grid — remove borders, add spacing */
#products_grid .table {
  border-collapse: separate !important;
  border-spacing: 16px !important;
}
#products_grid .table > tbody > tr > td {
  border: none !important;
  padding: 0 !important;
  vertical-align: top !important;
}
/* Remove any table cell backgrounds */
#products_grid .table > tbody > tr > td > div:not(.okio-band) {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
}

/* ── Force 4-column grid on desktop (native Odoo grid) ── */
@media (min-width: 992px) {
  #products_grid .o_wsale_products_grid_table_wrapper .table > tbody > tr > td {
    width: 25% !important;
  }
  #products_grid td.oe_product {
    width: 25% !important;
  }
}

/* ── Override techspawn custom grid layout ── */
/* Hide ALL lifestyle/banner images and category intro sections */
.o_wsale_products_custom_grid .image-large,
.o_wsale_products_custom_grid .new_collection_banner,
.o_wsale_products_custom_grid .new_collection_banner_desktop,
.o_wsale_products_custom_grid .new_collection_banner_mobile,
.o_wsale_products_custom_grid .new_collection_second,
.o_wsale_products_custom_grid .new_collection_second_desktop,
.o_wsale_products_custom_grid .new_collection_second_mobile,
.o_wsale_products_custom_grid .cat-img2-banner-wrapper,
.o_wsale_products_custom_grid .category-intro-lentes-de-ver,
.o_wsale_products_custom_grid .lenses-drawer-overlay,
.o_wsale_products_custom_grid .lentes-sol-drawer-overlay,
.o_wsale_products_custom_grid > .row > .col-md-3,
.o_wsale_products_custom_grid > .row > .col-sm-4 {
  display: none !important;
}

/* Make the entire custom grid a flat 4-column CSS grid */
.o_wsale_products_custom_grid {
  display: block !important;
}
/* Top-row: hide the flex layout, let the small-images-grid span full width */
.o_wsale_products_custom_grid .top-row {
  display: block !important;
}
.o_wsale_products_custom_grid .top-row .small-images-grid {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
  width: 100% !important;
  flex: none !important;
}
/* Middle section — the row with col-md-6 containing 2x2 grids + banner */
.o_wsale_products_custom_grid > .row.mt-3 > .col-12 > .row {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
}
.o_wsale_products_custom_grid > .row.mt-3 > .col-12 > .row > .col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
  padding: 0 !important;
}
/* The row with col-md-6 side by side (banner + products) — flatten it */
.o_wsale_products_custom_grid > .row > .col-md-6 {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
}
.o_wsale_products_custom_grid > .row > .col-md-6 > .row {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
}
.o_wsale_products_custom_grid > .row > .col-md-6 > .row > .col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
  padding: 0 !important;
}
/* Bottom-row: products in a 4-column grid */
.o_wsale_products_custom_grid .bottom-row {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
}
.o_wsale_products_custom_grid .bottom-row .product-card {
  width: 100% !important;
}
/* Style the bottom-row product-card to match .oe_product_cart */
.o_wsale_products_custom_grid .bottom-row .product-card {
  background: #ffffff !important;
  border-radius: 16px !important;
  overflow: hidden !important;
  border: 1px solid #EDE6DC !important;
  transition: all 0.35s cubic-bezier(.4,0,.2,1) !important;
  box-shadow: 0 2px 12px rgba(42,36,32,0.04) !important;
}
.o_wsale_products_custom_grid .bottom-row .product-card:hover {
  transform: translateY(-4px) !important;
  box-shadow: 0 12px 32px rgba(42,36,32,0.10) !important;
  border-color: #B5523A !important;
}
.o_wsale_products_custom_grid .bottom-row .product-card > a {
  display: block !important;
  background: #F5F1EA !important;
  padding: 20px !important;
  aspect-ratio: 1 / 1 !important;
  overflow: hidden !important;
}
.o_wsale_products_custom_grid .bottom-row .product-card > a img {
  mix-blend-mode: multiply !important;
  object-fit: contain !important;
  width: 100% !important;
  height: 100% !important;
}
.o_wsale_products_custom_grid .bottom-row .product-info {
  padding: 12px 16px 16px !important;
  background: #ffffff !important;
}
.o_wsale_products_custom_grid .bottom-row .product-name {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 13px !important;
  font-weight: 500 !important;
  color: #2A2420 !important;
}
.o_wsale_products_custom_grid .bottom-row .product-name a {
  color: #2A2420 !important;
  text-decoration: none !important;
}
.o_wsale_products_custom_grid .bottom-row .product-price {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 14px !important;
  font-weight: 700 !important;
  color: #B5523A !important;
  text-align: left !important;
  margin-top: 4px !important;
}
/* Mobile: 2 columns */
@media (max-width: 767px) {
  .o_wsale_products_custom_grid .top-row .small-images-grid,
  .o_wsale_products_custom_grid > .row.mt-3 > .col-12 > .row,
  .o_wsale_products_custom_grid > .row > .col-md-6 > .row,
  .o_wsale_products_custom_grid .bottom-row {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
}
/* Also fix the row-cols-2 override for middle section */
.o_wsale_products_custom_grid .row-cols-2 {
  display: grid !important;
  grid-template-columns: repeat(4, 1fr) !important;
  gap: 16px !important;
}
@media (max-width: 767px) {
  .o_wsale_products_custom_grid .row-cols-2 {
    grid-template-columns: repeat(2, 1fr) !important;
    gap: 8px !important;
  }
}
.o_wsale_products_custom_grid .row-cols-2 > .col {
  width: 100% !important;
  max-width: 100% !important;
  flex: none !important;
  padding: 0 !important;
}

/* ── Page container styling ── */
.o_wsale_products_page { background: #F5F1EA !important; }
.oe_website_sale {
  font-family: 'Inter', -apple-system, sans-serif !important;
}

/* ── HERO BANNER (category header) ── */
#category_header { background: transparent !important; padding: 0 !important; margin-bottom: 1rem !important; border: none !important; }
#category_header::after { content: none !important; }
#category_header h1,
.o_wsale_products_page h1,
.oe_website_sale h1 {
  font-family: 'Fraunces', Georgia, serif !important;
  color: #2A2420 !important;
  font-weight: 400 !important;
  font-size: 26px !important;
  margin-bottom: 4px !important;
  letter-spacing: -0.3px !important;
}
#category_header .category-description,
#category_header p,
#category_header .o_not_editable {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 12.5px !important;
  color: #6B5D50 !important;
  line-height: 1.55 !important;
  max-width: 550px !important;
}
/* Category image in hero */
#category_header img { border-radius: 14px; }
@media (max-width: 767px) {
  #category_header img { border-radius: 14px; }
}

/* ── Contact lens configurator headings ── */
.char_main_title h4,
.char_main_title h4 span {
  font-family: 'Jost', sans-serif !important;
  font-size: 18px !important;
  font-weight: 500 !important;
  color: #2A2420 !important;
}

/* ── Search and filter bar ── */
.o_wsale_products_searchbar_form .form-control {
  border: 1px solid #DDD0C0 !important;
  border-radius: 10px !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 13px !important;
}
.o_wsale_products_searchbar_form .btn {
  border: 1px solid #DDD0C0 !important;
  border-radius: 10px !important;
  color: #6B5D50 !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
}

/* ── SIDEBAR FILTERS — refined brand styling ── */
#products_grid_before {
  font-family: 'Inter', -apple-system, sans-serif !important;
  padding-right: 20px !important;
}
#products_grid_before .nav-link,
#products_grid_before a {
  font-family: 'Inter', -apple-system, sans-serif !important;
  color: #6B5D50 !important;
  font-size: 13px !important;
  transition: color 0.2s !important;
}
#products_grid_before .nav-link:hover,
#products_grid_before a:hover {
  color: #B5523A !important;
}
#products_grid_before .nav-link.active,
#products_grid_before a.active {
  color: #B5523A !important;
  font-weight: 600 !important;
}
/* Filter section separators */
#products_grid_before .accordion-item {
  border: none !important;
  border-bottom: 1px solid #EDE4D8 !important;
  padding-bottom: 16px !important;
  margin-bottom: 16px !important;
  background: transparent !important;
}
#products_grid_before .accordion-item:last-child {
  border-bottom: none !important;
}
/* Filter group headings — refined uppercase micro-labels */
#products_grid_before .h6,
#products_grid_before h6,
#products_grid_before .fw-bold,
.o_wsale_products_page .accordion-button,
#products_grid_before strong,
#products_grid_before .o_products_attributes_title {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 10px !important;
  font-weight: 600 !important;
  letter-spacing: 1.5px !important;
  text-transform: uppercase !important;
  color: #9A8B7C !important;
}
#products_grid_before h6 {
  margin-bottom: 8px !important;
}
/* Collapse icon (accordion button chevron) */
.o_wsale_products_page .accordion-button::after,
#products_grid_before .accordion-button::after {
  filter: opacity(0.3) !important;
  width: 12px !important;
  height: 12px !important;
}
/* Filter body wrapper — remove Odoo default border box */
#products_grid_before [id^="o_products_attribut"],
#products_grid_before .accordion-item > div:not(.accordion-header):not(h6) {
  border: none !important;
  padding: 0 !important;
  background: transparent !important;
}
/* Filter body containers — override Odoo grid with flex inline wrapping */
#products_grid_before .flex-column,
#products_grid_before .flex-column.mb-3,
#products_grid_before div[id^="o_products_attributes_"] .flex-column.mb-3,
#products_grid_before [id^="o_products_attribut"] .flex-column,
.o_wsale_products_page div[id^="o_products_attributes_"] .flex-column.mb-3 {
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 2px 12px !important;
  display: flex !important;
  grid-template-columns: none !important;
}
/* Extra specificity to beat div#id selectors from Odoo */
div[id^="o_products_attributes_"] .flex-column.mb-3 {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: wrap !important;
  gap: 2px 12px !important;
  grid-template-columns: none !important;
}
/* Material / checkbox filter items — tight minimal chips */
#products_grid_before .form-check,
#products_grid_before .form-check.mb-1,
#products_grid_before div.form-check {
  border: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-bottom: 2px !important;
  margin-right: 0 !important;
  display: inline-flex !important;
  align-items: center !important;
  gap: 6px !important;
  width: auto !important;
  min-width: auto !important;
  max-width: none !important;
  height: auto !important;
  min-height: auto !important;
  max-height: none !important;
  background: transparent !important;
  transition: color 0.2s !important;
  flex: 0 0 auto !important;
}
#products_grid_before .form-check:hover {
  background: transparent !important;
}
#products_grid_before .form-check:hover label {
  color: #B5523A !important;
}
/* Checkbox & radio styling — force visible, custom appearance */
#products_grid_before .form-check-input,
div[id^="o_products_attributes_"] .form-check.mb-1 input[type="checkbox"],
div[id^="o_products_attributes_"] .form-check input[type="radio"] {
  display: inline-block !important;
  width: 14px !important;
  height: 14px !important;
  margin: 0 !important;
  position: relative !important;
  float: none !important;
  flex-shrink: 0 !important;
  border: 1.5px solid #C8BDB0 !important;
  border-radius: 3px !important;
  cursor: pointer !important;
  appearance: auto !important;
  -webkit-appearance: auto !important;
  opacity: 1 !important;
  visibility: visible !important;
}
#products_grid_before .form-check-input[type="radio"],
div[id^="o_products_attributes_"] .form-check input[type="radio"] {
  border-radius: 50% !important;
}
/* Filter checkboxes — terracota when checked */
#products_grid_before input[type="checkbox"]:checked,
.o_wsale_products_page input[type="checkbox"]:checked {
  accent-color: #B5523A !important;
  background-color: #B5523A !important;
  border-color: #B5523A !important;
}
#products_grid_before .form-check:has(input:checked) {
  border-color: #B5523A !important;
  background: #FDF8F5 !important;
}
/* Filter labels — clean text with hover underline */
#products_grid_before label.form-check-label,
.o_wsale_products_page .form-check-label {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 13px !important;
  color: #5A4F45 !important;
  font-weight: 400 !important;
  cursor: pointer !important;
  letter-spacing: 0 !important;
  line-height: 1.4 !important;
  transition: color 0.15s !important;
}
#products_grid_before .form-check:hover label.form-check-label {
  color: #B5523A !important;
}
/* Checked state — bold the label */
#products_grid_before .form-check:has(input:checked) label.form-check-label {
  color: #2A2420 !important;
  font-weight: 500 !important;
}
/* ── COLOR DOTS — small, tight grid ── */
#products_grid_before label.css_attribute_color,
.o_wsale_products_page label.css_attribute_color {
  width: 20px !important;
  height: 20px !important;
  min-width: 20px !important;
  min-height: 20px !important;
  margin: 1.5px !important;
  border: 1.5px solid #E8E0D8 !important;
  box-shadow: none !important;
  transition: transform 0.15s, box-shadow 0.15s !important;
}
#products_grid_before label.css_attribute_color:hover {
  transform: scale(1.2) !important;
  box-shadow: 0 0 0 1.5px #B5523A !important;
}
#products_grid_before label.css_attribute_color input:checked + span,
#products_grid_before label.css_attribute_color.active {
  box-shadow: 0 0 0 2px #B5523A !important;
}
/* Tag pills in sidebar */
.o_wsale_products_page .badge,
#products_grid_before .badge {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 11px !important;
  font-weight: 500 !important;
  padding: 5px 14px !important;
  border-radius: 20px !important;
  border: 1px solid #DDD0C0 !important;
  background: #ffffff !important;
  color: #6B5D50 !important;
  transition: all 0.2s !important;
}
.o_wsale_products_page .badge:hover,
#products_grid_before .badge:hover {
  border-color: #B5523A !important;
  color: #B5523A !important;
}
.o_wsale_products_page .badge.active,
#products_grid_before .badge.active {
  background: #B5523A !important;
  color: #ffffff !important;
  border-color: #B5523A !important;
}
/* Active tag links */
.o_wsale_products_page a.tag-active,
a[href*="tags="].active {
  background: #B5523A !important;
  color: #ffffff !important;
  border-radius: 20px !important;
  padding: 5px 14px !important;
}
/* Price range input styling */
#products_grid_before input[type="range"] {
  accent-color: #B5523A !important;
}
/* ── Active filter chips bar (above products) ── */
.o_wsale_products_page .o_search_found_msg,
.o_wsale_products_page .o_pricelist_dropdown_container {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 12px !important;
}
/* Empty / no-results message */
.o_wsale_products_page .oe_empty_found_msg {
  font-family: 'Inter', -apple-system, sans-serif !important;
  color: #6B5D50 !important;
}
/* Product count text */
.o_wsale_products_page .o_wsale_products_count {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 12px !important;
  color: #9A8B7C !important;
}

/* Breadcrumb styling */
.oe_website_sale .breadcrumb {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 12px !important;
}
.oe_website_sale .breadcrumb a {
  color: #A89888 !important;
}
.oe_website_sale .breadcrumb a:hover {
  color: #B5523A !important;
}
/* Sort / layout buttons */
.o_wsale_apply_sort .btn,
.o_wsale_products_grid_table_wrapper .btn {
  font-family: 'Inter', -apple-system, sans-serif !important;
  color: #6B5D50 !important;
  font-size: 12px !important;
  border: 1px solid #DDD0C0 !important;
  border-radius: 8px !important;
}
/* Sort dropdown */
.o_wsale_apply_sort select,
.o_wsale_apply_sort .dropdown-toggle {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 12px !important;
  border: 0.5px solid #DDD0C0 !important;
  border-radius: 6px !important;
  color: #6B5D50 !important;
  padding: 4px 10px !important;
}

/* ── HIDE PAGER (replaced by infinite scroll) ── */
.oe_website_sale .pagination,
.oe_website_sale nav.pagination,
.oe_website_sale .o_pager,
.products_pager,
.oe_website_sale .products_pager,
#products_grid .products_pager,
.o_wsale_products_grid_table_wrapper ~ nav,
.o_wsale_products_grid_table_wrapper ~ .products_pager {
  display: none !important;
}

/* ── Infinite scroll spinner ── */
#okio-infinite-loader {
  text-align: center;
  padding: 2rem 0;
  grid-column: 1 / -1;
}
#okio-infinite-loader .okio-spinner {
  width: 28px;
  height: 28px;
  border: 2.5px solid #DDD0C0;
  border-top-color: #B5523A;
  border-radius: 50%;
  display: inline-block;
  animation: okio-spin 0.8s linear infinite;
}
@keyframes okio-spin { to { transform: rotate(360deg); } }
#okio-infinite-loader .okio-loading-text {
  font-family: 'Inter', -apple-system, sans-serif;
  font-size: 12px;
  color: #A09080;
  margin-top: 8px;
}
/* Add to cart button inside cards (if visible) */
.oe_product_cart .o_wsale_product_btn .btn,
.oe_product_cart .a-submit {
  background: #B5523A !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 8px !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  letter-spacing: 0.3px !important;
  text-transform: uppercase !important;
  padding: 8px 16px !important;
}
.oe_product_cart .o_wsale_product_btn .btn:hover,
.oe_product_cart .a-submit:hover {
  background: #7A3628 !important;
}

/* ── Mobile adjustments for shop cards ── */
@media (max-width: 767px) {
  #products_grid .table {
    border-spacing: 8px !important;
  }
  .oe_product_cart .oe_product_image {
    aspect-ratio: 1 / 1 !important;
  }
  .oe_product_cart .o_wsale_products_item_title {
    font-size: 13px !important;
  }
  .oe_product_cart .product_price .oe_currency_value {
    font-size: 14px !important;
  }
  .oe_product_cart .o_wsale_product_information_text {
    padding: 12px 14px 8px !important;
  }
  .oe_product_cart .o_wsale_product_sub {
    padding: 0 14px 12px !important;
  }
}

/* ── REVIEWS CAROUSEL — multi-card desktop, single mobile ── */
/* Desktop: show 3 cards side by side */
@media (min-width: 992px) {
  .s_quotes_carousel_wrapper .carousel-inner {
    display: flex !important;
    flex-wrap: wrap !important;
    overflow: hidden !important;
  }
  .s_quotes_carousel_wrapper .carousel-item {
    display: block !important;
    position: static !important;
    left: auto !important;
    flex: 0 0 33.333% !important;
    max-width: 33.333% !important;
    padding: 0 12px !important;
    min-height: auto !important;
    opacity: 1 !important;
    transform: none !important;
    transition: none !important;
    float: none !important;
    margin-right: 0 !important;
    backface-visibility: visible !important;
  }
  /* Hide overflow cards beyond first 3 */
  .s_quotes_carousel_wrapper .carousel-item:nth-child(n+4) {
    display: none !important;
  }
  .s_quotes_carousel_wrapper .carousel-item .card,
  .s_quotes_carousel_wrapper .carousel-item > div {
    max-width: 100% !important;
    margin: 0 !important;
  }
  /* Hide arrows on desktop — all cards visible */
  .s_quotes_carousel_wrapper .carousel-control-prev,
  .s_quotes_carousel_wrapper .carousel-control-next {
    display: none !important;
  }
}
/* Mobile: single card with arrows */
@media (max-width: 991px) {
  .s_quotes_carousel_wrapper .carousel-inner {
    overflow: hidden !important;
  }
  .s_quotes_carousel_wrapper .carousel-item {
    padding: 0 52px !important;
    min-height: auto !important;
  }
  .s_quotes_carousel_wrapper .carousel-item .card,
  .s_quotes_carousel_wrapper .carousel-item > div {
    max-width: 100% !important;
    margin: 0 auto !important;
  }
}
/* Review card styling */
.s_quotes_carousel_wrapper .card {
  border: 1px solid #DDD0C0 !important;
  border-radius: 16px !important;
  background: #ffffff !important;
  box-shadow: none !important;
  padding: 28px 32px !important;
}
/* Arrow controls — terracota circles (mobile only, hidden on desktop) */
.s_quotes_carousel_wrapper .carousel-control-prev,
.s_quotes_carousel_wrapper .carousel-control-next {
  width: 40px !important;
  height: 40px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  background: #B5523A !important;
  border-radius: 50% !important;
  opacity: 1 !important;
  bottom: auto !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: hidden !important;
}
.s_quotes_carousel_wrapper .carousel-control-prev {
  left: 4px !important;
}
.s_quotes_carousel_wrapper .carousel-control-next {
  right: 4px !important;
}
.s_quotes_carousel_wrapper .carousel-control-prev:hover,
.s_quotes_carousel_wrapper .carousel-control-next:hover {
  background: #7A3628 !important;
}
.s_quotes_carousel_wrapper .carousel-control-prev-icon,
.s_quotes_carousel_wrapper .carousel-control-next-icon {
  width: 14px !important;
  height: 14px !important;
  filter: brightness(0) invert(1) !important;
}
/* Hide dots indicator */
.s_quotes_carousel_wrapper .carousel-indicators {
  display: none !important;
}
/* Stars color */
.s_quotes_carousel_wrapper .text-warning,
.s_quotes_carousel_wrapper [style*="color"] {
  color: #B5523A !important;
}

/* ── Variant name text below product name (like homepage cards) ── */
.okio-variant-name {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  color: #A89888 !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.3 !important;
  display: block !important;
}

/* ── MOBILE ── */
@media (max-width: 991px) {
  header#top nav.navbar {
    padding: 12px 16px !important;
  }
  footer.o_footer .footer { padding: 40px 20px !important; }
  footer.o_footer #footer { padding: 24px 20px !important; }
  footer.o_footer .o_footer_copyright { padding: 12px 20px !important; }
}

/* Fix footer text-black on links */
footer .text-black,
footer font.text-black,
#footer .text-black,
#footer font.text-black {
  color: rgba(255,255,255,0.5) !important;
}
footer a .text-black,
footer a font.text-black,
#footer a .text-black,
#footer a font.text-black {
  color: inherit !important;
}

/* === MOBILE OFFCANVAS MENU — LEFT ALIGNED === */
@media (max-width: 991px) {
  /* Main nav list — don't center items */
  .offcanvas-body .navbar-nav,
  .offcanvas-body .navbar-nav .top_menu {
    align-items: stretch !important;
  }
  /* Nav links — left align text */
  .offcanvas-body .nav-link,
  .offcanvas-body a.nav-link,
  .offcanvas-body .nav-link.dropdown-toggle,
  .offcanvas-body .top_menu .nav-link {
    text-align: left !important;
  }
  /* Dropdown menus inside offcanvas */
  .offcanvas-body .dropdown-menu,
  .offcanvas-body .o_mega_menu {
    text-align: left !important;
  }
  .offcanvas-body .dropdown-menu a,
  .offcanvas-body .dropdown-menu h5,
  .offcanvas-body .dropdown-menu span,
  .offcanvas-body .dropdown-menu p,
  .offcanvas-body .dropdown-menu .nav-link,
  .offcanvas-body .dropdown-menu .dropdown-item {
    text-align: left !important;
  }
  .offcanvas-body .dropdown-menu .container,
  .offcanvas-body .dropdown-menu .row,
  .offcanvas-body .dropdown-menu [class*="col"] {
    text-align: left !important;
  }
}





/* === HIDE EMPTY RIBBONS/BADGES === */
#wrapwrap .o_ribbon.okio-empty-badge,
#wrapwrap span.o_ribbon.okio-empty-badge,
body .o_ribbon.okio-empty-badge,
.oe_website_sale .o_ribbon.okio-empty-badge,
.oe_product .o_ribbon.okio-empty-badge {
  display: none !important;
  width: 0 !important;
  height: 0 !important;
  overflow: hidden !important;
  opacity: 0 !important;
}


/* === FOOTER MOBILE 2-COL + HIGHLIGHTS === */
@media (max-width: 767px) {
  #wrapwrap footer .row:first-child {
    display: flex !important;
    flex-wrap: wrap !important;
  }
  #wrapwrap footer .row:first-child .col-lg-4 {
    flex: 0 0 100% !important;
    max-width: 100% !important;
    margin-bottom: 20px !important;
  }
  #wrapwrap footer .row:first-child .col-lg-2 {
    flex: 0 0 50% !important;
    max-width: 50% !important;
    margin-bottom: 16px !important;
  }
}
#wrapwrap footer a[href*="recien-llegados"] {
  color: #F5F1EA !important;
  font-weight: 600 !important;
  text-decoration: underline !important;
  text-underline-offset: 3px !important;
}
#wrapwrap footer a[href="/sale"] {
  color: #E5664A !important;
  font-weight: 700 !important;
}





/* === MOBILE MENU UNIFIED === */
#wrapwrap .offcanvas-body .top_menu .nav-item .nav-link,
#wrapwrap .offcanvas-body .top_menu .nav-item a.nav-link.dropdown-toggle,
#wrapwrap .offcanvas-body .navbar-nav .top_menu .nav-link {
  text-transform: none !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 15px !important;
  font-weight: 500 !important;
  color: #2A2420 !important;
  text-align: left !important;
  padding: 14px 20px !important;
  border-bottom: 1px solid #EDE4D8 !important;
  letter-spacing: 0 !important;
}
#wrapwrap .offcanvas-body .top_menu .nav-item .nav-link.d-flex {
  justify-content: flex-start !important;
  gap: 8px !important;
}
#wrapwrap .offcanvas-body .dropdown-menu,
#wrapwrap .offcanvas-body .o_mega_menu {
  text-align: left !important;
  border: none !important;
  box-shadow: none !important;
  background: #FAFAF6 !important;
  padding: 4px 0 12px !important;
}
#wrapwrap .offcanvas-body .dropdown-menu .container {
  padding: 0 !important;
}
#wrapwrap .offcanvas-body .dropdown-menu h5 {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 11px !important;
  font-weight: 600 !important;
  color: #A09080 !important;
  text-transform: uppercase !important;
  letter-spacing: 1.5px !important;
  text-align: left !important;
  padding: 12px 24px 4px !important;
  margin: 0 !important;
}
#wrapwrap .offcanvas-body .dropdown-menu a,
#wrapwrap .offcanvas-body .dropdown-menu .nav-link,
#wrapwrap .offcanvas-body .dropdown-menu .dropdown-item {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 14px !important;
  font-weight: 400 !important;
  color: #2A2420 !important;
  text-align: left !important;
  padding: 8px 24px !important;
  text-transform: none !important;
}
#wrapwrap .offcanvas-body .o_searchbar_form {
  padding: 0 16px !important;
  margin-bottom: 8px !important;
}


/* ── Cart Popup btn-primary Override (Noche Calida) ── */
.o_wsale_add2cart_dialog .btn-primary {
  background-color: #2A2420 !important;
  border-color: #2A2420 !important;
  color: #F5F1EA !important;
}
.o_wsale_add2cart_dialog .btn-primary:hover {
  background-color: #B5523A !important;
  border-color: #B5523A !important;
  color: #F5F1EA !important;
}
.o_wsale_add2cart_dialog .btn-primary:focus {
  background-color: #2A2420 !important;
  border-color: #2A2420 !important;
  color: #F5F1EA !important;
}
.o_wsale_add2cart_dialog .btn-primary:active {
  background-color: #B5523A !important;
  border-color: #B5523A !important;
  color: #F5F1EA !important;
}
.oe_website_sale .modal .btn-primary {
  background-color: #2A2420 !important;
  border-color: #2A2420 !important;
  color: #F5F1EA !important;
}
.oe_website_sale .modal .btn-primary:hover {
  background-color: #B5523A !important;
  border-color: #B5523A !important;
  color: #F5F1EA !important;
}
.oe_website_sale .modal .btn-primary:focus {
  background-color: #2A2420 !important;
  border-color: #2A2420 !important;
  color: #F5F1EA !important;
}
#wrap .oe_cart .btn-primary {
  background-color: #2A2420 !important;
  border-color: #2A2420 !important;
  color: #F5F1EA !important;
}
#wrap .oe_cart .btn-primary:hover {
  background-color: #B5523A !important;
  border-color: #B5523A !important;
  color: #F5F1EA !important;
}

/* ── HEADER CTA: Agendar Cita ── */
header#top #top_menu .nav-item > a.nav-link[href*="examen-visual"],
header#top #top_menu .nav-item > a.nav-link.active[href*="examen-visual"] {
  background: #B5523A !important;
  color: #fff !important;
  border-radius: 10px !important;
  padding: 8px 20px !important;
  font-weight: 600 !important;
  transition: all 0.3s ease !important;
}
header#top #top_menu .nav-item > a.nav-link[href*="examen-visual"]:hover {
  background: #7A3628 !important;
  color: #fff !important;
}

/* ── HEADER CTA v2: Agendar Cita (turquesa, jul 2026) ── */
header#top a.okio-btn-agendar {
  display: inline-flex !important;
  align-items: center !important;
  background: #B5523A !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 8px 18px !important;
  margin-left: 10px !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  letter-spacing: 0.5px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border: none !important;
  transition: background 0.2s ease !important;
}
header#top a.okio-btn-agendar:hover {
  background: #7A3628 !important;
  color: #ffffff !important;
}

/* ── Par de pills del header (Nueva Colección + Agendar Cita) ── */
header#top .okio-header-ctas { gap: 8px !important; margin-left: 8px !important; }
header#top a.okio-btn-nueva {
  display: inline-flex !important;
  align-items: center !important;
  background: #8B9D77 !important;
  color: #ffffff !important;
  border-radius: 8px !important;
  padding: 8px 16px !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-weight: 600 !important;
  font-size: 12px !important;
  letter-spacing: 0.4px !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  white-space: nowrap !important;
  border: none !important;
  transition: background 0.2s ease !important;
}
header#top a.okio-btn-nueva:hover { background: #7A8C68 !important; color: #ffffff !important; }
/* Ocultar NC / Agendar / boton + del menu de texto en desktop (reemplazados por los pills) */
#o_main_nav #top_menu li.nav-item:has(a[href*="nueva-coleccion"]),
#o_main_nav #top_menu li.nav-item:has(a[href*="examen-visual"]),
#o_main_nav #top_menu .o_extra_menu_items { display: none !important; }

/* ── Header: acomodar CTA turquesa + Nueva Colección sin colapsar (jul 2026) ── */
#wrapwrap header#top #o_main_nav .container.d-flex.justify-content-between {
  max-width: 1520px !important;
  padding-left: 24px !important;
  padding-right: 24px !important;
}
header#top nav.navbar .navbar-brand.logo {
  margin-right: 12px !important;
}
header#top #top_menu .nav-link {
  padding-left: 11px !important;
  padding-right: 11px !important;
}
header#top #top_menu .nav-item a.nav-link[href*="nueva-coleccion"] {
  padding-left: 13px !important;
  padding-right: 13px !important;
  letter-spacing: 0.3px !important;
}
header#top a.okio-btn-agendar {
  padding-left: 13px !important;
  padding-right: 13px !important;
  margin-left: 6px !important;
  letter-spacing: 0.3px !important;
}

/* ============================================= */
/* === MOBILE MENU v2 — TIERRA (Julio 2026) === */
/* ============================================= */
#wrapwrap #top_menu_collapse_mobile.offcanvas {
  background: #F5F1EA !important;
  width: 86vw !important;
  max-width: 400px !important;
}
/* Header del offcanvas: tagline editorial + botón cerrar */
#wrapwrap #top_menu_collapse_mobile .offcanvas-header {
  justify-content: space-between !important;
  align-items: center !important;
  padding: 14px 22px 2px !important;
}
#wrapwrap #top_menu_collapse_mobile .offcanvas-header::before {
  content: "Verte bien, ver bien.";
  font-family: 'Fraunces', Georgia, serif;
  font-style: italic;
  font-size: 16px;
  color: #B5523A;
}
#wrapwrap #top_menu_collapse_mobile .btn-close {
  background-color: #EDE4D8 !important;
  border-radius: 50% !important;
  padding: 12px !important;
  opacity: 1 !important;
}
/* Cuerpo: sin tarjeta blanca interior, todo plano sobre Hueso */
#wrapwrap #top_menu_collapse_mobile .offcanvas-body {
  padding: 4px 22px calc(24px + env(safe-area-inset-bottom)) !important;
  overflow-y: auto !important;
}
#wrapwrap #top_menu_collapse_mobile .offcanvas-body .navbar-nav,
#wrapwrap #top_menu_collapse_mobile .offcanvas-body .top_menu {
  background: transparent !important;
  border: none !important;
  box-shadow: none !important;
  border-radius: 0 !important;
  padding: 0 !important;
}
/* Buscador: pill Blanco con botón Terracota */
#wrapwrap #top_menu_collapse_mobile .o_searchbar_form {
  padding: 0 !important;
  margin: 4px 0 10px !important;
}
#wrapwrap #top_menu_collapse_mobile .o_searchbar_form .input-group {
  background: #FFFFFF !important;
  border: 1px solid #DDD0C0 !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  margin-bottom: 0 !important;
}
#wrapwrap #top_menu_collapse_mobile .o_searchbar_form .oe_search_box {
  background: #FFFFFF !important;
  border: none !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 15px !important;
  color: #2A2420 !important;
  padding: 10px 6px 10px 18px !important;
  box-shadow: none !important;
}
#wrapwrap #top_menu_collapse_mobile .o_searchbar_form .oe_search_box::placeholder {
  color: #A09080 !important;
}
#wrapwrap #top_menu_collapse_mobile .o_searchbar_form .oe_search_button {
  background: #B5523A !important;
  color: #FFFFFF !important;
  border: none !important;
  border-radius: 999px !important;
  margin: 4px !important;
  width: 42px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
}
/* Items del menú: Fraunces editorial, una sola línea divisoria Arcilla */
#wrapwrap #top_menu_collapse_mobile .top_menu .nav-item {
  border: none !important;
  background: transparent !important;
}
#wrapwrap #top_menu_collapse_mobile .top_menu .nav-item .nav-link,
#wrapwrap #top_menu_collapse_mobile .top_menu .nav-item a.nav-link {
  font-family: 'Fraunces', Georgia, serif !important;
  font-size: 19px !important;
  font-weight: 500 !important;
  letter-spacing: -0.01em !important;
  text-transform: none !important;
  color: #2A2420 !important;
  text-align: left !important;
  padding: 12px 2px !important;
  border: none !important;
  border-bottom: 1px solid #E3D9CC !important;
  background: transparent !important;
}
#wrapwrap #top_menu_collapse_mobile .top_menu .nav-item .nav-link:active,
#wrapwrap #top_menu_collapse_mobile .top_menu .nav-item .nav-link:hover {
  color: #B5523A !important;
}
/* Nueva Colección: acento sutil con punto Terracota */
#wrapwrap #top_menu_collapse_mobile .top_menu a.nav-link[href*="nueva-coleccion"] span::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: #B5523A;
  margin-left: 8px;
  vertical-align: middle;
}
/* Agendar Cita: botón Terracota dentro del menú */
#wrapwrap #top_menu_collapse_mobile .top_menu a.nav-link[href*="examen-visual"] {
  background: #B5523A !important;
  color: #FFFFFF !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 15px !important;
  font-weight: 600 !important;
  text-align: center !important;
  border-radius: 999px !important;
  border-bottom: none !important;
  padding: 13px 20px !important;
  margin-top: 12px !important;
}
#wrapwrap #top_menu_collapse_mobile .top_menu a.nav-link[href*="examen-visual"] span {
  color: #FFFFFF !important;
}
/* Bloque inferior: Iniciar sesión como pill outline Noche */
#wrapwrap #top_menu_collapse_mobile .offcanvas-body a[href*="/web/login"] {
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-size: 14.5px !important;
  font-weight: 500 !important;
  color: #2A2420 !important;
  background: transparent !important;
  border: 1.5px solid #2A2420 !important;
  border-radius: 999px !important;
  padding: 12px 20px !important;
}
#wrapwrap #top_menu_collapse_mobile .offcanvas-body a[href*="/web/login"]:hover {
  background: #2A2420 !important;
  color: #F5F1EA !important;
}

/* Bloque inferior compacto para que Iniciar sesión no se corte */
#wrapwrap #top_menu_collapse_mobile .offcanvas-body .navbar-nav.mt-3 {
  margin-top: 10px !important;
  padding-bottom: 6px !important;
}
#wrapwrap #top_menu_collapse_mobile .offcanvas-body a[href*="/web/login"] {
  padding: 11px 20px !important;
  font-size: 14px !important;
}


/* ============================================= */
/* === BTN-PRIMARY NATIVO → TERRACOTA (v2) ===== */
/* El preset del tema aún trae navy; los componentes
   JS nativos (popup carrito, checkout, modales) lo usan. */
/* ============================================= */
.btn-primary,
#wsale_cart_notification .btn-primary,
.o_cart_notification .btn-primary,
.o_notification_manager .btn-primary,
.modal .btn-primary {
  background-color: #B5523A !important;
  border-color: #B5523A !important;
  color: #FFFFFF !important;
}
.btn-primary:hover, .btn-primary:focus, .btn-primary:active,
.modal .btn-primary:hover {
  background-color: #7A3628 !important;
  border-color: #7A3628 !important;
  color: #FFFFFF !important;
}
.btn-outline-primary {
  color: #B5523A !important;
  border-color: #B5523A !important;
}
.btn-outline-primary:hover {
  background-color: #B5523A !important;
  color: #FFFFFF !important;
}
/* links nativos que heredan el primary del tema */
a.text-primary, .text-primary { color: #B5523A !important; }


/* ====== Header redesign: sin barra negra (jul 2026) ====== */
header#top .o_header_sales_one_right_col {
  background: transparent !important;
  border-radius: 0 !important;
  padding: 0 !important;
  margin-left: 8px !important;
  gap: 4px !important;
}
header#top .o_header_sales_one_right_col a,
header#top .o_header_sales_one_right_col .nav-link {
  color: #2A2420 !important;
}
header#top .o_header_sales_one_right_col a:hover,
header#top .o_header_sales_one_right_col .nav-link:hover {
  color: #B5523A !important;
}
header#top .o_header_sales_one_right_col .fa-search,
header#top .o_header_sales_one_right_col .oi-search { color: #2A2420 !important; }
header#top .o_header_sales_one_right_col .o_wsale_my_cart a { color: #2A2420 !important; }
header#top .o_header_sales_one_right_col .o_navlink_background {
  background: transparent !important;
  color: #2A2420 !important;
}
header#top .o_header_sales_one_right_col .o_navlink_background:hover {
  background: #EDE4D8 !important;
  color: #B5523A !important;
}

/* Fix: icono del carrito como SVG (la fuente FontAwesome no trae el glifo shopping-cart) */
header#top .o_wsale_my_cart i.fa-shopping-cart {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D'http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg'%20viewBox%3D'0%200%2024%2024'%20fill%3D'none'%20stroke%3D'%232A2420'%20stroke-width%3D'2'%20stroke-linecap%3D'round'%20stroke-linejoin%3D'round'%3E%3Ccircle%20cx%3D'9'%20cy%3D'21'%20r%3D'1'%2F%3E%3Ccircle%20cx%3D'20'%20cy%3D'21'%20r%3D'1'%2F%3E%3Cpath%20d%3D'M1%201h4l2.68%2013.39a2%202%200%200%200%202%201.61h9.72a2%202%200%200%200%202-1.61L23%206H6'%2F%3E%3C%2Fsvg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: center !important;
  background-size: 21px 21px !important;
  width: 26px !important;
  height: 26px !important;
  display: inline-block !important;
}
header#top .o_wsale_my_cart i.fa-shopping-cart::before { content: "" !important; }

/* ── Texto blanco en los pills (gana a la recoloreada de iconos del header) ── */
header#top .o_header_sales_one_right_col .okio-header-ctas a.okio-btn-nueva,
header#top .o_header_sales_one_right_col .okio-header-ctas a.okio-btn-agendar,
header#top .o_header_sales_one_right_col .okio-header-ctas a.okio-btn-nueva:hover,
header#top .o_header_sales_one_right_col .okio-header-ctas a.okio-btn-agendar:hover {
  color: #ffffff !important;
}
/* ── Tiendas: mismo color y peso que el resto del menu ── */
header#top #top_menu .nav-item a.nav-link[href*="nuestras-tiendas"] {
  color: #6B5D50 !important;
  font-weight: 500 !important;
}
