/* dc-fixes.css — Decants Concepcion Stabilization v1.0
   Prioridad: 9999 — carga despues de todo */

/* === 1. SCROLL FIX GLOBAL === */
html { overflow-x: hidden !important; overflow-y: auto !important; }
html.lenis, html.lenis-smooth { overflow: auto !important; }
body { overflow-x: hidden !important; min-height: 100vh; }
body.dc-loaded { overflow-y: auto !important; }

/* === 2. PRELOADER FIX === */
#dc-loader {
	  position: fixed; inset: 0; z-index: 99997;
	  background: #0a0a0a;
	  display: flex; flex-direction: column;
	  align-items: center; justify-content: center; gap: 24px;
	  transition: opacity 0.4s ease;
}
#dc-loader.is-hidden,
body.dc-loaded #dc-loader { opacity: 0 !important; pointer-events: none !important; display: none !important; }
.loader-line-container { width: 120px; height: 1px; background: #1f1f1f; position: relative; }
.loader-line { position: absolute; left: 0; top: 0; height: 1px; background: #C9A84C; width: 0; }
.loader-logo { opacity: 1 !important; width: 80px; height: auto; }

/* === 3. HEADER/NAVBAR CONSISTENCY === */
.dc-nav, header.elementor-section, .elementor-location-header {
	  position: fixed !important; top: 0 !important; left: 0 !important; right: 0 !important;
	  z-index: 999 !important; width: 100% !important;
	  background: rgba(10,10,10,0.92) !important;
	  backdrop-filter: blur(8px) !important;
	  -webkit-backdrop-filter: blur(8px) !important;
	  border-bottom: 1px solid rgba(255,255,255,0.05) !important;
}
.dc-nav.is-scrolled { background: rgba(10,10,10,0.98) !important; }

/* Compensar header fijo en contenido */
.site-content, .woocommerce-page main, .page main {
	  padding-top: 80px;
}
.single-product main, .page-template-default main { padding-top: 80px; }

/* === 4. WC NOTICES — quitar verde, aplicar dorado === */
.woocommerce-message,
div.woocommerce-message,
.wc-block-components-notice-banner,
.woocommerce-notices-wrapper .woocommerce-message {
	  background: #111111 !important;
	  border-top: 2px solid #C9A84C !important;
	  border-left: none !important; border-right: none !important;
	  border-bottom: 1px solid #1f1f1f !important;
	  color: #F5F5F5 !important;
	  font-family: 'Inter Tight', sans-serif !important;
	  font-size: 13px !important;
	  border-radius: 0 !important;
	  box-shadow: none !important;
}
/* Eliminar el icono de check verde */
.woocommerce-message::before { display: none !important; }
.woocommerce-message a.button { background: #C9A84C !important; color: #0a0a0a !important; border-radius: 0 !important; }
.woocommerce-message a.button:hover { background: #b39538 !important; }

/* === 5. WC PRODUCT GRID FIX === */
.woocommerce ul.products,
.woocommerce-page ul.products {
	  display: grid !important;
	  grid-template-columns: repeat(3, 1fr) !important;
	  gap: 2px !important;
	  list-style: none !important;
	  padding: 0 !important; margin: 0 !important;
	  background: #1f1f1f !important;
}
.woocommerce ul.products li.product {
	  background: #0f0f0f !important;
	  margin: 0 !important;
	  padding: 0 0 16px !important;
	  overflow: hidden !important;
	  writing-mode: horizontal-tb !important;
	  text-orientation: mixed !important;
}

/* Productos relacionados — grid consistente */
.related ul.products,
.upsells ul.products {
	  grid-template-columns: repeat(4, 1fr) !important;
	  gap: 2px !important;
}

/* Imagenes de producto */
.woocommerce ul.products li.product img,
.woocommerce ul.products li.product a img {
	  width: 100% !important;
	  height: 260px !important;
	  object-fit: cover !important;
	  object-position: center top !important;
	  display: block !important;
}

/* Titulos de producto */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
h2.woocommerce-loop-product__title {
	  font-family: 'Cormorant Garamond', 'EB Garamond', Georgia, serif !important;
	  font-size: 18px !important; font-weight: 300 !important;
	  color: #F5F5F5 !important; line-height: 1.2 !important;
	  padding: 14px 16px 4px !important;
	  writing-mode: horizontal-tb !important;
	  white-space: normal !important;
}

/* Precios */
.woocommerce ul.products li.product .price,
.woocommerce ul.products li.product .woocommerce-Price-amount {
	  color: #C9A84C !important;
	  font-family: 'Cormorant Garamond', serif !important;
	  font-style: italic !important; font-size: 17px !important;
	  padding: 0 16px 12px !important; display: block !important;
}

/* Botones en productos */
.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .add_to_cart_button {
	  margin: 0 16px 16px !important;
	  display: block !important; width: calc(100% - 32px) !important;
	  background: transparent !important;
	  border: 1px solid #2a2a2a !important;
	  color: #F5F5F5 !important;
	  font-size: 10px !important; letter-spacing: 0.2em !important;
	  text-transform: uppercase !important;
	  padding: 12px !important; text-align: center !important;
	  transition: all 0.3s ease !important;
	  border-radius: 0 !important;
}
.woocommerce ul.products li.product .button:hover,
.woocommerce ul.products li.product .add_to_cart_button:hover {
	  background: #C9A84C !important; border-color: #C9A84C !important;
	  color: #0a0a0a !important;
}section
/* === 6. SINGLE PRODUCT PAGE === */
.single-product .entry-summary,
.single-product div.product {
	  background: #0a0a0a !important; color: #F5F5F5 !important;
}
.single-product .product_title {
	  font-family: 'Cormorant Garamond', serif !important;
	  font-size: clamp(32px, 4vw, 52px) !important;
	  font-weight: 300 !important; color: #F5F5F5 !important;
	  letter-spacing: -0.01em !important; line-height: 1.05 !important;
}
.single-product .price {
	  color: #C9A84C !important;
	  font-family: 'Cormorant Garamond', serif !important;
	  font-style: italic !important; font-size: 24px !important;
}
.single-product .variations td.label label {
	  color: #8a8a8a !important;
	  font-size: 10px !important; letter-spacing: 0.2em !important;
	  text-transform: uppercase !important;
}
.single-product table.variations { border: none !important; background: transparent !important; }
.single-product table.variations td { padding: 8px 0 !important; }

/* === 7. WC VARIABLE SELECT FIX === */
.variations_form .value select {
	  background: #111111 !important;
	  border: 1px solid #2a2a2a !important;
	  color: #F5F5F5 !important;
	  padding: 12px 16px !important; border-radius: 0 !important;
	  font-family: 'Inter Tight', sans-serif !important;
	  font-size: 13px !important; width: 100% !important;
	  appearance: none !important; -webkit-appearance: none !important;
	  cursor: pointer !important;
}
.variations_form .value select:focus {
	  border-color: #C9A84C !important; outline: none !important;
	  box-shadow: none !important;
}

/* === 8. ADD TO CART BUTTON === */
.single_add_to_cart_button,
button.single_add_to_cart_button.button {
	  background: #C9A84C !important; color: #0a0a0a !important;
	  border: 1px solid #C9A84C !important;
	  font-family: 'Inter Tight', sans-serif !important;
	  font-size: 11px !important; font-weight: 600 !important;
	  letter-spacing: 0.22em !important; text-transform: uppercase !important;
	  padding: 16px 32px !important; border-radius: 0 !important;
	  cursor: pointer !important; width: 100% !important;
	  transition: all 0.3s ease !important;
}
.single_add_to_cart_button:hover { background: transparent !important; color: #C9A84C !important; }

/* === 9. WOOCOMMERCE PAGE BACKGROUNDS === */
.woocommerce-page, .woocommerce, body.woocommerce {
	  background: #0a0a0a !important; color: #F5F5F5 !important;
}
.woocommerce-account, .woocommerce-cart, .woocommerce-checkout {
	  background: #0a0a0a !important;
}

/* WC tabs en producto */
.woocommerce-tabs ul.tabs { border-bottom: 1px solid #2a2a2a !important; background: transparent !important; padding: 0 !important; }
.woocommerce-tabs ul.tabs li {
	  background: transparent !important; border: none !important;
	  border-bottom: 2px solid transparent !important;
	  border-radius: 0 !important; margin: 0 !important;
}
.woocommerce-tabs ul.tabs li.active {
	  background: transparent !important;
	  border-bottom-color: #C9A84C !important;
}
.woocommerce-tabs ul.tabs li a {
	  font-family: 'Inter Tight', sans-serif !important;
	  font-size: 10px !important; letter-spacing: 0.2em !important;
	  text-transform: uppercase !important;
	  color: #8a8a8a !important; padding: 12px 20px !important;
}
.woocommerce-tabs ul.tabs li.active a { color: #C9A84C !important; }
.woocommerce-tabs .panel { background: transparent !important; color: #c8c8c8 !important; border: none !important; }

/* Reviews */
#reviews .comment_container { background: #111111 !important; padding: 16px !important; margin-bottom: 12px !important; }
#reviews .comment-text { background: transparent !important; border: none !important; }

/* === 10. CART PAGE === */
.woocommerce-cart .entry-header h1,
.woocommerce-cart h1.entry-title {
	  font-family: 'Cormorant Garamond', serif !important;
	  color: #F5F5F5 !important; font-weight: 300 !important;
}
.woocommerce-cart table.cart {
	  background: transparent !important; border: none !important;
	  width: 100% !important;
}
.woocommerce-cart table.cart th {
	  background: transparent !important;
	  border-bottom: 1px solid #2a2a2a !important;
	  color: #8a8a8a !important;
	  font-size: 10px !important; letter-spacing: 0.2em !important;
	  text-transform: uppercase !important;
}
.woocommerce-cart table.cart td {
	  border-bottom: 1px solid #1f1f1f !important;
	  background: transparent !important; color: #F5F5F5 !important;
}
.woocommerce-cart .cart_totals {
	  background: #111111 !important;
	  border: 1px solid #1f1f1f !important;
	  border-radius: 0 !important;
}section
/* === 11. SPACING CONSISTENCY === */
.woocommerce div.product { padding: 80px 48px 64px !important; max-width: 1400px !important; margin: 0 auto !important; }
.woocommerce div.product div.images { margin-right: 0 !important; }
.woocommerce div.product div.summary { margin-left: 0 !important; }

/* Remove WC quantity box (replaced by chips) */
.woocommerce .quantity { display: none !important; }
.woocommerce-variation-add-to-cart .quantity { display: none !important; }

/* === 12. ELEMENTOR + WC CONTAINERS === */
.elementor-section { max-width: 100% !important; overflow: hidden !important; }
.elementor-container { max-width: 1400px !important; margin: 0 auto !important; }

/* Fix de containers con overflow que corta contenido */
.elementor-widget-container { overflow: visible !important; }
.elementor-column-wrap { overflow: visible !important; }

/* === 13. CHECKOUT PAGE === */
.woocommerce-checkout #customer_details h3,
.woocommerce-checkout #order_review_heading {
	  font-family: 'Cormorant Garamond', serif !important;
	  color: #F5F5F5 !important; font-size: 28px !important;
	  font-weight: 300 !important; border-bottom: 1px solid #2a2a2a !important;
	  padding-bottom: 12px !important; margin-bottom: 24px !important;
}
.woocommerce form .form-row label {
	  color: #8a8a8a !important; font-size: 10px !important;
	  letter-spacing: 0.15em !important; text-transform: uppercase !important;
}
.woocommerce form .form-row input[type="text"],
.woocommerce form .form-row input[type="email"],
.woocommerce form .form-row input[type="tel"],
.woocommerce form .form-row textarea,
.woocommerce form .form-row select {
	  background: #111111 !important; border: 1px solid #2a2a2a !important;
	  color: #F5F5F5 !important; border-radius: 0 !important;
	  padding: 12px 16px !important;
}
.woocommerce form .form-row input:focus,
.woocommerce form .form-row textarea:focus,
.woocommerce form .form-row select:focus {
	  border-color: #C9A84C !important; outline: none !important; box-shadow: none !important;
}

/* === 14. RESPONSIVE FIXES === */
@media (max-width: 768px) {
	  .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; }
	  .related ul.products, .upsells ul.products { grid-template-columns: repeat(2, 1fr) !important; }
	  .woocommerce div.product { padding: 80px 20px 48px !important; }
	  .woocommerce div.product { display: block !important; }
	  .woocommerce div.product div.images { width: 100% !important; float: none !important; }
	  .woocommerce div.product div.summary { width: 100% !important; float: none !important; margin-top: 32px !important; }
	  .dc-nav { padding: 14px 20px !important; }
}
@media (max-width: 480px) {
	  .woocommerce ul.products { grid-template-columns: 1fr !important; }
	  .related ul.products, .upsells ul.products { grid-template-columns: 1fr !important; }
}

/* === 15. PAGINATION === */
.woocommerce-pagination ul.page-numbers {
	  display: flex !important; gap: 8px !important;
	  justify-content: center !important; list-style: none !important;
	  padding: 48px 0 !important;
}
.woocommerce-pagination ul.page-numbers li .page-numbers {
	  display: flex !important; align-items: center !important; justify-content: center !important;
	  width: 40px !important; height: 40px !important;
	  border: 1px solid #2a2a2a !important; color: #8a8a8a !important;
	  text-decoration: none !important; font-size: 12px !important;
	  transition: all 0.3s ease !important; background: transparent !important;
}
.woocommerce-pagination ul.page-numbers li .page-numbers.current,
.woocommerce-pagination ul.page-numbers li .page-numbers:hover {
	  border-color: #C9A84C !important; color: #C9A84C !important;
	  background: rgba(201,168,76,0.06) !important;
}

/* === 16. CURSOR FIX — nunca cursor:none en botones WC === */
.woocommerce button, .woocommerce a.button, .woocommerce input.button,
.woocommerce .button, .woocommerce-cart button, .woocommerce-checkout button {
	  cursor: pointer !important;
}

/* === 17. HIDE WC DEFAULT ADDED-TO-CART NOTICE (replaced by drawer) === */
.woocommerce a.added_to_cart { display: none !important; }

/* === 18. WC BREADCRUMB === */
.woocommerce-breadcrumb {
	  font-size: 10px !important; letter-spacing: 0.2em !important;
	  text-transform: uppercase !important; color: #5a5a5a !important;
	  padding: 16px 48px !important; background: transparent !important;
	  border-bottom: 1px solid #1f1f1f !important;
}
.woocommerce-breadcrumb a { color: #5a5a5a !important; text-decoration: none !important; }
.woocommerce-breadcrumb a:hover { color: #C9A84C !important; }

/* === 19. WC SHOP ORDERING === */
.woocommerce-ordering select {
	  background: #111111 !important; border: 1px solid #2a2a2a !important;
	  color: #F5F5F5 !important; padding: 8px 32px 8px 12px !important;
	  border-radius: 0 !important; font-size: 11px !important;
	  letter-spacing: 0.1em !important; cursor: pointer !important;
}

/* === 20. BODY BACKGROUND GLOBAL === */
body { background-color: #0a0a0a !important; color: #F5F5F5 !important; }
.elementor-section, .elementor-top-section { background-color: transparent; }
.page-id-7 .elementor-section { background: transparent; }s
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}
}

/* ─── FIX 1: Cart overlay — JS adds .is-visible, CSS needs both ────────────── */
.dc-cart-overlay.is-visible {
  opacity: 1;
  visibility: visible;
  pointer-events: all;
}

/* ─── FIX 1b: Mobile cart drawer — full viewport, above everything ─────────── */
@media (max-width: 768px) {
  .dc-cart-drawer {
    width: 100vw !important;
    max-width: 100vw !important;
    height: 100svh !important;
    top: 0 !important;
    right: 0 !important;
  }
  .dc-cart-overlay.is-visible {
    z-index: 99998 !important;
  }
  .dc-cart-drawer {
    z-index: 99999 !important;
  }
}


/* ---- FIX: pills de tamano visibles (variaciones) ---- */
.single-product .variations_form .variations {
  display: table !important;
}
.single-product .variations_form .variations td.value > select {
  opacity: 0 !important;
  height: 1px !important;
  width: 1px !important;
  position: absolute !important;
  pointer-events: none !important;
}
.single-product .variations_form .variations td.label {
  display: none !important;
}
.single-product .variations_form .variations tr {
  display: block;
}
.single-product .variations_form .variations td.value {
  display: block;
  padding: 0;
}
