/* ============================================
   El Raconet de Aroa - Product Page CSS
   ============================================ */

/* ============================================
   Wishlist - DESACTIVADO
   ============================================ */
.raconet-wishlist-btn,
.raconet-wishlist-btn-product,
.raconet-btn-wishlist,
.raconet-product-img-wrap .raconet-wishlist-btn,
button.raconet-wishlist-btn-product,
.wishlist-button,
.yith-wcwl-add-to-wishlist {
    display: none !important;
}

/* ============================================
   Override Flatsome Container/Wrapper
   ============================================ */
.single-product .page-wrapper,
.single-product .main-content,
.single-product #content,
.single-product .content-area,
.single-product .row,
.single-product .large-12,
.single-product .col,
.single-product .product-container,
.single-product .product-main,
.single-product #product-sidebar {
    max-width: 100% !important;
    width: 100% !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.single-product .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
}

.single-product .col {
    padding-left: 0 !important;
    padding-right: 0 !important;
}

/* Remove Flatsome product sidebar */
.single-product #product-sidebar {
    display: none !important;
}

/* Make product content full width */
.single-product .product-info,
.single-product .product-gallery {
    max-width: 100% !important;
}

/* Remove any container restrictions */
body.single-product .container,
body.single-product .row-main {
    max-width: 100% !important;
    padding: 0 !important;
    margin: 0 !important;
}

/* Body background for product page */
body.single-product,
body.single-product .page-wrapper,
body.single-product #wrapper,
body.single-product #main {
    background-color: #FFFBF7 !important;
}

/* Hide default WooCommerce elements we're replacing */
.single-product .woocommerce-breadcrumb,
.single-product .product_title.entry-title,
.single-product .woocommerce-product-gallery,
.single-product .summary.entry-summary,
.single-product .woocommerce-tabs,
.single-product .related.products {
    /* Keep visible but we'll style them or replace with our own */
}

/* ============================================
   Breadcrumb
   ============================================ */
.raconet-breadcrumb {
    padding: var(--raconet-spacing-sm) var(--raconet-spacing-2xl)!important;
    background-color: var(--raconet-color-bg)!important;
}

.raconet-breadcrumb-container {
    display: flex!important;
    align-items: center!important;
    gap: 8px!important;
    font-family: var(--raconet-font-body)!important;
    font-size: 13px!important;
}

.raconet-breadcrumb a {
    color: var(--raconet-color-text-muted)!important;
    text-decoration: none!important;
    transition: color var(--raconet-transition-fast)!important;
}

.raconet-breadcrumb a:hover {
    color: var(--raconet-color-secondary)!important;
}

.raconet-breadcrumb-sep {
    color: var(--raconet-color-text-lighter)!important;
}

.raconet-breadcrumb-current {
    color: var(--raconet-color-primary)!important;
    font-weight: 500!important;
}

/* ============================================
   Product Main Section
   ============================================ */
.raconet-product-main {
    display: flex!important;
    gap: var(--raconet-spacing-xl)!important;
    padding: var(--raconet-spacing-lg) var(--raconet-spacing-2xl) var(--raconet-spacing-3xl)!important;
    background-color: var(--raconet-color-bg)!important;
}

/* ============================================
   Product Gallery
   ============================================ */
.raconet-product-gallery {
    display: flex!important;
    gap: var(--raconet-spacing-sm)!important;
    flex: 1!important;
    max-width: 680px!important;
}

/* Thumbnails */
.raconet-product-thumbnails {
    display: flex!important;
    flex-direction: column!important;
    gap: 8px!important;
    max-height: 600px!important;
    overflow-y: auto!important;
    scrollbar-width: thin!important;
    scrollbar-color: var(--raconet-color-secondary) transparent!important;
}

.raconet-product-thumbnails::-webkit-scrollbar {
    width: 4px!important;
}

.raconet-product-thumbnails::-webkit-scrollbar-track {
    background: transparent!important;
}

.raconet-product-thumbnails::-webkit-scrollbar-thumb {
    background: var(--raconet-color-secondary)!important;
    border-radius: 2px!important;
}

.raconet-thumbnail {
    width: 80px!important;
    height: 100px!important;
    border: 2px solid transparent!important;
    border-radius: var(--raconet-radius-sm)!important;
    overflow: hidden!important;
    cursor: pointer!important;
    transition: border-color var(--raconet-transition-fast), opacity var(--raconet-transition-fast)!important;
    flex-shrink: 0!important;
    padding: 0!important;
    background: none!important;
}

.raconet-thumbnail img {
    width: 100%!important;
    height: 100%!important;
    object-fit: cover!important;
}

.raconet-thumbnail:hover {
    opacity: 0.8!important;
}

.raconet-thumbnail.active {
    border-color: var(--raconet-color-secondary)!important;
}

/* Main Image */
.raconet-product-image-main {
    position: relative!important;
    flex: 1!important;
    max-width: 580px!important;
    border-radius: var(--raconet-radius-lg)!important;
    overflow: hidden!important;
}

.raconet-product-image-main img {
    width: 100%!important;
    height: 600px!important;
    object-fit: cover!important;
    transition: opacity var(--raconet-transition-fast)!important;
}

