/*
Theme Name: Ecomus Child
Theme URI: https://wpecomus.com/
Author: DrFuri
Author URI: http://drfuri.com/
Description: Multipurpose WooCommerce WordPress Theme
Version: 1.0.0
Requires at least: 5.0
Tested up to: 5.8
Requires PHP: 7.0
License: GNU General Public License v2+
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: ecomus
Domain Path: /lang/
Tags: one-column, two-columns, left-sidebar, right-sidebar, full-width-template, post-formats, theme-options, threaded-comments, translation-ready
Template: ecomus
*/

/* ==========================================================================
   Typografia: Red Hat Display -fontti kaikille headingeille
   ========================================================================== */

/* Yliaja CSS-muuttuja oikeaksi fontiksi */
:root {
    --em-heading-font: 'Red Hat Display', sans-serif !important;
}

/* Kaikki heading-elementit käyttävät Red Hat Display -fonttia */
h1, h2, h3, h4, h5, h6,
.h1, .h2, .h3, .h4, .h5, .h6,
.ecomus-products-carousel__title,
.woocommerce-loop-product__title,
.product_title,
.page-title,
.entry-title,
.widget-title,
.section-title,
.ecomus-heading,
.elementor-heading-title {
    font-family: 'Red Hat Display', sans-serif !important;
}

/* Varmista että heading-fontit latautuvat oikein kaikissa painoissa */
h1, .h1 {
    font-weight: 900;
}

h2, .h2 {
    font-weight: 700;
}

h3, .h3 {
    font-weight: 600;
}

h4, .h4, 
.ecomus-products-carousel__title {
    font-weight: 500;
}

h5, .h5 {
    font-weight: 500;
}

h6, .h6 {
    font-weight: 400;
}

/* ==========================================================================
   Tuotekaruselli: 15px väli tuotteiden välillä kaikilla näyttöko'oilla
   ========================================================================== */

/* Kaikille näyttöko'oille: 15px väli tuotteiden välillä */
.ecomus-products-carousel--relative.em-relative .swiper,
.ecomus-products-carousel--relative .swiper {
    --em-swiper-items-space: 15px !important;
}

.ecomus-products-carousel--relative.em-relative .swiper .swiper-slide,
.ecomus-products-carousel--relative .swiper .swiper-slide {
    margin-right: 15px !important;
}

.ecomus-products-carousel--relative.em-relative .swiper .swiper-wrapper,
.ecomus-products-carousel--relative .swiper .swiper-wrapper {
    margin-right: -15px;
}

/* ==========================================================================
   Mobiiliresponsiivisuus: Tuotekaruselli näyttää 2 tuotetta vierekkäin
   ========================================================================== */

/* Mobiili (<= 767px): 2 tuotetta vierekkäin */
@media (max-width: 767px) {
    /* Etusivun tuotekarusellin mobiiliresponsiivisuus */
    /* Tuki molemmille luokille: ecomus-products-carousel--relative ja em-relative */
    .ecomus-products-carousel--relative.em-relative .swiper,
    .ecomus-products-carousel--relative .swiper {
        --em-swiper-slides-per-view: 2 !important;
        overflow: visible;
    }
    
    .ecomus-products-carousel--relative.em-relative .swiper .swiper-slide,
    .ecomus-products-carousel--relative .swiper .swiper-slide {
        width: calc((100% - 15px) / 2) !important;
        min-width: calc((100% - 15px) / 2) !important;
        max-width: calc((100% - 15px) / 2) !important;
        flex-shrink: 0;
        margin-right: 15px !important;
    }
    
    .ecomus-products-carousel--relative.em-relative .swiper .swiper-wrapper,
    .ecomus-products-carousel--relative .swiper .swiper-wrapper {
        display: flex;
        gap: 0;
        margin-right: -15px;
    }
    
    /* Varmistetaan että tuotekortit skaalautuvat oikein */
    .ecomus-products-carousel--relative.em-relative ul.products li.product,
    .ecomus-products-carousel--relative ul.products li.product {
        width: 100% !important;
        margin: 0 !important;
        padding: 0 0 15px 0 !important;
        margin-right: 30px !important;
    }
    
    /* Tuotekuvan säädöt mobiilissa */
    .ecomus-products-carousel--relative.em-relative .product-thumbnail img,
    .ecomus-products-carousel--relative .product-thumbnail img {
        width: 100%;
        height: auto;
        object-fit: cover;
    }
    
    /* Tuotetietojen fonttikoko mobiilissa */
    .ecomus-products-carousel--relative.em-relative .woocommerce-loop-product__title,
    .ecomus-products-carousel--relative .woocommerce-loop-product__title {
        font-size: 14px;
        line-height: 1.3;
        margin-bottom: 8px;
    }
    
    .ecomus-products-carousel--relative.em-relative .price,
    .ecomus-products-carousel--relative .price {
        font-size: 14px;
        margin-bottom: 10px;
    }
    
    /* Varmista että carousel-container on oikein */
    .ecomus-products-carousel--relative.em-relative,
    .ecomus-products-carousel--relative {
        overflow: hidden;
    }
}

