
/* COLORS */
:root {

    --color-green : #78C0BF; /* vert AP */
    --color-green-rgb : 120, 192, 191; /* vert AP RGB */

    --color-lightgreen : #B4DCDC; /* vert clair AP */
    --color-lightgreen-rgb : 180, 220, 220; /* vert clair AP RGB */

    --color-darkgreen : #45717E; /* vert fonce */
    --color-darkgreen-rgb : 69, 113, 126; /* vert fonce RGB */

    --color-black : #000000; /* noir */
    --color-black-rgb : 0, 0, 0; /* noir RGB */

    --color-white : #FFFFFF; /* blanc */
    --color-white-rgb : 255, 255, 255; /* blanc RGB */

    --color-darkgray : #636363; /* gris fonce */
    --color-darkgray-rgb : 99, 99, 99; /* gris fonce RGB */

    --color-lightgray : #f2f2f2; /* gris clair */
    --color-lightgray-rgb : 242, 242, 242; /* gris clair RGB */

    --color-turquoise : #38A8CD; /* bleu azur */
    --color-turquoise-rgb : 56, 168, 205; /* bleu azur RGB */

    --color-corail : #FF676A; /* corail */
    --color-corail-rgb : 255, 103, 106; /* corail RGB */

    --color-red : #FC3937; /* rouge */
    --color-red-rgb : 252, 57, 55; /* rouge RGB */

    --color-darkred : #D62826; /* rouge fonce */
    --color-darkred-rgb : 214, 40, 38; /* rouge fonce RGB */

    --color-success : #6a9e40;
    --color-success-rgb : 106, 158, 64;
    --color-alert : #cd0000;
    --color-alert-rgb : 205, 0, 0;

    --fontfamily : "Golos Text", sans-serif;

    --fontsize : 0.8rem;
    --fontsize-1 : 1rem;
    --fontsize-h1 : 1.5rem;
    --fontsize-h2 : 1.125rem;

    --border-radius : 0.375rem;

}


/* GENERAL */
body {
    font-family: var(--fontfamily);
    font-size: var(--fontsize);
    font-optical-sizing: auto;
    color: var(--color-black);
}
body#checkout {
    color: var(--color-black);
}
p {
    font-size: var(--fontsize);
    color: var(--color-black);
    font-weight: normal;
}
.h1,.h2,.h3,.h4,.h5,.h6,h1,h2,h3,h4,h5,h6 {
    color: var(--color-darkgreen);
    text-transform: none;

}
.h1,h1 {
    font-size: var(--fontsize-h1);
}
.row {
    display: flex;
    flex-wrap: wrap;
}
.modal-backdrop.in {
    opacity: .8;
}
    @media (min-width: 576px) {
        .container {
            width:650px;
            max-width: 100%
        }
    }

    @media (min-width: 768px) {
        .container {
            width:740px;
            max-width: 100%
        }
    }

    @media (min-width: 992px) {
        .container {
            width:740px;
            max-width: 100%
        }
    }

    @media (min-width: 1200px) {
        .container {
            width:1168px;
            max-width: 100%
        }
    }

    @media (min-width: 1432px) {
        .container {
            width:1416px;
            max-width: 100%
        }
    }

/* MAJ COULEURS */
#header a:hover,
.btn-outline-primary,
.btn-link,
.dropdown-item.active,.dropdown-item.active:focus,.dropdown-item.active:hover,
.page-link,
.text-primary,
.btn-unstyle:focus .expand-more,
.dropdown:hover .expand-more,
.dropdown-item:focus,.dropdown-item:hover,
.search-widget form input[type=text]:focus+button .search,
#header .top-menu a[data-depth="0"]:hover,
.top-menu .sub-menu a:hover,
.page-my-account #content .links a:hover i,
.carousel .carousel-control .icon-next:hover i,.carousel .carousel-control .icon-prev:hover i,
#products .highlighted-informations .quick-view:hover,.featured-products .highlighted-informations .quick-view:hover,.product-accessories .highlighted-informations .quick-view:hover,.product-miniature .highlighted-informations .quick-view:hover,
.block-categories .collapse-icons .add:hover,.block-categories .collapse-icons .remove:hover,
.block-categories .arrows .arrow-down:hover,.block-categories .arrows .arrow-right:hover,
.cart-grid-body a.label:hover,
.block_newsletter form input[type=text]:focus+button .search,
.block_newsletter form button[type=submit] .search:hover,
.account-list a:hover,
.footer-container li a:hover,
.search-widget form button[type=submit] .search:hover, .search-widget form input[type=text]:focus+button .search:hover  {
    color: var(--color-turquoise);
}

.btn-outline-primary.active,.btn-outline-primary.focus,.btn-outline-primary:active,.btn-outline-primary:focus,.btn-outline-primary:hover,.open>.btn-outline-primary.dropdown-toggle,
.nav-pills .nav-item.open .nav-link,.nav-pills .nav-item.open .nav-link:focus,.nav-pills .nav-item.open .nav-link:hover,.nav-pills .nav-link.active,.nav-pills .nav-link.active:focus,.nav-pills .nav-link.active:hover,
.card-primary,
.page-item.active .page-link,.page-item.active .page-link:focus,.page-item.active .page-link:hover,
.tag-primary,
.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover,
.bg-primary,
.bootstrap-touchspin .group-span-filestyle .btn-touchspin,.group-span-filestyle .bootstrap-touchspin .btn-touchspin,.group-span-filestyle .btn-default,
#products .product-miniature .discount-amount,#products .product-miniature .discount-percentage,#products .product-miniature .online-only,#products .product-miniature .pack,#products .product-miniature .new,.featured-products .product-miniature .discount-amount,.featured-products .product-miniature .discount-percentage,.featured-products .product-miniature .online-only,.featured-products .product-miniature .pack,.featured-products .product-miniature .new,.product-accessories .product-miniature .discount-amount,.product-accessories .product-miniature .discount-percentage,.product-accessories .product-miniature .online-only,.product-accessories .product-miniature .pack,.product-accessories .product-miniature .new,.product-miniature .product-miniature .discount-amount,.product-miniature .product-miniature .discount-percentage,.product-miniature .product-miniature .online-only,.product-miniature .product-miniature .pack,.product-miniature .product-miniature .new,
.facet-dropdown .select-list:hover,
li.product-flag,
.block-social li:hover {
    background-color: var(--color-red);
}
.btn-outline-primary,
.btn-outline-primary.active,.btn-outline-primary.focus,.btn-outline-primary:active,.btn-outline-primary:focus,.btn-outline-primary:hover,.open>.btn-outline-primary.dropdown-toggle,
.card-primary,
.card-outline-primary,
.page-item.active .page-link,.page-item.active .page-link:focus,.page-item.active .page-link:hover,
.list-group-item.active,.list-group-item.active:focus,.list-group-item.active:hover,
.select-title {
    border-color: var(--color-red);
}

/* LINKS */
a {
    color: var(--color-turquoise);
}
a:hover,
a.link-darkgray:hover,
a.link-white:hover  {
    color: var(--color-turquoise) !important;
    text-decoration: underline;
}
a.link-darkgray {
    color: var(--color-darkgray) !important;
}
a.link-white {
    color: var(--color-white);
}
a.link-no-underline {
    text-decoration: none !important;
}


/* STYLES */
.color-green {
    color: var(--color-green);
}
.color-darkgray {
    color: var(--color-darkgray);
}
.color-lightgray {
    color: var(--color-lightgray);
}
.color-red {
    color: var(--color-red);
}
.color-darkgray-50 {
    color: rgba(var(--color-darkgray-rgb),0.50);
}
.bg-lightgreen {
    background-color: rgba(var(--color-lightgreen-rgb),1);
}
.border-0 {
    border: 0 !important;
}
.fs-normal {
    font-size: var(--fontsize);
}
.fs-1 {
    font-size: var(--fontsize-1);
}

/* ORDER */
.order-1 {order:1;}
.order-2 {order:2;}
.order-3 {order:3;}
.order-4 {order:4;}
    @media (min-width: 768px){
        .order-md-1 {order:1 !important;}
        .order-md-2 {order:2 !important;}
        .order-md-3 {order:3 !important;}
        .order-md-4 {order:4 !important;}
    }

