/*
Theme Name: Intfradis Elementor
Theme URI: https://intfradis.com/
Description: Intfradis Elementor IRCF
Author: IRCF
Author URI: https://ircf.fr/
Template: hello-elementor
Version: 1.0
Text Domain: intfradis-elementor
License: GNU General Public License v3 or later.
License URI: https://www.gnu.org/licenses/gpl-3.0.html
*/

.subcategories{
    --cols: 4;
    --gap: 40px;
    display: flex;
    flex-wrap: wrap;
    gap: var(--gap);
}
.subcategories > .subcategory{
    border-radius: 8px;
    box-shadow: 8px 8px 0px 0px var(--shadowColor);
    flex-basis: calc(100% / var(--cols) - var(--gap) * (var(--cols) - 1) / (var(--cols)));
    overflow: hidden;
    position: relative;
}
.subcategories > .subcategory:focus{
    box-shadow: 8px 8px 0px 0px var(--shadowColor);
}
.subcategories > .subcategory > .background-wrapper{
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    z-index: 0;
}
.subcategories > .subcategory > .background-wrapper > .background{
    background-position: 50%;
    background-repeat: no-repeat;
    background-size: cover;
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .4s;
    z-index: 1;
}
.subcategories > .subcategory:hover > .background-wrapper > .background,
.subcategories > .subcategory:focus > .background-wrapper > .background,
.subcategories > .subcategory:active > .background-wrapper > .background{
    transform: scale(1.2);
}
.subcategories > .subcategory > .background-wrapper > .background-overlay{
    background-color: rgba(35, 45, 53, 0.4);
    bottom: 0;
    left: 0;
    position: absolute;
    right: 0;
    top: 0;
    transition: all .4s;
    z-index: 2;
}
.subcategories > .subcategory > .content{
    align-content: space-between;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    min-height: 351px;
    padding: 35px;
    padding-top: 120px;
    position: relative;
    text-align: center;
    z-index: 1;
}
.subcategories > .subcategory.small > .content{
    min-height: 220px;
    padding-top: 35px;
}
.subcategories > .subcategory.document > .content{
    align-content: center;
    min-height: 160px;
    padding: 15px;
}
.subcategories > .subcategory > .content.height-auto{
    height: 100%;
    min-height: 0;
}
.subcategories > .subcategory > .content > h2{
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 1.6rem;
    font-weight: 900;
    letter-spacing: 0.2px;
    margin: 0;
    text-transform: uppercase;
    width: 100%;
}
.subcategories > .subcategory.document > .content > h2{
    font-size: 1.4rem;
}
.subcategories > .subcategory > .content > small{
    color: #fff;
    font-weight: 500;
    text-transform: uppercase;
}
.subcategories > .subcategory > .content > .products-count{
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    margin-bottom: 15px;
    text-align: center;
    text-transform: uppercase;
    width: 100%;
}
.subcategories > .subcategory > .content > .button-wrapper{
    text-align: center;
    width: 100%;
}
.subcategories > .subcategory > .content > .button-wrapper > a.button{
    background-color: var(--bgColor);
    border: none;
    border-radius: 0;
    color: var(--textColor);
    display: inline-block;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 0.8rem;
    font-weight: 800;
    line-height: 1;
    padding: 17px;
    text-transform: uppercase;
}
.subcategories > .subcategory > .content > .button-wrapper > a.button:hover,
.subcategories > .subcategory > .content > .button-wrapper > a.button:focus,
.subcategories > .subcategory > .content > .button-wrapper > a.button:active{
    background-color: var(--bgColorHover);
}
@media (max-width: 767px){
    .subcategories{
        --cols: 2;
        --gap: 20px;
    }
    .subcategories > .subcategory > .content{
        min-height: 200px;
        padding-left: 5px;
        padding-right: 5px;
        padding-top: 69px;
    }
    .subcategories > .subcategory > .content > h2{
        font-size: 1rem;
    }
}

form.woocommerce-cart-form .eael-cart-coupon-and-collaterals .wc-proceed-to-checkout > .franco-de-port{
    color: #333;
    font-size: 1.1rem;
    font-weight: 500;
    margin: 20px 0;
    text-align: left;
}