button.raconet-wishlist-btn-product,
.raconet-wishlist-btn-product {
    position: absolute !important;
    top: 20px !important;
    right: 20px !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    border-radius: 50% !important;
    background-color: #FFFFFF !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    box-shadow: 0 4px 16px rgba(92, 74, 58, 0.12) !important;
    transition: all 0.2s ease !important;
    z-index: 2 !important;
    padding: 0 !important;
}

button.raconet-wishlist-btn-product i,
button.raconet-wishlist-btn-product svg,
.raconet-wishlist-btn-product i,
.raconet-wishlist-btn-product svg {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    color: #5C4A3A !important;
    stroke: #5C4A3A !important;
    fill: none !important;
    stroke-width: 2 !important;
    transition: all 0.2s ease !important;
}

button.raconet-wishlist-btn-product:hover,
.raconet-wishlist-btn-product:hover {
    background-color: #C4A484 !important;
}

button.raconet-wishlist-btn-product:hover i,
button.raconet-wishlist-btn-product:hover svg,
.raconet-wishlist-btn-product:hover i,
.raconet-wishlist-btn-product:hover svg {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

button.raconet-wishlist-btn-product.active i,
button.raconet-wishlist-btn-product.active svg,
.raconet-wishlist-btn-product.active i,
.raconet-wishlist-btn-product.active svg {
    fill: #C4A484 !important;
    color: #C4A484 !important;
    stroke: #C4A484 !important;
}

.raconet-product-badge-main {
    position: absolute!important;
    top: 20px!important;
    left: 20px!important;
    padding: 8px 16px!important;
    background-color: var(--raconet-color-secondary)!important;
    color: var(--raconet-color-white)!important;
    font-family: var(--raconet-font-button)!important;
    font-size: 14px!important;
    font-weight: 600!important;
    border-radius: var(--raconet-radius-sm)!important;
    z-index: 1!important;
}

/* Image Navigation Arrows */
button.raconet-image-nav,
.raconet-image-nav {
    position: absolute !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    min-height: 48px !important;
    background-color: #FFFFFF !important;
    border: none !important;
    border-radius: 50% !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    box-shadow: 0 4px 16px rgba(92, 74, 58, 0.12) !important;
    transition: all 0.2s ease !important;
    z-index: 2 !important;
    padding: 0 !important;
}

button.raconet-image-nav i,
button.raconet-image-nav svg,
.raconet-image-nav i,
.raconet-image-nav svg {
    width: 24px !important;
    height: 24px !important;
    min-width: 24px !important;
    min-height: 24px !important;
    color: #5C4A3A !important;
    stroke: #5C4A3A !important;
    fill: none !important;
    stroke-width: 2 !important;
}

button.raconet-image-nav:hover:not(:disabled),
.raconet-image-nav:hover:not(:disabled) {
    background-color: #5C4A3A !important;
}

button.raconet-image-nav:hover:not(:disabled) i,
button.raconet-image-nav:hover:not(:disabled) svg,
.raconet-image-nav:hover:not(:disabled) i,
.raconet-image-nav:hover:not(:disabled) svg {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

button.raconet-image-nav:disabled,
.raconet-image-nav:disabled {
    opacity: 0.3 !important;
    cursor: not-allowed !important;
}

button.raconet-image-nav-prev,
.raconet-image-nav-prev {
    left: 16px !important;
}

button.raconet-image-nav-next,
.raconet-image-nav-next {
    right: 16px !important;
}

/* ============================================
   Product Details
   ============================================ */
.raconet-product-details {
    flex: 1!important;
    max-width: 500px!important;
    display: flex!important;
    flex-direction: column!important;
    gap: var(--raconet-spacing-md)!important;
}

.raconet-product-badge-new {
    display: inline-block!important;
    padding: 6px 14px!important;
    background-color: var(--raconet-color-primary)!important;
    color: var(--raconet-color-white)!important;
    font-family: var(--raconet-font-button)!important;
    font-size: 11px!important;
    font-weight: 600!important;
    letter-spacing: 1px!important;
    border-radius: var(--raconet-radius-sm)!important;
    width: fit-content!important;
}

.raconet-product-title {
    font-family: var(--raconet-font-display)!important;
    font-size: 32px!important;
    font-weight: 400!important;
    color: var(--raconet-color-primary)!important;
    margin: 0!important;
    line-height: 1.2!important;
}

.raconet-product-rating {
    display: flex!important;
    align-items: center!important;
    gap: 8px!important;
}

.raconet-product-rating .stars {
    font-size: 16px!important;
    color: var(--raconet-color-secondary)!important;
    letter-spacing: 2px!important;
}

.raconet-rating-count {
    font-family: var(--raconet-font-body)!important;
    font-size: 13px!important;
    color: var(--raconet-color-text-muted)!important;
}

.raconet-product-price-main {
    display: flex!important;
    align-items: center!important;
    gap: 12px!important;
}

.raconet-price-old {
    font-family: var(--raconet-font-body)!important;
    font-size: 18px!important;
    color: var(--raconet-color-text-lighter)!important;
    text-decoration: line-through!important;
}

.raconet-price-current {
    font-family: var(--raconet-font-body)!important;
    font-size: 28px!important;
    font-weight: 600!important;
    color: var(--raconet-color-primary)!important;
}

/* Ocultar el precio tachado duplicado dentro de price-current (ya se muestra en price-old) */
.raconet-price-current del,
.raconet-price-current .screen-reader-text {
    display: none !important;
}

.raconet-price-current ins {
    text-decoration: none !important;
}

.raconet-product-description {
    font-family: var(--raconet-font-body)!important;
    font-size: 15px!important;
    line-height: 1.6!important;
    color: var(--raconet-color-text-muted)!important;
    margin: 0!important;
}

/* ============================================
   Product Options
   ============================================ */
.raconet-product-options {
    display: flex!important;
    flex-direction: column!important;
    gap: var(--raconet-spacing-md)!important;
    padding: var(--raconet-spacing-md) 0!important;
    border-top: 1px solid var(--raconet-color-border-light)!important;
    border-bottom: 1px solid var(--raconet-color-border-light)!important;
}

.raconet-option-group {
    display: flex!important;
    flex-direction: column!important;
    gap: 12px!important;
}

.raconet-option-label {
    font-family: var(--raconet-font-body)!important;
    font-size: 13px!important;
    font-weight: 500!important;
    color: var(--raconet-color-primary)!important;
}

.raconet-option-value {
    font-weight: 400!important;
    color: var(--raconet-color-text-muted)!important;
}

/* Color Options */
.raconet-color-options {
    display: flex!important;
    gap: 12px!important;
}

.raconet-color-btn {
    width: 36px!important;
    height: 36px!important;
    border-radius: var(--raconet-radius-full)!important;
    border: 2px solid transparent!important;
    cursor: pointer!important;
    transition: all var(--raconet-transition-fast)!important;
    position: relative!important;
}

.raconet-color-btn::after {
    content: ''!important;
    position: absolute!important;
    top: -4px!important;
    left: -4px!important;
    right: -4px!important;
    bottom: -4px!important;
    border: 2px solid transparent!important;
    border-radius: var(--raconet-radius-full)!important;
    transition: border-color var(--raconet-transition-fast)!important;
}

.raconet-color-btn:hover::after,
.raconet-color-btn.active::after {
    border-color: var(--raconet-color-secondary)!important;
}

/* Size Options */
.raconet-size-header {
    display: flex!important;
    justify-content: space-between!important;
    align-items: center!important;
}

.raconet-size-guide-link {
    font-family: var(--raconet-font-body)!important;
    font-size: 12px!important;
    color: var(--raconet-color-secondary)!important;
    text-decoration: underline!important;
    transition: color var(--raconet-transition-fast)!important;
}

.raconet-size-guide-link:hover {
    color: var(--raconet-color-primary)!important;
}

.raconet-size-options {
    display: flex!important;
    gap: 8px!important;
    flex-wrap: wrap!important;
}

.raconet-size-btn {
    min-width: 48px!important;
    height: 44px!important;
    padding: 0 16px!important;
    border: 1px solid var(--raconet-color-border)!important;
    border-radius: var(--raconet-radius-sm)!important;
    background: transparent!important;
    font-family: var(--raconet-font-body)!important;
    font-size: 13px!important;
    font-weight: 500!important;
    color: var(--raconet-color-primary)!important;
    cursor: pointer!important;
    transition: all var(--raconet-transition-fast)!important;
}

.raconet-size-btn:hover:not(.disabled) {
    border-color: var(--raconet-color-secondary)!important;
}

.raconet-size-btn.active {
    background-color: var(--raconet-color-primary)!important;
    border-color: var(--raconet-color-primary)!important;
    color: var(--raconet-color-white)!important;
}

.raconet-size-btn.disabled {
    opacity: 0.4!important;
    cursor: not-allowed!important;
    text-decoration: line-through!important;
}

/* ============================================
   Quantity Selector
   ============================================ */
.ux-quantity.quantity.buttons_added {
    display: inline-flex !important;
    align-items: center !important;
    background-color: var(--raconet-color-bg-light, #F8F6F3) !important;
    border: 1px solid var(--raconet-color-border, #E5E5E5) !important;
    border-radius: var(--raconet-radius-sm, 4px) !important;
    overflow: hidden !important;
    height: 52px !important;
}

/* Botones + y - */
.ux-quantity__button {
    width: 44px !important;
    height: 100% !important;
    border: none !important;
    background-color: transparent !important;
    color: var(--raconet-color-primary, #5C4A3D) !important;
    font-size: 20px !important;
    font-weight: 400 !important;
    cursor: pointer !important;
    transition: all 0.2s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    padding: 0 !important;
    margin: 0 !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

.ux-quantity__button:hover {
    background-color: var(--raconet-color-secondary, #B8860B) !important;
    color: var(--raconet-color-white, #FFFFFF) !important;
}

.ux-quantity__button:active {
    transform: scale(0.95) !important;
}

/* Input de cantidad */
.ux-quantity .input-text.qty {
    width: 50px !important;
    height: 100% !important;
    border: none !important;
    border-left: 1px solid var(--raconet-color-border, #E5E5E5) !important;
    border-right: 1px solid var(--raconet-color-border, #E5E5E5) !important;
    background-color: var(--raconet-color-white, #FFFFFF) !important;
    text-align: center !important;
    font-family: var(--raconet-font-body, 'Cormorant Garamond', serif) !important;
    font-size: 18px !important;
    font-weight: 600 !important;
    color: var(--raconet-color-primary, #5C4A3D) !important;
    padding: 0 !important;
    margin: 0 !important;
    -moz-appearance: textfield !important;
    -webkit-appearance: none !important;
    appearance: none !important;
}

/* Ocultar flechas del input number */
.ux-quantity .input-text.qty::-webkit-outer-spin-button,
.ux-quantity .input-text.qty::-webkit-inner-spin-button {
    -webkit-appearance: none !important;
    margin: 0 !important;
}

.ux-quantity .input-text.qty:focus {
    outline: none !important;
    box-shadow: inset 0 0 0 2px var(--raconet-color-secondary, #B8860B) !important;
}

/* ============================================
   Product Actions
   ============================================ */
.raconet-product-actions {
    display: flex!important;
    gap: 12px!important;
}

.raconet-btn-add-to-cart {
    flex: 1!important;
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    gap: 12px!important;
    padding: 18px 32px!important;
    background-color: var(--raconet-color-primary)!important;
    border: none!important;
    border-radius: var(--raconet-radius-sm)!important;
    font-family: var(--raconet-font-button)!important;
    font-size: 14px!important;
    font-weight: 600!important;
    letter-spacing: 1px!important;
    color: var(--raconet-color-white)!important;
    cursor: pointer!important;
    transition: background-color var(--raconet-transition-fast)!important;
}

.raconet-btn-add-to-cart:hover {
    background-color: #4A3C2E!important;
}

.raconet-btn-add-to-cart i,
.raconet-btn-add-to-cart svg {
    width: 20px!important;
    height: 20px!important;
    color: var(--raconet-color-white)!important;
    stroke: var(--raconet-color-white)!important;
}

.raconet-btn-wishlist {
    width: 56px!important;
    height: 56px!important;
    border: 1px solid var(--raconet-color-border)!important;
    border-radius: var(--raconet-radius-sm)!important;
    background: transparent!important;
    display: flex!important;
    align-items: center!important;
    justify-content: center!important;
    cursor: pointer!important;
    transition: all var(--raconet-transition-fast)!important;
}

.raconet-btn-wishlist i,
.raconet-btn-wishlist svg {
    width: 22px!important;
    height: 22px!important;
    color: var(--raconet-color-primary)!important;
    stroke: var(--raconet-color-primary)!important;
    transition: all var(--raconet-transition-fast)!important;
}

.raconet-btn-wishlist:hover {
    border-color: var(--raconet-color-secondary)!important;
    background-color: var(--raconet-color-secondary)!important;
}

.raconet-btn-wishlist:hover i,
.raconet-btn-wishlist:hover svg {
    color: var(--raconet-color-white)!important;
    stroke: var(--raconet-color-white)!important;
}

.raconet-btn-wishlist.active i,
.raconet-btn-wishlist.active svg {
    fill: var(--raconet-color-secondary)!important;
    color: var(--raconet-color-secondary)!important;
    stroke: var(--raconet-color-secondary)!important;
}

/* ============================================
   Product Benefits
   ============================================ */
.raconet-product-benefits {
    display: flex!important;
    gap: var(--raconet-spacing-md)!important;
    padding: var(--raconet-spacing-sm) 0!important;
}

.raconet-benefit {
    display: flex!important;
    align-items: center!important;
    gap: 8px!important;
}

.raconet-benefit i,
.raconet-benefit svg {
    width: 18px!important;
    height: 18px!important;
    color: var(--raconet-color-secondary)!important;
    stroke: var(--raconet-color-secondary)!important;
}

.raconet-benefit span {
    font-family: var(--raconet-font-body)!important;
    font-size: 12px!important;
    color: var(--raconet-color-text-muted)!important;
}

/* ============================================
   Product Description Section
   ============================================ */
.raconet-product-description-section {
    padding: var(--raconet-spacing-3xl) var(--raconet-spacing-2xl)!important;
    background-color: var(--raconet-color-bg)!important;
}

.raconet-description-container {
    display: flex!important;
    gap: var(--raconet-spacing-3xl)!important;
    max-width: 1200px!important;
    margin: 0 auto!important;
}

.raconet-description-left {
    flex: 1!important;
}

.raconet-description-title {
    font-family: var(--raconet-font-display)!important;
    font-size: 24px!important;
    font-weight: 400!important;
    color: var(--raconet-color-primary)!important;
    margin: 0 0 var(--raconet-spacing-md) 0!important;
}

.raconet-description-text {
    font-family: var(--raconet-font-body)!important;
    font-size: 15px!important;
    line-height: 1.7!important;
    color: var(--raconet-color-text-muted)!important;
}

.raconet-description-text p {
    margin: 0 0 var(--raconet-spacing-sm) 0!important;
}

.raconet-description-text p:last-child {
    margin-bottom: 0!important;
}

.raconet-description-right {
    flex: 1!important;
}

/* ============================================
   Product Accordions
   ============================================ */
.raconet-product-accordions {
    display: flex!important;
    flex-direction: column!important;
    border-top: 1px solid var(--raconet-color-border-light)!important;
}

.raconet-accordion-item {
    border-bottom: 1px solid var(--raconet-color-border-light)!important;
}

.raconet-accordion-header {
    display: flex!important;
    justify-content: space-between!important;
    align-items: center!important;
    width: 100%!important;
    padding: var(--raconet-spacing-sm) 0!important;
    background: none!important;
    border: none!important;
    cursor: pointer!important;
    font-family: var(--raconet-font-body)!important;
    font-size: 14px!important;
    font-weight: 500!important;
    color: var(--raconet-color-primary)!important;
    text-align: left!important;
    transition: color var(--raconet-transition-fast)!important;
}

.raconet-accordion-header:hover {
    color: var(--raconet-color-secondary)!important;
}

.raconet-accordion-header i,
.raconet-accordion-header svg {
    width: 18px!important;
    height: 18px!important;
    color: var(--raconet-color-primary)!important;
    stroke: var(--raconet-color-primary)!important;
    transition: transform var(--raconet-transition-normal)!important;
}

.raconet-accordion-item.active .raconet-accordion-header i,
.raconet-accordion-item.active .raconet-accordion-header svg {
    transform: rotate(180deg)!important;
}

.raconet-accordion-content {
    max-height: 0!important;
    overflow: hidden!important;
    transition: max-height var(--raconet-transition-slow)!important;
}

.raconet-accordion-item.active .raconet-accordion-content {
    max-height: 500px!important;
}

.raconet-accordion-inner {
    padding: 0 0 var(--raconet-spacing-sm) 0!important;
    font-family: var(--raconet-font-body)!important;
    font-size: 14px!important;
    line-height: 1.6!important;
    color: var(--raconet-color-text-muted)!important;
}

.raconet-accordion-inner p {
    margin: 0 0 12px 0!important;
}

.raconet-accordion-inner p strong {
    color: var(--raconet-color-primary)!important;
}

.raconet-accordion-inner ul {
    margin: 0 0 12px 0!important;
    padding-left: 20px!important;
}

.raconet-accordion-inner ul li {
    margin-bottom: 6px!important;
}

/* ============================================
   Related Products
   ============================================ */
.raconet-related-products {
    /* Break out of container to full width */
    width: 100vw !important;
    max-width: 100vw !important;
    margin-left: calc(-50vw + 50%) !important;
    margin-right: calc(-50vw + 50%) !important;
    padding: 80px 0 80px 64px !important;
    background-color: #C4A484 !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 48px !important;
    overflow: hidden !important;
    box-sizing: border-box !important;
}

.raconet-related-products .raconet-section-header {
    display: flex !important;
    justify-content: space-between !important;
    align-items: flex-end !important;
    padding-right: 64px !important;
    width: 100% !important;
}

.raconet-related-products .raconet-section-title-area {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
}

.raconet-section-label-dark {
    font-family: var(--raconet-font-body) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 2px !important;
    color: #5C4A3A !important;
    text-transform: uppercase !important;
}

.raconet-section-title-dark {
    font-family: var(--raconet-font-display) !important;
    font-size: 32px !important;
    font-weight: 400 !important;
    color: #5C4A3A !important;
    margin: 0 !important;
}

/* Navigation arrows in related products */
.raconet-related-products .raconet-nav-arrows {
    display: flex !important;
    gap: 8px !important;
}

.raconet-related-products button.raconet-arrow-btn,
.raconet-related-products .raconet-arrow-btn {
    width: 40px !important;
    height: 40px !important;
    min-width: 40px !important;
    min-height: 40px !important;
    border-radius: 20px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    background-color: #FFFBF7 !important;
    border: 1px solid #5C4A3A !important;
    transition: all 0.2s ease !important;
    cursor: pointer !important;
    padding: 0 !important;
}

.raconet-related-products button.raconet-arrow-btn i,
.raconet-related-products button.raconet-arrow-btn svg,
.raconet-related-products .raconet-arrow-btn i,
.raconet-related-products .raconet-arrow-btn svg {
    width: 20px !important;
    height: 20px !important;
    min-width: 20px !important;
    min-height: 20px !important;
    color: #5C4A3A !important;
    stroke: #5C4A3A !important;
    fill: none !important;
    stroke-width: 2 !important;
}

.raconet-related-products button.raconet-arrow-btn.active,
.raconet-related-products .raconet-arrow-btn.active {
    background-color: #5C4A3A !important;
    border-color: #5C4A3A !important;
}

.raconet-related-products button.raconet-arrow-btn.active i,
.raconet-related-products button.raconet-arrow-btn.active svg,
.raconet-related-products .raconet-arrow-btn.active i,
.raconet-related-products .raconet-arrow-btn.active svg {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

.raconet-related-products button.raconet-arrow-btn:hover:not(.active),
.raconet-related-products .raconet-arrow-btn:hover:not(.active) {
    background-color: #D4C4B5 !important;
}

/* Swiper overrides for related products */
.raconet-related-products .swiper-button-disabled,
.raconet-related-products .swiper-button-lock {
    opacity: 0.5 !important;
    cursor: not-allowed !important;
}

/* Swiper container */
.raconet-related-swiper {
    width: 100% !important;
    overflow: visible !important;
}

.raconet-related-swiper .swiper-wrapper {
    display: flex !important;
}

.raconet-related-swiper .swiper-slide {
    width: 280px !important;
    height: auto !important;
    flex-shrink: 0 !important;
}

/* Pagination container */
.raconet-related-products .raconet-swiper-pagination {
    display: flex !important;
    justify-content: center !important;
    gap: 12px !important;
    padding-top: 24px !important;
    padding-right: 64px !important;
}

/* ============================================
   Product Card Styles
   ============================================ */
.raconet-product-card {
    width: 280px !important;
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
    flex-shrink: 0 !important;
    transition: transform 0.3s ease !important;
    position: relative !important;
    cursor: pointer !important;
}

.raconet-product-card:hover {
    transform: translateY(-4px) !important;
}

.raconet-product-link {
    display: block !important;
    text-decoration: none !important;
    color: inherit !important;
}

/* Pseudo-elemento para hacer toda la tarjeta clickeable */
.raconet-product-card .raconet-product-link::after {
    content: '' !important;
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    right: 0 !important;
    bottom: 0 !important;
    z-index: 1 !important;
}

/* Los elementos interactivos deben estar por encima del enlace */
.raconet-product-card .raconet-product-info,
.raconet-product-card .raconet-quick-view-btn,
.raconet-product-card .raconet-btn-add-cart,
.raconet-product-card .raconet-wishlist-btn {
    position: relative !important;
    z-index: 2 !important;
}

.raconet-product-img-wrap {
    width: 100% !important;
    height: 380px !important;
    background-color: #f5f5f5 !important;
    position: relative !important;
    overflow: hidden !important;
    border-radius: 4px !important;
    box-shadow: 0 2px 8px rgba(92, 74, 58, 0.08) !important;
    transition: box-shadow 0.3s ease !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
}

.raconet-product-card:hover .raconet-product-img-wrap {
    box-shadow: 0 8px 24px rgba(92, 74, 58, 0.15) !important;
}

/* Link inside img-wrap */
.raconet-product-img-wrap > a.raconet-product-link {
    display: block !important;
    width: 100% !important;
    height: 100% !important;
}

.raconet-product-img-wrap img {
    width: 100% !important;
    height: 380px !important;
    min-height: 380px !important;
    object-fit: cover !important;
    object-position: center center !important;
    transition: transform 0.4s ease !important;
    display: block !important;
}

.raconet-product-card:hover .raconet-product-img-wrap img {
    transform: scale(1.05) !important;
}

/* Product Wishlist Button */
.raconet-product-img-wrap .raconet-wishlist-btn {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    width: 36px !important;
    height: 36px !important;
    min-width: 36px !important;
    min-height: 36px !important;
    border-radius: 50% !important;
    background-color: #FFFFFF !important;
    border: none !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    box-shadow: 0 2px 8px rgba(92, 74, 58, 0.12) !important;
    transition: all 0.3s ease !important;
    opacity: 0 !important;
    transform: scale(0.8) !important;
    z-index: 2 !important;
    padding: 0 !important;
}

.raconet-product-card:hover .raconet-wishlist-btn {
    opacity: 1 !important;
    transform: scale(1) !important;
}

.raconet-product-img-wrap .raconet-wishlist-btn i,
.raconet-product-img-wrap .raconet-wishlist-btn svg {
    width: 18px !important;
    height: 18px !important;
    color: #5C4A3A !important;
    stroke: #5C4A3A !important;
    fill: none !important;
    stroke-width: 2 !important;
}

.raconet-product-img-wrap .raconet-wishlist-btn:hover {
    background-color: #C4A484 !important;
}

.raconet-product-img-wrap .raconet-wishlist-btn:hover i,
.raconet-product-img-wrap .raconet-wishlist-btn:hover svg {
    color: #FFFFFF !important;
    stroke: #FFFFFF !important;
}

.raconet-product-img-wrap .raconet-wishlist-btn.active i,
.raconet-product-img-wrap .raconet-wishlist-btn.active svg {
    fill: #C4A484 !important;
    color: #C4A484 !important;
    stroke: #C4A484 !important;
}

/* Product Badge */
.raconet-badge {
    position: absolute !important;
    top: 12px !important;
    left: 12px !important;
    padding: 6px 12px !important;
    font-family: var(--raconet-font-button) !important;
    font-size: 11px !important;
    font-weight: 600 !important;
    letter-spacing: 0.5px !important;
    border-radius: 4px !important;
    z-index: 1 !important;
}

.raconet-badge.sale {
    background-color: #C4A484 !important;
    color: #FFFFFF !important;
}

.raconet-badge.new {
    background-color: #5C4A3A !important;
    color: #FFFFFF !important;
}

/* Product Overlay */
.raconet-product-overlay {
    position: absolute !important;
    top: 0 !important;
    left: 0 !important;
    width: 100% !important;
    height: 100% !important;
    background-color: rgba(0, 0, 0, 0.4) !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    opacity: 0 !important;
    transition: opacity 0.3s ease !important;
    z-index: 3 !important;
}

.raconet-product-card:hover .raconet-product-overlay {
    opacity: 1 !important;
}

.raconet-quick-view-btn {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    padding: 12px 24px !important;
    background-color: #FFFFFF !important;
    border-radius: 4px !important;
    font-family: var(--raconet-font-button) !important;
    font-size: 12px !important;
    font-weight: 500 !important;
    letter-spacing: 1px !important;
    color: #5C4A3A !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
}

.raconet-quick-view-btn:hover {
    background-color: #C4A484 !important;
    color: #FFFFFF !important;
}

.raconet-quick-view-btn i,
.raconet-quick-view-btn svg {
    width: 16px !important;
    height: 16px !important;
    color: inherit !important;
    stroke: currentColor !important;
}

/* Product Info */
.raconet-product-info {
    display: flex !important;
    flex-direction: column !important;
    gap: 8px !important;
    transform: translateZ(0) !important;
    backface-visibility: hidden !important;
}

.raconet-product-category {
    font-family: var(--raconet-font-body) !important;
    font-size: 10px !important;
    font-weight: 500 !important;
    letter-spacing: 1px !important;
    color: #C4A484 !important;
    text-transform: uppercase !important;
}

.raconet-product-name-link {
    font-family: var(--raconet-font-display) !important;
    font-size: 16px !important;
    font-weight: 400 !important;
    color: #5C4A3A !important;
    text-decoration: none !important;
    transition: color 0.2s ease !important;
    display: block !important;
}

.raconet-product-name-link:hover {
    color: #C4A484 !important;
}

.raconet-product-stars {
    display: flex !important;
    align-items: center !important;
    gap: 4px !important;
    font-size: 13px !important;
    color: #C4A484 !important;
    letter-spacing: 1px !important;
}

.raconet-star-count {
    font-family: var(--raconet-font-body) !important;
    font-size: 12px !important;
    color: #8B7355 !important;
    font-weight: 400 !important;
}

.raconet-product-price-row {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
}

.raconet-product-old-price {
    font-family: var(--raconet-font-body) !important;
    font-size: 13px !important;
    color: #999999 !important;
    text-decoration: line-through !important;
}

.raconet-product-price {
    font-family: var(--raconet-font-body) !important;
    font-size: 15px !important;
    font-weight: 600 !important;
    color: #5C4A3A !important;
}

.raconet-product-price.sale {
    color: #C4A484 !important;
}

.raconet-btn-add-cart {
    padding: 10px 20px !important;
    border: 1px solid #C4A484 !important;
    border-radius: 4px !important;
    font-family: var(--raconet-font-button) !important;
    font-size: 11px !important;
    font-weight: 500 !important;
    letter-spacing: 0.5px !important;
    color: #C4A484 !important;
    background: transparent !important;
    transition: all 0.2s ease !important;
    width: fit-content !important;
    cursor: pointer !important;
}

.raconet-btn-add-cart:hover {
    background-color: #C4A484 !important;
    color: #FFFFFF !important;
}

/* Product cards in related products - golden background overrides */
.raconet-related-products .raconet-product-card {
    background-color: transparent !important;
}

.raconet-related-products .raconet-product-category {
    color: #5C4A3A !important;
}

.raconet-related-products .raconet-product-name,
.raconet-related-products .raconet-product-name a {
    color: #5C4A3A !important;
}

.raconet-related-products .raconet-product-name a:hover {
    color: #8B7355 !important;
}

.raconet-related-products .raconet-product-stars {
    color: #5C4A3A !important;
}

.raconet-related-products .raconet-product-price {
    color: #5C4A3A !important;
}

.raconet-related-products .raconet-product-price.sale {
    color: #8B4513 !important;
}

.raconet-related-products .raconet-btn-add-cart {
    border: 1px solid #5C4A3A !important;
    color: #5C4A3A !important;
    background-color: transparent !important;
}

.raconet-related-products .raconet-btn-add-cart:hover {
    background-color: #5C4A3A !important;
    color: #FFFFFF !important;
}

/* Pagination for related products on golden background */
.raconet-related-products .swiper-pagination-bullet {
    background-color: rgba(255, 255, 255, 0.5) !important;
    width: 32px !important;
    height: 3px !important;
    border-radius: 2px !important;
    opacity: 1 !important;
}

.raconet-related-products .swiper-pagination-bullet-active {
    background-color: #5C4A3A !important;
}

/* ============================================
   Responsive
   ============================================ */
@media (max-width: 1200px) {
    .raconet-breadcrumb {
        padding: var(--raconet-spacing-sm) var(--raconet-spacing-lg)!important;
    }

    .raconet-product-main {
        padding: var(--raconet-spacing-lg)!important;
    }

    .raconet-product-gallery {
        max-width: 500px!important;
    }

    .raconet-product-image-main img {
        height: 500px!important;
    }

    .raconet-product-thumbnails {
        max-height: 500px!important;
    }

    .raconet-product-description-section {
        padding: var(--raconet-spacing-xl) var(--raconet-spacing-lg)!important;
    }

    .raconet-related-products {
        padding: 48px 0 48px 32px !important;
    }

    .raconet-related-products .raconet-section-header {
        padding-right: 32px !important;
    }

    .raconet-section-title-dark {
        font-size: 28px !important;
    }

    .raconet-related-swiper .swiper-slide {
        width: 260px !important;
    }

    .raconet-product-card {
        width: 250px !important;
    }

    .raconet-product-img-wrap {
        height: 340px !important;
    }
}

@media (max-width: 992px) {
    .raconet-product-main {
        flex-direction: column!important;
    }

    .raconet-product-gallery {
        max-width: 100%!important;
    }

    .raconet-product-details {
        max-width: 100%!important;
    }

    .raconet-description-container {
        flex-direction: column!important;
        gap: var(--raconet-spacing-xl)!important;
    }
}

@media (max-width: 768px) {
    .raconet-breadcrumb {
        padding: var(--raconet-spacing-xs) var(--raconet-spacing-sm)!important;
    }

    .raconet-breadcrumb-container {
        font-size: 12px!important;
    }

    .raconet-product-main {
        padding: var(--raconet-spacing-sm)!important;
        gap: var(--raconet-spacing-lg)!important;
    }

    .raconet-product-gallery {
        flex-direction: column-reverse!important;
    }

    .raconet-product-thumbnails {
        flex-direction: row!important;
        max-height: none!important;
        overflow-x: auto!important;
        overflow-y: hidden!important;
        padding-bottom: 8px!important;
    }

    .raconet-thumbnail {
        width: 64px!important;
        height: 80px!important;
    }

    .raconet-product-image-main img {
        height: 400px!important;
    }

    .raconet-product-title {
        font-size: 24px!important;
    }

    .raconet-price-current {
        font-size: 24px!important;
    }

    .raconet-product-benefits {
        flex-wrap: wrap!important;
    }

    .raconet-product-description-section {
        padding: var(--raconet-spacing-xl) var(--raconet-spacing-sm)!important;
    }

    .raconet-related-products {
        padding: 40px 0 40px 16px !important;
        gap: 32px !important;
    }

    .raconet-related-products .raconet-section-header {
        padding-right: 16px !important;
    }

    .raconet-section-label-dark {
        font-size: 11px !important;
        letter-spacing: 1.5px !important;
    }

    .raconet-section-title-dark {
        font-size: 24px !important;
    }

    .raconet-related-swiper .swiper-slide {
        width: 220px !important;
    }

    .raconet-product-card {
        width: 220px !important;
        gap: 12px !important;
    }

    .raconet-product-img-wrap {
        height: 300px !important;
    }

    .raconet-product-category {
        font-size: 9px !important;
    }

    .raconet-product-name-link {
        font-size: 14px !important;
    }

    .raconet-product-stars {
        font-size: 12px !important;
    }

    .raconet-product-price {
        font-size: 13px !important;
    }

    .raconet-btn-add-cart {
        padding: 8px 16px !important;
        font-size: 10px !important;
    }

    .raconet-product-img-wrap .raconet-wishlist-btn {
        width: 32px !important;
        height: 32px !important;
        min-width: 32px !important;
        min-height: 32px !important;
        opacity: 1 !important;
        transform: scale(1) !important;
    }

    .raconet-product-img-wrap .raconet-wishlist-btn i,
    .raconet-product-img-wrap .raconet-wishlist-btn svg {
        width: 16px !important;
        height: 16px !important;
    }

    /* Show wishlist always on mobile */
    .raconet-product-card:hover {
        transform: none !important;
    }

    .raconet-product-card:hover .raconet-product-img-wrap {
        box-shadow: 0 2px 8px rgba(92, 74, 58, 0.08) !important;
    }

    .raconet-product-card:hover .raconet-product-img-wrap img {
        transform: none !important;
    }

    .raconet-related-products .raconet-product-info {
        padding: 0 8px !important;
    }

    .raconet-related-products .raconet-btn-add-cart {
        padding: 8px 12px !important;
        font-size: 10px !important;
    }
}

@media (max-width: 480px) {
    .raconet-product-image-main img {
        height: 350px!important;
    }

    .raconet-image-nav {
        width: 36px!important;
        height: 36px!important;
    }

    .raconet-product-actions {
        flex-direction: column!important;
    }

    .raconet-btn-wishlist {
        width: 100%!important;
        height: 48px!important;
    }

    .raconet-product-benefits {
        flex-direction: column!important;
        gap: var(--raconet-spacing-xs)!important;
    }

    /* Related products 480px */
    .raconet-related-products {
        padding: 32px 0 32px 12px !important;
        gap: 24px !important;
    }

    .raconet-related-products .raconet-section-header {
        padding-right: 12px !important;
    }

    .raconet-section-label-dark {
        font-size: 10px !important;
        letter-spacing: 1px !important;
    }

    .raconet-section-title-dark {
        font-size: 20px !important;
    }

    .raconet-related-swiper .swiper-slide {
        width: 180px !important;
    }

    .raconet-product-card {
        width: 180px !important;
    }

    .raconet-product-img-wrap {
        height: 240px !important;
    }

    .raconet-product-name-link {
        font-size: 13px !important;
    }

    .raconet-product-stars {
        font-size: 11px !important;
    }

    .raconet-quick-view-btn {
        padding: 8px 16px !important;
        font-size: 10px !important;
        gap: 6px !important;
    }

    .raconet-quick-view-btn i,
    .raconet-quick-view-btn svg {
        width: 14px !important;
        height: 14px !important;
    }

    .raconet-related-products .raconet-product-category {
        font-size: 9px !important;
    }

    .raconet-related-products .raconet-product-name-link {
        font-size: 13px !important;
    }

    .raconet-related-products .raconet-product-stars {
        font-size: 11px !important;
    }

    .raconet-related-products .raconet-product-price {
        font-size: 12px !important;
    }

    .raconet-related-products .raconet-btn-add-cart {
        padding: 6px 10px !important;
        font-size: 9px !important;
    }

    .raconet-related-products .raconet-nav-arrows {
        display: none !important;
    }
}