/* FORM */
.form-control,
.search-widget form input[type=text],
.block_newsletter form input[type=email],
.products-sort-order .select-title,
.block-promo .promo-input {
    border-radius: var(--border-radius);
    border: 1px solid var(--color-lightgray);
    background-color: var(--color-white);
    font-size: var(--fontsize);
    color: var(--color-black);
}
.form-control-select {
    background: var(--color-white) url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAQAAAD9CzEMAAAAPklEQVR4Ae3TwREAEBQD0V/6do4SXPZg7EsBhsQ8IEmSMOsiuEfg3gL3oXC7wK0bd1G4o8X9F4yIkyQfSrIByQBjp7QuND8AAAAASUVORK5CYII=") no-repeat scroll right .5rem center/1.25rem 1.25rem !important;
}
.form-control:focus,
.input-group.focus,
.search-widget form input[type=text]:focus,
.block_newsletter form input[type=text]:focus,
.block_newsletter form input[type=email]:focus {
    border-color: var(--color-turquoise);
    outline: none !important;
}
.label, label {
    color: var(--color-black);
    text-align: right;
}
.label, label ,
.form-control-label {
    font-size: var(--fontsize);
}
.page-customer-account label {
    text-align: left;
}
.form-control::placeholder,
.search-widget form input[type=text]::placeholder
.block_newsletter form input[type=text]::placeholder {
    color: #cccccc ;
    opacity: 1;
}
.form-control-comment {
    font-size: 0.7rem;
    padding-top: .5rem;
    color: var(--color-darkgray);
}
.custom-radio {
    border: 1px solid var(--color-lightgray);
    background: var(--color-white);
}
.custom-radio:hover,
.custom-radio:focus {
    border-color: var(--color-turquoise);
}
.custom-radio input[type=radio]:checked+span {
    background-color: var(--color-turquoise);
    top: 50%; 
    left: 50%; 
    transform: translate(-50%, -50%);
}
.input-group .input-group-btn>.btn {
    text-transform: initial;
}
.input-group .input-group-btn>.btn:hover,
.input-group .input-group-btn>.btn[data-action=show-password]:hover {
    background: var(--color-turquoise);
}
.input-group .input-group-btn>.btn[data-action=show-password] {
    background: var(--color-darkgray);
    padding: .625rem 1rem;
}
.block_newsletter form input {
    padding: .5rem 1rem !important;
}
.block_newsletter form input {
    height: auto;
}
.block_newsletter form input[type=email]:focus {
    border-width: 1px;
}
.custom-checkbox input[type=checkbox]+span,
.PM_ASBlockOutput input[type=checkbox] {
    margin-right: 0.2rem;
    display: inline-block;
    width: 20px;
    height: 20px;
    vertical-align: middle;
    cursor: pointer;
    border: 1px solid var(--color-lightgray);
    border-radius: var(--border-radius);
    background-color: var(--color-white);
    position: relative;
}
.PM_ASBlockOutput input[type=checkbox] {
    appearance: none;
    -webkit-appearance: none;
}
.custom-checkbox input[type=checkbox]:hover+span,
.custom-checkbox input[type=checkbox]:focus+span,
.PM_ASBlockOutput input[type="checkbox"]:hover {
    border-color: var(--color-turquoise);
}
.custom-checkbox input[type=checkbox]+span .checkbox-checked {
    margin: 0;
    color: var(--color-turquoise);
}
.PM_ASBlockOutput input[type="checkbox"]:checked {
    border-color: var(--color-turquoise);
}
.PM_ASBlockOutput input[type="checkbox"]:checked::after {
    content: '';
    position: absolute;
    left: 6px;
    top: 3px;
    width: 5px;
    height: 10px;
    border: solid var(--color-turquoise);
    border-width: 0 2px 2px 0;
    transform: rotate(45deg);
}
    @media (max-width: 1200px) {
        .label, label {
            text-align: left;
        }
    }

/* TABLEAU */
.table td, .table th {
    vertical-align: middle;
}
.table-bordered, .table-bordered thead th {
    border: 2px solid var(--color-white);
}
.table-bordered thead th:first-child  {
    border-left: 2px solid var(--color-lightgray);
}
.table-bordered thead th:last-child  {
    border-right: 2px solid var(--color-lightgray);
}
.table-bordered td, .table-bordered th {
    border: 2px solid var(--color-lightgray);
}
.table thead th {
    vertical-align: middle;
    border-bottom: 2px solid var(--color-white);
}
.thead-default th {
    color: var(--color-black);
    background-color: var(--color-lightgray);
}
.table-striped tbody tr:nth-of-type(odd) {
    background-color: var(--color-white);
}
.table a svg{
    overflow: visible;
}

/* BOOTSTRAP TOUCHSPIN */
.bootstrap-touchspin {
    box-shadow: none;
    float: unset;
}
.js-cart-line-product-quantity,
.bootstrap-touchspin input.form-control,
.bootstrap-touchspin input.input-group,
.product-quantity #quantity_wanted {
    width: 100%;
    padding: 5px 40px;
    text-align: center;
    color: var(--color-black);
    border: 1px solid var(--color-lightgray);
    border-radius: var(--border-radius) !important;
}
.bootstrap-touchspin .input-group-btn-vertical,
.product-quantity .input-group-btn-vertical {
    position: static;
}
.bootstrap-touchspin .input-group-btn-vertical>.btn,
.product-quantity .input-group-btn-vertical .btn {
    position: absolute;
    z-index: 10;
    top: 0;
    border: 0;
    margin: 0;
    padding: 0;
    height: 100%;
    width: 40px;
    min-width: inherit;
    color: var(--color-darkgray);
    background: none;
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer !important;
}
.bootstrap-touchspin .input-group-btn-vertical>.btn:hover,
.product-quantity .input-group-btn-vertical .btn:hover {
    color: var(--color-turquoise);
}
.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
    left: 0;
}
.bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
    right: 0;
}
.bootstrap-touchspin .input-group-btn-vertical i,
.product-quantity .input-group-btn-vertical .btn i {
    margin: 0;
    color: inherit;
    position: static;
}

.bootstrap-touchspin .input-group-btn-vertical .touchspin-down::after {
    content: "\e15b";
}

.bootstrap-touchspin .input-group-btn-vertical .touchspin-up::after {
    content: "\e145";
}


/* LOGO */
    @media (min-width: 1200px){
        #header .logo {
            width: 180px;
            height: auto;
        }
    }

/* BTN */
button {
    cursor: pointer;
}
.btn {
    font-weight: normal;
    border-radius: var(--border-radius);
}
.btn svg {
    overflow: visible;
}
.btn-group-lg>.btn, .btn-lg {
    padding: 1rem !important;
    line-height: 1.25;
    font-size: initial;
    border-radius: var(--border-radius);
}
.btn-group-sm>.btn, .btn-sm {
    padding: 0.25rem !important;
    font-size: 0.7rem;
    border-radius: var(--border-radius);
}
.btn-primary{
    background-color: var(--color-red);
    color: var(--color-white);
}
.btn-primary:hover, .btn-primary.focus, .btn-primary:focus {
    color: var(--color-white) !important;
    background-color: var(--color-darkred);
    border-color: transparent;
}
.btn-secondary, 
.block_newsletter form button[type=submit],
#colissimo-select-pickup-point.btn-primary {
    background-color: var(--color-green);    
    color: var(--color-white);
}
.btn-tertiary {
    background-color: var(--color-lightgray);
    color: var(--color-darkgray);
}
.btn-secondary:hover, .btn-secondary:focus, .btn-secondary.focus, 
.btn-tertiary:hover, .btn-tertiary:focus, .focus.btn-tertiary,
.block_newsletter form button[type=submit]:hover,
#colissimo-select-pickup-point.btn-primary:hover {
    background-color: var(--color-turquoise);
    color: var(--color-white) !important;
    border-color: transparent;
    box-shadow: none;
}
.btn-primary, .btn-secondary, .btn-tertiary {
    box-shadow: none;
    text-transform: none;
    font-weight: bold;
    padding: .5rem 1rem;
    border-color: transparent;
}
.btn.active.focus, .btn.active:focus, .btn.focus, .btn:active.focus, .btn:active:focus, .btn:focus {
    outline: none;
    outline-offset: inherit;
}
.btn-anim {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    overflow: hidden; /* Évite que l'icône ne dépasse pendant l'anim */
    transition: all 0.3s ease;
}
.btn-anim svg {
    display: inline-block;
    width: 0;
    opacity: 0;
    margin-left: 0;
    transition: all 0.4s ease-in-out;
    transform: translateX(-5px); /* Petit effet de glissement */
}
.btn-anim:hover svg {
    width: 1.2em;      
    opacity: 0.5;        
    margin-right: 5px; 
    transform: translateX(0);
}
.block_newsletter form button[type=submit] {
    position: inherit;
    border: 1px solid transparent;
    color: var(--color-white);
}
.btn small.btn-jump {
    display: block;
    font-size: 0.6rem;
}
.btn.disabled, .btn:disabled,
.btn-primary.disabled.focus, .btn-primary.disabled:focus, .btn-primary.disabled:hover, .btn-primary:disabled.focus, .btn-primary:disabled:focus, .btn-primary:disabled:hover {
    background-color: var(--color-darkgray);
}