#sku-search > h4{
    font-size: 1.2rem;
    font-weight: 800;
}
#sku-search > form#sku_search_form,
form#documents_search_form{
    display: flex;
    flex-direction: row;
}
#sku-search > form#sku_search_form > input,
form#documents_search_form > input
{
    border-radius: 0;
    border-right: 0;
    width: 300px;
}
#sku-search > form#sku_search_form > input:focus,
form#documents_search_form > input:focus{
    outline: none;
}
#sku-search > form#sku_search_form > button,
form#documents_search_form > button{
    align-items: center;
    border: none;
    border-radius: 0;
    display: flex;
    padding: 0 15px;
}
#sku-search > form#sku_search_form > button > img,
form#documents_search_form > button > img{
    max-width: 25px;
}
#sku-search > form#sku_search_form > button:hover,
#sku-search > form#sku_search_form > button:focus,
#sku-search > form#sku_search_form > button:active,
form#documents_search_form > button:hover,
form#documents_search_form > button:focus,
form#documents_search_form > button:active{
    background-color: #00B84F;
}
#sku-search > #product_preview{
    border: 1px solid #ddd;
    padding: 10px;
    width: 50%;
}
#sku-search > #product_preview > .infos{
    align-items: center;
    display: flex;
}
#sku-search > #product_preview > .infos > img.product-img{
    max-height: 100px;
    width: auto;
}
#sku-search > #product_preview > .infos > div{
    display: flex;
    flex-direction: column;
    margin-left: 15px;
}
#sku-search > #product_preview > .infos > div > a.product-name{
    color: #333;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1.1rem;
    font-weight: 500;
    text-transform: uppercase;
}
#sku-search > #product_preview > .infos > div > a.product-sku{
    color: #666;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 0.9rem;
    font-weight: 500;
}
#sku-search > #product_preview > .infos > div > a.product-sku > span{
    font-weight: 300;
    text-transform: uppercase;
}
#sku-search > #product_preview > .add-to-cart{
    align-items: center;
    display: flex;
    justify-content: space-evenly;
    margin-top: 10px;
}
#sku-search > #product_preview > .add-to-cart > .price{
    font-size: 1.7rem;
    font-weight: 700;
}
#sku-search > #product_preview > .add-to-cart > input{
    border-radius: 0;
    width: 80px;
}
#sku-search > #product_preview > .add-to-cart > button{
    border: none;
    border-radius: 0;
    padding: 10px 20px;
}
#sku-search > #product_preview > .add-to-cart > button:hover,
#sku-search > #product_preview > .add-to-cart > button:focus,
#sku-search > #product_preview > .add-to-cart > button:active{
    background-color: #00B84F;
}

#cookie-notice{
    background-image: url("/wp-content/uploads/2024/04/fond-carbonne-off.jpg");
}

