/*
 * Custom code goes here.
 * A template should always ship with an empty custom.css
 */

#header .header-nav {
    background-color: var(--color-dark);
}

.header-top {
    background-color: #1D1D1B;
}

.header-top-right #_desktop_top_menu,
.block-social {
    display: none !important;
}

@media (min-width: 768px) {
    .top-menu[data-depth="1"], .top-menu[data-depth="2"], .top-menu[data-depth="3"], .top-menu[data-depth="4"] {
        display:flex;
        flex-direction: column;
        padding: 0.625rem;
        min-width: 250px;
        border-radius: 10px;
    }

    #header .menu>ul>li {
        position: relative;
    }

    .top-menu .sub-menu.collapse {
        min-width: 350px;
    }

    #_desktop_top_menu .top-menu[data-depth="0"] li:hover .sub-menu, #_desktop_top_menu .top-menu[data-depth="1"] > li:hover > .collapse, #_desktop_top_menu .top-menu[data-depth="2"] > li:hover > .collapse, #_desktop_top_menu .top-menu[data-depth="3"] > li:hover > .collapse, #_desktop_top_menu .top-menu[data-depth="4"] > li:hover > .collapse {
        visibility: visible;
        opacity: 1;
        margin-left: 0;
        border-radius: 10px;
        box-shadow: 0 0 20px #00000017;
    }

    #_desktop_top_menu .top-menu[data-depth="0"] li:hover .sub-menu {
        top: 47px !important;
        border-radius: 10px;
    }

    #_desktop_top_menu .top-menu[data-depth="0"] li .sub-menu {
        left: 0;
    }

    #_desktop_top_menu .top-menu[data-depth="1"] > li, #_desktop_top_menu .top-menu[data-depth="2"] > li, #_desktop_top_menu .top-menu[data-depth="3"] > li, #_desktop_top_menu .top-menu[data-depth="4"] > li {
        position: relative;
    }

    .top-menu > li > .collapse {
        visibility: hidden;
        opacity: 0;
        position: absolute;
        left: 105%;
        top: -6px;
        transition: all ease .2s;
        background-color: white;
    }

    #_desktop_top_menu .top-menu[data-depth="1"] .dropdown-item > span {
        display: block !important;
    }

    #_desktop_top_menu .top-menu[data-depth="1"] .dropdown-item > span > span {
        position: relative;
    }

    #_desktop_top_menu .top-menu[data-depth="1"] .dropdown-item > span > span i {
        display: none !important
    }

    #_desktop_top_menu .top-menu[data-depth="1"] .dropdown-item > span > span i.add {
        display: block !important;
        position: absolute;
        transform: rotate(-90deg);
        right: -15px;
        top: calc(50% - 15px);
    }
}

.block-categories,
.card.card-block,
#custom-text {
    border-radius: 15px
}

#custom-text {
    background: none;
    text-align: start;
}

#custom-text ul {
    padding: 0 25px;
}

#custom-text ul li {
    color: #000000;
}

#js-product-list-header .card-block {
    background-color: #f6f6f6;
    margin-bottom: 0;
}

#js-product-list-footer .card {
    background: transparent;
}

#main #subcategories {
    display: none;
}

.block-categories .category-top-menu li .h6 {
    color: var(--color-dark);
    font-size: 1.35rem;
}

.block-categories .category-top-menu .category-sub-menu li {
    padding: 5px 40px 5px 0;
    border-bottom: 1px solid #f1f1f1;
}
.block-categories .category-top-menu .category-sub-menu li:last-child {
    border-bottom:none;
}
.block-categories .category-sub-menu li[data-depth="0"]>a {
    font-size: .95rem;
}

.block-categories .collapse-icons {
    top: 5px;
}

.block-categories .category-sub-menu .category-sub-link {
    font-size: .8rem;
}

.block-categories .category-sub-menu .category-sub-link:hover {
    color: var(--color-dark);
}

.radio-inline {
    color: #7a7a7a;
}

.custom-checkbox input[type="checkbox"]+span {
    border: 1px #7a7a7a solid;
}

.custom-checkbox input[type="checkbox"]:focus+span {
    border-color: #7a7a7a;
}

.custom-checkbox input[type="checkbox"]+span .checkbox-checked {
    color: #7a7a7a;
}

body#checkout section.checkout-step .delivery-options .delivery-option label {
    color: #111;
}