/* HEADER RECHERCHE */
#header .header-top .search-widget{
    width: 100%;
}
.search-widget form input[type=text] {
    padding: .5rem 1rem;
}
.header-top .search-widget form input[type=text] {
    font-size: var(--fontsize-1);
    padding: 1rem 1.5rem;
}
.search-widget form input[type=text]:focus {
    color: initial;
    background: var(--color-white);
}
.search-widget form button[type=submit] {
    top: 50%;
    transform: translateY(-50%);
    bottom: auto;
}
.ui-menu {
    border-radius: 0;
    border: 0;
    color: var(--color-black);
    padding: 0;
    font-size: var(--fontsize);
    box-shadow: 0px 0px 10px 0px rgba(0, 0, 0, 0.5);
    font-family: var(--fontfamily);
}
.ui-menu .ui-menu-item {
    border-bottom: 1px solid var(--color-lightgray);
}
.ui-menu .ui-menu-item a {
    border-radius: 0;
    padding: 10px;
    color: var(--color-black);
    font-weight: normal;
    border: 0;
}
.ui-menu .ui-menu-item a.ui-state-focus {
    background: var(--color-lightgray);
    font-weight: normal;
    color: inherit;
    margin: 0;
    cursor: pointer;
}
.ui-menu .search-img {
    width: 60px;
    margin-right: 5px;
}

/* HEADER */
#header,
#header .header-top {
    background: var(--color-white);
}
#header .header-top {
    padding: 1.25rem 0;
}
#header .header-nav #menu-icon {
    margin-top: .9375rem;
}

/* HEADER CONNEXION + CART */
#header a, 
#header .user-info a,
#header .blockcart a, 
#header .header-nav .blockcart a,
#header .header-nav .cart-preview.active a,
#header .header-nav .user-info .logged {
    color: var(--color-darkgray);
}
#header .user-info a:hover,
#header .blockcart a:hover {
    color: var(--color-turquoise);
}
#header .header-nav .cart-preview.active {
    background: none;
}
#header .header-nav .cart-products-count {
    font-size: var(--fontsize-1);
}
#header .header-nav .blockcart {
    background: none;
    height: inherit;
    text-align: right;
}
#header .header-nav .user-info {
    margin-left: 0;
}
.header-checkout {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
#checkout .header-nav .top-logo a {
    display: block;
}
#header .header-checkout a {
    color: var(--color-turquoise);
}
#header .header-checkout a:hover {
    text-decoration: underline;
}
body#checkout #header .header-nav .logo {
    max-height: 50px;
    width: auto;
}
body#checkout #header .header-nav {
    padding: 0;
    box-shadow:none;
}
    @media (min-width: 1200px){    
        #header .user-info a,
        #header .blockcart a{
            display: flex;
            align-items: center;
            margin-left: 1rem;
        }
        #header .user-info a:hover svg,
        #header .blockcart a:hover svg{
            transform: scale(1.2);
        }
        #header .user-info a span,
        #header .blockcart a span{
            padding-left: 0.3rem;
        }
        #header .header-nav #_desktop_contact_link #contact-link{
            margin-bottom: .9375rem;
        }        
        #header .header-nav #_desktop_contact_link #contact-link a{
            color: #666;
        }        
        #header .header-nav #_desktop_contact_link #contact-link a:hover{
            color: #666;
            text-decoration: underline;
        }        
        #header .header-top .login-cart{
            display: flex;
            margin-left: auto;
            align-items: center;
        }
        #header .header-top .login-cart a span{
            white-space: nowrap; 
        }
        #header .header-top .container > .row,
        #header .header-top .position-static{
            display: flex;
            align-items: center;
        }
        #header .header-nav{
            border-bottom: 0;
            margin-bottom: 0;
            height: 0;
        }
    }
    @media (max-width: 1200px){    
        #header .header-nav {
            background: var(--color-white);
            margin-bottom: 0;
            color: var(--color-black);
        }
        #header .header-nav .row {
            display: inherit;
        }    
        #header .header-nav .top-logo {
            padding-top: 11px
        }
        #header .header-nav .top-logo a img {
            max-height: 50px;
            max-width: 100%;
        }
        #checkout #header .header-top {
            height: 0;
            padding: 0;
        }
        #checkout .header-nav .top-logo a {
            padding-bottom: 0.5rem;
        }
    }

/* MENU TOP ADVANCED */
.adtm_menu_container::before {
    content: "";
    position: absolute;
    top: 100%;
    left: 0;
    width: 100%;
    background-color: rgba(0,0,0,.5);
    bottom: 0;
    z-index: 8;
    height: 100vh;
    opacity: 0;
    visibility: hidden;
}
.adtm_menu_container.show-overlay::before {
    opacity: 1;
    visibility: visible;
    transition: visibility 0s linear 0.3s, opcaity 0.3s linear 0.3s;
}
#mobile_top_menu_wrapper {
    padding: 0;
}
/*.advtm_menu_22 > a::before {
    content: "";
    display: inline-block;
    width: 23px;
    height: 100%;
    background-image: url('../img/icons/icon-new-menu.svg');
    background-size: contain;
    background-repeat: no-repeat;
    position: absolute;
    top: -3px;
    left: 10px;
}
.advtm_menu_22 > a {
    position: relative;
}
#_desktop_top_menu .advtm_menu_22 > a {
    align-items: center; 
    flex-direction: row; 
    position: relative;
}*/

/* CUSTOM BANNER */
#customBanner {
    font-size: var(--fontsize);
    background-color: var(--color-lightgreen);
    padding: 0.6rem 0;
}
#customBanner p {
    margin: 0;
}
#customBanner a, #customBanner a:hover {
    color: var(--color-turquoise);
}
#customBanner a:hover {
    text-decoration: underline;
}

/* CONTENT*/
#wrapper {
    background-color: var(--color-white);
    box-shadow: inset 0 5px 5px -5px rgba(0, 0, 0, 0.11) !important;
    padding-top: 1rem;
}
.page-header h1 {
    margin-top: 2rem;
    font-size: 1.8rem;
    text-align: left;
}