.elementor-widget-woocommerce-my-account nav.woocommerce-MyAccount-navigation > ul > li.woocommerce-MyAccount-navigation-link--downloads{
    display: none !important;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content .woocommerce-MyAccount-content-wrapper{
    padding: 0 !important;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content .woocommerce-MyAccount-content-wrapper a{
    font-family: 'Roboto Condensed', sans-serif;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content .woocommerce-Addresses header > h2{
    margin: 0 !important;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content .woocommerce-Addresses header > a{
    display: none;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content .woocommerce-Addresses address{
    margin-top: 20px;
    padding: 0 !important;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > p.form-row{
    display: none;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content form.woocommerce-EditAccountForm > fieldset > legend{
    color: #232D35 !important;
    font-family: 'Roboto', sans-serif !important;
    font-size: 1.3rem !important;
    font-weight: 600 !important;
    margin-bottom: 20px;
    padding: 0 !important;
    text-transform: uppercase;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content section.woocommerce-customer-details h2.woocommerce-column__title{
    margin: 0 !important;
}
.elementor-widget-woocommerce-my-account .woocommerce-MyAccount-content section.woocommerce-customer-details address{
    padding-left: 0 !important;
    padding-right: 0 im !important;
}
.elementor-widget-woocommerce-my-account .e-my-account-tab:not(.e-my-account-tab__dashboard--custom) .woocommerce .woocommerce-ResetPassword{
    width: 100% !important;
}

.woocommerce-notices-wrapper{
    border: none !important;
}
.woocommerce-message{
    align-items: center;
    background-color: #f2f2f2;
    border: none !important;
    color: #333;
    display: flex;
    font-size: 1.4rem;
    justify-content: center;
    margin-bottom: 20px;
    outline: 0 !important;
    padding: 30px 0;
}
.woocommerce-message:before{
    content: "";
}
.woocommerce-message > a.button{
    background-color: #232d32;
    border-radius: 0;
    color: #fff;
    font-family: 'Roboto Condensed', sans-serif;
    font-size: 1rem;
    font-weight: 700;
    margin-left: 50px;
    padding: 17px;
    text-transform: uppercase;
}
.woocommerce-message > a.button:hover,
.woocommerce-message > a.button:focus,
.woocommerce-message > a.button:active{
    background-color: #485864;
    color: #fff;
}
ul.woocommerce-error > li a{
    color: #333 !important;
}
@media (max-width: 767px){
    .woocommerce-message{
        flex-direction: column;
        font-size: 1rem;
        padding: 10px 20px;
    }
    .woocommerce-message > a.button{
        font-size: 0.8rem;
        margin-left: 0;
        margin-top: 10px;
    }
}

/* Login Form */
form#ajax-login-form > .form-field-container{
    margin-bottom: 10px;
}
form#ajax-login-form > .form-field-container > input.form-field{
    border: none;
    border-radius: 0;
    line-height: 1.4;
    min-height: 47px;
    padding: 6px 16px;
}
form#ajax-login-form > .form-field-container > input.form-field:focus-visible{
    box-shadow: none;
    outline: none;
}
form#ajax-login-form > .form-checkbox-container{
    font-size: 0.85em;
    margin-bottom: 10px;
}
form#ajax-login-form > .form-checkbox-container > label.form-checkbox-label{
    color: #fff;
}
form#ajax-login-form > .password-container{
    position: relative;
}
form#ajax-login-form > .password-container > input.form-field{
    padding-right: 45px;
}
form#ajax-login-form > .password-container > button.toggle-password{
    align-items: center;
    background-color: transparent;
    border: none;
    color: #009640;
    cursor: pointer;
    display: flex;
    height: 24px;
    justify-content: center;
    padding: 0;
    position: absolute;
    right: 12px;
    top: 50%;
    transform: translateY(-50%);
    width: 24px;
}
form#ajax-login-form > .password-container > button.toggle-password:hover{
    color: #00b84f;
}
form#ajax-login-form > .password-container > button.toggle-password > svg{
    height: 30px;
    width: 30px;
}
form#ajax-login-form > .password-container > button.toggle-password > svg.icon-eye-off{
    display: none;
}
form#ajax-login-form > .password-container > button.toggle-password.is-visible > svg.icon-eye{
    display: none;
}
form#ajax-login-form > .password-container > button.toggle-password.is-visible > svg.icon-eye-off{
    display: block;
}
form#ajax-login-form > .button-container{
    align-items: flex-end;
    display: flex;
    justify-content: center;
    margin-bottom: 10px;
}
form#ajax-login-form > .button-container > button.button{
    background-color: #ffdd00;
    border: none;
    border-radius: 0;
    color: #333;
    line-height: 1;
}
form#ajax-login-form > .button-container > button.button:hover,
form#ajax-login-form > .button-container > button.button:focus,
form#ajax-login-form > .button-container > button.button:active{
    background-color: #ffeb6a;
}
form#ajax-login-form > #login-message{
    align-items: flex-end;
    display: flex;
    font-size: 1rem;
    justify-content: center;
    text-align: center;
}
form#ajax-login-form > #login-message > .login-spinner{
    animation: spin 0.8s linear infinite;
    border: 3px solid #fff;
    border-radius: 50%;
    border-top-color: #ffdd00;
    display: inline-block;
    height: 22px;
    vertical-align: middle;
    width: 22px;
}
@keyframes spin{
    to { transform: rotate(360deg); }
}

