:root {
    --primary-font: "Inter", sans-serif;
    --secondary-font: "Plus Jakarta Sans", sans-serif;
    --primary-color: #003431;
    --secondary-color: #00A490;
    --tertiary-color: #19E8C6;
    --quaternary-color: #028374;
    --smoke-white: #F6F6F6;
    --smoke-gray: #E7E7E7;
    --red-color: #DA3132;
}

body {
    font-family: var(--primary-font);
    color: #3D3D3D;
}

body#index {
    overflow-x: hidden;
}

h1 {
    font-size: 42px;
}

h2 {
    font-size: 40px;
}

/* AUTRES */

#checkout #search_widget {
    display: block;
}

.cart-products-count {
    background: var(--secondary-color);
    color: white !important;
    font-weight: 600;
    border-radius: 20px;
    padding: 4px 8px;
    font-size: 12px !important;
}

#content-wrapper {
    padding: 0;
    padding-top: 3rem;
    background-color: var(--smoke-white);
}

#wrapper {
    padding-top: 0;
}

#wrapper .banner {
    margin: auto;
    margin-bottom: 1.5rem;
    width: fit-content;
}

.btn-primary {
    display: flex;
    color: #fff;
    background-color: var(--secondary-color);
    border: 2px solid var(--secondary-color);
    transition: all ease-in-out 0.5s;
    text-transform: none;
    border-radius: 4px;
    gap: 10px;
    justify-content: center;
    padding: 0.8rem 1.5rem;
}

.btn-secondary {
    display: flex;
    color: var(--primary-color);
    background-color: transparent;
    border: 2px solid var(--primary-color);
    transition: all ease-in-out 0.5s;
    text-transform: none;
    border-radius: 4px;
    gap: 10px;
    justify-content: center;
    padding: 0.8rem 1.5rem;
}

.btn-secondary:hover {
    color: white !important;
    background-color: var(--primary-color);
}

.btn-tertiary {
    display: flex;
    color: var(--primary-color);
    background-color: white;
    border: 2px solid var(--primary-color);
    transition: all ease-in-out 0.5s;
    text-transform: none;
    border-radius: 4px;
    gap: 10px;
    width: fit-content;
    font-weight: 600;
    justify-content: center;
    padding: 0.8rem 1.5rem;
}

.btn-quaternary {
    display: flex;
    color: white;
    background-color: #1E1E1E;
    border: 2px solid #1E1E1E;
    transition: all ease-in-out 0.5s;
    text-transform: none;
    border-radius: 4px;
    gap: 10px;
    width: fit-content;
    font-weight: 600;
    justify-content: center;
    padding: 0.8rem 1.5rem;
}

.btn-quaternary:hover {
    color: #1E1E1E !important;
    background-color: white;
    border: 2px solid #1E1E1E;
}

.btn-tertiary:hover {
    color: white !important;
    background-color: var(--primary-color);
    border: 2px solid var(--primary-color);
}

.btn-primary,
.btn-secondary,
.btn-tertiary {
    cursor: pointer;
}

.btn-primary .material-icons,
.btn-secondary .material-icons,
.btn-tertiary .material-icons {
    margin-right: 0;
}

.btn-primary:hover {
    color: var(--primary-color) !important;
    background-color: #EEFFFA;
    border: 2px solid var(--primary-color);
}

/* FIN AUTRES */

/* BANNIERE PAGE ACCUEIL */

.banner img {
    width: auto;
    max-width: 95vw;
}

/* FIN BANNIERE PAGE ACCUEIL */

/* NAVBAR */

#header {
    box-shadow: none;
    margin-bottom: 3rem;
}

#header .header-top .position-static {
    position: static;
    display: flex;
    align-items: center;
    justify-content: space-evenly;
}

#header .header-top .material-icons {
    font-size: 16px;
    width: 18px;
    height: 18px;
    color: #7a7a7a;
}


#header .header-top a,
#header .header-top span {
    font-size: 0.85rem;
    color: #7a7a7a;
}

#header .header-top #_desktop_cart div {
    cursor: default;
}

#header .header-top #_desktop_cart div:hover {
    color: red;
}

#header .header-top>.container>.row:first-of-type {
    justify-content: center;
}

#header .header-nav {
    max-height: 60px;
    border-bottom: none;
    border-top: 2px solid #F6F6F6;
    font-weight: 400;
    height: 60px;
    display: flex;
    align-items: center;
}

#header .header-nav .cart-preview.active {
    background: var(--secondary-color);
}

#header .top-menu a[data-depth="0"]:hover {
    color: black;
    text-decoration: underline var(--secondary-color) 2px;
    text-underline-offset: 8px;
}

#search_widget form input {
    width: 100%;
    padding: 8px 20px 8px 20px;
    outline: none;
    background-color: transparent;
    border: 1px solid #888888;
    border-radius: 6px;
}

#search_widget form i {
    position: absolute;
    padding: .5rem;
    right: 1rem;
    bottom: 1rem;
}