/* LISTING PRODUCT */
#products {
    color: var(--color-black);
}
#products .products-section-title, .featured-products .products-section-title, .product-accessories .products-section-title, .product-miniature .products-section-title,
#category .products-section-title {
    font-size: 1.8rem;
    text-align: left;
}
.products-section-title svg,
.page-header h1 svg,
body#checkout section.checkout-step .step-title .step-number svg {
    overflow: visible;
    color: var(--color-green);
}
.products-section-title-onsale {
    color: var(--color-white);
    background-color: var(--color-corail);
    display: inline-block;
    border-radius: var(--border-radius);
    padding: .3125rem .4375rem;
}
.products-section-title-onsale svg {
    color: var(--color-white);
}
#products .product-miniature, 
.featured-products .product-miniature, 
.product-accessories .product-miniature, 
.product-miniature .product-miniature {
    margin: 0;
    padding: 10px;
}
#products .thumbnail-container, 
.featured-products .thumbnail-container, 
.product-accessories .thumbnail-container, 
.product-miniature .thumbnail-container {
    height: 100%;
    width: 100%;
    background: transparent;
    box-shadow: none;
    border: 1px solid var(--color-lightgreen);
    border-radius: var(--border-radius);
    margin: 0;
    padding: 15px;
    display: flex;
    flex-direction: column;
    position: relative;
}
#products img, 
.featured-products img, 
.product-accessories img, 
.product-miniature img {
    margin: 0;
    height: auto;
    width: 100%;
}
#products .thumbnail-container:hover , 
.featured-products .thumbnail-container:hover , 
.product-accessories .thumbnail-container:hover , 
.product-miniature .thumbnail-container:hover  {
    /*background-color: var(--color-lightgreen);*/
    border-color: var(--color-turquoise);
}
#products .product-description, 
.featured-products .product-description, 
.product-accessories .product-description, 
.product-miniature .product-description {
    position: unset;
    background: transparent;
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    box-shadow: none !important;
}
#products .product-description a::after,
.featured-products .product-description a::after, 
.product-accessories .product-description a::after, 
.product-miniature .product-description a::after,
.product-attachments .name-attachment a::after{
    content: '';
    position: absolute;
    inset: 0;
    z-index: 1;
    display: block;
}
#products .product-title, 
.featured-products .product-title, 
.product-accessories .product-title, 
.product-miniature .product-title {
    text-align: left;
    text-transform: none;
    /*height: calc(3 * 1rem * 1.1); /* 3 lignes * taille police font-size * interligne line-height */
    margin-top: 0;
    overflow: hidden;
}
#products .product-brand, 
.featured-products .product-brand, 
.product-accessories .product-brand, 
.product-miniature .product-brand {    
    margin-top: 1rem;
    margin-bottom: 0;
    font-size: var(--fontsize);
    font-weight: bold;
}
#products .product-title a, 
.featured-products .product-title a, 
.product-accessories .product-title a, 
.product-miniature .product-title a,
.product-line-grid-body>.product-line-info>.label {
    color: var(--color-black);
    font-size: var(--fontsize-1);
    text-align: left;
    font-weight: normal;
    display: block;
}
#products .product-price-and-shipping,
.featured-products .product-price-and-shipping, 
.product-accessories .product-price-and-shipping, 
.product-miniature .product-price-and-shipping {
    color: var(--color-black);
    font-weight: normal;
    text-align: left;
    margin-top: auto;
    padding-top: 1rem;
}
#products .price, 
.featured-products .price, 
.product-accessories .price, 
.product-miniature .price,
.product-line-grid-right.product-line-grid-price .price {
    font-weight: 800;
    font-size: 1.4rem;
    padding-right: 5px;
}
#products .regular-price, 
.featured-products .regular-price, 
.product-accessories .regular-price, 
.product-miniature .regular-price,
#product .regular-price {
    color: var(--color-darkgray);
    text-decoration: line-through;
    font-size: var(--fontsize-1);
}
#products .promo-price, 
.featured-products .promo-price, 
.product-accessories .promo-price, 
.product-miniature .promo-price,
#product .promo-price {
    color: var(--color-corail);
}
#products .product-miniature .discount-amount.discount-amount, #products .product-miniature .discount-percentage.discount-amount, 
#products .product-miniature .discount-amount.discount-percentage, #products .product-miniature .discount-percentage.discount-percentage, 
#products .product-miniature .on-sale.discount-amount, #products .product-miniature .on-sale.discount-percentage, 
#products .product-miniature .online-only.discount-amount, #products .product-miniature .online-only.discount-percentage, 
#products .product-miniature .pack.discount-amount, #products .product-miniature .pack.discount-percentage, 
#products .product-miniature .new.discount-amount, #products .product-miniature .new.discount-percentage, 

.featured-products .product-miniature .discount-amount.discount-amount, .featured-products .product-miniature .discount-percentage.discount-amount, 
.featured-products .product-miniature .discount-amount.discount-percentage, .featured-products .product-miniature .discount-percentage.discount-percentage, 
.featured-products .product-miniature .on-sale.discount-amount, .featured-products .product-miniature .on-sale.discount-percentage, 
.featured-products .product-miniature .online-only.discount-amount, .featured-products .product-miniature .online-only.discount-percentage, 
.featured-products .product-miniature .pack.discount-amount, .featured-products .product-miniature .pack.discount-percentage, 
.featured-products .product-miniature .new.discount-amount, .featured-products .product-miniature .new.discount-percentage, 

.product-accessories .product-miniature .discount-amount.discount-amount, .product-accessories .product-miniature .discount-percentage.discount-amount, 
.product-accessories .product-miniature .discount-amount.discount-percentage, .product-accessories .product-miniature .discount-percentage.discount-percentage, 
.product-accessories .product-miniature .on-sale.discount-amount, .product-accessories .product-miniature .on-sale.discount-percentage, 
.product-accessories .product-miniature .online-only.discount-amount, .product-accessories .product-miniature .online-only.discount-percentage, 
.product-accessories .product-miniature .pack.discount-amount, .product-accessories .product-miniature .pack.discount-percentage, 
.product-accessories .product-miniature .new.discount-amount, .product-accessories .product-miniature .new.discount-percentage, 

.product-miniature .product-miniature .discount-amount.discount-amount, .product-miniature .product-miniature .discount-percentage.discount-amount, 
.product-miniature .product-miniature .discount-amount.discount-percentage, .product-miniature .product-miniature .discount-percentage.discount-percentage, 
.product-miniature .product-miniature .on-sale.discount-amount, .product-miniature .product-miniature .on-sale.discount-percentage, 
.product-miniature .product-miniature .online-only.discount-amount, .product-miniature .product-miniature .online-only.discount-percentage, 
.product-miniature .product-miniature .pack.discount-amount, .product-miniature .product-miniature .pack.discount-percentage, 
.product-miniature .product-miniature .new.discount-amount, .product-miniature .product-miniature .new.discount-percentage,

#products .product-miniature .discount-amount.on-sale, #products .product-miniature .discount-percentage.on-sale, #products .product-miniature .online-only.on-sale, #products .product-miniature .pack.on-sale, #products .product-miniature .new.on-sale, 
.featured-products .product-miniature .discount-amount.on-sale, .featured-products .product-miniature .discount-percentage.on-sale, .featured-products .product-miniature .online-only.on-sale, .featured-products .product-miniature .pack.on-sale, .featured-products .product-miniature .new.on-sale, 
.product-accessories .product-miniature .discount-amount.on-sale, .product-accessories .product-miniature .discount-percentage.on-sale, .product-accessories .product-miniature .online-only.on-sale, .product-accessories .product-miniature .pack.on-sale, .product-accessories .product-miniature .new.on-sale, 
.product-miniature .product-miniature .discount-amount.on-sale, .product-miniature .product-miniature .discount-percentage.on-sale, .product-miniature .product-miniature .online-only.on-sale, .product-miniature .product-miniature .pack.on-sale, .product-miniature .product-miniature .new.on-sale,

#products .product-miniature .discount-amount.new, #products .product-miniature .discount-percentage.new, #products .product-miniature .on-sale.new, #products .product-miniature .online-only.new, #products .product-miniature .pack.new,  
.featured-products .product-miniature .discount-amount.new, .featured-products .product-miniature .discount-percentage.new, .featured-products .product-miniature .on-sale.new, .featured-products .product-miniature .online-only.new, .featured-products .product-miniature .pack.new, 
.product-accessories .product-miniature .discount-amount.new, .product-accessories .product-miniature .discount-percentage.new, .product-accessories .product-miniature .on-sale.new, .product-accessories .product-miniature .online-only.new, .product-accessories .product-miniature .pack.new, 
.product-miniature .product-miniature .discount-amount.new, .product-miniature .product-miniature .discount-percentage.new, .product-miniature .product-miniature .on-sale.new, .product-miniature .product-miniature .online-only.new, .product-miniature .product-miniature .pack.new, 

.product-discount .discount-amount, .product-discount .discount-percentage
{
    color: var(--color-corail);
    background: var(--color-white);
    font-size: var(--fontsize);
    font-weight: 600;
    box-shadow: none;
    border: 1px solid var(--color-corail);
    border-radius: var(--border-radius);
    min-width: auto;
    min-height: auto;
    position: unset;
    display: block;
    padding: .3125rem .4375rem;
    text-transform: uppercase;
}
#products .product-miniature .on-sale.on-sale, #products .product-miniature .new.new,
.product-miniature .on-sale.on-sale, .product-miniature .new.new,
.featured-products .product-miniature .on-sale.on-sale, .featured-products .product-miniature .new.new, 
.product-accessories .product-miniature .on-sale.on-sale, .product-accessories .product-miniature .new.new, 
.product-miniature .product-miniature .on-sale.on-sale, .product-miniature .product-miniature .new.new,
li.product-flag.on-sale, li.product-flag.new,
.product-flag, li.product-flag
{
    color: var(--color-white);
    background: var(--color-corail);
    font-size: var(--fontsize);
    font-weight: 600;
    box-shadow: none;
    border: 1px solid transparent;
    border-radius: var(--border-radius);
    min-width: auto;
    min-height: auto;
    position: unset;
    display: block;
    padding: .3125rem .4375rem;
    text-transform: uppercase;
    margin-top: 0;
}
#products .thumbnail-container:focus .product-description:after, #products .thumbnail-container:hover .product-description:after, .featured-products .thumbnail-container:focus .product-description:after, .featured-products .thumbnail-container:hover .product-description:after, .product-accessories .thumbnail-container:focus .product-description:after, .product-accessories .thumbnail-container:hover .product-description:after, .product-miniature .thumbnail-container:focus .product-description:after, .product-miniature .thumbnail-container:hover .product-description:after {
    border-top: 0;
    opacity: 0;
}
.product-tags,
.product-flags {
    display: flex;
    gap: .3rem;
    position: absolute;
}
.product-tags {
    top: 15px;
    left: 10px;
}
.product-flags {
    top: 0;
    left: -5px;
    width: inherit;
}
.nav-tabs .nav-item.open .nav-link, .nav-tabs .nav-item.open .nav-link:focus, .nav-tabs .nav-item.open .nav-link:hover, .nav-tabs .nav-link.active, .nav-tabs .nav-link.active:focus, .nav-tabs .nav-link.active:hover {
    background-color: transparent;
}