/* --- Menu Catégories --- */
/*<div class="wc-categories-menu">*/
/*<ul class="wc-categories-level">*/
/*<li class="wc-categories-item">*/
.wc-categories-menu{
    position: relative;
    width: 520px;
}
.wc-categories-menu ul.wc-categories-level{
    list-style: none;
    margin: 0;
    padding: 0;
}
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item{
    display: flex;
    justify-content: space-between;
    line-height: 1.5rem;
    padding: 8px 16px;
}
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item > a{
    color: #fff;
    display: flex;
    font-size: 1rem;
    font-weight: 500;
    text-decoration: none;
    text-transform: uppercase;
}
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item > button{
    background-color: transparent;
    border: none;
    color: #fff;
    font-size: 1.1rem;
    padding: 0 20px;
}
.wc-categories-menu > ul.wc-categories-level > li.wc-categories-item > a{
    font-weight: 700;
}
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item:hover > a,
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item:focus > a,
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item:active > a,
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item:hover > button,
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item:focus > button,
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item:active > button{
    color: #00b84f;
}
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item > ul.wc-categories-level{
    background-color: #232d35;
    display: none;
    left: 100%;
    min-height: 100%;
    position: absolute;
    top: 0;
    width: 450px;
    z-index: 20;
}
.wc-categories-menu ul.wc-categories-level > li.wc-categories-item.open > ul.wc-categories-level{
    display: block;
}

/* --- Véhicules compatibles --- */
.vehicules-compatibles > input{
    margin-bottom: 10px;
}

/* --- Filtres --- */
.berocket_single_filter_widget h3{
    font-size: 1rem;
    font-weight: 700;
    margin: 0 0 5px;
}
.berocket_single_filter_widget .select2-container .select2-selection > .select2-selection__rendered{
    font-size: 1rem;
    line-height: 1;
}
.berocket_single_filter_widget .select2-container .select2-selection{
    height: auto;
}
.berocket_single_filter_widget button.bapf_reset{
    border: none;
    font-size: 0.8rem;
    padding: 12px 20px;
}

/* --- Form documents --- */
.documents-search {
    width: 100%;
    margin-bottom: 30px;
}
.documents-search__field {
    display: flex;
    align-items: stretch;
    width: 100%;
}
.documents-search__field input {
    flex: 1;
    min-width: 0;
    height: 45px;
    padding: 0 15px;
    border: 1px solid #d5d5d5;
    border-right: none;
    border-radius: 4px 0 0 4px;
    outline: none;
    font-size: 15px;
    box-sizing: border-box;
}
.documents-search__field input:focus {
    border-color: #999;
}
.documents-search__field button {
    width: 50px;
    height: 45px;
    display: flex;
    align-items: center;
    justify-content: center;
    border: none;
    border-radius: 0 4px 4px 0;
    background: #009b45;
    color: #fff;
    cursor: pointer;
    font-size: 20px;
    padding: 0;
}
.documents-search__field button:hover {
    background: #007f39;
}
.documents-search__icon {
    line-height: 1;
}

/* --- Menu mobile --- */
.categories-mobile > a.categories-mobile-toggle,
.nouveautes-mobile > a.nouveautes-mobile-toggle{
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    font-weight: 700;
    text-transform: uppercase;
}
.categories-mobile.is-open > a.categories-mobile-toggle,
.nouveautes-mobile.is-open > a.nouveautes-mobile-toggle{
    color: #00b84f;
}
.categories-mobile > ul.categories-mobile-submenu,
.nouveautes-mobile > ul.nouveautes-mobile-submenu{
    display: none !important;
    list-style: none;
    margin: 0;
    padding: 0 0 0 15px;
}
.categories-mobile > ul.categories-mobile-submenu > li > a,
.nouveautes-mobile > ul.nouveautes-mobile-submenu > li > a{
    color: #fff;
    font-family: 'Roboto', sans-serif;
    font-size: 16px;
    font-weight: 500;
    text-transform: uppercase;
}
.categories-mobile.is-open > ul.categories-mobile-submenu,
.nouveautes-mobile.is-open > ul.nouveautes-mobile-submenu{
    display: block !important;
}