#search_widget form input::placeholder {
    font-family: var(--primary-font);
    font-size: 0.85rem;
    color: #888888;
    opacity: 1;
}

/* Ne pas afficher les sous-catégories de "Accueil" */
.top-menu #category-2 .popover {
    display: none;
}

.top-menu a[data-depth="0"] {
    font-size: 0.95rem;
    font-weight: 400;
}

@media only screen and (min-width: 992px) {
    #search_widget {
        float: none;
        width: 100%;
        max-width: 26rem;
        padding-right: 15px;
        padding-left: 15px;
    }
}

@media (min-width: 576px) {
    .header-top .search-widgets {
        max-width: 100%;
    }
}

/* FIN NAVBAR */

/* BTN CONTACT */

#_desktop_contact a {
    display: block !important;
    text-align: center;
    border-radius: 4px;
}

.btn-contact a {
    font-size: 0.95rem;
    color: white !important;
    text-transform: none;
    border: 2px solid var(--secondary-color);
    transition: all linear 0.25s;
}

/* FIN BTN CONTACT */

/* CARROUSEL + REASSURANCE */

.carousel {
    margin-bottom: 0;
    margin: 0 5vw;
}

.carousel .carousel-inner {
    height: 100%;
    margin-bottom: 0;
}

.carousel .carousel-item a {
    display: block;
    width: 100%;
}

.carousel .carousel-item figure {
    width: 100%;
}

.carousel .carousel-item figure::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0) 0%,
            rgba(0, 0, 0, 0.3) 30%,
            rgba(0, 0, 0, 0.5) 50%);
}

.carousel .carousel-item .caption {
    bottom: 32vh;
    left: 25vw;
    max-width: 42vw;
    text-align: center;
}

.carousel .carousel-item .caption span {
    font-family: var(--secondary-font);
    font-weight: 800;
    font-size: 3rem;
    line-height: 3.5rem;
}

.carousel .carousel-item .caption p {
    font-family: var(--primary-font);
    margin-top: 1rem;
}

.carousel .btn-contact a {
    width: fit-content;
    margin: auto;
    background-color: transparent;
    border-color: white;
}

.carousel .btn-contact a:hover {
    background-color: var(--secondary-color);
    border-color: var(--secondary-color);
    color: var(--primary-color);
}

.blockreassurance {
    background: var(--primary-color);
    padding: 1rem 8rem;
}

.blockreassurance .block-icon {
    height: 100%;
    display: flex;
    align-items: center;
}

.blockreassurance .block-icon img {
    max-height: 56px;
    margin-right: 1.5rem;
}

.blockreassurance p {
    text-align: left;
    padding-top: 1rem;
}

.container-blockreassurance {
    margin: 0 5vw;
    position: absolute;
    bottom: 0;
}

/* FIN CARROUSEL + REASSURANCE */

/* PRODUITS POPULAIRES / MEILLEURS VENTES / PROMOTIONS ACCUEIL */

.featured-products {
    margin-bottom: 3rem;
}

.featured-products .products-section-title {
    font-weight: 800;
    font-size: 2.5rem;
    color: var(--primary-color);
    position: relative;
    text-transform: none;
    font-family: var(--secondary-font);
    text-align: left;
    margin-bottom: 1.5rem;
    max-width: 35vw;
}

.featured-products .products-section-title mark {
    background: linear-gradient(90deg, rgba(0, 195, 166, 0.5) 0%, rgba(0, 195, 166, 0.08) 50%, rgba(0, 195, 166, 0) 100%);
    padding: 0 2.5px;
    border-left: 3px solid var(--secondary-color);
    color: var(--primary-color);
}

.featured-products .products-section-title mark::after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    bottom: -1vh;
    left: 0;
    transform: translateX(calc(100%* 2.15));
    pointer-events: none;
    background-image: url('../img/papillon-1.png');
    background-size: cover;
}

.featured-products .products-section-title mark.no-butterfly::after {
    background-image: none;
}

.featured-products .products-section-title mark.healthcare::after {
    right: 0;
    left: 25vw;
    top: -2vh;
    transform: rotate(15deg);
}

.featured-products span.description {
    margin-bottom: 1.5rem;
    display: block;
    max-width: 60%;
}

/* FIN PRODUITS POPULAIRES / MEILLEURS VENTES / PROMOTIONS ACCUEIL */

/* FICHE PRODUIT LISTING */

.product-miniature .thumbnail-container {
    background: transparent;
    border: solid 1px #E7E7E7;
    padding: 60px 20px 0px 20px;
}

.product-miniature .thumbnail-top {
    transition: all ease-in-out 0.5s;
    max-height: 100%;
    object-fit: contain;
}

.product-miniature .thumbnail-container:focus .add-to-cart-icon #ets_addToCart,
.product-miniature .thumbnail-container:hover .add-to-cart-icon #ets_addToCart {
    opacity: 1;
}