/* CARD */
.card {
    box-shadow: none;
}

    @media screen and (max-width: 767px) {
        .card-block {
            padding: 1.25rem;
        }
    }

/* CUSTOM TEXT */
#custom-text {
    position: relative;
    z-index: 1;
    text-align: left;
    border-radius: 0;
    margin: 3rem 0 0 0;
    padding: 4rem 0;
    color: var(--color-white);
}
#custom-text::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    width: 100vw;
    background: var(--color-green);
    z-index: -1;
}
#custom-text h2 {
    text-transform: unset;
    color: var(--color-darkgreen);
    font-size: 1.8rem;
    font-weight: bold;
    margin-bottom: 2rem;
}
#custom-text p {
    color: var(--color-white);
    font-weight: inherit;
    font-size: inherit;
}
#custom-text img {
    border-radius: var(--border-radius);
    border: 1px solid var(--color-lightgreen);
    padding: 2px;
    max-width: 100%;
    height: auto;
}

    @media (min-width: 1200px){  
        #custom-text img {
            width: auto;
        }  
    }

/* BRAND LIST */ 
#index #search_filters_brands {
    position: relative;
    z-index: 1;
    padding: 0;
    color: var(--color-darkgray);
    box-shadow: none;
    margin: 0;
    background: var(--color-lightgray);
}
#index #search_filters_brands::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    width: 100vw;
    background: var(--color-lightgray);
    z-index: -1;
}
#index #search_filters_brands h2 {
    display: none;
}
#index #search_filters_brands ul {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0;
    gap: 1rem;
}
#index #search_filters_brands .brand-logo {
    /*filter: invert(100%);
    opacity: 0.64;*/
    
    filter: brightness(0) saturate(100%) invert(29%) sepia(99%) saturate(0%) hue-rotate(88deg) brightness(97%) contrast(96%);
    transition: filter 0.3s ease;
}
#index #search_filters_brands .brand-logo:hover {    
    filter: brightness(0) saturate(100%) invert(56%) sepia(60%) saturate(452%) hue-rotate(151deg) brightness(88%) contrast(88%);
    opacity: 1;
}

    @media (min-width: 1200px){  
        #index #search_filters_brands ul {
        gap: 5rem;
        }  
    }

/* CARROUSEL */
.carousel {
    box-shadow: none;
    margin-bottom: 0;
    margin-top: -1rem;
}
.carousel .carousel-inner {
    height: auto;
    max-height: 400px;
    margin-bottom: 0;
}
.carousel figure {
    overflow: hidden;
}
.carousel .caption-title {
    font-weight: bold;
    font-size: 1.2rem;
}
.carousel .carousel-item img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

    @media (max-width: 767px) {
        .carousel .carousel-inner {
            height:auto;
        }
    }

/* SELECTION */
.products-selection {
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-top: 1px solid var(--color-lightgray);
    border-bottom: 1px solid var(--color-lightgray);
    margin-bottom: 1rem;
    padding: 0.5rem 10px;
}
.products-selection .total-products, .products-selection p {
    padding: 0;
    margin: 0;
    font-weight: bold;
}
.products-selection .sort-by {
    margin: 0;
}
.products-sort-order {
    color: var(--color-black);
    margin-left: 0.5rem;
}
.products-sort-order .select-title {
    background: var(--color-white);
    box-shadow: none;
    line-height: 24px;
    padding: 0.5rem;
}
.products-sort-order .dropdown-menu {
    width: 100%;
    background: var(--color-white);
    border: 1px solid var(--color-lightgray);
    box-shadow: none;
    font-size: var(--fontsize);
    padding: 0;
}
.products-sort-order .select-list {
    color: var(--color-black);
    padding: .5rem 1rem;
}
.products-sort-order .select-list:hover {
    background: var(--color-white);
    color: var(--color-turquoise);
}

/* PAGINATION */
.pagination .page-list {
    background: var(--color-white);
    padding: 1rem 10px 0 10px;
    box-shadow: none;
    border-top: 1px solid var(--color-lightgray);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.2rem;
}
.pagination .page-list li {
    display: inherit;
}
.pagination li {
    border-radius: var(--border-radius);
    border: 1px solid var(--color-lightgray);
}
.pagination li.current {
    background-color: var(--color-turquoise);
    border-color: var(--color-turquoise);
}
.pagination li:hover {
    background-color: var(--color-lightgray);
}
.pagination a:not(.previous):not(.next) {
    letter-spacing: normal;
}
.pagination a, .pagination span {
    color: var(--color-darkgray);
    font-weight: normal;
    width: 2.5rem;
    height: 2.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
}
.pagination .current a {
    color: var(--color-white);
    font-size: var(--fontsize-1);
    font-weight: bold;
}
.pagination li.current:hover {
    background-color: var(--color-turquoise);
}

/* FOOTER */
#footer{
    color: var(--color-white);
    padding-top: 0;
}
#footer p,
.footer-container li a,
#footer .block-contact,
.footer-container .links .h3 {
    color: var(--color-white);
}
.footer-container{
    background-color: var(--color-darkgreen);
    margin-top: 0;
    padding-top: 3rem;
    box-shadow: none;
}
.footer-container li a{
    font-size: var(--fontsize);
}
#footer .block-contact {
    border-left: 0;
    padding-left: 0;
}
#footer .block-contact .logo {
    width: 180px;
    height: auto;
}
.footer-lower {
    background-color: var(--color-white);
    padding: 0.5rem 0;
    z-index: 1;
    position: relative;
    align-items: center;
    font-size:0.7rem;
}
.footer-lower::before {
    content: '';
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    height: 100%;
    width: 100vw;
    background: var(--color-white);
    z-index: -1;
}
.footer-lower,
.footer-lower a,
#footer .footer-lower p,
body#checkout #footer,
body#checkout #footer a,
body#checkout #footer p {
    color: var(--color-black);
}
#footer .footer-lower p,
body#checkout #footer,
body#checkout #footer p {
    font-size:0.7rem;
}
.footer-separator {
    opacity: 0.2;
}
/*#block_myaccount_infos .myaccount-title a,
.block-contact .block-contact-title, 
.linklist .blockcms-title a{
    color: var(--color-green);
}
.footer-container .block-contact,
.footer-container .block-contact a{
    color: #fff;
}*/
#main .page-footer {
    margin-bottom: 0;
}
body#checkout #footer {
    padding: 0.5rem 0;
    background-color: var(--color-white);
    text-align: center;
    box-shadow: 0 -5px 5px -5px rgba(0, 0, 0, 0.11) !important;
}
    @media (max-width: 1200px) {
        .block_newsletter {
            padding-bottom:0;
            border-bottom: none;
        }

        .footer-container .links .h3 {
            line-height: 1.5;
            font-size: var(--fontsize-1);
        }
    }
    @media (max-width: 992px) {
        .footer-container .links ul {
            background-color: transparent !important;
            padding: 0 10px !important;
            margin-bottom: 1rem;
        }

        .footer-container .links ul>li {
            border-bottom: none !important;
            font-weight: normal !important;
            padding: 0;
        }
        .footer-container .links ul>li a {
            color: var(--color-white);
        }    
        .footer-container .links ul>li a:hover {
            color: var(--color-turquoise);
        }

        .links .collapse {
            display: none;
        }
        .links .collapse.in {
            display: block;
        }
        .links .title {
            padding: 0.5rem 0 !important;
            border-top: 1px solid rgba(var(--color-lightgreen-rgb),0.3) !important;
            border-bottom: none !important;
            cursor: pointer;
        }
        .links .wrapper:first-child .title {
            border-top: none !important;
        }
        .links .title .collapse-icons .remove,.links .title[aria-expanded=true] .collapse-icons .add {
            display: none;
        }
        .links .title[aria-expanded=true] .collapse-icons .remove {
            display: block;
        }
        .links .navbar-toggler {
            display: inline-block;
            padding: 0;
        }
    }

    @media (min-width: 992px){
        #footer .links-row {
            justify-content: center;
        }
    }