/* ==========================================================================
   Ostoskorin tuotekuvat - kaikille näyttöko'oille
   ========================================================================== */
/* Aseta max-korkeus tuotekuville ostoskorissa kaikilla näyttöko'oilla */
.woocommerce-cart table.woocommerce-cart-form__contents td.product-thumbnail img,
.woocommerce-cart table.woocommerce-cart-form__contents td.product-thumbnail a img {
    max-height: 100px !important;
    max-width: 100px !important;
    width: auto !important;
    height: auto !important;
    object-fit: contain;
}

/* ==========================================================================
   Ostoskori mobiili: Flexbox-pohjainen ulkoasu
   ========================================================================== */
@media (max-width: 767px) {
    /* Piilota taulukon otsikkorivi */
    body.woocommerce-cart table.woocommerce-cart-form__contents thead {
        display: none !important;
    }

    /* Taulukko ja tbody block-muotoon */
    body.woocommerce-cart table.woocommerce-cart-form__contents,
    body.woocommerce-cart table.woocommerce-cart-form__contents tbody {
        display: block !important;
        width: 100% !important;
    }

    /* Tuoterivi flexboxina - kaikki vierekkäin */
    body.woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item {
        display: flex !important;
        flex-wrap: nowrap !important;
        align-items: center !important;
        width: 100% !important;
        padding: 12px 5px !important;
        border-bottom: 1px solid #eee !important;
        gap: 10px !important;
        box-sizing: border-box !important;
    }

    /* Piilota turhat sarakkeet */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-subtotal,
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-remove {
        display: none !important;
    }

    /* Poista ::before labelit */
    body.woocommerce-cart table.woocommerce-cart-form__contents td::before {
        display: none !important;
        content: none !important;
    }

    /* Kaikki solut block ilman borderia */
    body.woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td {
        display: block !important;
        border: none !important;
        padding: 0 !important;
        height: auto !important;
        clip-path: none !important;
    }

    /* 1. Kuva-sarake - vasemmalla, kiinteä leveys */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-thumbnail {
        flex: 0 0 65px !important;
        width: 65px !important;
        min-width: 65px !important;
        max-width: 65px !important;
        order: 1 !important;
        overflow: hidden !important;
        position: relative !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-thumbnail a {
        display: block !important;
        width: 60px !important;
        height: 60px !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-thumbnail img {
        width: 60px !important;
        height: 60px !important;
        max-width: 60px !important;
        object-fit: cover !important;
        border-radius: 4px !important;
        display: block !important;
    }

    /* 2. Tuotenimi-sarake - joustava keskellä */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-name {
        flex: 1 1 auto !important;
        min-width: 0 !important;
        order: 2 !important;
        font-size: 13px !important;
        line-height: 1.35 !important;
        padding-left: 5px !important;
        overflow: hidden !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-name a {
        font-size: 13px !important;
        line-height: 1.35 !important;
        color: #000 !important;
        display: block !important;
    }
    
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-name .remove-item,
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-name a.remove {
        font-size: 11px !important;
        color: #999 !important;
        display: block !important;
        margin-top: 4px !important;
    }

    /* 3. Hinta-sarake */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-price {
        flex: 0 0 75px !important;
        width: 75px !important;
        order: 3 !important;
        text-align: right !important;
        font-size: 12px !important;
        font-weight: 600 !important;
    }

    /* Vanha hinta (yliviivaus) */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-price del {
        display: block !important;
        font-size: 11px !important;
        color: #999 !important;
    }

    /* Uusi hinta (punainen) */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-price ins {
        display: block !important;
        color: #c00 !important;
        text-decoration: none !important;
        font-weight: 700 !important;
    }

    /* 4. Määrävalitsin-sarake - oikealla */
    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-quantity {
        flex: 0 0 75px !important;
        width: 75px !important;
        order: 4 !important;
        display: block !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-quantity .quantity {
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
        gap: 2px !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-quantity .quantity input.qty {
        width: 32px !important;
        height: 28px !important;
        font-size: 13px !important;
        text-align: center !important;
        border: 1px solid #ddd !important;
        border-radius: 3px !important;
        padding: 2px !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents td.product-quantity .quantity .ecomus-qty-btn {
        width: 20px !important;
        height: 20px !important;
        min-width: 20px !important;
        padding: 0 !important;
        font-size: 12px !important;
        display: flex !important;
        align-items: center !important;
        justify-content: center !important;
    }

    /* Muut rivit (coupon jne) - täysi leveys */
    body.woocommerce-cart table.woocommerce-cart-form__contents tbody tr:not(.cart_item) {
        display: block !important;
        width: 100% !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents tbody tr:not(.cart_item) td {
        display: block !important;
        width: 100% !important;
        border: none !important;
    }

    /* ==========================================================================
       Alennuskoodi-osio mobiilissa: 100% leveys ja näkyvä label
       ========================================================================== */
    
    /* Coupon-container: täysi leveys */
    .woocommerce-cart .coupon,
    .woocommerce-cart table.woocommerce-cart-form__contents .coupon {
        display: flex !important;
        flex-direction: column !important;
        width: 100% !important;
        gap: 10px !important;
        padding: 0 !important;
    }

    /* Näytä label mobiilissa */
    .woocommerce-cart .coupon label,
    .woocommerce-cart .coupon label.screen-reader-text {
        position: static !important;
        width: auto !important;
        height: auto !important;
        padding: 0 !important;
        margin: 0 0 5px 0 !important;
        overflow: visible !important;
        clip: auto !important;
        white-space: normal !important;
        border: 0 !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        color: #333 !important;
        display: block !important;
    }

    /* Input-kenttä: täysi leveys */
    .woocommerce-cart .coupon input.input-text,
    .woocommerce-cart .coupon input#coupon_code {
        width: 100% !important;
        max-width: 100% !important;
        min-width: 0 !important;
        flex: 1 !important;
        padding: 12px 15px !important;
        font-size: 14px !important;
        border: 1px solid #ddd !important;
        border-radius: 4px !important;
        box-sizing: border-box !important;
    }

    /* Käytä-nappi: täysi leveys */
    .woocommerce-cart .coupon button,
    .woocommerce-cart .coupon button.button {
        width: 100% !important;
        padding: 12px 20px !important;
        font-size: 14px !important;
        font-weight: 600 !important;
        border-radius: 4px !important;
    }

    /* Coupon-rivin solu: täysi leveys */
    .woocommerce-cart table.woocommerce-cart-form__contents td.actions,
    .woocommerce-cart table.shop_table td.actions {
        padding: 15px !important;
    }
}

/* ==========================================================================
   Ostoskorin rivien dynaaminen korkeus - desktop (vain > 767px)
   ========================================================================== */
@media (min-width: 768px) {
    /* Rajoita tuoterivin korkeus maksimissaan 160px */
    body.woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item,
    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item {
        display: table-row !important;
        height: 160px !important;
        max-height: 160px !important;
        min-height: 160px !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
    }

    body.woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td,
    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td {
        height: 160px !important;
        max-height: 160px !important;
        min-height: 160px !important;
        vertical-align: top !important;
        overflow: hidden !important;
        box-sizing: border-box !important;
        line-height: 1.4 !important;
    }

    /* Varmista että solut skaalautuvat sisällön mukaan */
    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td.product-thumbnail {
        height: auto !important;
        min-height: auto !important;
        vertical-align: top;
        width: 120px !important;
        max-width: 120px !important;
        min-width: 120px !important;
        padding-right: 0 !important;
    }

    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td.product-name {
        height: auto !important;
        min-height: auto !important;
        vertical-align: top;
        padding-left: 10px !important;
    }

    /* Pienennä myös otsikkorivin tuotekuvan sarake */
    .woocommerce-cart table.woocommerce-cart-form__contents thead th.product-thumbnail,
    .woocommerce-cart table.woocommerce-cart-form__contents thead th:first-child {
        width: 120px !important;
        max-width: 120px !important;
        min-width: 120px !important;
    }
    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td.product-price,
    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td.product-quantity,
    .woocommerce-cart table.woocommerce-cart-form__contents tbody tr.cart_item td.product-subtotal {
        height: auto !important;
        min-height: auto !important;
        vertical-align: top;
    }
}

/* ==========================================================================
   Tuotehaku-sivun ulkoasuongelmat - korjaukset
   ========================================================================== */

/* Alasvetovalikot: Normalisoi koko ja tyyli - YLEISET SÄÄNNÖT */
.ecomus-parts-search-box-form select.select-year-parts,
.ecomus-parts-search-box-form select.select-make-parts,
.ecomus-parts-search-box-form select.select-model-parts,
.ecomus-parts-search-box-form select.select-engine-parts,
.ecomus-parts-search-box-form select.select-fueltype-parts,
.ecomus-parts-search-box-form select.ecomus-select-active,
#advanced-searchform select.select-year-parts,
#advanced-searchform select.select-make-parts,
#advanced-searchform select.select-model-parts,
#advanced-searchform select.select-engine-parts,
#advanced-searchform select.select-fueltype-parts,
#advanced-searchform select.ecomus-select-active,
/* RST ProSearch plugin - alasvetovalikot */
.rst-prosearch-input-group select,
#makeYear,
#makeBrand,
#makeModel,
#makeEngine {
    font-size: 14px !important;
    line-height: 1.5 !important;
    padding: 10px 35px 10px 15px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    background-size: 12px 7px !important;
    background-position: calc(100% - 15px) center !important;
}

/* Ikonit alasvetovalikoissa: Normalisoi koko */
.ecomus-parts-search-box-form select + svg,
.ecomus-parts-search-box-form .select2-selection__arrow svg,
.ecomus-parts-search-box-form .select2-selection__arrow,
/* RST ProSearch plugin - ikonit */
.rst-prosearch-input-group svg,
.rst-prosearch-input-group img[src*="icon"],
.rst-prosearch-input-group .icon {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
}

/* Osasto-puu: Korjaa musta tausta - YLEISET SÄÄNNÖT */
.ecomus-sidebar-area,
.ecomus-sidebar-area .widget,
.ecomus-sidebar-area .widget-title,
.ecomus-sidebar-area .widget ul,
.ecomus-sidebar-area .widget li,
.ecomus-sidebar-area .widget_product_categories,
.ecomus-sidebar-area .widget_product_categories ul,
.ecomus-sidebar-area .widget_product_categories ul li,
/* Brator sidebar (käytetään tuotehaku-sivulla) */
.brator-sidebar-single-item,
.brator-sidebar-single-item.widget_product_categories,
.brator-sidebar-single-item .widget-title,
.brator-sidebar-single-item ul,
.brator-sidebar-single-item ul li,
.brator-sidebar-single-item ul li a {
    background-color: #ffffff !important;
    background: #ffffff !important;
    color: #000000 !important;
}

.ecomus-sidebar-area .widget-title {
    background-color: transparent !important;
    color: #000000 !important;
    padding: 15px 0 !important;
    margin-bottom: 15px !important;
    border-bottom: 1px solid #ebebeb !important;
}

.ecomus-sidebar-area .widget ul li {
    background-color: transparent !important;
    padding: 8px 0 !important;
}

.ecomus-sidebar-area .widget ul li a,
.ecomus-sidebar-area .widget_product_categories ul li a,
.brator-sidebar-single-item ul li a {
    color: #000000 !important;
}

.ecomus-sidebar-area .widget ul li.current-cat,
.ecomus-sidebar-area .widget ul li.current-cat > a,
.ecomus-sidebar-area .widget_product_categories ul li.current-cat,
.ecomus-sidebar-area .widget_product_categories ul li.current-cat > a,
.brator-sidebar-single-item ul li.current-cat,
.brator-sidebar-single-item ul li.current-cat > a {
    background-color: transparent !important;
    background: transparent !important;
    color: #000000 !important;
    font-weight: 600 !important;
}

/* Varmista että sidebar-alue on valkoinen */
.ecomus-product-shop-page-area .ecomus-sidebar-area {
    background-color: #ffffff !important;
    padding: 20px !important;
    border-radius: 4px !important;
}

/* Fibo Filter dropdownit: Normalisoi koko */
.fibo-filter-select,
.fibo-filter-select select,
.fibo-filter-select .select2-container,
.fibo-filter-select .select2-selection--single {
    font-size: 14px !important;
    line-height: 1.5 !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
}

.fibo-filter-select .select2-selection__arrow,
.fibo-filter-select .select2-selection__arrow svg {
    width: 12px !important;
    height: 7px !important;
    max-width: 12px !important;
    max-height: 7px !important;
}

/* Ikonit yleisesti: Normalisoi koko */
.ecomus-parts-search-box-form svg,
.ecomus-parts-search-box-form img[src*="icon"],
.ecomus-parts-search-box-form .icon {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
}

/* Tuotehaku-sivun erityiset korjaukset - Page ID: 60409 */
.page-id-60409 .ecomus-parts-search-box-form select,
body.page-id-60409 .ecomus-parts-search-box-form select,
body.page-tuotehaku .ecomus-parts-search-box-form select,
.page-id-tuotehaku .ecomus-parts-search-box-form select {
    font-size: 14px !important;
    padding: 10px 35px 10px 15px !important;
    height: 44px !important;
    line-height: 1.5 !important;
    background-size: 12px 7px !important;
    background-position: calc(100% - 15px) center !important;
}

.page-id-60409 .ecomus-sidebar-area,
body.page-id-60409 .ecomus-sidebar-area,
body.page-tuotehaku .ecomus-sidebar-area,
.page-id-tuotehaku .ecomus-sidebar-area {
    background-color: #ffffff !important;
    background: #ffffff !important;
}

.page-id-60409 .ecomus-sidebar-area .widget,
body.page-id-60409 .ecomus-sidebar-area .widget,
body.page-tuotehaku .ecomus-sidebar-area .widget,
.page-id-tuotehaku .ecomus-sidebar-area .widget {
    background-color: transparent !important;
    background: transparent !important;
    color: #000000 !important;
}

/* Fibo Filter widget: Normalisoi dropdownien koko */
.products-filter-widget .dropdown .select2-container,
.products-filter-widget .dropdown .select2-selection--single,
.products-filter-widget--elementor .dropdown .select2-container,
.products-filter-widget--elementor .dropdown .select2-selection--single {
    font-size: 14px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
}

.products-filter-widget .dropdown .select2-selection__arrow,
.products-filter-widget--elementor .dropdown .select2-selection__arrow {
    width: 12px !important;
    height: 7px !important;
    max-width: 12px !important;
    max-height: 7px !important;
    top: 50% !important;
    transform: translateY(-50%) !important;
    right: 10px !important;
}

/* Ikonit Fibo Filter -widgeteissä: Normalisoi koko */
.products-filter-widget svg,
.products-filter-widget img[src*="icon"],
.products-filter-widget .icon,
.products-filter-widget--elementor svg,
.products-filter-widget--elementor img[src*="icon"],
.products-filter-widget--elementor .icon {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
}

/* Tuotehaku-sivun Fibo Filter -dropdownit: Normalisoi koko - Page ID: 60409 */
body.page-id-60409 .products-filter-widget .dropdown .select2-container,
body.page-id-60409 .products-filter-widget .dropdown .select2-selection--single,
body.page-tuotehaku .products-filter-widget .dropdown .select2-container,
body.page-tuotehaku .products-filter-widget .dropdown .select2-selection--single,
.page-id-tuotehaku .products-filter-widget .dropdown .select2-container,
.page-id-tuotehaku .products-filter-widget .dropdown .select2-selection--single {
    font-size: 14px !important;
    height: 44px !important;
    line-height: 1.5 !important;
}

/* Tuotehaku-sivun ajoneuvohakulomakkeen dropdownit: Normalisoi koko ja ikonit - Page ID: 60409 */
body.page-id-60409 .ecomus-parts-search-box-form select,
body.page-tuotehaku .ecomus-parts-search-box-form select,
.page-id-tuotehaku .ecomus-parts-search-box-form select {
    font-size: 14px !important;
    padding: 10px 35px 10px 15px !important;
    height: 44px !important;
    line-height: 1.5 !important;
    background-size: 12px 7px !important;
    background-position: calc(100% - 15px) center !important;
}

/* Tuotehaku-sivun ajoneuvohakulomakkeen ikonit: Normalisoi koko - Page ID: 60409 */
body.page-id-60409 .ecomus-parts-search-box-form svg,
body.page-tuotehaku .ecomus-parts-search-box-form svg,
.page-id-tuotehaku .ecomus-parts-search-box-form svg {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
}

/* Tuotehaku-sivun osasto-puu: Korjaa musta tausta - Page ID: 60409 */
body.page-id-60409 .ecomus-sidebar-area,
body.page-tuotehaku .ecomus-sidebar-area,
.page-id-tuotehaku .ecomus-sidebar-area {
    background-color: #ffffff !important;
    background: #ffffff !important;
}

body.page-id-60409 .ecomus-sidebar-area .widget,
body.page-id-60409 .ecomus-sidebar-area .widget-title,
body.page-id-60409 .ecomus-sidebar-area .widget ul,
body.page-id-60409 .ecomus-sidebar-area .widget li,
body.page-tuotehaku .ecomus-sidebar-area .widget,
body.page-tuotehaku .ecomus-sidebar-area .widget-title,
body.page-tuotehaku .ecomus-sidebar-area .widget ul,
body.page-tuotehaku .ecomus-sidebar-area .widget li,
.page-id-tuotehaku .ecomus-sidebar-area .widget,
.page-id-tuotehaku .ecomus-sidebar-area .widget-title,
.page-id-tuotehaku .ecomus-sidebar-area .widget ul,
.page-id-tuotehaku .ecomus-sidebar-area .widget li {
    background-color: transparent !important;
    background: transparent !important;
    color: #000000 !important;
}

/* Tuotehaku-sivun osasto-puu: Korjaa musta tausta - widget_product_categories - Page ID: 60409 */
body.page-id-60409 .widget_product_categories,
body.page-tuotehaku .widget_product_categories,
.page-id-tuotehaku .widget_product_categories,
/* Brator sidebar tuotehaku-sivulla */
body.page-id-60409 .brator-sidebar-single-item,
body.page-tuotehaku .brator-sidebar-single-item,
.page-id-tuotehaku .brator-sidebar-single-item {
    background-color: transparent !important;
    background: transparent !important;
}

body.page-id-60409 .widget_product_categories ul,
body.page-id-60409 .widget_product_categories ul li,
body.page-tuotehaku .widget_product_categories ul,
body.page-tuotehaku .widget_product_categories ul li,
.page-id-tuotehaku .widget_product_categories ul,
.page-id-tuotehaku .widget_product_categories ul li,
body.page-id-60409 .brator-sidebar-single-item ul,
body.page-id-60409 .brator-sidebar-single-item ul li,
body.page-tuotehaku .brator-sidebar-single-item ul,
body.page-tuotehaku .brator-sidebar-single-item ul li,
.page-id-tuotehaku .brator-sidebar-single-item ul,
.page-id-tuotehaku .brator-sidebar-single-item ul li {
    background-color: transparent !important;
    background: transparent !important;
    color: #000000 !important;
}

body.page-id-60409 .widget_product_categories ul li a,
body.page-tuotehaku .widget_product_categories ul li a,
.page-id-tuotehaku .widget_product_categories ul li a,
body.page-id-60409 .brator-sidebar-single-item ul li a,
body.page-tuotehaku .brator-sidebar-single-item ul li a,
.page-id-tuotehaku .brator-sidebar-single-item ul li a {
    color: #000000 !important;
}

body.page-id-60409 .widget_product_categories ul li.current-cat,
body.page-id-60409 .widget_product_categories ul li.current-cat > a,
body.page-tuotehaku .widget_product_categories ul li.current-cat,
body.page-tuotehaku .widget_product_categories ul li.current-cat > a,
.page-id-tuotehaku .widget_product_categories ul li.current-cat,
.page-id-tuotehaku .widget_product_categories ul li.current-cat > a,
body.page-id-60409 .brator-sidebar-single-item ul li.current-cat,
body.page-id-60409 .brator-sidebar-single-item ul li.current-cat > a,
body.page-tuotehaku .brator-sidebar-single-item ul li.current-cat,
body.page-tuotehaku .brator-sidebar-single-item ul li.current-cat > a,
.page-id-tuotehaku .brator-sidebar-single-item ul li.current-cat,
.page-id-tuotehaku .brator-sidebar-single-item ul li.current-cat > a {
    background-color: transparent !important;
    color: #000000 !important;
    font-weight: 600 !important;
}

/* Tuotehaku-sivun RST ProSearch -alasvetovalikot: Normalisoi koko - Page ID: 60409 */
body.page-id-60409 .rst-prosearch-input-group select,
body.page-tuotehaku .rst-prosearch-input-group select,
.page-id-tuotehaku .rst-prosearch-input-group select,
body.page-id-60409 #makeYear,
body.page-id-60409 #makeBrand,
body.page-id-60409 #makeModel,
body.page-id-60409 #makeEngine,
body.page-tuotehaku #makeYear,
body.page-tuotehaku #makeBrand,
body.page-tuotehaku #makeModel,
body.page-tuotehaku #makeEngine {
    font-size: 14px !important;
    padding: 10px 35px 10px 15px !important;
    height: 44px !important;
    line-height: 1.5 !important;
    background-size: 12px 7px !important;
    background-position: calc(100% - 15px) center !important;
}

/* Tuotehaku-sivun RST ProSearch -ikonit: Normalisoi koko - Page ID: 60409 */
body.page-id-60409 .rst-prosearch-input-group svg,
body.page-id-60409 .rst-prosearch-input-group img[src*="icon"],
body.page-tuotehaku .rst-prosearch-input-group svg,
body.page-tuotehaku .rst-prosearch-input-group img[src*="icon"] {
    width: 16px !important;
    height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
}

/* ==========================================================================
   Checkout-sivun leveys: Aseta sama leveys kuin muilla sivuilla
   ========================================================================== */

/* Rajoita checkout-sivun site-content -elementin leveyttä */
body.woocommerce-checkout .site-content {
    max-width: 1540px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

@media (min-width: 768px) {
    body.woocommerce-checkout .site-content {
        max-width: 1500px !important;
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

@media (min-width: 1150px) {
    body.woocommerce-checkout .site-content {
        max-width: 1540px !important;
        padding-left: 50px !important;
        padding-right: 50px !important;
    }
}

/* ==========================================================================
   Ostoskori-sivun otsikko: 30px margin ylös ja alas
   ========================================================================== */
body.woocommerce-cart .page-header__title.em-font-h4,
body.woocommerce-cart h1.page-header__title.em-font-h4,
body.woocommerce-cart .page-header__content .page-header__title.em-font-h4,
.woocommerce-cart .page-header__title.em-font-h4,
.woocommerce-cart h1.page-header__title.em-font-h4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
}

/* ==========================================================================
   Kassa-sivun otsikko: 30px margin ylös ja alas
   ========================================================================== */
body.woocommerce-checkout .page-header__title.em-font-h4,
body.woocommerce-checkout h1.page-header__title.em-font-h4,
body.woocommerce-checkout .page-header__content .page-header__title.em-font-h4,
.woocommerce-checkout .page-header__title.em-font-h4,
.woocommerce-checkout h1.page-header__title.em-font-h4 {
    margin-top: 30px !important;
    margin-bottom: 30px !important;
}

/* Piilota vanha Elementor-otsikko ja duplikaatti WooCommerce-otsikko kassasivulta */
body.woocommerce-checkout h1.elementor-heading-title.elementor-size-xl,
body.woocommerce-checkout .elementor-heading-title.elementor-size-xl,
body.woocommerce-checkout .woocommerce > h1:first-child,
body.woocommerce-checkout form.woocommerce-checkout > h1,
body.woocommerce-checkout .woocommerce-checkout > h1 {
    display: none !important;
}

/* ==========================================================================
   Tuotehaku-sivu (page-id-60409): Kiinteä sisältöalueen leveys
   ========================================================================== */

/* Tuotehaku-sivun sisältöalue: rajoita leveys ja keskitä */
body.page-id-60409 .site-content,
body.page-tuotehaku .site-content {
    max-width: 1540px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding-left: 15px !important;
    padding-right: 15px !important;
}

/* Tuotehaku-sivun Elementor-osiot: käytä sivun leveyttä */
body.page-id-60409 .site-content > .elementor,
body.page-id-60409 .site-content .elementor-section,
body.page-tuotehaku .site-content > .elementor,
body.page-tuotehaku .site-content .elementor-section {
    max-width: 100% !important;
    width: 100% !important;
}

/* Tuotehaku-sivun sisältökontti */
body.page-id-60409 .site-content .elementor-container,
body.page-tuotehaku .site-content .elementor-container {
    max-width: 100% !important;
}

/* Responsiiviset säädöt - tablet */
@media (min-width: 768px) {
    body.page-id-60409 .site-content,
    body.page-tuotehaku .site-content {
        padding-left: 30px !important;
        padding-right: 30px !important;
    }
}

/* Responsiiviset säädöt - desktop */
@media (min-width: 1150px) {
    body.page-id-60409 .site-content,
    body.page-tuotehaku .site-content {
        padding-left: 50px !important;
        padding-right: 50px !important;
    }
}

/* ==========================================================================
   RST ProSearch: Alasvetovalikoiden reset-buttonit neliöksi
   ========================================================================== */

/* Reset-buttonit: neliökoko ikoneille */
.rst-prosearch-input-reset {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
    padding: 0 !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    flex-shrink: 0 !important;
    background: transparent !important;
    border: none !important;
    cursor: pointer !important;
}

/* Varmista että SVG-ikonit ovat oikean kokoisia ja mustia */
.rst-prosearch-input-reset svg {
    width: 16px !important;
    height: 16px !important;
    min-width: 16px !important;
    min-height: 16px !important;
    max-width: 16px !important;
    max-height: 16px !important;
    flex-shrink: 0 !important;
    color: #000 !important;
    fill: #000 !important;
}

/* Disabled-tila: näytä hieman haaleampana */
.rst-prosearch-input-reset[disabled] {
    opacity: 0.4 !important;
    cursor: not-allowed !important;
}

/* Tuotehaku-sivu erityiset säännöt */
body.page-id-60409 .rst-prosearch-input-reset,
body.page-tuotehaku .rst-prosearch-input-reset {
    width: 44px !important;
    min-width: 44px !important;
    max-width: 44px !important;
    height: 44px !important;
    min-height: 44px !important;
    max-height: 44px !important;
}

/* ==========================================================================
   RST ProSearch: Osastot-alueen kategoriabuttttonit
   ========================================================================== */

#rst-prosearch-categories button {
    color: #666 !important;
    font-size: .875rem !important;
    font-weight: 600 !important;
    line-height: 2rem !important;
    padding: .25rem 0 !important;
    text-align: left !important;
    background-color: #fff !important;
    border: 0 !important;
    display: block !important;
    width: 100% !important;
    cursor: pointer !important;
}

#rst-prosearch-categories button:hover {
    color: #000 !important;
}

#rst-prosearch-categories button.active {
    color: #000 !important;
    font-weight: 700 !important;
    background-color: rgba(229, 229, 229, 0.5) !important;
}

/* ==========================================================================
   RST ProSearch: Input-group järjestys ja reset-buttonin sijainti
   ========================================================================== */

/* Input-group flexbox järjestys */
.rst-prosearch-input-group {
    display: flex !important;
    flex-direction: row !important;
    align-items: center !important;
    position: relative !important;
}

/* Ikoni-button (vasemmalla) - 1px border ja kiinni selectissä */
.rst-prosearch-input-group > .rst-prosearch-input-reset:first-child {
    order: 1 !important;
    border: 1px solid #ddd !important;
    border-right: none !important;
    border-radius: 4px 0 0 4px !important;
    width: 44px !important;
    height: 44px !important;
    background-color: #fff !important;
    transition: background-color 0.2s ease !important;
    pointer-events: auto !important; /* Mahdollista hover myös disabled-tilassa */
    cursor: default !important;
}

.rst-prosearch-input-group > .rst-prosearch-input-reset:first-child:hover {
    background-color: #f5f5f5 !important;
}

/* Select on keskellä */
.rst-prosearch-input-group > select {
    order: 2 !important;
    flex: 1 !important;
    border-radius: 0 !important;
    border-left: none !important;
}

/* Nollaa-button (oikealla) - X-ikoni tyhjentämiseen */
.rst-prosearch-input-group > .rst-prosearch-input-reset:not(:first-child) {
    order: 3 !important;
    position: relative !important;
    right: auto !important;
    border: 1px solid #ddd !important;
    border-left: none !important;
    border-radius: 0 4px 4px 0 !important;
    width: 36px !important;
    height: 44px !important;
    min-width: 36px !important;
    max-width: 36px !important;
    background-color: #f5f5f5 !important;
}

.rst-prosearch-input-group > .rst-prosearch-input-reset:not(:first-child):hover {
    background-color: #e5e5e5 !important;
}

/* Kun nollaa-button ei näy, pyöristä selectin oikea reuna */
.rst-prosearch-input-group > select:last-child,
.rst-prosearch-input-group > .rst-prosearch-input-reset:not(:first-child)[style*="display: none"] + select {
    border-radius: 0 4px 4px 0 !important;
    border-right: 1px solid #ddd !important;
}

/* ==========================================================================
   Tuotehaku-sivu: Piilota "Osastot" otsikko
   ========================================================================== */

body.page-id-60409 h2.shop-sidebar-title,
body.page-tuotehaku h2.shop-sidebar-title,
.page-id-60409 h2.shop-sidebar-title,
.page-tuotehaku h2.shop-sidebar-title {
    display: none !important;
}

/* ==========================================================================
   Cross-sells (Suosittelemme sinulle) karusellin nuolipainikkeet
   ========================================================================== */

/* Varmista container on position: relative ja overflow näkyy */
section.cross-sells {
    position: relative !important;
    overflow: visible !important;
}

section.cross-sells .products-carousel {
    position: relative !important;
    overflow: visible !important;
}

section.cross-sells .products-carousel .swiper-wrapper {
    overflow: visible !important;
}

/* Varmista että cross-sells nuolipainikkeet näkyvät ja käyttävät teeman tyyliä */
section.cross-sells .swiper-button-next,
section.cross-sells .swiper-button-prev,
section.cross-sells .ecomus-swiper-button.swiper-button {
    color: #000 !important;
    background-color: #fff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 50% !important;
    width: 40px !important;
    height: 40px !important;
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    cursor: pointer !important;
    transition: all 0.3s ease !important;
    position: absolute !important;
    top: 180px !important; /* Keskellä tuotekuvan korkeutta */
    transform: translateY(-50%) !important;
    z-index: 100 !important;
    visibility: visible !important;
    opacity: 1 !important;
}

section.cross-sells .swiper-button-next:hover,
section.cross-sells .swiper-button-prev:hover {
    background-color: #f5f5f5 !important;
    border-color: #ddd !important;
}

section.cross-sells .swiper-button-next {
    right: -20px !important;
}

section.cross-sells .swiper-button-prev {
    left: -20px !important;
}

section.cross-sells .swiper-button-disabled {
    opacity: 0.35 !important;
    cursor: not-allowed !important;
}

/* SVG ikoni väri */
section.cross-sells .ecomus-swiper-button svg,
section.cross-sells .swiper-button svg {
    width: 7px !important;
    height: 11px !important;
    fill: currentColor !important;
}

/* ==========================================================================
   Tuotelistaus mobiili: Tuotekorttien välit
   ========================================================================== */

@media (max-width: 767px) {
    /* Tuotekorttien (wpcbm-wrapper) 15px marginaali mobiilissa */
    .wpcbm-wrapper.wpcbm-wrapper-archive-image {
        margin-bottom: 15px !important;
    }
    
    /* Varmista että tuotegridi käyttää sopivaa väliä */
    ul.products li.product,
    .products .product {
        margin-bottom: 15px !important;
    }
}

/* ==========================================================================
   Cross-sells karusellin nuolipainikkeet
   ========================================================================== */

/* Cross-sells karusellin nuolipainikkeiden tyylit */
.cross-sells.products .swiper-button,
.cross-sells.products .ecomus-swiper-button {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 40px;
    height: 40px;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #fff !important;
    border: 1px solid #e5e5e5 !important;
    border-radius: 50%;
    cursor: pointer;
    z-index: 10;
    transition: all 0.3s ease;
    color: #000 !important;
}

.cross-sells.products .swiper-button:hover,
.cross-sells.products .ecomus-swiper-button:hover {
    background-color: #f5f5f5 !important;
    border-color: #ccc !important;
}

.cross-sells.products .swiper-button-next {
    right: -20px;
}

.cross-sells.products .swiper-button-prev {
    left: -20px;
}

.cross-sells.products .swiper-button svg {
    width: 7px;
    height: 11px;
    fill: currentColor;
}

.cross-sells.products .swiper-button-disabled {
    opacity: 0.35;
    cursor: not-allowed;
}

/* Varmista että cross-sells container on relative */
.cross-sells.products .products-carousel {
    position: relative;
}

/* ==========================================================================
   Headerin puhelinnumero ja teksti: Pienennä asteittain ja piilota <= 1330px
   ========================================================================== */

/* Desktop (1331px+) - oletus: 28px (teeman oletus) */

/* Piilota puhelinnumero kun selaimen leveys on 1330px tai alle */
@media (max-width: 1330px) {
    .header-support-center,
    #site-header .header-support-center,
    .site-header .header-support-center,
    header .header-support-center,
    .header-support-center__phone,
    .header-support-center__text,
    .header-support-center__content {
        display: none !important;
        visibility: hidden !important;
        opacity: 0 !important;
        height: 0 !important;
        width: 0 !important;
        overflow: hidden !important;
        margin: 0 !important;
        padding: 0 !important;
    }
}

/* ==========================================================================
   Poista ostoskori-ikonin hover-efekti tuotelistauksissa
   ========================================================================== */

/* Piilota product-featured-icons hover-tilassa */
ul.products li.product .product-inner:hover .product-featured-icons {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
}