.product-miniature .thumbnail-container:focus .thumbnail-top,
.product-miniature .thumbnail-container:hover .thumbnail-top {
    max-height: 45%;
}

.product-miniature .thumbnail-top img {
    object-fit: cover;
    transition: transform 0.5s ease-in-out;
    transform: scale(1);
}

.product-miniature .thumbnail-container:hover .thumbnail-top img {
    transform: translate(0, -20%);
}

.product-miniature .thumbnail-container:focus .product-description::after,
.product-miniature .thumbnail-container:hover .product-description::after {
    border-top: none;
}

.product-miniature .thumbnail-container .wishlist-button-add {
    background-color: transparent;
    box-shadow: none;
    border: none;
}

.products article .wishlist-button-add {
    position: absolute;
    top: 25px;
    right: 5px;
    z-index: 10;
}

.products article .wishlist-button-add i {
    color: #B0B0B0;
    font-size: 20px;
}

.product-miniature .product-description {
    background: transparent;
    padding: 0.25rem .25rem 0.25rem;
}

.product-miniature .product-title {
    text-align: left;
    text-transform: none;
    font-size: 0.875rem;
    font-family: var(--primary-font);
    color: #252C32;
}

.product-miniature .product-title a {
    color: #252C32;
}


.product-miniature .product-price-and-shipping {
    text-align: left;
    font-size: 1.125rem;
}

.product-list-reviews {
    position: unset;
    justify-content: left;
    background: transparent;
    visibility: visible;
}

.product-list-reviews .grade-stars .star-content {
    margin: 2px 0;
    left: -2px;
}

.product-list-reviews .comments-nb {
    margin-left: 30% !important;
}

.featured-products .all-product-link.btn-primary {
    color: white;
    text-transform: none;
    border-radius: 4px;
    font-weight: 600;
    width: fit-content;
    margin: auto;
    margin-bottom: 1.5rem;
}

.small-stars .star-content div.star-on,
.small-stars .star-content div.star-hover {
    background-position: -14px 0;
}

.grade-stars,
.grade-stars.small-stars {
    min-width: calc(100% - 10rem);
}

.product-flags li.product-flag {
    background: var(--secondary-color);
    text-transform: none;
    border-radius: 0 4px 4px 0px;
    border: solid 1px;
    border-color: var(--secondary-color);
    border-left: none;
}

.product-flags li.product-flag.on-sale {
    background: var(--tertiary-color);
    border-color: var(--tertiary-color);
    border-radius: 0;
}

.product-flags li.product-flag.out_of_stock {
    background: transparent;
    color: var(--primary-color);
    font-weight: 400;
    border-color: var(--primary-color);
    font-size: 0.875rem;
}

.product-flags li.product-flag.discount,
.product-flags li.product-flag.discount-amount,
.product-flags li.product-flag.discount-percentage {
    background-color: var(--red-color);
    border-color: var(--red-color);
}

.add-to-cart-icon #ets_addToCart {
    border-radius: 4px !important;
    background-color: var(--secondary-color) !important;
    position: unset !important;
    width: 100% !important;
    height: auto !important;
    text-transform: none;
    color: white;
    font-family: var(--primary-font);
    font-size: 1rem;
    box-shadow: none;
    border: 2px solid var(--secondary-color);
    margin-bottom: 1rem;
    transition: all ease-in-out 0.5s;
    opacity: 0;
    padding: 0.8rem 1.5rem !important;
}

.add-to-cart-icon {
    height: 0;
}

.add-to-cart-icon #ets_addToCart:hover {
    color: var(--primary-color);
    background-color: #EEFFFA !important;
}

/* FIN FICHE PRODUIT LISTING */

/* HTML BLOCK */

.section-container {
    display: flex;
    justify-content: space-between;
    align-items: stretch;
    padding: 0;
    text-align: left;
}

.content-wrapper {
    width: 60%;
    display: flex;
    flex-direction: column;
    gap: 40px;
    padding-left: 12vw;
    padding-right: 10vw;
    align-items: center;
    justify-content: center;
}

.section-container-2 {
    flex-direction: row-reverse;
}

.text-block h2 {
    font-size: 24px;
    font-weight: 700;
    color: #1a1a1a;
    margin-bottom: 16px;
}

.contact-button {
    margin-top: 2.5rem;
    background-color: #000;
    color: #fff;
    border: none !important;
    padding: 10px 20px;
    font-size: 16px;
    cursor: pointer;
    transition: background 0.3s ease;
    border-radius: 4px;
    text-transform: none;
}

.contact-button:hover {
    background-color: #333;
}

.image-block {
    width: 40%;
}

.image-block img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    transform: scaleX(-1);
    border-radius: 0 8px 8px 0;
}

.section-container-2 .image-block img {
    border-radius: 8px 0 0 8px;
}

#custom-text,
#custom-text-2 {
    padding: 0;
    margin-bottom: 0;
    text-align: center;
    background: #fff;
    border-radius: 2px;
    max-width: 100vw;
}