/* FOOTER BLOCK NEWSLETTER */
.block_newsletter {
    font-size: var(--fontsize);
    margin-bottom: 0;
}
.block_newsletter p {
    padding-top: 0;
}
/* FOOTER BLOCK SOCIAL */
.block-social {
    text-align: inherit;
}
.block-social li, .block-social li:before {
    background: none !important;
    width: inherit;
    height: inherit;
}
.block-social li a {
    text-indent: 0;
}

/* TRUST LOGOS */
.trust-logos {
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 0.5rem;
    justify-content: space-evenly;
    margin-bottom: 1rem;
}
.trust-logos img {
    height: 15px;
    width: auto;
    display: block;
}
.trust-logos svg {
    font-size: 15px;
    overflow: visible;
}
.trust-logos img[src*="paypal"] {}

    @media (min-width: 992px){
        .trust-logos.footer-payment {
            justify-content: end;
            margin-bottom: 0;
        }
    }

/* BREADCRUMB */
#wrapper .breadcrumb {
    font-size: 0.7rem;
    color: var(--color-darkgray);
    margin-bottom: 2rem;
}
#wrapper .breadcrumb li a {
    color: rgba(var(--color-darkgray-rgb),0.5);
}
#wrapper .breadcrumb li:after {
    content: ">";
    color: rgba(var(--color-darkgray-rgb),0.5);
}


/* BLOCKCART */
#blockcart-modal .modal-dialog {
    max-width: 960px;
}
#blockcart-modal .modal-content {    
    border-radius: var(--border-radius);
    border-color: transparent;
    overflow: hidden;
}
#blockcart-modal .modal-body {
    background: var(--color-white);
    padding: 0;
}
.blockcart-modal-left,
.blockcart-modal-right {
    padding: 3rem;
}
.blockcart-modal-right {
    background-color: var(--color-lightgreen);
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}
#blockcart-modal .modal-header {
    background: transparent;
    border: 0;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
}
#blockcart-modal .modal-title {
    font-weight: bold;
    color: var(--color-success);
}
#blockcart-modal .product-name {
    font-size: var(--fontsize-h1);
    color: var(--color-black);
}
#blockcart-modal .product-image {
    width: auto;
    margin: 2rem 0;
}
.blockcart-modal-left .price {
    font-size: 2.5rem;
    font-weight: 800;
    margin-top: 2rem;
    line-height: 1;
}
#blockcart-modal .cart-content{
    padding-left: 0;
    flex:1;
}
#blockcart-modal .cart-content p {
    display: flex;
    justify-content: space-between;
    margin-bottom: 0.3rem;
    flex:1;
}
#blockcart-modal .cart-content p:last-child {
    font-size: var(--fontsize-1);
}
#blockcart-modal p.cart-products-count {
    margin-bottom: 2rem;
    font-size: var(--fontsize);
    font-style: italic;
}
#blockcart-modal .cart-content-btn {
    display: flex;
    gap: 1rem;
    justify-content: center;
    align-items: center;
    margin-top: 2rem;
    flex-wrap: wrap;
}

    @media (max-width: 767px) {
        #blockcart-modal .cart-content-btn .btn {
            width: 100%;
        }
    }

/* CART */
#cart .cart-grid .card,
#checkout .card {
    border: 0;
    margin: 1rem 0 2rem 0;
}
#cart .cart-grid-body .cart-overview {
    padding: 0;
}
#cart .cart-item {
    padding: 1rem;
    border: 1px solid var(--color-lightgray);
    border-bottom-width: 0;
}
#cart .cart-item:first-child {
    border-top-left-radius: var(--border-radius);
    border-top-right-radius: var(--border-radius);
}
#cart .cart-item:last-child {
    border-bottom-left-radius: var(--border-radius);
    border-bottom-right-radius: var(--border-radius);
    border-bottom-width: 1px;
}
#cart .product-line-grid {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 0.5rem;
}
#cart .product-line-grid-image {
    width:10%;
}
#cart .product-line-grid-info{
    width:40%;
}
#cart .product-line-grid-qty{
    width:20%;
}
#cart .product-line-grid-delete{
    flex-shrink:1;
}
.product-line-grid-right .cart-line-product-actions .remove-from-cart, 
.product-line-grid-right .product-price .remove-from-cart {
    margin-top: 0;
}
.product-line-grid-body>.product-line-ref {
    margin-top: 0.2rem;
}
.product-line-grid-body>.product-line-info.product-price{
    margin-top: 0.5rem;
}
.product-line-grid-right .cart-line-product-actions, 
.product-line-grid-right .product-price {
    color:var(--color-black);
}
.product-line-grid-body>.product-line-info .price {
    font-size: var(--fontsize-1);
    font-weight: 800;
    color: var(--color-black);
    padding-right: 5px;
}
.product-line-grid-body>.product-line-info.product-price .regular-price {
    color: var(--color-darkgray);
    text-decoration: line-through;
}
#cart .card-block {
    padding: 1.25rem !important;
}
#cart .cart-detailed-totals,
.cart-summary-line .label,
.cart-summary-checkout .cart-summary-line {
    font-size: var(--fontsize-1);
    line-height: 1.4;
}
#cart .cart-detailed-totals {
    border-top-right-radius: var(--border-radius);
    border-top-left-radius: var(--border-radius);
    border: 1px solid var(--color-lightgreen);
}
#checkout .cart-summary-checkout {
    border-radius: var(--border-radius);
    border: 1px solid var(--color-lightgreen);
}
.cart-summary-line .value,
.cart-summary-line.cart-summary-subtotals .value {
    color: var(--color-black);
    font-weight: 800;
}
.cart-summary-line.cart-total .label,
.cart-summary-line.cart-total .value {    
    font-size: 1.4rem;
}
#cart-subtotal-discount.cart-summary-line .value {    
    color: var(--color-corail);
}
.checkout.cart-detailed-actions {
    border-bottom-right-radius: var(--border-radius);
    border-bottom-left-radius: var(--border-radius);
}
.block-promo .promo-code {
    padding: 1.25rem;
    padding-top: 0;
    background: transparent;
}
.block-promo .promo-code form {
    display: flex;
    flex-wrap: wrap;
    gap: 0.5rem;
}
.block-promo .promo-input+button {
    margin-top: 0;
    text-transform: inherit; 
}
.block-promo .promo-input {
    width: auto;
    text-indent: 0;
    height: auto;
    flex-grow: 1;
}
.block-promo .promo-code .alert {
    background-color: #f2dede;
    border-color: #ebcccc;
    color: #a94442;
}
.block-promo .promo-code .alert-danger:after {
    display: none;
}
.block-promo .cart-summary-line .label,
.block-promo .promo-name {
    color: var(--color-darkgray);
    font-weight: 400;
    font-size: var(--fontsize);
    padding: 0.3rem 0 0 0;
    margin-bottom: 0;
}
.cart-detailed-actions-hook {
    padding: 1.25rem 0;
}
.cart-detailed-actions-hook .payment-method-logo-block {
    display: none;
}
.cart-summary-products .media {
    padding: 0.5rem 0 0 0;
    display: flex;
    width: 100%;
}
.cart-summary-products .media-left {
    padding-right: 0.5rem;
}
.cart-summary-products img {
    width: 50px;
    height: 50px;
    overflow: hidden;
}
.cart-summary-products .media-body {
    display: flex;
    flex-flow: wrap;
    width: 100%;
    vertical-align: middle;
}
.cart-summary-products .media-right {
    padding-left: 1rem;
}
.cart-summary-products .product-price {
    color: var(--color-black);
    font-weight: 600;
}
    @media (max-width: 992px) {
        #cart .product-line-grid {
            flex-wrap: wrap;
            justify-content: center;
            text-align: center;
            flex-direction: column;
        }
        #cart .product-line-grid-image {
            width:100%;
        }
        #cart .product-line-grid-info{
            width:100%;
        }
        #cart .product-line-grid-qty{
            width:100%;
        }
    }