label, .label {
    color: #111;
}
.gdpr_consent .label, .gdpr_consent label {
    color:white;
}
.product-manufacturer img {
    max-width:200px;
}
.user-info .logout span {
    font-size:10px;
    position:absolute;
    top: 1px;
}
.pro-widget {
    background-color:black;
    border-radius:28px;
    position:relative;
    z-index:2;
    border:4px solid black;
}
.pro-widget:before {
    display:block;
    position:absolute;
    top:6px;
    content:'HAZLO PROFESIONAL';
    line-height:36px;
    padding:0 20px 0 15px;
    right:0px;
    background:black;
    z-index:-1;
    border-radius:25px;
    transition:all ease .2s;
    opacity:0;
    color:white;
    font-size:12px;
    width:170px;
}
.pro-widget:hover::before {
    opacity:1;
    right:30px;
}
.pro-widget img {
    height: 50px;
}
.whatsapp-widget img {
    height: 72px;
}
#_desktop_cart {
    color:white;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-left: 20px;
}
.blockcart a {
    color:white;
}
.jumper-stores a {
    padding:0px 20px;
    line-height:46px;
    display:inline-block;
    margin-left:5px;
    border-radius:5px 5px 0 0;
    
}
.jumper-stores a:hover {
    text-decoration:underline !important;
    color:white !important;
}
.jumper-stores.red a {
    background:var(--color-red);
}
.jumper-stores.dark a {
    background:#1D1D1B;
}
.jumper-stores.orange a {
    background:var(--color-orange);
}
div#_desktop_user_info {
    margin-right:20px;
}
#_desktop_top_menu {
    justify-content:start !important;
}
.js-product.product {
    display:flex;
}
.js-product.product .product-miniature {
    display:flex;
    width:100%;
}
.product-miniature .thumbnail-container {
    width:100%;
    border-radius: 15px;
}
.products.bestseller-products > div {
    display:flex;
}
.products.bestseller-products > div .js-product.product {
    width:100%;
}
.ets_solo_slide_widget {
    background:var(--color-dark) !important;
}
.swiper-accesories {
    overflow:hidden;
    position:relative;
}
.swiper-accesories .swiper-button-next, .swiper-accesories .swiper-button-prev {
    color: var(--color-dark);
    top: initial;
    bottom: 0;
    font-size: 30px;
}
.swiper-accesories .swiper-button-next:after, .swiper-accesories .swiper-button-prev:after {
    font-size:20px;
}
.swiper-accesories .product-miniature .product-title a {
    font-size: 10px !important;!i;!;
    line-height: 10px !important;!i;!;
}
.swiper-accesories .product-miniature .product-title {
    padding: 0;
    margin: 0;
}
.swiper-accesories .product-miniature .thumbnail-container:after, .swiper-accesories .wishlist-button-add {
    display:none;
}
.swiper-accesories .quick-view {
    font-size:12px;
    width: 65%;
    display: none;
    margin: 0 auto;
}
.product-accessories {
    margin-top:30px;
}
.product-accessories .h5 {
    margin-bottom:25px;
}
.block-category.card.card-block p {
    margin: 20px 0;
}
#category-description p {
    color: #111;
}
#category-description ul {
    list-style: disc;
    padding: 10px 50px;
}
.container-category-description {
    display: flex;
    flex-direction: column;
}
.clamp {
  overflow: hidden;
  display: -webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  transition: max-height 0.5s ease;
}
.clamp.expanded {
  -webkit-line-clamp: unset;
  display: block;
}
@media (max-width:767px) {
    #_desktop_cart {
        margin-left:0;
    }
    #search_widget {
        width:100%;
    }
    .jumpers {
        display: flex;
        margin-top:10px;
        justify-content:center
    }
    .jumper-stores a {
        line-height:28px;
    }
}

/* ========== FIX TABLET (768-991px): carrito junto al buscador, evitar solapamientos ========== */
@media (min-width: 768px) and (max-width: 991px) {
    /* Mover carrito de barra superior a barra principal (junto al buscador) */
    #header {
        position: relative;
    }
    .header-nav #_desktop_cart,
    .header-nav .blockcart {
        position: absolute;
        top: 3.25rem;
        right: 15px;
        z-index: 15;
        margin-left: 0;
    }
    /* Liberar espacio en barra superior: teléfono e Iniciar sesión sin solaparse */
    .header-nav .right-nav {
        flex-wrap: wrap;
        justify-content: flex-end;
    }
    /* Menú principal: flex-wrap compacto en 2 líneas */
    #header #_desktop_top_menu .top-menu[data-depth="0"],
    #header .header-top .menu > ul {
        display: flex !important;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-items: center;
        gap: 0 0.25rem;
        margin: 0;
        padding: 0.25rem 0;
    }
    #header .header-top a[data-depth="0"] {
        font-size: 0.8rem;
        padding: 0.35rem 0.5rem;
    }
    /* Slider: evitar overflow */
    .carousel, .carousel-inner, .ets_solo_slide_widget, .homeslider-container {
        overflow: hidden;
    }
}

@media (min-width: 768px) {
    /* la transición de opacity es la causa del problema */
    #_desktop_top_menu .top-menu[data-depth="0"] .sub-menu {
        transition: none !important;
    }

    #_desktop_top_menu .top-menu[data-depth="0"] li:hover .sub-menu {
        opacity: 1 !important;
        background-color: #fff !important;
    }

    #_desktop_top_menu .top-menu[data-depth="0"] li:hover .sub-menu {
        top: 2.5rem !important;
    }
    
    #_desktop_top_menu .top-menu[data-depth="0"] a[data-depth="0"] {
        padding-bottom: 0.5rem;
    }
}
/* SEO/UX precios: formato homogéneo para rebajas */
.product-price-and-shipping .regular-price,
.product-discount .regular-price {
  text-decoration: line-through;
  color: #7a7a7a;
}

.product-price-and-shipping .current-price,
.current-price .current-price-value {
  font-weight: 700;
  color: #111;
}

/* SEO/UX: Mostrar solo precios (sin badge de 
/* SEO/UX: Mostrar solo precios (sin badge de % / cantidad de descuento) */
.product-prices .discount,
.product-price-and-shipping .discount,
.product-price-and-shipping .discount-percentage,
.product-price-and-shipping .discount-amount,
.product-miniature .discount,
.product-miniature .discount-percentage,
.product-miniature .discount-amount {
  display: none !important;
}