#custom-text p,
#custom-text-2 p {
    font-size: 16px;
    color: #3D3D3D;
    margin-top: 2rem;
}

#custom-text-2 {
    padding-top: 5rem;
}

#custom-text-2 .content-wrapper {
    max-height: 92%;
}

#custom-text h1,
#custom-text h2,
#custom-text-2 h1,
#custom-text-2 h2 {
    font-size: 36px;
    text-transform: none;
    font-weight: 800;
    font-family: var(--secondary-font);
}

@media (max-width: 1024px) {
    .section-container {
        flex-direction: column;
        height: auto;
    }

    .content-wrapper {
        width: 100%;
        padding: 40px 20px;
    }

    .image-block {
        width: 100%;
        height: auto;
    }

    .image-block img {
        height: auto;
    }

    .text-block h2 {
        font-size: 20px;
    }

    .text-block p {
        font-size: 13px;
    }

    .contact-button {
        font-size: 12px;
        padding: 8px 16px;
    }
}

/* FIN HTML BLOCK */

/* ACTUALITES */

.bloghome {
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 8rem 15rem;
    margin: auto;
    background: white;
}

.bloghome-actu {
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    gap: 2rem;
}

.bloghome-actu .article-img {
    max-height: 35vh;
    overflow: hidden;
    position: relative;
}

.bloghome-actu .article-img:hover img {
    transform: scale(1.05);
}

.bloghome-actu .article-img img {
    height: 35vh;
    width: 100%;
    object-fit: cover;
    margin-bottom: 1rem;
    transition: transform 0.2s ease-in-out;
}

.bloghome-actu .article-img::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(to top, rgba(0, 0, 0, 0.6), rgba(0, 0, 0, 0));
    transition: opacity 0.2s ease-in-out;
    opacity: 0;
    pointer-events: none;
}

.bloghome-actu .article-img:hover::after {
    opacity: 1;
}

.bloghome h3 {
    font-size: 24px;
    font-weight: 800;
    color: #1E1E1E;
    font-family: var(--secondary-font);
}

.bloghometitle h2 {
    font-weight: 800;
    font-size: 2.5rem;
    color: var(--primary-color);
    position: relative;
    text-transform: none;
    font-family: var(--secondary-font);
    text-align: center;
    margin-bottom: 4rem;
    max-width: 30vw;
}

.bloghometitle mark {
    background: linear-gradient(90deg, rgba(0, 195, 166, 0.5) 0%, rgba(0, 195, 166, 0.08) 50%, rgba(0, 195, 166, 0) 100%);
    padding: 0 2.5px;
    border-left: 3px solid var(--secondary-color);
    color: var(--primary-color);
}

.bloghometitle mark::after {
    content: "";
    position: absolute;
    width: 200px;
    height: 200px;
    bottom: 1vh;
    right: 1vw;
    pointer-events: none;
    background-image: url(../img/papillon-3.png);
    background-size: cover;
}

.article-text {
    margin-top: 2rem;
}

.article-text span {
    color: #1E1E1E;
    margin-top: 2rem;
}

.article-text .everpsblogcontent {
    color: #1E1E1E;
    line-height: 26px;
}

.bloghome .btn-article {
    margin-top: 2rem;
}

/* FIN ACTUALITES */

/* ENCART PRESTATION */

.encart-prestation {
    padding: 5rem 2rem;
    background: white;
}

.encart-prestation .header {
    text-align: center;
    padding: 20px;
    position: relative;
}

.encart-prestation .header h2 {
    font-weight: 800;
    font-size: 2.5rem;
    color: var(--primary-color);
    text-transform: none;
    font-family: var(--secondary-font);
    text-align: center;
    margin: auto;
    margin-bottom: 1.5rem;
    max-width: 60%;
}

.encart-prestation .header h2 mark {
    background: linear-gradient(90deg, rgba(0, 195, 166, 0.5) 0%, rgba(0, 195, 166, 0.08) 50%, rgba(0, 195, 166, 0) 100%);
    padding: 0 2.5px;
    border-left: 3px solid var(--secondary-color);
    color: var(--primary-color);
    position: relative;
}

.encart-prestation .header h2 mark::after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    top: -10vh;
    left: 0;
    pointer-events: none;
    background-image: url('../img/papillon-2.png');
    background-size: cover;
    transform: translateX(calc(-10% * 5.5));
}

.encart-prestation .header p {
    text-align: center;
    max-width: 37%;
    margin: auto;
}

.encart-prestation .item img {
    max-width: 15vw;
    position: absolute;
    top: -14vh;
    right: 0;
}

.encart-prestation .content {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
}

.encart-prestation .item {
    width: 28vw;
    padding: 20px;
    border-radius: 8px;
}

.encart-prestation .item p {
    margin-top: 10px;
}

.encart-prestation .item span {
    font-size: 1.2rem;
}

.encart-prestation .item-bg {
    height: 35vh;
    object-fit: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
    border-radius: 8px;
    position: relative;
}