/* STEPS CHECKOUT */
body#checkout section.checkout-step .step-title {
    text-transform: initial;
}
body#checkout section.checkout-step.-unreachable .step-title,
body#checkout section.checkout-step.-unreachable .step-title svg,
body#checkout section.checkout-step.-reachable.-complete .step-title {
    color: rgba(var(--color-darkgray-rgb),0.5);
}
body#checkout section.checkout-step.-current.-reachable.-complete .step-title {
    color: var(--color-darkgreen);
}
body#checkout section.checkout-step.-reachable .step-title {
    color: var(--color-darkgreen);
    overflow: hidden;
}
body#checkout section.checkout-step {
    box-shadow: none;
    border-bottom: 1px solid var(--color-lightgray);
}
body#checkout section.checkout-step:first-child {
    /*border-top: 1px solid var(--color-lightgray);*/
    margin-top: 1rem;
}
body#checkout section.checkout-step:last-child {    
    /*border-bottom: 1px solid var(--color-lightgray);*/
    margin-bottom: 2rem;
}
body#checkout section#checkout-personal-information-step.checkout-step .nav {
    display: flex;
    flex-wrap: nowrap;
    flex-direction: row;
    gap: 0.1rem;
}
body#checkout section.checkout-step .nav .nav-item .nav-link {
    padding: 0.5rem;
    color: var(--color-darkgray);
    font-weight: normal;
    background-color: var(--color-lightgray);
    position: relative;
    text-align: center;
}
body#checkout section.checkout-step .nav .nav-item .nav-link:hover {
    text-decoration: underline;
}
body#checkout section.checkout-step .nav .nav-item .nav-link.active {
    background-color: var(--color-darkgray);
    font-weight: bold;
    color: var(--color-white);
}
body#checkout section.checkout-step .nav .nav-item .nav-link.active:hover {
    color: var(--color-white) !important;
}
body#checkout section.checkout-step .nav .nav-item .nav-link svg {
    position: absolute;
    bottom: -8px; 
    left: 50%; 
    transform: translateX(-50%);
    color: var(--color-darkgray);
    display: none;
}
body#checkout section.checkout-step .nav .nav-item .nav-link.active svg {
    display: block;
}
body#checkout section.checkout-step .forgot-password {
    margin-left: 0;
    text-align: center;
}
body#checkout section.checkout-step .step-title .done  {
    color: var(--color-success);
    margin-right: 0;
    padding: 0;;
}
body#checkout section.checkout-step .step-number,
body#checkout section.checkout-step .step-ok {
    display: inline-block;
    padding: 0 0.4rem 0 0;
}
body#checkout section.checkout-step.-reachable .step-ok,
body#checkout section.checkout-step.-current.-reachable.-complete h1 .step-ok{
    display: none;
}
body#checkout section.checkout-step.-reachable.-complete h1 .step-ok {
    display: inline-block;
}
body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {
    color: var(--color-darkgray);    
    display: inline-block;
    float: right;
    text-transform: initial;
}
body#checkout section.checkout-step .not-allowed {
    opacity: 1;
}
body#checkout section.checkout-step .content {
    padding: 1.5rem 0 0 2.5rem;
}
body#checkout section.checkout-step .address-item ,
body#checkout section.checkout-step .delivery-option,
body#checkout section.checkout-step .payment-options .payment-option,
.page-addresses .address,
.page-order-detail .address {
    background: var(--color-white);
    border: 1px solid var(--color-lightgray);
    border-radius: var(--border-radius);
}
body#checkout section.checkout-step .address-selector {
    gap:0.5rem;
}
body#checkout section.checkout-step .address-item.selected{
    background: var(--color-white);
    border: 1px solid var(--color-turquoise);
}
body#checkout section.checkout-step .address-alias {
    font-size: var(--fontsize-1);
}
body#checkout section.checkout-step .address-footer,
.page-addresses .address .address-footer {
    padding: 0 1rem 1rem 1rem;
}
body#checkout section.checkout-step .delete-address,
body#checkout section.checkout-step .edit-address,
.page-addresses .address .address-footer a {
    color: var(--color-darkgray);
}
body#checkout section.checkout-step .add-address {
    display: flex;
    flex-wrap: wrap;
    align-items: start;
    text-align: center;
    gap: 1rem;
}
body#checkout section.checkout-step .add-address a {
    color: var(--color-white);
}
body#checkout .cancel-address {
    color: var(--color-darkgray);
    text-align: center;
}
body#checkout .cancel-address.cancel-address-save {
    display: inline-block;
}
body#checkout .address-form-title {
    font-size: var(--fontsize-h2);
    border-bottom: 2px solid var(--color-lightgray);
    padding-bottom: 1rem;
    font-weight: bold;
}
body#checkout section.checkout-step .delivery-option {
    margin-bottom: .5rem;
    align-items: center;
    cursor: pointer;
    position: relative;
}
body#checkout .delivery-option .carrier-logo img {
    max-height: 40px
}
body#checkout .delivery-option-2 {
    align-items: center;
    flex-direction: row !important;
}
body#checkout section.checkout-step .delivery-option label {
    display: block;
    margin: 0;
    cursor: pointer;
}
body#checkout section.checkout-step .delivery-option:hover,
body#checkout section.checkout-step .delivery-option:hover .custom-radio,
body#checkout section.checkout-step .delivery-option.selected,
body#checkout section.checkout-step .delivery-option.selected .custom-radio,
body#checkout section.checkout-step .payment-options .payment-option:hover,
body#checkout section.checkout-step .payment-options .payment-option:hover .custom-radio,
body#checkout section.checkout-step .payment-options .payment-option.selected,
body#checkout section.checkout-step .payment-options .payment-option.selected .custom-radio {
    border-color: var(--color-turquoise);
}
body#checkout section.checkout-step .carrier-delay, 
body#checkout section.checkout-step .carrier-name {
    display: block;
}
body#checkout section.checkout-step .carrier-name,
body#checkout section.checkout-step .option-payment-name {
    font-size: var(--fontsize-1);
    font-weight: bold;
    padding-bottom: 0.5rem;
}
body#checkout section.checkout-step .option-payment-name {
    margin-left: 2rem;
}
body#checkout #delivery,
body#checkout #gift_message {
    border-color: transparent;
    margin: 2rem 0;
}
body#checkout #checkout-payment-step .content {
    padding-top: 0;
}
body#checkout section.checkout-step .payment-options .payment-option {
    padding: .9375rem;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    position: relative;
    cursor: pointer;
    margin-bottom: 0;
    margin-top: 0.5rem;
}
body#checkout section.checkout-step .payment-options label {
    display: flex !important;
    flex-flow: nowrap;
    align-items: center;
    width: auto;
    margin-bottom: 0;
    cursor: pointer;
    text-align: left;
}
body#checkout section.checkout-step .payment-options label::after {
    content: "";
    display: block;
    position: absolute;
    width: 100%;
    height: 100%;
    inset: 0px;
}
body#checkout section.checkout-step .option-payment-logo {
    height: 30px;
    width:150px;
    display: flex;
    align-items: center;
    justify-content: center;
}
body#checkout section.checkout-step .option-payment-logo>img {
    max-height: 100%;
    max-width: 100%;
    display: block;
}
body#checkout section.checkout-step  .option-payment-logo .img-group {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    gap: 0.2rem;
}
body#checkout section.checkout-step  .option-payment-logo .img-group img {
    flex: 0 1 29%;     
    max-width: 29%;
    max-height: 100%;  
    width: auto;  
    height: auto;     
    object-fit: contain;
}
body#checkout section.checkout-step .payment-option .ps_checkout-mark, .paypal-marks {
    display: none !important;
}
body#checkout .additional-information {
    font-size: var(--fontsize);
    margin-left: 0;
    margin-top: 0;
    background-color: var(--color-lightgray);
    border-radius: var(--border-radius);
}
body#checkout .additional-information section {
    padding: 1rem 3rem;
}
body#checkout .definition-list dl dd,
body#checkout .definition-list dl dt {
    background: transparent;
    border: 2px solid var(--color-white);
}
body#checkout .definition-list dl dd:nth-of-type(2n), 
body#checkout .definition-list dl dt:nth-of-type(2n) {
    background: transparent;
}
body#checkout .definition-list dl dd {
    font-weight: 600;
}
body#checkout .additional-information #axepta-paygates-list {
    display: none !important;
}
body#checkout .custom-checkbox span {
    flex: none;
    margin-top: 0; 
    position: unset;
}
body#checkout section.checkout-step #conditions-to-approve {
    padding: 2rem 0 1rem 0;
}
body#checkout .condition-label {
    margin-top: 0;
}
body#checkout .condition-label label {
    margin-bottom: 0;
    padding-top: 2px;
}
    @media (max-width: 1200px) {
        body#checkout section.checkout-step {
            padding: 0;
        }
        body#checkout section.checkout-step .content {
            padding: 1rem 0 0 0;
        }
        body#checkout section.checkout-step {
            padding: .9375rem 0;
        }
        body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {
            display: block;
            float: none;
            width: fit-content;
            text-align: center;
            margin: 0.5rem auto 0;
        }
        body#checkout section.checkout-step .carrier-name, 
        body#checkout section.checkout-step .option-payment-name {
            margin-left: 1rem;
        }
    }

    @media (max-width: 767px) {
        body#checkout section.checkout-step.-reachable.-complete h1 .step-edit {
            float: none;
            margin: 0.5rem auto 0;
        }
    }