.encart-prestation .item-bg::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 8px;
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0) 0%,
            rgba(0, 0, 0, 0.3) 30%,
            rgba(0, 0, 0, 0.5) 80%);
    transition: all ease-in-out 0.5s;
}

.encart-prestation .item-text {
    position: absolute;
    bottom: 0;
    left: 0;
    padding: 1rem;
}

.encart-prestation .item-text span,
.encart-prestation .item-text p {
    color: white;
}

.encart-prestation .item-text span {
    font-weight: 800;
}

.encart-prestation .item-bg.materiel {
    background-image: url('../img/materiel.webp');
}

.encart-prestation .item-bg.pansement {
    background-image: url('../img/pansement.webp');
}

.encart-prestation .item-bg.seringue {
    background-image: url('../img/seringue.webp');
}

.encart-prestation .item-bg.aiguille {
    background-image: url('../img/aiguille.webp');
}

.encart-prestation .item .btn-container {
    opacity: 0;
    max-height: 0;
    transition: all ease-in-out 0.5s;
}

.encart-prestation .item:hover .btn-container {
    opacity: 1;
    max-height: 100%;
}

.encart-prestation .item:hover .item-bg::before {
    background: linear-gradient(to bottom,
            rgba(0, 0, 0, 0) 0%,
            rgba(0, 0, 0, 0.3) 10%,
            rgba(0, 0, 0, 0.5) 30%);
}

/* FIN ENCART PRESTATION */

/* FOOTER */

#footer {
    background-color: var(--smoke-white);
}

#footer .block-contact .contact-content {
    display: flex;
    flex-direction: row;
    align-items: start;
    justify-content: flex-start;
    gap: 5vw;
}

#footer .block-contact .contact-content {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    justify-content: space-between;
    flex-wrap: wrap;
    gap: 2rem;
    padding: 2rem 0;
}

#footer .block-contact .contact-content>div {
    flex: 1;
    min-width: 150px;
}

#footer .block-contact .logo img {
    max-width: 6vw;
    height: auto;
    width: 100%;
}

#footer .block-contact p {
    font-weight: 400;
}

#footer .block-contact .contact-phone span,
#footer .block-contact .contact-address span,
#footer .block-contact .contact-schedule span,
#footer .block-contact .contact-socials span {
    font-weight: 600;
    color: var(--quaternary-color);
    display: block;
    margin-bottom: 1em;
    font-size: 1rem;
}

#footer .block-contact .contact-phone a {
    color: #5D5D5D;
    text-decoration: none;
    font-size: 0.95rem;
}

#footer .block-contact .contact-address p,
#footer .block-contact .contact-schedule p {
    margin: 0.2rem 0;
    color: #5D5D5D;
    font-size: 0.95rem;
}

#footer .block-contact .contact-schedule p:first-of-type {
    display: inline-block;
    margin-right: 1rem;
    padding-right: 1rem;
}

#footer .block-contact .contact-schedule p:nth-of-type(2) {
    display: inline-block;
    margin-left: 1rem;
}

#footer .block-contact .contact-socials .social-icons {
    display: flex;
    gap: 1rem;
    margin-top: 0.5rem;
}

#footer .block-contact .contact-socials .social-icons a {
    color: #5D5D5D;
    font-size: 1.1rem;
    transition: color 0.3s;
}

#footer .block-contact .contact-socials .social-icons a:hover {
    color: var(--quaternary-color);
}

#footer .top-menu {
    display: flex;
    justify-content: center;
    border-top: 1px solid #D1D1D1;
    border-bottom: 1px solid #D1D1D1;
    padding: 1rem 0;
}

.footer-container {
    padding-top: 0;
}

.footer-container li a:hover {
    color: var(--secondary-color);
}

#footer .cgv p {
    display: none;
}

#footer .cgv .col-md-6 {
    width: 100% !important;
} 

#footer .cgv .wrapper {
    display: flex;
    justify-content: center;
}

#footer .cgv .wrapper #footer_sub_menu_3 {
    gap: 15px;
    margin: 1rem 0;
}

#footer_sub_menu_4 {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
  gap: 12px 24px;
  list-style: none;
  padding: 1rem 0;
  width: 100%;
  border-top: 1px solid #D1D1D1;
  text-align: center;
}


/* FIN FOOTER */

/* CATEGORIE */

#category-description.wrap {
    overflow: hidden;
    max-height: 204px;
    transition: all 0.3s ease;
}

#category-description {
    transition: all 0.3s ease;
    max-height: 10000px;
}

#category #wrapper {
    position: relative;
}

#category #wrapper::before {
    content: "";
    position: absolute;
    width: 200px;
    height: 235px;
    pointer-events: none;
    background-image: url('../img/illustration-2.png');
    background-size: cover;
    bottom: 0;
    left: 15rem;
}

.see-more {
    margin: 2rem 0;
    cursor: pointer;
}

.see-less {
    cursor: pointer;
    margin: 2rem 0;
}