/* MY ACCOUNT */
.page-my-account #content-wrapper,
.page-order-detail #content-wrapper{
    position: relative;
}
.page-my-account footer.page-footer {
    position: absolute;
    top: 0;
    right: 0;
}
.page-identity #main footer.page-footer,
.page-addresses #main footer.page-footer,
.page-address #main footer.page-footer,
.page-history #main footer.page-footer,
.page-order-detail #main footer.page-footer,
.page-order-slip #main footer.page-footer,
.page-order-follow #main footer.page-footer,
.page-discount #main footer.page-footer,
.page-order-return #main footer.page-footer {
    margin: 2rem 0;
    text-align: center;
}
.page-my-account #content .links a {
    font-size: var(--fontsize);
    font-weight: normal;
    text-transform: inherit;
    color: var(--color-darkgray);
    padding:10px;
    margin-bottom: 0;
}
.page-my-account #content .links a span.link-item {
    box-shadow: none;
    background: var(--color-white);
    border: 1px solid var(--color-lightgray);
    border-radius: var(--border-radius);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    min-height: 150px;
}
.page-my-account #content .links a span.link-item:hover {
    border-color: var(--color-turquoise);
}
.page-my-account #content .links a svg {
    font-size: 2.5rem;
    margin-bottom: 1rem;
}
.page-customer-account #content {
    box-shadow: none;
    background: var(--color-white);
    padding: 1rem;
    font-size: var(--fontsize);
    color: var(--color-black);
}
.page-identity #content,
.page-address #content {
    margin: 0 auto;
    width: 100%;
    max-width: 630px;
    padding: 0 3rem;
}
.page-addresses .address,
.page-order-detail .address {    
    margin-bottom: .625rem;
    font-size: var(--fontsize);
    color: var(--color-black);
    box-shadow: none;
}
.page-addresses .address .address-body,
.page-order-detail .address .address-body {
    padding: 1rem;
}
.page-addresses .address-body-title,
.page-order-detail .address-body-title {
    font-size: var(--fontsize-1);
    font-weight: 600;
    margin-bottom: .625rem;
}
.page-addresses .address .address-body address {
    min-height: inherit;
}
.page-addresses .address .address-footer {
    border-top: 0;
    text-align: center;
}
.page-addresses .address .address-footer a {
    margin: 0 .3125rem;
}
.page-addresses .address .address-footer a span {
    font-size: var(--fontsize);
    vertical-align: inherit;
}
.page-addresses .addresses-footer {
    margin-top: 1.25rem;
}
.page-addresses .addresses-footer a, 
.page-addresses .addresses-footer a:hover {
    color: var(--color-white);
}

/* ORDER DETAIL */
.page-order-detail,
.page-order-return {
    font-size: var(--fontsize);
    color: var(--color-black);
}
.page-order-detail .box,
.page-order-return .box {
    box-shadow: none;
    background: var(--color-white);
    border-bottom: 1px solid var(--color-lightgreen);    
    padding: 1rem;
    margin-bottom: 1rem;
}
.page-order-detail .box .h3,
.page-order-return .box .h3 {
    margin-bottom: 1.5rem;
}
.page-order-detail .addresses {
    margin: 0;
    margin-bottom: 1rem;
}
.page-order-detail .address .address-header {
    padding: 0.6rem 1rem;
    background-color: var(--color-lightgray);
}
.page-order-detail #order-products.return td {
    padding: .75rem;
}
.order-reorder {
    position: absolute;
    top: 0;
    right: 0;
}
.box dl {
    display: grid;
    grid-template-columns: auto 1fr; 
    gap: 0.8rem 2rem;
}
.box dt {
    font-size: var(--fontsize-1);
    margin: 0;
}
.box dd {
    margin: 0;
}
.box ul li::before {
    content: '•';
    margin-right: 0.4rem;
    font-size: var(--fontsize-1);
}
.order-timeline {
    padding: 0.5rem 0;
}
.timeline-item {
    display: grid;
    grid-template-columns: 8rem 2rem 1fr;
    gap: 0 1rem;
    align-items: start;
}
.timeline-date {
    text-align: right;
    padding-top: 0.2rem;
    min-height: 2rem;
}
.timeline-marker {
    display: flex;
    flex-direction: column;
    align-items: center;
}
.timeline-marker .fa-circle-check {
    color: var(--color-success);
    font-size: 1.5rem;
    flex-shrink: 0;
}
.timeline-connector {
    width: 1px;
    min-height: 1.5rem;
    flex: 1;
    background-color: var(--color-lightgray);
    margin: 0.25rem 0;
}
.timeline-name {
    padding: 0.3rem 0 1rem;
    font-weight: 500;   
}





/* top bar desktop */

#_desktop_user_info a.account span{
    display: block;
    text-align: center;
}

.alert-success {
    background-color: #fff;
    border-color: var(--color-green);
    color: var(--color-green);
}

@media only screen and (max-width: 767px) {
    #toTop {
        display: none !important; 
    } 
}




@media only screen and (max-width: 480px) {
        #ps_topbanner_wrapper {
            height: 85px!important;
            padding: 10px!important;
            line-height: 20px!important;
            font-size: 16px!important;
        } 
    }


#cms.cms-id-10 #content{
    background: transparent;
}


#cms.cms-id-10 #content .items .item{
    background: #fff;
    padding: 15px;
    display: flex;
    margin-bottom:  25px;
}

#cms.cms-id-10 #content .items .item .image{
    margin-right: 15px;
    display: flex;
    align-items: center;
}

#cms.cms-id-10 #content .items .item .image img{
    max-width: 100%;
    min-width: 300px;
}

#cms.cms-id-10 #content .items .item h2
{
    color: var(--color-green);
}

#cms.cms-id-10 #content .items .item .images-secondary img
{
    width: 180px;
    max-width: 100%;
}


@media only screen and (max-width: 480px) {     
    #cms.cms-id-10 #content .items .item{
        display: block;
    } 
    #cms.cms-id-10 #content .items .item .image img{
        margin-bottom:  15px;
    }
}


#products .thumbnail-container:focus .highlighted-informations.no-variants, 
#products .thumbnail-container:hover .highlighted-informations.no-variants, 
.featured-products .thumbnail-container:focus .highlighted-informations.no-variants, 
.featured-products .thumbnail-container:hover .highlighted-informations.no-variants, 
.product-accessories .thumbnail-container:focus .highlighted-informations.no-variants, 
.product-accessories .thumbnail-container:hover .highlighted-informations.no-variants, 
.product-miniature .thumbnail-container:focus .highlighted-informations.no-variants, 
.product-miniature .thumbnail-container:hover .highlighted-informations.no-variants{
    bottom: 5.5rem;
}

div.adtm_sticky #adtm_menu{
       left: auto;
    right: auto; 
}

/* --- Desactiver les messages via le compte client --- */
/* Masquer le formulaire d'envoi de message sur la page historique des commandes */
#order-detail .order-message-form {
    display: none !important;
}
/* Masquer aussi l'historique des messages déjà envoyés si besoin */
#order-detail .box.messages {
    display: none !important;
}


/* To top */
#toTop {
    display: none;
    width: 58px;
    height: 58px;
    position: fixed;
    background: var(--color-green);
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    border-radius: 100px;
    right: 20px;
    bottom: 20px;
    z-index: 999;
    cursor: pointer;
    text-align: center;
    -webkit-transition: background-color 0.3s ease;
    -o-transition: background-color 0.3s ease;
    transition: background-color 0.3s ease; 
}
@media (max-width: 1200px) {
    #toTop {
        display: none !important;
    } 
}

#toTop i {
    top: 24%;
    position: absolute;
    transform: translate(-50%);
    font-size: 30px;
    color: #fff;
}

#toTop:after {
    content: "";
    -webkit-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all 0.3s ease;
    position: absolute;
    top: 0;
    left: 0;
    width: 58px;
    height: 58px;
    border: 1px solid var(--color-green);
    -webkit-transform: scale(1);
    -ms-transform: scale(1);
    -o-transform: scale(1);
    transform: scale(1);
    -moz-border-radius: 100px;
    -webkit-border-radius: 100px;
    border-radius: 100px; 
}

#toTop:hover {
    background: #00cccc;
    cursor: pointer;
}

#toTop:hover:after {
    -webkit-transform: scale(1.1);
    -ms-transform: scale(1.1);
    -o-transform: scale(1.1);
    transform: scale(1.1);
    border-color: #00cccc; 
}

#toTop:active, #toTop:focus {
    outline: none;
}