.block-category {
    min-height: 0;
}

.block-category .h1 {
    text-transform: none;
    font-family: var(--secondary-font);
}

.block-category .h1 span {
    color: var(--secondary-color);
}

#category #content-wrapper {
    padding-top: 0;
    background: white;
}

#category #wrapper {
    background: white;
}

#category #left-column {
    padding-left: 0;
}

#search_filters,
#search_filters_brands,
#search_filters_suppliers {
    padding: 1.563rem 1.25rem;
    margin-bottom: 1.563rem;
    background: var(--smoke-white);
}

/* FIN CATEGORIE */

/* PRODUCT */

#product #wrapper {
    background-color: white;
}

#product #content-wrapper {
    background-color: white;
}

#product .has-discount .page-content.page-cms ul,
#product .has-discount p,
#product .has-discount.product-price,
#product .page-content.page-cms .has-discount ul,
#product .product-price {
    color: #1E1E1E;
    font-size: 2rem;
}

.product-prices {
    display: flex;
    justify-content: flex-start;
    align-items: flex-start;
    margin-bottom: 1rem;
    margin-top: 0;
    flex-direction: column;
}

.product-discount .regular-price {
    margin-right: 0;
}

.product-prices div {
    margin-bottom: 0;
}

.product-prices .price-unit {
    font-size: 1rem;
}

.product-information {
    margin-top: 2rem;
}

.product-information .product-description-short-title {
    font-weight: 600;
    margin-bottom: 0.875rem;
    display: block;
    line-height: 26px;
}

.product-quantity {
    flex-direction: column;
    gap: 25px;
}

.product-quantity .add {
    align-items: center;
    height: 2.75rem;
}

.product-quantity .wishlist-button-add {
    box-shadow: none;
    border-radius: 4px;
    background-color: transparent;
    border: solid 1px var(--smoke-gray);
    height: 100%;
    width: 2.8rem;
}

.product-quantity .wishlist-button-add i {
    font-size: 20px;
    color: var(--smoke-gray);
}

.product-quantity .wishlist-button-add:hover i {
    color: var(--red-color);
}

.product-quantity #quantity_wanted {
    width: 2rem;
    height: calc(2.75rem - 2px);
    padding: 0;
    font-weight: 400;
    font-size: 0.8125rem;
    text-align: center;
    color: #232323;
    background-color: #fff;
    border: none;
}

.product-quantity .qty {
    width: 6rem;
    max-height: 2.25rem;
}

.product-quantity .qty .bootstrap-touchspin {
    position: relative;
    width: 100%;
    padding: 0 2rem;
    border: solid 1px var(--smoke-gray);
    border-radius: 4px;
}

.product-quantity .bootstrap-touchspin .input-group-btn-vertical .btn {
    position: absolute;
    top: 0;
    display: block;
    height: calc(2.75rem - 2px);
    width: 2rem;
    padding: 0;
    border: none;
    background: transparent;
}

.product-quantity .bootstrap-touchspin .input-group-btn-vertical {
    position: static;
}

.product-quantity .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up {
    right: 0;
}

.product-quantity .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down {
    left: 0;
}

.product-quantity .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-down i::after {
    content: '-';
    font-size: 0.8125rem;
}

.product-quantity .bootstrap-touchspin .input-group-btn-vertical .bootstrap-touchspin-up i::after {
    content: '+';
    font-size: 0.8125rem;
}

.product-quantity .input-group-btn-vertical .btn i {
    position: absolute;
    height: 100%;
    margin: auto;
    top: 0.3rem;
    left: .5rem;
}

#product-availability .product-last-items,
#product-availability .product-unavailable {
    color: var(--red-color);
}

.product-actions .control-label {
    font-weight: 600;
    margin-bottom: 0.5rem;
}


.wishlist-button-add:hover {
    opacity: 1 !important;
}

.wishlist-button-add:hover i {
    color: var(--red-color) !important;
}

#product .product-list-reviews {
    align-items: center;
}

#product .product-list-reviews .comments-nb {
    position: absolute;
    margin-left: 18% !important;
    font-size: 15px;
}

#product .h1 {
    text-transform: none;
    font-size: 2rem;
    position: relative;
}

#product .h1::after {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    pointer-events: none;
    background-image: url('../img/papillon-1.png');
    background-size: cover;
    bottom: 0;
    right: 4rem;
}

#product #content {
    max-width: 100%;
    margin-left: .625rem;
}

#product .product-comments-additional-info {
    margin-bottom: 0;
    margin-top: 1rem;
}

.product-images>li.thumb-container .thumb.selected,
.product-images>li.thumb-container .thumb:hover {
    border: var(--quaternary-color) 2px solid;
}

#product .tabs .nav-tabs .nav-link {
    color: #1E1E1E;
}

#product .tabs .nav-tabs .nav-link.active,
.tabs .nav-tabs .nav-link:hover {
    border-bottom: var(--quaternary-color) 2px solid;
    color: var(--quaternary-color);
}

#product .product-cover {
    border: 1px solid #E7E7E7;
    border-radius: 4px;
}

.blockreassurance_product {
    margin-top: 25px;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
}

.blockreassurance_product span {
    color: #1E1E1E !important;
    padding-top: 10px;
}

.blockreassurance_product p {
    display: none;
}

.blockreassurance_product div {
    display: flex;
    justify-content: center;
}

.tabs #product-comments-list-header {
    display: none;
}

.tabs .nav-tabs {
    border-bottom: #E7E7E7 2px solid;
    position: relative;
}

.tabs .nav-tabs::before {
    content: "";
    position: absolute;
    width: 150px;
    height: 150px;
    pointer-events: none;
    background-image: url('../img/illustration-2.png');
    background-size: cover;
    transform: scaleX(-1);
    right: 26vw;
    bottom: 0;
}

.tabs .product-description {
    max-width: 50%;
    line-height: 26px;
}

@media (min-width: 768px) {
    .product-quantity #quantity_wanted {
        height: calc(2.25rem - 2px);
    }
}

@media (min-width: 768px) {
    .product-quantity .bootstrap-touchspin .input-group-btn-vertical .btn {
        height: calc(2.25rem - 2px);
    }
}

/* FIN PRODUCT */

/* FIL D'ARIANE */

#wrapper .breadcrumb {
    padding-left: .625rem;
}

/* FIN FIL D'ARIANE */

@media (min-width: 1024px) {
    .featured-products .products-section-title mark::after {
        bottom: 4vh;
    }
}

@media (min-width: 1280px) {
    .featured-products .products-section-title mark::after {
        bottom: 4vh;
    }

    .featured-products .products-section-title mark.healthcare::after {
        left: 25vw;
    }
}

@media (min-width: 1400px) {
    .featured-products .products-section-title mark.healthcare::after {
        left: 30vw;
    }
}

@media (min-width: 1700px) {
    .featured-products .products-section-title mark::after {
        bottom: -1vh;

    }

    .featured-products .products-section-title mark.healthcare::after {
        left: 22vw;
        top: -1vh;
    }

    .bloghometitle mark::after {
        bottom: 1vh;
        right: 1vw;
    }
}

@media (max-width: 768px) {
    #wrapper {
        padding-top: 1.563rem;
    }

    #category #wrapper::before {
        display: none;
    }

    .tabs .nav-tabs::before {
        display: none;
    }

    #header {
        margin-bottom: 0;
    }

    #header .header-nav {
        display: block;
    }

    #wrapper .breadcrumb {
        padding-left: 0;
    }

    #header .header-nav .blockcart {
        background: transparent;
    }

    #header .header-nav .cart-preview .shopping-cart {
        color: #B0B0B0;
    }

    #header .header-nav .user-info .account {
        color: #B0B0B0;
    }

    #header .header-top {
        padding-top: 0;
    }

    #search_widget {
        margin-bottom: 0;
    }

    #footer .block-contact .logo img {
        max-width: 100%;
    }

    #product .product-list-reviews .comments-nb {
        margin-left: 25% !important;
    }

    .product-quantity #quantity_wanted {
        height: 2rem;
    }

    .tabs {
        padding: 1.25rem 0;
        margin-top: 0;
    }

    .tabs .product-description {
        max-width: 100%;
    }

    #footer {
        padding-top: 0;
    }

    .product-list-reviews .comments-nb {
        margin-left: 10% !important;
    }

    .top-menu #category-2 {
        display: none;
    }

    .carousel {
        margin: auto;
        left: 0;
        padding-bottom: 0;
    }

    .carousel .carousel-item img {
        height: 50vh;
        object-fit: cover;
        position: relative;
    }

    .carousel .carousel-item figure::before {
        height: 50vh;
        z-index: 1;
    }

    .carousel .carousel-item .caption {
        position: absolute;
        top: 15%;
        left: 0;
        max-width: 100%;
        text-align: center;
        padding: 0 2rem;
        width: 100%;
        z-index: 2;
    }

    .carousel .carousel-item .caption span {
        font-size: 2rem;
        line-height: 1;
    }

    .carousel .carousel-item .caption .caption-description p {
        color: white;
    }

    .container-blockreassurance {
        margin: 0;
        position: unset;
    }

    .carousel-indicators {
        display: none;
    }

    .blockreassurance {
        padding: 2rem;
    }

    .blockreassurance .block-icon {
        float: none;
    }

    .blockreassurance .block-title {
        display: block;
        height: 100%;
        max-width: unset;
        padding-top: 0;
    }

    .featured-products .products-section-title {
        text-align: center;
        max-width: 100%;
        margin-top: 0;
    }

    .featured-products .products-section-title mark::after {
        left: 60vw;
        bottom: 5vh;
        transform: unset;
    }

    .featured-products span.description {
        padding: 0 0.8rem;
        max-width: 100%;
        text-align: center;
    }

    .bloghome {
        padding: 2rem;
    }

    .bloghome-actu .article:not(:first-child) {
        display: none;
    }

    .bloghometitle h2 {
        text-align: center;
        max-width: 100%;
        margin-top: 0;
        margin-bottom: 2rem;
    }

    .bloghometitle h2 mark::after {
        right: 0;
        bottom: 7vh;
        width: 180px;
        height: 180px;
    }

    .encart-prestation .header h2 {
        max-width: 100%;
    }

    .encart-prestation .header p {
        max-width: 90%;
    }

    .encart-prestation .content {
        flex-direction: column;
    }

    .encart-prestation .item {
        width: 100%;
        padding: 1rem 0;
    }

    .encart-prestation .item img {
        display: none;
    }

    .encart-prestation .item .btn-container {
        opacity: 1;
        max-height: 100%;
    }

    .product-miniature .thumbnail-container {
        margin-bottom: 0.5rem;
    }

    .featured-products .all-product-link.btn-primary {
        margin-top: 2.5rem;
    }

}

/* MODAL PANIER + PANIER */

.modal-body .product-name {
    color: var(--secondary-color)
}

#cart .product-price {
    color: #1E1E1E;
}

#cart .has-discount .discount {
    background: var(--red-color);
}

#cart .has-discount.product-price {
    color: #1E1E1E;
}

#checkout .cart-summary-line .value::first-letter {
    text-transform: uppercase;
}

#checkout .delivery-option span.carrier-price::first-letter {
    text-transform: uppercase;
}


/* FIN MODAL PANIER + PANIER */


/* SLICK CSS */

/* Slider */
.slick-loading .slick-list {
    background: #fff url('./ajax-loader.gif') center center no-repeat;
}

/* Icons */
@font-face {
    font-family: 'slick';
    font-weight: normal;
    font-style: normal;
    font-display: swap;

    src: url('./fonts/slick.eot');
    src: url('./fonts/slick.eot?#iefix') format('embedded-opentype'), url('./fonts/slick.woff2') format('woff2'), url('./fonts/slick.woff') format('woff'), url('./fonts/slick.ttf') format('truetype'), url('./fonts/slick.svg#slick') format('svg');
    font-display: swap;
}

/* Arrows */
.slick-prev,
.slick-next {
    font-size: 0;
    line-height: 0;

    position: absolute;
    top: 50%;

    display: block;

    width: 20px;
    height: 20px;
    padding: 0;
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);

    cursor: pointer;

    color: transparent;
    border: none;
    outline: none;
    background: transparent;
}

.slick-prev:hover,
.slick-prev:focus,
.slick-next:hover,
.slick-next:focus {
    color: transparent;
    outline: none;
    background: transparent;
}

.slick-prev:hover:before,
.slick-prev:focus:before,
.slick-next:hover:before,
.slick-next:focus:before {
    opacity: 1;
}

.slick-prev.slick-disabled:before,
.slick-next.slick-disabled:before {
    opacity: .25;
}

.slick-prev:before,
.slick-next:before {
    font-family: 'slick';
    font-size: 20px;
    line-height: 1;

    opacity: .75;
    color: white;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev {
    left: -25px;
}

[dir='rtl'] .slick-prev {
    right: -25px;
    left: auto;
}

.slick-prev:before {
    content: '←';
}

[dir='rtl'] .slick-prev:before {
    content: '→';
}

.slick-next {
    right: -25px;
}

[dir='rtl'] .slick-next {
    right: auto;
    left: -25px;
}

.slick-next:before {
    content: '→';
}

[dir='rtl'] .slick-next:before {
    content: '←';
}

/* Dots */
.slick-dotted.slick-slider {
    margin-bottom: 30px;
}

.slick-dots {
    position: absolute;
    bottom: -25px;

    display: block;

    width: 100%;
    padding: 0;
    margin: 0;

    list-style: none;

    text-align: center;
}

.slick-dots li {
    position: relative;

    display: inline-block;

    width: 20px;
    height: 20px;
    margin: 0 5px;
    padding: 0;

    cursor: pointer;
}

.slick-dots li button {
    font-size: 0;
    line-height: 0;

    display: block;

    width: 20px;
    height: 20px;
    padding: 5px;

    cursor: pointer;

    color: transparent;
    border: 0;
    outline: none;
    background: transparent;
}

.slick-dots li button:hover,
.slick-dots li button:focus {
    outline: none;
}

.slick-dots li button:hover:before,
.slick-dots li button:focus:before {
    opacity: 1;
}

.slick-dots li button:before {
    font-family: 'slick';
    font-size: 30px;
    line-height: 20px;

    position: absolute;
    top: 0;
    left: 0;

    width: 20px;
    height: 20px;

    content: '•';
    text-align: center;

    opacity: .25;
    color: black;

    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-dots li.slick-active button:before {
    opacity: .75;
    color: black;
}

/* FIN SLICK CSS */

.banner img {
    width: auto;
    max-width: 90vw;
}