@layer init, fixpscheckout, third-party, variables, reset, core, structure, components, utility;

@font-face {
    font-family: 'AnekLatin-Variable';
    src: url('../fonts/AnekLatin-Variable.woff2') format('woff2');
    font-weight: 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'WixMadeforDisplay-Variable';
    src: url('../fonts/WixMadeforDisplay-Variable.woff2') format('woff2');
    font-weight: 400 700;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'inodia-icons';
    src: url('../fonts/inodia-icons.woff2');
    font-weight: normal;
    font-style: normal;
    font-display: block;
}

@layer variables {

    :root {
        color-scheme: light dark;
        interpolate-size: allow-keywords;

        --border-radius: 0;
        --border-width: 1px;
        --outline-width: 2px;

        --wrapper-size: 100rem;
        --wrapper-size-small: 60rem;
        --wrapper-size-mobile: 90%;
        --sidebar-width: 18rem;
        --items-margin: clamp(.5rem, .4rem + .5vw, 1rem);
        --items-gap: calc(var(--items-margin) * 3) var(--items-margin);
        --items-min-size: 16rem;
        --product-min-size: var(--items-min-size);

        --logo-ratio: 218 / 64;
        --logo-height: clamp(2rem, 1.6rem + 2vw, 4rem);
        --padding-header: clamp(1rem, .75rem + 1.25vw, 2rem);

        --dark-color: oklch(0.23 0.0038 106.69);
        --light-color: oklch(100% 0.00011 271.152);

        --primary-color: light-dark(oklch(0.6042 0.2156 28.51), oklch(0.6042 0.2156 28.51));
        --primary-hover-color: light-dark(oklch(0.691 0.2038 38.55), oklch(0.691 0.2038 38.55));
        --primary-active-color: light-dark(oklch(0.5636 0.2179 29.23), oklch(0.5636 0.2179 29.23));

        --secondary-color: light-dark(oklch(0.6987 0.0019 247.85), oklch(0.6987 0.0019 247.85));
        --secondary-hover-color: light-dark(oklch(0.604 0.0454 249.68), oklch(0.604 0.0454 249.68));
        --secondary-active-color: light-dark(oklch(0.6187 0.0028 228.81), oklch(0.6187 0.0028 228.81));

        --alert-danger-color: light-dark(oklch(58.59% 0.21458 24.279), oklch(70.919% 0.13936 17.357));
        --alert-warning-color: light-dark(oklch(70.663% 0.14467 47.21), oklch(77.434% 0.10618 48.969));
        --alert-success-color: light-dark(oklch(69.389% 0.13104 154.452), oklch(82.307% 0.1478 154.918));
        --alert-info-color: light-dark(oklch(62.31% 0.1881 259.83), oklch(80.61% 0.08979 260.028));

        --cat-tp: light-dark(oklch(0.8697 0.1739 95.65), oklch(0.8697 0.1739 95.65));
        --cat-agri: light-dark(oklch(0.7806 0.1504 125.34), oklch(0.7806 0.1504 125.34));
        --cat-moto: light-dark(oklch(0.6641 0.143 157.55), oklch(0.6641 0.143 157.55));
        --cat-fore: light-dark(oklch(0.5224 0.0182 160.17), oklch(0.5224 0.0182 160.17));

        --status-waiting: var(--shadow-color);
        --status-accepted: var(--title-color);
        --status-processing: var(--primary-color);
        --status-sent: var(--secondary-color);
        --status-success: var(--alert-success-color);
        --status-error: var(--alert-danger-color);

        --background-color: light-dark(var(--light-color), var(--dark-color));
        --background-grey: color-mix(in oklab, var(--background-color), var(--title-color) 5%);

        --border-color: var(--muted-color);
        --border-hover-color: var(--text-color);
        --border-focus-color: var(--primary-color);

        --title-color: light-dark(var(--dark-color), var(--light-color));
        --strong-color: oklch(from var(--title-color) l c h / .95);
        --text-color: oklch(from var(--title-color) l c h / .85);
        --muted-color: oklch(from var(--title-color) l c h / .6);
        --outline-color: oklch(from var(--title-color) l c h / .3);
        --shadow-color: oklch(from var(--title-color) l c h / .15);

        --box-shadow: 0 0 26px 2px rgba(0, 0, 0, 0.20);

        --font-title: "AnekLatin-Variable";
        --font-text: "WixMadeforDisplay-Variable";
        --font-icon: normal 400 var(--text-size-normal)/1 "inodia-icons";
        --line-height: 1.618;
        --letter-spacing: 0;

        --h1-font-size: clamp(1.5rem, 1.2rem + 1.5vw, 3rem);
        --h2-font-size: clamp(1.125rem, .95rem + .875vw, 2rem);
        --h3-font-size: clamp(1rem, .95rem + .25vw, 1.25rem);
        --h4-font-size: clamp(.75rem, .675rem + .375vw, 1.125rem);
        --text-size-big: clamp(1rem, .95rem + .25vw, 1.25rem);
        --text-size-normal: 1rem;
        --text-size-small: .75rem;

        --text-weight-normal: 400;
        --text-weight-medium: 500;
        --text-weight-bold: 700;

        --spacing-4xs: .25rem;
        --spacing-3xs: .5rem;
        --spacing-2xs: .75rem;
        --spacing-xs: 1rem;
        --spacing-sm: clamp(1rem, .875rem + .625vw, 1.5rem);
        --spacing-md: clamp(1.5rem, 1.375rem + .625vw, 2rem);
        --spacing-lg: clamp(2rem, 1.75rem + 1.25vw, 3rem);
        --spacing-xl: clamp(2.5rem, 2.125rem + 1.875vw, 4rem);
        --spacing-2xl: clamp(3rem, 2.25rem + 3.75vw, 6rem);
        --spacing-3xl: clamp(4rem, 3rem + 5vw, 8rem);
        --spacing-4xl: clamp(5rem, 3.75rem + 6.25vw, 10rem);
        --columns-gap: 9%;

        --transition-default: all .3s ease-in-out, outline .1s ease-in-out;

        --product-img-ratio: 1;
        --product-title-family: var(--font-title);
        --product-title-size: var(--text-size-normal);
        --product-title-weight: var(--text-weight-normal);
        --product-title-line-height: 1.1;
        --product-title-letter-spacing: .12em;
        --product-title-transform: initial;
        --font-product-title: var(--product-title-weight) var(--product-title-size)/var(--product-title-line-height) var(--product-title-family);

        --product-price-family: var(--font-title);
        --product-price-size: var(--text-size-normal);
        --product-price-weight: var(--text-weight-bold);
        --product-price-line-height: 1;
        --product-price-letter-spacing: var(--letter-spacing);
        --font-product-price: var(--product-price-weight) var(--product-price-size)/var(--product-price-line-height) var(--product-price-family);
    }

    @media (prefers-contrast: more) {

        :root {
            --border-color: var(--title-color);
            --border-hover-color: var(--title-color);
            --strong-color: var(--title-color);
            --text-color: var(--title-color);
            --muted-color: var(--title-color);
            --outline-color: var(--title-color);
        }
    }

    .inodia-icons.calendar:before {
        content: "\e91f" / "";
    }
    .inodia-icons.card:before {
        content: "\e920" / "";
    }
    .inodia-icons.dark_mode:before {
        content: "\e921" / "";
    }
    .inodia-icons.france:before {
        content: "\e922" / "";
    }
    .inodia-icons.light_mode:before {
        content: "\e923" / "";
    }
    .inodia-icons.long_arrow_left:before {
        content: "\e924" / "";
    }
    .inodia-icons.long_arrow_right:before {
        content: "\e925" / "";
    }
    .inodia-icons.play:before {
        content: "\e926" / "";
    }
    .inodia-icons.qualite:before {
        content: "\e927" / "";
    }
    .inodia-icons.star:before {
        content: "\e928" / "";
    }
    .inodia-icons.star_filled:before {
        content: "\e929" / "";
    }
    .inodia-icons.tiktok:before {
        content: "\e92a" / "";
    }
    .inodia-icons.traits:before {
        content: "\e92b" / "";
    }
    .inodia-icons.youtube:before {
        content: "\e92c" / "";
    }
    .inodia-icons.linkedin:before {
        content: "\e91e" / "";
    }
    .inodia-icons.instagram:before {
        content: "\e91d" / "";
    }
    .inodia-icons.facebook:before {
        content: "\e91c" / "";
    }
    .inodia-icons.trash:before {
        content: "\e91b" / "";
    }
    .inodia-icons.burger:before {
        content: "\e91a" / "";
    }
    .inodia-icons.chat:before {
        content: "\e919" / "";
    }
    .inodia-icons.bell:before {
        content: "\e918" / "";
    }
    .inodia-icons.home:before {
        content: "\e917" / "";
    }
    .inodia-icons.phone:before {
        content: "\e916" / "";
    }
    .inodia-icons.mail:before {
        content: "\e915" / "";
    }
    .inodia-icons.clock:before {
        content: "\e914" / "";
    }
    .inodia-icons.download:before {
        content: "\e913" / "";
    }
    .inodia-icons.pin:before {
        content: "\e912" / "";
    }
    .inodia-icons.ticket:before {
        content: "\e911" / "";
    }
    .inodia-icons.discount:before {
        content: "\e910" / "";
    }
    .inodia-icons.package:before {
        content: "\e90f" / "";
    }
    .inodia-icons.rgpd:before {
        content: "\e90e" / "";
    }
    .inodia-icons.plus:before {
        content: "\e90d" / "";
    }
    .inodia-icons.edit:before {
        content: "\e90c" / "";
    }
    .inodia-icons.checkmark:before {
        content: "\e90b" / "";
    }
    .inodia-icons.cross:before {
        content: "\e90a" / "";
    }
    .inodia-icons.upload:before {
        content: "\e909" / "";
    }
    .inodia-icons.hide:before {
        content: "\e908" / "";
    }
    .inodia-icons.show:before {
        content: "\e907" / "";
    }
    .inodia-icons.search:before {
        content: "\e906" / "";
    }
    .inodia-icons.profile:before {
        content: "\e905" / "";
    }
    .inodia-icons.cart:before {
        content: "\e904" / "";
    }
    .inodia-icons.arrow_left:before {
        content: "\e903" / "";
    }
    .inodia-icons.arrow_right:before {
        content: "\e902" / "";
    }
    .inodia-icons.arrow_up:before {
        content: "\e901" / "";
    }
    .inodia-icons.arrow_down:before {
        content: "\e900" / "";
    }

    @media screen and (max-width: 60rem) {

        :root {
            --wrapper-size-mobile: 85%;
        }
    }
}

@layer utility {

    .sr-only,
    .bouton-icon span span {
        border: 0;
        clip: inset(50%);
        inline-size: 1px;
        block-size: 1px;
        margin: -1px;
        padding: 0;
        white-space: nowrap;
        overflow: hidden;
        position: absolute;
    }

    .skip-link {
        background: var(--alert-info-color);
        color: var(--background-color);
        inline-size: 100%;
        padding-block: var(--spacing-4xs);
        padding-inline: var(--spacing-3xs);
        position: fixed;
        inset-block-start: 0;
        inset-inline-start: 0;
        z-index: 50000;
    }

    #adveg-grecaptcha-legal,
    .skip-link:not(:focus-visible),
    .skip-link::after,
    :is([hidden], .wpcf7-display-none) {
        display: none;
    }

    .skip-link:not(:focus-visible) {
        translate: 0 -150%;
    }

    .form-wrapper:has(input)::before {
        font-size: var(--text-size-small);
    }

    form:not(.login-form) .form-wrapper:not(:has(input:user-valid, input:user-invalid))::before {
        opacity: 0;
    }

    form:not(.login-form) .form-wrapper:has(input:user-valid)::before {
        content: "\e90b" / "";
        color: var(--alert-success-color);
    }

    form:not(.login-form) .form-wrapper:has(input:user-invalid)::before {
        content: "\e90a" / "";
        color: var(--alert-danger-color);
    }

    form:not(.login-form) .form-wrapper input:user-valid {
        border-color: var(--alert-success-color);
    }

    .form-control.is-invalid,
    form:not(.login-form) .form-wrapper input:user-invalid {
        border-color: var(--alert-danger-color);
    }

    form:not(.login-form) .form-wrapper input:user-valid:focus {
        --_input-focus-shadow-color: oklch(from var(--alert-success-color) l c h / 10%);
    }

    .form-control.is-invalid:focus,
    form:not(.login-form) .form-wrapper input:user-invalid:focus {
        --_input-focus-shadow-color: oklch(from var(--alert-danger-color) l c h / 10%);
    }

    :is(.alert, .wpcf7-response-output) {
        background: oklch(from var(--_alert-color) l c h / 10%);
        border: var(--border-width) solid oklch(from var(--_alert-color) l c h / 15%);
        border-radius: clamp(0rem, var(--border-radius) / 2, .5rem);
        color: var(--_alert-color);
        outline-color: var(--_alert-color);
        padding-block: var(--spacing-2xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
    }

    .checkout-step__content .alert {
        padding-block: 0;
        padding-inline: 0;
    }

    :is(.alert, .wpcf7-response-output),
    :is(.alert, .wpcf7-response-output) * {
        font: var(--text-weight-medium) var(--text-size-small)/1.3 var(--font-text);
    }

    :is(.alert, .wpcf7-response-output) * {
        color: inherit;
    }

    .alert-danger {
        --_alert-color: var(--alert-danger-color);
    }

    .alert-warning {
        --_alert-color: var(--alert-warning-color);
    }

    .alert-success {
        --_alert-color: var(--alert-success-color);
    }

    .alert-info {
        --_alert-color: var(--alert-info-color);
    }

    @media only screen and (hover: hover) and (pointer: fine) {

        .alert a:hover {
            color: var(--text-color);
        }

        .alert a:active {
            color: var(--title-color);
        }
    }

    @media only screen and (hover: none) and (pointer: coarse) {

        .alert a:active {
            color: var(--text-color);
        }
    }

    .bouton:disabled {
        --_btn-color: var(--shadow-color);
        --_btn-text-color: var(--muted-color);
        border-color: transparent;
        cursor: not-allowed;
    }

    .wpcf7-not-valid-tip {
        color: var(--alert-danger-color);
    }

    @container viewport (70rem < inline-size) {

        .show-inodia-tablet {
            display: none;
        }
    }

    @container viewport (inline-size <= 70rem) {

        .hide-inodia-tablet {
            display: none;
        }
    }

    @container viewport (45rem < inline-size) {

        .show-inodia-mobile {
            display: none;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .hide-inodia-mobile {
            display: none;
        }
    }

    @container viewport (inline-size <= 30rem) {

        .alert:not(:last-child) {
            margin-block-end: var(--spacing-2xs);
        }

        .alert,
        .alert :is(a, p, li, span) {
            font-size: var(--text-size-small);
        }
    }
}

@layer init {

    *, ::after, ::before {
        box-sizing: border-box;
        margin: 0;
        padding: 0;
    }
}

@layer third-party {

    @keyframes spinner-border {
        to {
            rotate: 1turn;
        }
    }
    :is(.spinner-border, .spinner-grow) {
        border-radius: 50%;
        display: inline-block;
        inline-size: 2rem;
        block-size: 2rem;
        vertical-align: text-bottom;
    }
    .spinner-border {
        animation: spinner-border .75s linear infinite;
        border: .25em solid;
        border-inline-end: .25em solid transparent;
    }
    @keyframes spinner-grow {
        0% {
            scale: 0;
        }
        50% {
            opacity: 1;
            scale: 1;
        }
    }
    .spinner-grow {
        animation: spinner-grow .75s linear infinite;
        background-color: currentColor;
    }
    @media (prefers-reduced-motion: reduce) {
        :is(.spinner-border, .spinner-grow) {
            animation-duration: 1.5s;
        }
    }
    :is(.modal-dialog, .modal-content, .modal-body, .swiper-slide, .swiper, .swiper-inodia, .swiper-wrapper) {
        position: relative;
    }
    :is(.swiper, .swiper-inodia) {
        margin-inline: auto;
        overflow: hidden;
        z-index: 1;
    }
    .swiper-wrapper {
        box-sizing: content-box;
        display: flex;
        inline-size: 100%;
        block-size: 100%;
        transition-property: transform;
        transform: translateZ(0);
        z-index: 1;
    }
    .swiper-pointer-events {
        touch-action: pan-y;
    }
    .swiper-pointer-events.swiper-vertical {
        touch-action: pan-x;
    }
    .swiper-slide {
        flex-shrink: 0;
        block-size: 100%;
        transition-property: transform;
        inline-size: 100%;
    }
    .swiper-backface-hidden .swiper-slide {
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transform: translateZ(0);
    }
    .swiper-pagination {
        text-align: center;
        transform: translateZ(0);
        transition: opacity .3s;
    }
    :is(.swiper-pagination.swiper-pagination-hidden, .modal-backdrop.fade, .spinner-grow) {
        opacity: 0;
    }
    .swiper-pagination-bullet {
        border-radius: 50%;
        display: inline-block;
        block-size: .5rem;
        inline-size: .5rem;
    }
    .swiper-pagination-bullet:not(.swiper-pagination-bullet-active) {
        opacity: .2;
    }
    :where(.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets) {
        inset-inline-end: .5rem;
        inset-block-start: 50%;
        transform: translate3d(0, -50%, 0);
    }
    :where(.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets) .swiper-pagination-bullet {
        display: block;
    }
    :where(.swiper-pagination-lock, .dropdown-menu, .modal, .swiper-button-lock, .cart-loader, .page-loader, .swiper-pagination-bullet:only-child) {
        display: none;
    }
    :is(.cart-loader, .page-loader) {
        background: oklch(from var(--background-color) l c h / 50%);
        align-items: center;
        justify-content: center;
        inset: 0;
    }
    .cart-loader {
        position: absolute;
        z-index: 10;
    }
    .page-loader {
        position: fixed;
        z-index: 1001;
    }
    .cart-loading .cart-loader,
    .page-loader-active .page-loader {
        display: flex;
    }
    .modal-open .modal {
        overflow-x: hidden;
        overflow-y: auto;
    }
    .modal {
        block-size: 100%;
        inline-size: 100%;
        overflow: hidden;
        position: fixed;
        inset-block-start: 0;
        inset-inline-start: 0;
        z-index: 2050;
    }
    .modal-dialog {
        pointer-events: none;
        inline-size: auto;
    }
    .modal.fade:not(.show) .modal-dialog {
        transform: translateY(-50px);
    }
    @media (prefers-reduced-motion: no-preference) {
        .modal.fade .modal-dialog {
            transition: transform .3s ease-out;
        }
    }
    .modal-content {
        display: flex;
        flex-flow: column;
        pointer-events: auto;
        inline-size: 100%;
    }
    .modal-backdrop {
        inline-size: 100vw;
        block-size: 100vh;
        position: fixed;
        inset-block-start: 0;
        inset-inline-start: 0;
        z-index: 2040;
    }
    .modal-header {
        padding: 1rem;
    }
    .modal-body {
        flex: 1 1 auto;
        padding: 1rem;
    }
    .modal-footer {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
    }
    .modal-fullscreen .modal-dialog {
        inline-size: 100vw;
        block-size: 100%;
        max-inline-size: none;
    }
    .modal-fullscreen .modal-content {
        block-size: 100%;
    }
    .modal-fullscreen .modal-body {
        overflow-y: auto;
    }
    #acb-banner {
        background: var(--background-grey);
        border-radius: var(--border-radius);
        box-shadow: 0 5px 50px rgba(var(--dark-text-color), .25);
        bottom: auto;
        overflow: auto;
        border: none;
        display: flex;
        flex-flow: column;
        justify-content: flex-start;
        max-width: 750px;
        padding: 50px;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
        z-index: 99999;
        position: fixed !important;
        width: 100%;
    }
    body #acb-banner-wrapper {
        margin: 0 !important;
        position: relative;
        z-index: 9999999999;
    }
    body #acb-banner-wrapper::after {
        content: "";
        display: flex;
        width: 100vw;
        height: 100vh;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 9999;
        transform: initial;
        background: var(--muted-color);
    }
    body #acb-banner-wrapper #acb-banner #acb-action {
        margin-top: 2.5rem;
    }
    body #acb-banner-wrapper #acb-banner #acb-content > p {
        color: var(--dark-title-color);
        font-family: var(--font-text);
        font-size: 1rem;
        font-weight: 500;
        line-height: 1.3;
        letter-spacing: var(--letter-spacing);
        text-transform: initial;
    }
    #pmAcbFooterConsentLinkContainer,
    body #acb-banner-wrapper #acb-content #detail-cookies {
        display: none !important;
    }
    body #acb-banner-wrapper #acb-content #detail-cookies.show {
        display: block !important;
    }
    body #acb-banner-wrapper #acb-content #detail-cookies.show #acb-close-button {
        font-size: .75rem;
        padding: 12px 25px !important;
        margin-block-start: .75rem !important;
    }
    body #acb-banner-wrapper #acb-content #detail-cookies, body #acb-banner-wrapper #acb-content #detail-cookies.show {
        margin: 1.25rem 0;
    }
    body #acb-banner-wrapper #acb-content #detail-cookies.show #acb-close-button {
        margin: 15px 15px 0 0;
    }
    body #acb-banner-wrapper #acb-banner #acb-action #acb-accept-all-button, body #acb-banner-wrapper #acb-banner #acb-action #acb-deny-all-button, body #acb-banner-wrapper #acb-banner #acb-action #acb-customize-button, body #acb-banner-wrapper #acb-content #detail-cookies.show #acb-close-button {
        box-shadow: none;
        height: auto;
    }
    body #acb-banner-wrapper #acb-banner #acb-action > * {
        margin-left: 30px;
    }
    body #acb-banner-wrapper #acb-banner #acb-action > *:first-child {
        margin-left: 0;
    }
    @media screen and (max-width: 989px) {
        body #acb-banner-wrapper #acb-banner {
            width: 85% !important;
            max-width: 85%;
            margin: 0 !important;
        }
    }
    @media screen and (max-width: 480px) {
        body #acb-banner-wrapper #acb-banner {
            padding: 30px 20px;
        }
        body #acb-banner-wrapper #acb-banner #acb-content > p {
            font-size: .75rem;
        }
    }
}

@layer reset {

    @view-transition {
        navigation: auto;
    }

    ::-webkit-scrollbar {
        background: var(--background-color);
        inline-size: 8px;
        block-size: 8px;
    }

    ::-webkit-scrollbar-thumb {
        background: var(--primary-color);
        border-radius: calc(var(--border-radius) / 4);
    }

    ::selection {
        background: var(--primary-hover-color);
        color: var(--background-color);
    }

    html:has(.light-scheme-color),
    :is(.light-scheme-color:not(.dark-default), .dark-scheme-color:not(.light-default)) .clair,
    .dark-scheme-color.light-default .fonce {
        color-scheme: light;
    }

    html:has(.dark-scheme-color),
    :is(.dark-scheme-color:not(.light-default), .light-scheme-color:not(.dark-default)) .fonce,
    .light-scheme-color.dark-default .clair {
        color-scheme: dark;
    }

    .light-default.dark-scheme-color .header-top__block--logo img {
        filter: brightness(10);
    }

    .dark-default.light-scheme-color .header-top__block--logo img {
        filter: brightness(0);
    }

    :is(html, body) {
        block-size: auto;
        min-block-size: fill-available;
        min-block-size: -webkit-fill-available;
    }

    html {
        scroll-padding: var(--spacing-lg);
        container: viewport / inline-size;
        overflow: auto;
    }

    @media (prefers-reduced-motion: no-preference) {

        html {
            scroll-behavior: smooth;
        }
    }

    @-moz-document url-prefix() {

        html {
            scrollbar-color: var(--primary-color) var(--background-color);
            scrollbar-width: thin;
        }
    }

    body {
        display: flex;
        flex-flow: column;
        inline-size: 100%;
        max-inline-size: 100%;
        min-block-size: 100vh;
        overflow: clip;
        text-wrap: pretty;
        position: relative;
    }

    main {
        flex-grow: 1;
    }

    :is(p, li, dt, dd, time, span, small, strong, address) {
        color: var(--text-color);
        font-family: var(--font-text);
    }

    :is(p, li, time, span, strong) {
        line-height: var(--line-height);
    }

    :is(p, li, dt, time, span:not(.elementor-button-text, .elementor-button-content-wrapper), small, address) {
        font-weight: var(--text-weight-normal);
        letter-spacing: var(--letter-spacing);
    }

    .elementor-blockquote__content {
        font-weight: var(--text-weight-normal);
        font-style: italic;
        margin-block-start: 0;
    }

    :is(b, dd, strong) {
        color: var(--strong-color);
        font-weight: var(--text-weight-bold);
    }

    :where(p, .alert):not(:last-child, .h2, .h3, .h4, .label, .no-margin, :has(+ .modal)) {
        margin-block-end: var(--spacing-xs);
    }

    :where(p:not(.h2, .h3, .h4, .label), .alert):last-child {
        margin-block-end: 0;
    }

    .message-rgpd {
        font: var(--text-weight-normal) var(--text-size-small)/1.3 var(--font-text);
        text-align: left;
        margin-block-end: var(--spacing-md);
    }

    small {
        color: var(--muted-color);
        font-size: var(--text-size-small);
        line-height: 1.3;
    }

    sup {
        color: var(--alert-danger-color);
        font: inherit;
        position: static;
        vertical-align: super;
    }

    :is(li, summary) {
        list-style: none;
    }

    button {
        all: unset;
        box-sizing: border-box;
        text-align: center;
    }

    :is(a, input, button, select, textarea) {
        outline: none;
        transition: var(--transition-default);
    }

    :is(a, button, select, summary, [type=submit], input[type=radio]) {
        appearance: none;
        cursor: pointer;
        touch-action: manipulation;
    }

    a {
        text-decoration: none;
    }

    a[href^="tel:"] {
        white-space: nowrap;
    }

    :where(iframe, input[type=file]:focus) {
        border: none;
    }

    address {
        font-style: normal;
        line-height: 1.3;
    }

    :is(a, button, [type=submit]):focus-visible,
    .custom-radio:has(input:focus-visible),
    .custom-checkbox input[type=checkbox]:focus-visible + span {
        outline: var(--outline-width) solid var(--primary-color);
        outline-offset: calc(var(--outline-width) * 2);
    }

    :is(a, button, [type=submit]):focus:not(:focus-visible) {
        outline: none;
    }

    :is(a, button) > i,
    :is(a, button) > span {
        color: inherit;
    }

    :is(input, textarea)::placeholder {
        color: var(--muted-color);
    }

    input[type=search]::-webkit-search-decoration,
    input[type=search]::-webkit-search-cancel-button,
    input[type=search]::-webkit-search-results-button,
    input[type=search]::-webkit-search-results-decoration,
    input[type=number]::-webkit-inner-spin-button {
        appearance: none;
    }

    textarea {
        resize: vertical;
    }

    :is(.label-hide-radio, .grecaptcha-badge),
    .custom-checkbox small br {
        display: none;
    }

    .radio-inline {
        display: flex;
        align-items: center;
        gap: var(--spacing-3xs);
    }

    .radio-inline .custom-radio + small {
        color: var(--text-color);
        font-weight: var(--text-weight-medium);
    }

    :is(.custom-radio, .custom-checkbox, .search-form__form-group),
    .featured-products .wrapper-slider {
        position: relative;
    }

    :is(.custom-radio, .custom-checkbox) small {
        color: var(--text-color);
    }

    :where(.custom-radio, .custom-radio > *) {
        border-radius: 100%;
        aspect-ratio: 1;
        block-size: var(--text-size-normal);
    }

    .custom-radio {
        border: var(--border-width) solid var(--border-color);
        transition: all .15s ease-in-out;
    }

    .custom-radio::before,
    .custom-radio > * {
        block-size: calc(100% + (var(--border-width) * 2));
        position: absolute;
        inset: 50% auto auto 50%;
        translate: -50% -50%;
    }

    .custom-radio::before {
        content: "";
        border: .25rem solid transparent;
        border-radius: 100%;
        aspect-ratio: 1;
        display: flex;
        transition: all .15s ease-in-out;
    }

    .custom-radio:has(input[type=radio]:checked),
    .custom-radio:has(input[type=radio]:checked)::before {
        border-color: var(--primary-color);
    }

    .custom-checkbox {
        line-height: 1;
    }

    .custom-checkbox input[type=checkbox] + span {
        transition: var(--transition-default);
    }

    .custom-checkbox input[type=checkbox]:focus:not(:focus-visible) + span {
        box-shadow: 0 0 0 1px var(--shadow-color);
    }

    .custom-checkbox input[type=checkbox]:checked:focus:not(:focus-visible) + span {
        box-shadow: 0 0 0 2px oklch(from var(--primary-color) l c h / 15%);
    }

    .custom-checkbox small em:not(:empty) {
        display: table;
        margin-block-start: var(--spacing-3xs);
    }

    .custom-checkbox :where(input[type=checkbox], input[type=checkbox] + span) {
        aspect-ratio: 1;
        block-size: var(--text-size-normal);
    }

    .custom-checkbox input[type=checkbox] {
        opacity: 0;
        position: absolute;
    }

    .custom-checkbox input[type=checkbox] + span {
        border: var(--border-width) solid var(--muted-color);
        border-radius: clamp(0rem, var(--border-radius) / 2, .25rem);
        line-height: 1;
        position: relative;
        inset-block-start: calc(var(--text-size-normal) / 5);
        margin-block-start: calc((var(--text-size-normal) / 5) * -1);
    }

    .custom-checkbox span em {
        color: var(--border-color);
        font-weight: var(--text-weight-normal);
    }

    .custom-checkbox input[type=checkbox] + span .checkbox-checked {
        background: var(--primary-color);
        color: var(--light-color);
        display: grid;
        place-items: center;
        font-size: .5rem;
        position: absolute;
        inset: 0;
        transition: all .15s ease-in-out;
    }

    .custom-checkbox input[type=checkbox]:checked + span {
        border-color: var(--primary-color);
    }

    .custom-checkbox input[type=checkbox]:not(:checked) + span .checkbox-checked {
        opacity: 0;
    }

    .custom-checkbox input[type=checkbox][disabled]:checked + span {
        border-color: var(--border-color);
    }

    .custom-checkbox input[type=checkbox][disabled] + span .checkbox-checked {
        background: var(--border-color);
        color: var(--background-color);
    }

    thead .custom-checkbox input[type=checkbox] + span {
        inset: initial;
    }

    :is(picture, figure, time) {
        display: flex;
    }

    img {
        font-style: italic;
        block-size: auto;
        max-inline-size: 100%;
        vertical-align: middle;
    }

    dt + dd {
        margin-block: var(--spacing-3xs) 0;
    }

    dd + dt {
        margin-block: var(--spacing-md) 0;
    }

    [popover] {
        border: none;
        margin: auto;
    }

    [popover]:not(:popover-open, dialog[open]) {
        display: none;
    }

    dialog {
        border: none;
        max-inline-size: initial;
        max-block-size: initial;
    }

    html:has(dialog[open], .modal-open, .mobile-filters-open) {
        overflow: hidden;
    }

    @-moz-document url-prefix() {

        body.modal-open .modal {
            scrollbar-width: none;
        }
    }

    body.modal-open .modal::-webkit-scrollbar {
        display: none;
    }

    .page-loader {
        z-index: 2001;
    }

    :is(.inodia-icons, .btn-touchspin),
    .inodia-icons :is(a, span),
    .bouton-icon a > span,
    :is(.ino-toggle-head, .elementor-accordion-title)::after {
        font: var(--font-icon);
        letter-spacing: 0;
    }

    .elementor-container {
        max-width: initial;
    }

    :is(.elementor-element-populated, .elementor-button, .elementor-testimonial-image),
    .elementor-pagination-position-outside .swiper,
    .elementor-widget-product-carousel .elementor-carousel-wrapper {
        padding: 0;
    }

    .elementor-widget:not(:last-child) {
        margin: 0;
    }

    .elementor-select-wrapper .select-caret-down-wrapper,
    :where(.elementor-element-edit-mode, #elementor-add-new-section) li::before,
    :is(.swiper-button-prev, .swiper-button-next, .elementor-text-editor)::after,
    :is(.elementor-tab-content, .elementor-toggle-content, .elementor-accordion-content, .elementor-widget-text-editor, .product-description-short, .product-description-long) :is(br, *:empty) {
        display: none;
    }

    .elementor-button {
        border-radius: 0;
        font-size: inherit;
        fill: initial;
    }

    :where(.elementor-element-edit-mode, #elementor-add-new-section) li {
        padding-inline-start: 0 !important;
    }

    .elementor-widget-wrap {
        gap: 0;
    }

    :is(.swiper, .elementor-widget-wrap > .elementor-element) {
        width: auto;
        inline-size: 100%;
    }

    :is(.elementor-widget-image, .elementor-testimonial-wrapper) {
        text-align: left;
    }

    .elementor-top-section:not(.full, .block) .elementor-widget-image:not(.contain) img {
        border-radius: var(--border-radius);
    }

    .elementor-top-section[data-settings='{"background_background":"classic"}'] {
        background-position: center center;
        background-repeat: no-repeat;
        background-size: cover;
    }

    .elementor-top-section[data-settings='{"background_background":"classic"}']:not(:has(.fond)) {
        border-image: fill 0 linear-gradient(oklch(from var(--dark-color) l c h / 50%), oklch(from var(--dark-color) l c h / 50%));
    }

    :is(.elementor-testimonial-image, .elementor-icon) :is(i, svg, img) {
        width: auto;
        height: auto;
    }

    :is(.elementor-accordion-item, .elementor-tab-title, .elementor-tab-content) {
        border: none;
        padding: 0;
    }

    :is(.product-description-long, .elementor-tab-content, .elementor-widget-text-editor),
    :is(.product-description-short, .product-description-long, .elementor-tab-content, .elementor-widget-text-editor) :is(h1, h2, h3, h4, p, li, span, strong) {
        background: transparent !important;
        color: var(--text-color) !important;
        font: var(--text-weight-normal) var(--text-size-normal)/var(--line-height) var(--font-text) !important;
        letter-spacing: var(--letter-spacing) !important;
        text-decoration: none !important;
        text-wrap: inherit !important;
    }

    :is(.product-description-short) :is(h1, h2, h3, h4, p, li, span, strong),
    :is(.product-description-short) {
        background: transparent !important;
        color: var(--text-color) !important;
        font: var(--text-weight-normal) var(--text-size-small)/var(--line-height) var(--font-text) !important;
        letter-spacing: var(--letter-spacing) !important;
        text-decoration: none !important;
        text-wrap: inherit !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor).text-big,
    :is(.elementor-tab-content, .elementor-widget-text-editor).text-big :is(h1, h2, h3, h4, p, li, span, strong) {
        font-size: var(--text-size-big) !important;
    }

    :is(.elementor-tab-content, .elementor-widget-text-editor).text-small,
    :is(.elementor-tab-content, .elementor-widget-text-editor).text-small :is(h1, h2, h3, h4, p, li, span, strong) {
        font-size: var(--text-size-small) !important;
    }

    :is(.product-description-short, .product-description-long, .elementor-tab-content, .elementor-widget-text-editor) strong {
        color: var(--strong-color) !important;
        font-weight: var(--text-weight-bold) !important;
    }

    :is(.product-description-short, .product-description-long, .elementor-tab-content, .elementor-widget-text-editor) a * {
        color: inherit !important;
    }

    :is(.product-description-short, .product-description-long, .elementor-tab-content, .elementor-widget-text-editor) :is(h1, h2, h3, h4):not(:last-child) {
        margin-block-end: var(--spacing-xs) !important;
    }

    :is(.product-description-short, .product-description-long, .elementor-tab-content, .elementor-widget-text-editor) :is(h1, h2, h3, h4):last-child {
        margin-block-end: 0 !important;
    }

    .elementor-pagination-position-inside .swiper-pagination-bullets {
        position: absolute;
        inset-block-end: var(--spacing-xs);
        z-index: 1;
    }

    .elementor-pagination-position-inside .swiper-pagination-bullet {
        background: var(--light-color);
    }

    .elementor-widget-product-carousel .products-list__block {
        flex: initial;
        max-inline-size: initial;
        margin: 0;
    }

    .elementor-icon :is(i, svg) {
        fill: transparent;
    }

    main .product-slider {
        display: flex;
        flex-flow: column;
        margin-inline: calc(var(--spacing-2xs) * -1);
    }

    main :is(.swiper, .swiper-inodia):not(.swiper-initialized),
    main :is(.swiper, .swiper-inodia):not(.swiper-initialized) .swiper-wrapper {
        display: flex;
        overflow: hidden;
    }

    main :is(.swiper, .swiper-inodia):not(.swiper-initialized):has(> .swiper-wrapper) {
        flex-flow: column;
    }

    main :is(.swiper, .swiper-inodia):not(.swiper-initialized) .swiper-slide {
        display: flex;
        flex: 0 0 auto;
        inline-size: calc(100% / var(--_nb-slide-item));
    }

    main .swiper-pagination {
        display: flex;
        justify-content: center;
        gap: var(--spacing-2xs);
        inline-size: 100%;
        position: static;
        margin-block-start: var(--spacing-lg);
    }

    main .swiper-pagination-bullet {
        background: var(--title-color);
        margin: 0;
    }

    main .swiper-pagination-bullets:has(.swiper-pagination-bullet-active:only-child) {
        display: none;
    }

    main :is(.swiper-button-prev, .swiper-button-next) {
        color: var(--title-color);
    }

    @container viewport (30rem < inline-size) {

        .label-hide {
            display: none;
        }
    }

    @container viewport (inline-size <= 30rem) {

        .label-hide + div :is(input, textarea)::placeholder {
            color: transparent;
        }
    }
}

@layer structure {

    .page-sidebar-left.hide-col,
    body:not(.page-customer-account, .page-addresses) main .block-myaccount-infos {
        display: none;
    }

    .header + .notifications {
        margin-block-start: var(--spacing-2xl);
    }

    .page-content > .notifications {
        margin-block-end: var(--spacing-lg);
    }

    main .page-header + .notifications {
        margin-block-start: 0;
    }

    body:not(.page-index) main {
        margin-block-start: var(--spacing-sm);
    }

    .header-absolute:not(.header-absolute-home) + main,
    .page-index .header-absolute-home + main {
        margin-block-start: calc((var(--logo-height) + (var(--padding-header) * 2)) * -1);
    }

    figcaption:not(.homeslider__caption),
    .center :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .elementor-widget-container, .elementor-widget-wrap),
    .center:where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong),
    .center:is(.h1, .h2, .h3, .h4) .elementor-heading-title {
        align-items: center;
        text-align: center;
        margin-inline: auto;
        text-wrap: balance;
    }

    :where(.page-search, .layout-left-column:has(.page-sidebar-left:not(.not-found))) .product-miniatures__list {
        margin-block-start: var(--spacing-md);
    }

    main [class*="-miniatures__list"] {
        display: grid;
        gap: var(--items-gap);
        grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--_card-min-size)), 1fr));
    }

    .product-miniatures__list {
        --_card-min-size: var(--product-min-size);
    }

    .address-miniatures__list {
        --_card-min-size: var(--items-min-size);
    }

    .ybc-blog-related-posts.on_product {
        background-color: initial;
        box-shadow: initial;
        -webkit-box-shadow: initial;
        margin-top: initial;
        padding: initial;
        margin-bottom: initial;
        padding-bottom: initial;
        border: 0;
        margin-block-start: var(--spacing-4xl);
    }

    .ybc-blog-related-posts.on_product .title_blog {
        text-align: center;
    }

    .ybc-blog-related-posts.on_product > .ybc-blog-related-posts-wrapper,
    .container,
    :is(.ino-section-boxed, .elementor-section-boxed) > :is(.ino-container, .elementor-container),
    .no-main-container main > :is(.breadcrumb, .page-header) {
        inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
        margin-inline: auto;
    }

    :is(.ino-section-boxed, .elementor-section-boxed).container-small > :is(.ino-container, .elementor-container) {
        inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size-small));
    }

    :is(.ino-row, .elementor-row),
    .container .container:not(.ino-modal-container, .ino-nav-sub-menu),
    .page-content > .notifications > .container,
    .elementor-section-boxed > .elementor-container :is(.container, .elementor-container),
    :where(.checkout-modal, .category-description, .elementor-section-boxed, .content-wrapper.left-column) .elementor-section-boxed > .elementor-container {
        inline-size: 100%;
    }

    :is(.page-pagenotfound, .page-product, .product-list) .page-not-found {
        inline-size: min(40rem, 100%);
        margin-inline: auto;
    }

    .user-form {
        inline-size: min(50rem, 100%);
    }

    .user-form .nav {
        display: flex;
        margin-block: var(--spacing-sm);
    }

    .user-form .nav .nav-item:not(:first-child, :last-child) {
        margin-inline: 1rem;
    }

    .user-form:not(.left) {
        margin-inline: auto;
    }

    :is(.ino-row, .elementor-row) {
        display: flex;
        flex-flow: row;
        gap: calc(var(--spacing-4xl) * .66) var(--columns-gap);
    }

    :is(.elementor-section, .ino-top-section):not(.ino-grid).full :is(.elementor-row, .ino-row) {
        gap: 0;
    }

    :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape),
    :is(.elementor-top-section, .ino-top-section).fond.block:not(.elementor-section-full_width) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        border-radius: clamp(0rem, var(--border-radius), clamp(4rem, 3rem + 5vw, 8rem));
        overflow: hidden;
    }

    .ino-col-txt,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)) > .elementor-column-wrap > .elementor-widget-wrap,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-column-wrap > .elementor-widget-wrap {
        display: flex;
        flex-flow: column;
        justify-content: center;
    }

    .ino-col-img :is(figure, picture, img),
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) :is(.elementor-column-wrap, .elementor-widget-wrap, .elementor-widget-image, .elementor-widget-image-carousel, .elementor-widget-container, .elementor-image, .swiper, .swiper-wrapper, .swiper-slide, figure, picture, img),
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) :is(.elementor-column-wrap, .elementor-widget-wrap, .elementor-widget-image, .elementor-widget-image-carousel, .elementor-widget-container, .elementor-image, .swiper, .swiper-wrapper, .swiper-slide, figure, picture, img) {
        inline-size: 100%;
        block-size: 100%;
    }

    iframe,
    .ino-txt-img:not(.full) .ino-col-img:not(.contain) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child:not(.contain)) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child:not(.contain)) img {
        border-radius: var(--border-radius);
    }

    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:only-child) .elementor-top-column:has(.elementor-widget-image:only-child) picture,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:first-child + .bouton-icon:last-child) .elementor-top-column:has(.elementor-widget-image:first-child + .bouton-icon:last-child) picture {
        position: relative;
        z-index: 1;
    }

    .ino-col-img:not(.contain) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) img {
        object-fit: cover;
    }

    .ino-txt-img.full .ino-col-img img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) .elementor-widget-image.contain img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-widget-image.contain img {
        border-radius: 0;
    }

    .ino-col-img.contain img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:only-child) .elementor-top-column:has(.elementor-widget-image:only-child) .elementor-widget-image.contain img,
    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:first-child + .bouton-icon:last-child) .elementor-top-column:has(.elementor-widget-image:first-child + .bouton-icon:last-child) .elementor-widget-image.contain img {
        object-fit: contain;
        z-index: 1;
    }

    .elementor-top-section:has(.elementor-column:not(.elementor-col-100) .elementor-widget-image:first-child + .bouton-icon:last-child) .elementor-top-column:has(.elementor-widget-image:first-child + .bouton-icon:last-child) .bouton-icon {
        color-scheme: dark;
        display: table;
        inline-size: auto;
        block-size: auto;
        position: absolute;
        inset: 50% auto auto 50%;
        translate: -50% -50%;
    }

    main:not(:has(.page-content > .elementor:last-child)),
    .page-content > .elementor:last-child .elementor-top-section:not(.fond, .supp, .no-margin):last-child {
        margin-block-end: var(--spacing-2xl);
    }

    main > .elementor:not(:first-child),
    .product-list-footer .elementor-top-section:first-child,
    :is(.elementor-top-section, .ino-top-section):not(.no-margin, :first-child) {
        margin-block-start: var(--spacing-2xl);
    }

    :is(.elementor-top-section, .ino-top-section).fond:not(.block, .elementor-section-full_width, .ino-section-full_width) {
        padding-block: var(--spacing-2xl);
    }

    :is(.elementor-top-section, .ino-top-section).fond:not(.block):last-child {
        margin-block-end: 0;
    }

    :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        position: relative;
        padding: var(--spacing-2xl);
    }

    .elementor-widget + .elementor-widget.no-margin,
    :is(.elementor-top-section, .ino-top-section) :is(.elementor-inner-section, .ino-inner-section):first-child,
    :is(.elementor-top-section, .ino-top-section) :is(.elementor-inner-section, .ino-inner-section).titre + :is(.elementor-inner-section, .ino-inner-section),
    :is(.elementor-top-section, .ino-top-section):is(.fond:not(.block), .supp) + :is(.elementor-top-section, .ino-top-section):is(.fond:not(.block), .supp) {
        margin-block-start: 0;
    }

    :is(.elementor-top-section, .ino-top-section).fond-noir:not(.block) + :is(.elementor-top-section, .ino-top-section).fond-noir:not(.block),
    :is(.elementor-top-section, .ino-top-section).fond-gris:not(.block) + :is(.elementor-top-section, .ino-top-section).fond-gris:not(.block),
    :is(.elementor-top-section, .ino-top-section).fond-blanc:not(.block) + :is(.elementor-top-section, .ino-top-section).fond-blanc:not(.block) {
        padding-block-start: 0;
    }

    :is(.fond-noir, .fond-blanc):not(.block),
    :is(.fond-noir, .fond-blanc).block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        background: var(--background-color);
    }

    :is(.fond-primary, .fond-rouge):not(.block) {
        background: var(--primary-color);
        padding: var(--spacing-xs) var(--spacing-md);
    }

    .ybc-blog-list,
    .fond-gris:not(.block),
    .fond-gris.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
        background: var(--background-grey);
    }

    .light-scheme-color:not(.light-default) :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .light-scheme-color.light-default :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .dark-scheme-color:not(.dark-default) :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .dark-scheme-color.dark-default :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)) {
        color-scheme: dark;
    }

    .dark-scheme-color:not(.dark-default) :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .dark-scheme-color.dark-default :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .light-scheme-color:not(.light-default) :where(.fond-noir:not(.block), .fond-noir.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)),
    .light-scheme-color.light-default :where(.fond-blanc:not(.block), .fond-blanc.block > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape)) {
        color-scheme: light;
    }

    .elementor-top-section :is(.elementor-inner-section, .elementor-widget-text-editor) + .elementor-inner-section:not(.boutons) {
        margin-block-start: var(--spacing-xl);
    }

    .ybc-blog-list,
    :is(.elementor-column, .ino-column).fond {
        border-radius: var(--border-radius);
        padding: var(--spacing-xl);
    }

    :is(.center, .right) :is(.elementor-widget-container, .elementor-widget-wrap) {
        display: flex;
        flex-flow: column;
    }

    .elementor-widget + :is(.boutons, .elementor-widget-text-editor),
    :is(.elementor-widget-text-editor, .elementor-widget-accordion, .elementor-widget-shortcode) + .elementor-widget {
        margin-block-start: calc(var(--spacing-4xl) / 3);
    }

    :is(.elementor-widget-button, .elementor-widget-text-editor) + .elementor-widget-image {
        margin-block-start: calc(var(--spacing-4xl) / 1.5);
    }

    .elementor-widget-image + .elementor-widget-text-editor {
        margin-block-start: calc(var(--spacing-4xl) / 4);
    }

    .elementor-widget-heading + .elementor-widget-heading {
        margin-block-start: var(--spacing-xs);
    }

    :is(.elementor-widget + .quote, .section-titre + .elementor-top-section, .elementor-widget-heading + .elementor-widget-product-carousel),
    :is(.elementor-widget-heading.h2, .elementor-widget-heading:not(.h3, .h4):has(h2)) + :is(.elementor-widget:not(.elementor-widget-heading), .elementor-inner-section) {
        margin-block-start: var(--spacing-lg);
    }

    :is(.elementor-widget-heading.h3, .elementor-widget-heading:not(.h2, .h4):has(h3)) + :is(.elementor-widget:not(.elementor-widget-heading), .elementor-inner-section) {
        margin-block-start: var(--spacing-md);
    }

    :is(.elementor-widget-heading.h4, .elementor-widget-heading:not(.h2, .h3):has(h4)) + :is(.elementor-widget:not(.elementor-widget-heading), .elementor-inner-section) {
        margin-block-start: var(--spacing-sm);
    }

    .elementor-inner-section + .elementor-widget,
    .elementor-widget:not(.elementor-widget-menu-anchor, .elementor-widget-heading) + :is(.elementor-widget-heading.h2, .elementor-widget-heading:not(.h3, .h4):has(h2)) {
        margin-block-start: calc(var(--spacing-lg) * 2);
    }

    .elementor-widget:not(.elementor-widget-menu-anchor, .elementor-widget-heading) + :is(.elementor-widget-heading.h3, .elementor-widget-heading:not(.h2, .h4):has(h3)) {
        margin-block-start: var(--spacing-lg);
    }

    .elementor-widget:not(.elementor-widget-menu-anchor, .elementor-widget-heading) + :is(.elementor-widget-heading.h4, .elementor-widget-heading:not(.h2, .h3):has(h4)) {
        margin-block-start: calc(var(--spacing-sm) * 2);
    }

    .elementor-widget-image + .elementor-widget-heading {
        margin-block-start: var(--spacing-3xl);
    }

    .ino-column {
        position: relative;
    }

    .ino-col-25 {
        inline-size: 25%;
    }

    .ino-col-20 {
        inline-size: 20%;
    }

    .ino-col-img {
        aspect-ratio: 3 / 2;
        overflow: hidden;
    }

    .ino-grid > div:not(.elementor-element-overlay) > div {
        --_item-min-size: 16rem;
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, var(--_item-min-size)), 1fr));
        gap: var(--spacing-xl) var(--spacing-sm);
    }

    main .ino-grid > div:not(.elementor-element-overlay) > div > :is(div, section) {
        inline-size: 100%;
        margin: 0 !important;
    }

    .ino-grid .ino-col-full {
        grid-column: 1 / -1;
    }

    @container viewport (70rem < inline-size) {

        .right :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .elementor-widget-container, .elementor-widget-wrap),
        .right:where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong),
        .right:is(.h1, .h2, .h3, .h4) .elementor-heading-title {
            align-items: flex-end;
            text-align: right;
        }

        .right.bouton,
        .right .bouton {
            display: flex;
            justify-content: flex-end;
        }

        .right.bouton.decal,
        .right .bouton.decal {
            margin-inline-end: 15%;
        }

        .ino-col-66 {
            inline-size: 66.666%;
        }

        .ino-col-50 {
            inline-size: 50%;
        }

        .ino-col-33 {
            inline-size: 33.333%;
        }

        :is(.ino-txt-img > .ino-container > .ino-row, .inner-txt-img > .elementor-container > .elementor-row),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) > .elementor-container > .elementor-row,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) > .elementor-container > .elementor-row {
            align-items: stretch;
        }

        .ino-col-img > *:not(.ino-modal),
        .inner-txt-img .elementor-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:not(.section-custom):has(.elementor-top-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child) > .elementor-column-wrap > .elementor-widget-wrap:not(.ui-sortable),
        .elementor-top-section:has(.elementor-top-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) > .elementor-column-wrap > .elementor-widget-wrap:not(.ui-sortable) {
            position: absolute;
        }

        .ino-txt-img:not(.full) .ino-col-txt > div,
        .elementor-top-section:not(.section-custom):has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:not(:has(.elementor-widget:only-child)) > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:not(:has(.elementor-widget:first-child + .bouton-icon:last-child)) > .elementor-column-wrap > .elementor-widget-wrap {
            padding-block: var(--spacing-3xl);
        }

        .ino-txt-img.full:not(.block, .supp) .ino-col-txt > div,
        .elementor-top-section:not(.section-custom):has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full:not(.block, .supp) .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)) > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-column-wrap > .elementor-widget-wrap {
            padding-block: var(--spacing-2xl);
        }

        .ino-section-full_width.ino-txt-img.full:not(.block) > .ino-container > .ino-row,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) > .elementor-container > .elementor-row,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) > .elementor-container > .elementor-row {
            display: grid;
            grid-template-columns: 1fr repeat(6, calc(min(var(--wrapper-size-mobile), var(--wrapper-size)) / 6)) 1fr;
        }

        .ino-section-full_width.ino-txt-img.full:not(.block) > .ino-container > .ino-row > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column {
            inline-size: 100%;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-33, [data-col="33"]):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-33, [data-col="33"]):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child {
            grid-column: 1 / 4;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-33, [data-col="33"]):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-33, [data-col="33"]):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child {
            grid-column: 2 / 4;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-33, [data-col="33"]):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):last-child {
            grid-column: 6 / 9;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-33, [data-col="33"]):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):last-child {
            grid-column: 6 / 8;
        }

        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-img:first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child {
            grid-column: 1 / 5;
        }

        .ino-section-full_width.ino-txt-img.full:not(.block) .ino-col-txt:first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child {
            grid-column: 2 / 5;
        }

        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-img:last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child {
            grid-column: 5 / 9;
        }

        .ino-section-full_width.ino-txt-img.full:not(.block) .ino-col-txt:last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-50, [data-col="50"]):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child {
            grid-column: 5 / 8;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) :is(.elementor-col-66, [data-col="66"]):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child {
            grid-column: 1 / 6;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):first-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child {
            grid-column: 2 / 6;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child {
            grid-column: 4 / 9;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):last-child,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block) .elementor-top-column:is(.elementor-col-66, [data-col="66"]):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child {
            grid-column: 4 / 8;
        }

        .ino-section-full_width.ino-txt-img.full.supp:not(.block) .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            position: relative;
            z-index: 1;
        }

        .ino-section-full_width.ino-txt-img.full.supp:not(.block) .ino-col-img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp.elementor-section-full_width:not(.block) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) {
            position: absolute;
            inset: 0;
            z-index: 0;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.fond).full .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):first-child img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.fond).full .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):first-child img {
            border-radius: 0 var(--border-radius) var(--border-radius) 0;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.fond).full .elementor-top-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child):last-child img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.fond).full .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):last-child img {
            border-radius: var(--border-radius) 0 0 var(--border-radius);
        }

        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-txt:first-child > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):first-child > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):first-child > .elementor-column-wrap > .elementor-widget-wrap {
            padding-inline-end: var(--spacing-2xl);
        }

        .ino-section-full_width.ino-txt-img.full:not(.block, .supp) .ino-col-txt:last-child > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)):last-child > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.elementor-section-full_width:not(.block, .supp) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)):last-child > .elementor-column-wrap > .elementor-widget-wrap {
            padding-inline-start: var(--spacing-2xl);
        }

        .ino-txt-img.full.block .ino-col-txt > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.block .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)) > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.block .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-column-wrap > .elementor-widget-wrap {
            padding: var(--spacing-2xl);
        }

        .ino-txt-img.full.supp .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)) {
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1.5rem + 2.5vw, 4rem));
            overflow: hidden;
        }

        .ino-txt-img.full.supp .ino-col-txt > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.supp .elementor-top-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)) > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.supp .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-column-wrap > .elementor-widget-wrap {
            padding: var(--spacing-xl);
        }

        .elementor-top-section.supp > .elementor-container > .elementor-row {
            padding-block: var(--spacing-3xl);
        }
    }

    @container viewport (inline-size <= 70rem) {

        :is(.ino-top-section, .elementor-top-section, .inner-txt-img) :is(.ino-row, .elementor-row) {
            flex-flow: column;
        }

        .elementor-top-section .elementor-row > .elementor-column {
            width: auto;
            inline-size: 100%;
        }

        .ino-col-txt,
        .inner-txt-img .elementor-column:not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)),
        .section-contact .elementor-row > .block-formulaire {
            order: 1;
        }

        .ino-col-img,
        .inner-txt-img .elementor-column:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child),
        .section-contact .elementor-row > .block-infos {
            order: 2;
        }

        .ino-txt-img.full.block .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.block .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.block .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            padding: var(--spacing-2xl);
        }

        .ino-txt-img.full:not(.block) .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full:not(.block) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            padding-block: var(--spacing-2xl);
        }

        .ino-txt-img.full:not(.block) .ino-col-txt > div,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full:not(.block) .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(.elementor-widget-image:only-child, .elementor-widget-image-carousel:only-child)) > .elementor-column-wrap > .elementor-widget-wrap,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full:not(.block) .elementor-top-column:not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) > .elementor-column-wrap > .elementor-widget-wrap {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }

        iframe,
        .ino-txt-img:not(.full) .ino-col-img:not(.contain) img,
        .inner-txt-img .elementor-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child:not(.contain)) img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child:not(.contain)) img,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child):not(.full) .elementor-top-column:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child:not(.contain)) img {
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1rem + 5vw, 6rem));
        }
    }

    @container viewport (inline-size <= 36rem) {

        .center-desktop :where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong, .elementor-widget-container, .elementor-widget-wrap),
        .center-desktop:where(h1, .h1, h2, .h2, h3, .h3, h4, .h4, p, strong),
        .center-desktop:is(.h1, .h2, .h3, .h4) .elementor-heading-title {
            align-items: flex-start;
            text-align: left;
        }

        .center-desktop.wrap-bouton,
        .center-desktop .wrap-bouton {
            justify-content: flex-start;
        }
    }

    @container viewport (inline-size <= 30rem) {

        :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
            padding-inline: 0;
        }

        :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) > div {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }

        :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) + :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) {
            margin-block-start: 0;
        }

        :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) {
            margin-block-end: 0;
        }

        :is(.elementor-top-section, .ino-top-section).fond.block:not(.elementor-section-full_width) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
            border-radius: 0;
        }

        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).block > .elementor-container,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).block > .elementor-container {
            inline-size: 100%;
            max-inline-size: initial;
        }

        .ino-txt-img.full.block .ino-col-txt,
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):only-child).full.block .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):only-child)),
        .elementor-top-section:has(.elementor-column:not(.elementor-col-100) :is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child).full.block .elementor-top-column:is(.elementor-col-33, .elementor-col-50, .elementor-col-66):not(:has(:is(.elementor-widget-image, .elementor-widget-image-carousel):first-child + .bouton-icon:last-child)) {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
            padding-inline: 0;
        }
    }
}

@layer core {

    @layer titles {

        :is(h1, .h1:not(.elementor-widget-heading)),
        .elementor-widget-heading.h1 .elementor-heading-title {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--h1-font-size)/.88 var(--font-title);
            text-wrap: balance;
            letter-spacing: -.02em;
        }

        .primary :is(h1, .h1:not(.elementor-widget-heading)),
        .elementor-widget-heading.h1 .elementor-heading-title {
            color: var(--primary-color);
        }

        :is(h1:not(.h2, .h3, .h4, .elementor-heading-title), .h1:not(.elementor-widget-heading)) {
            margin-block-end: var(--spacing-xl);
        }

        .ybc-blog-related-posts.on_product .title_blog,
        :is(h2, .h2:not(.elementor-widget-heading)),
        .elementor-widget-heading.h2 .elementor-heading-title {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--h2-font-size)/1.1 var(--font-title);
            letter-spacing: 0;
            text-wrap: balance;
            letter-spacing: -.02em;
            text-transform: initial;
        }

        .page-ybc_blog_page .blog-category-desc,
        .page-ybc_blog_page h1.page-heading.product-listing {
            text-align: center;
        }

        .page-ybc_blog_page .blog-paggination > .links {
            width: 100%;
            display: flex;
            justify-content: center;
            gap: var(--spacing-2xs);
            align-items: baseline;
        }

        .page-ybc_blog_page .blog-paggination > .links :is(.next, .last, .frist, .prev) {
            padding: .125rem .25rem;
            background: var(--background-grey);
        }

        .page-ybc_blog_page .blog-paggination div.results {
            display: none;
        }

        .ybc-blog-related-posts.on_product .title_blog,
        :is(h2:not(.h1, .h3, .h4, .elementor-heading-title), .h2:not(.elementor-widget-heading)) {
            margin-block-end: var(--spacing-lg);
        }

        p.h2.inodia-icons.traits,
        .inodia-icons.traits.elementor-widget-heading {
            display: flex;
            align-items: center;
        }

        p.h2.inodia-icons.traits.center,
        .center.inodia-icons.traits.elementor-widget-heading {
            justify-content: center;
        }

        .center.inodia-icons.traits.elementor-widget-heading > .elementor-widget-container {
            margin-inline: 0 !important;
        }

        p.h2.inodia-icons.traits:before,
        .inodia-icons.traits.elementor-widget-heading:before {
            color: var(--primary-color);
            margin-inline-end: var(--spacing-xs);
            font-size: var(--h1-font-size) !important;
            font: var(--font-icon);
        }

        body:is(.category-id-14, .category-id-parent-14) .inodia-icons.traits.elementor-widget-heading:before,
        .tp .inodia-icons.traits.elementor-widget-heading:before {
            color: var(--cat-tp);
        }

        body:is(.category-id-15, .category-id-parent-15) .inodia-icons.traits.elementor-widget-heading:before,
        .agri .inodia-icons.traits.elementor-widget-heading:before {
            color: var(--cat-agri);
        }

        body:is(.category-id-16, .category-id-parent-16) .inodia-icons.traits.elementor-widget-heading:before,
        .moto .inodia-icons.traits.elementor-widget-heading:before {
            color: var(--cat-moto);
        }

        body:is(.category-id-17, .category-id-parent-17) .inodia-icons.traits.elementor-widget-heading:before,
        .fore .inodia-icons.traits.elementor-widget-heading:before {
            color: var(--cat-fore);
        }

        .inodia-icons.traits.elementor-widget-heading a {
            color: var(--title-color) !important;
            font: var(--text-weight-bold) var(--h2-font-size) / 1.1 var(--font-title);
            letter-spacing: inherit;
            text-wrap: inherit;
            letter-spacing: inherit;
        }

        :is(h3, .h3:not(.elementor-widget-heading)),
        .elementor-widget-heading.h3 .elementor-heading-title {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--h3-font-size)/1.1 var(--font-text);
            letter-spacing: -.01em;
        }

        :is(h3:not(.h1, .h2, .h4, .elementor-heading-title), .h3:not(.elementor-widget-heading)) {
            margin-block-end: var(--spacing-md);
        }

        #cms .formulaire {
            margin-block-start: var(--spacing-md);
        }

        :is(h4, .h4:not(.elementor-widget-heading)),
        .elementor-widget-heading.h4 .elementor-heading-title {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--h4-font-size)/1.618 var(--font-text);
            letter-spacing: 0;
        }

        :is(h4:not(.h1, .h2, .h3, .elementor-heading-title), .h4:not(.elementor-widget-heading, .modal-title)) {
            margin-block-end: var(--spacing-sm);
        }

        .h4.package:before {
            margin-block-end: var(--spacing-xs);
            display: block;
            font-size: 2rem;
        }
    }

    @layer form-fields {

        :where(label, .label, input[type="file" i]):not(.radio-inline) {
            display: inline-flex;
            align-items: baseline;
            gap: var(--spacing-2xs) 1.5ch;
        }

        :where(label, .label, input[type="file" i]):not(.radio-inline, .custom-checkbox) {
            color: var(--title-color);
            font: var(--text-weight-medium) var(--text-size-small)/1.1 var(--font-text);
            letter-spacing: var(--letter-spacing);
            text-align: left;
            margin-block-end: var(--spacing-3xs);
        }

        :is(.custom-checkbox, .custom-checkbox-color) label {
            margin: 0;
        }

        :where(.label, label) em {
            color: var(--muted-color);
        }

        .separator {
            border-color: var(--outline-color);
        }

        .form-wrapper {
            inline-size: 100%;
            position: relative;
        }

        .product-variants .variant-value.active {
            display: none;
        }

        .form-wrapper:has(select)::after,
        .form-wrapper:has(input)::before {
            font: var(--font-icon);
            letter-spacing: 0;
            pointer-events: none;
            position: absolute;
            inset-block-start: 50%;
            inset-inline-end: calc(var(--spacing-2xs) * 2);
            translate: 0 -50% 0;
            transition: var(--transition-default);
        }

        .form-wrapper:has(select)::after {
            content: "\e900" / "";
            font-size: var(--text-size-small);
        }

        :where(select, textarea, .form-control, form.search-form input[type=search]) {
            --_padding-field: var(--spacing-2xs);
            background: var(--background-color);
            border: var(--border-width) solid var(--border-color);
            border-radius: calc(var(--border-radius) / 2);
            color: var(--text-color);
            font: normal var(--text-weight-normal) var(--text-size-normal)/1 var(--font-text);
            letter-spacing: var(--letter-spacing);
            text-overflow: ellipsis;
            inline-size: 100%;
            block-size: auto;
        }

        :where(textarea, .form-control:not(input[type=search], .input-custom-qty)) {
            padding-block: var(--_padding-field);
            padding-inline: calc(var(--_padding-field) * 2);
        }

        .form-control.promo-input {
            font-size: var(--text-size-small);
            block-size: auto;
        }

        textarea {
            border-radius: clamp(0rem, var(--border-radius) / 2, clamp(1rem, .875rem + .625vw, 1.5rem));
            line-height: 1.3;
        }

        .search-form input[type=search] {
            padding-block: var(--_padding-field);
            padding-inline: calc(var(--_padding-field) * 4) calc(var(--_padding-field) * 2);
        }

        .search-form .search-form__form-group > i.search {
            color: var(--muted-color);
            font-size: 1.25rem;
            pointer-events: none;
            position: absolute;
            inset-block-start: 50%;
            inset-inline-start: var(--spacing-xs);
            translate: 0 -50%;
        }

        select {
            color: var(--title-color);
            line-height: 1.3;
            padding-block: var(--_padding-field);
            padding-inline: calc(var(--_padding-field) * 2) calc(var(--_padding-field) * 4);
        }

        select option {
            background: var(--background-color);
        }

        :is(select, textarea, .promo-input, .form-control):hover,
        .search-form input[type=search]:hover {
            border-color: var(--border-hover-color);
            color: var(--strong-color);
        }

        :is(select, textarea, .promo-input, .form-control):focus,
        .search-form input[type=search]:focus {
            --_input-focus-shadow-color: oklch(from var(--border-focus-color) l c h / 10%);
            border-color: var(--border-focus-color);
            box-shadow: 0 0 0 2px var(--_input-focus-shadow-color);
            color: var(--title-color);
        }

        .form-group {
            margin-block-end: 0;
        }

        :is(.form-group, .field-password-policy):not(:first-child),
        .form-group:not(.checkbox) + .checkbox {
            margin-block-start: var(--spacing-md);
        }

        input[type=hidden]:first-child + :is(.form-group, .field-password-policy) {
            margin-block-start: 0;
        }

        .form-group.checkbox + .checkbox {
            margin-block-start: var(--spacing-2xs);
        }

        label:is(.radio-inline, .custom-checkbox),
        .custom-checkbox :is(label:not(.disabled), input:not([disabled])),
        .product-variants .attribute-radio label {
            cursor: pointer;
        }

        .custom-checkbox :is(label.disabled, input[disabled]) {
            cursor: not-allowed;
        }

        :is(.input-group-append, .input-group-prepend) {
            display: flex;
        }

        .input-group-append {
            position: relative;
            margin-inline-start: calc(var(--border-width) * -1);
        }

        .input-group:has(.input-group-append) input:not([type=submit]) {
            border-radius: calc(var(--border-radius) / 2) 0 0 calc(var(--border-radius) / 2);
        }

        .form-text {
            margin-block-start: var(--spacing-3xs);
        }

        :is(.bootstrap-touchspin:has(.input-custom-qty), .qty > .input-custom-qty) {
            border: var(--border-width) solid var(--border-color);
            border-radius: clamp(0rem, var(--border-radius) / 2, .75rem);
            align-items: center;
            block-size: 3.5rem;
            transition: var(--transition-default);
        }

        .bootstrap-touchspin:has(.input-custom-qty:focus) {
            border-color: var(--primary-color);
            box-shadow: 0 0 4px oklch(from var(--primary-color) l c h / 30%);
        }

        .qty > .input-custom-qty {
            padding: var(--spacing-sm);
        }

        .input-custom-qty {
            background: transparent;
            border: none;
            color: var(--title-color);
            text-align: right;
        }

        .input-custom-qty:focus {
            box-shadow: none;
        }

        .bootstrap-touchspin :is(.input-group-btn, .btn-touchspin) {
            block-size: 100%;
        }

        .btn-touchspin {
            border-radius: var(--border-radius);
            color: var(--title-color);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            font-size: .5rem;
            inline-size: 100%;
        }

        .bootstrap-touchspin-up::before {
            content: "\e901" / "";
        }

        .bootstrap-touchspin-down::before {
            content: "\e900" / "";
        }

        .form-group {
            display: flex;
            flex-flow: row wrap;
        }

        .form-group.radio-buttons {
            gap: var(--spacing-xs);
        }

        .customer-form.left {
            --_nb-cols: 2;
            display: grid;
            grid-template-columns: repeat(var(--_nb-cols), minmax(0, 1fr));
            column-gap: var(--spacing-xs);
            align-items: baseline;
        }

        .page-registration:has(.customer-form.left) .checkbox,
        .customer-form.left :is(.col-full, .radio-buttons, .checkbox) {
            grid-column: 1 / -1;
        }

        :is(.input-group, .input-group-password) {
            display: grid;
            grid-template-columns: 1fr auto;
            inline-size: 100%;
        }

        .cart-grid .cart-grid-body {
            display: grid;
            gap: var(--spacing-md);
        }

        .cart-grid .cart-grid-body .form-fields {
            display: grid;
            gap: var(--spacing-sm);
        }

        .cart-grid .cart-grid-body .bouton {
            margin-block-start: var(--spacing-sm);
        }

        .cart-overview {
            box-shadow: var(--box-shadow);
            padding: var(--spacing-2xs) var(--spacing-lg);
        }

        :is(#delivery-address, #invoice-address) .form-fields {
            grid-template-columns: 1fr 1fr;
        }

        :is(#delivery-address, #invoice-address) .form-fields .form-group {
            margin: 0;
        }

        :is(#delivery-address, #invoice-address) .form-fields .form-group:is(.alias, .address2) {
           display: none;
        }

        #delivery-address .form-fields .form-group:last-child {
            grid-column: 1 / -1;
        }

        #delivery-addresses label {
            display: block;
        }

        :is(.input-group, .input-group-password) input {
            block-size: 100%;
        }

        .input-group-password :where(small, .help-block) {
            grid-column: 1 / -1;
        }

        .input-group .form-text + .help-block {
            margin-block-start: var(--spacing-2xs);
        }

        @container viewport (24rem < inline-size) {

            .bootstrap-touchspin:has(.input-custom-qty) {
                grid-template-columns: 1fr var(--spacing-sm);
                column-gap: var(--spacing-2xs);
            }

            .bootstrap-touchspin .input-custom-qty {
                grid-area: 1 / 1 / 3 / 2;
            }

            .bootstrap-touchspin .input-group-append {
                grid-area: 1 / 2 / 2 / 3;
            }

            .bootstrap-touchspin .input-group-prepen {
                grid-area: 2 / 2 / 3 / 3;
            }
        }

        @container viewport (inline-size <= 24rem) {

            :is(.bootstrap-touchspin:has(.input-custom-qty), .qty > .input-custom-qty) {
                block-size: 100%;
                max-inline-size: 4rem;
                padding: var(--spacing-2xs);
            }

            .bootstrap-touchspin .input-group-btn {
                display: none;
            }

        }
    }

    @layer lists {

        main .custom:is(ul, ol),
        main :is(.elementor, .product-description-short, .product-description-long) :is(ul, ol) {
            padding: 0;
        }

        main .custom:is(ul, ol):not(:last-child),
        main :is(.elementor, .product-description-short, .product-description-long) :is(ul:not(:last-child, .swiper-wrapper), ol:not(:last-child)) {
            margin-block-end: var(--spacing-sm);
        }

        main .custom:is(ul, ol) li:not(:last-child),
        main :is(.elementor, .product-description-short, .product-description-long) :is(ul:not(.swiper-wrapper), ol) li:not(:last-child) {
            margin-block-end: var(--spacing-2xs);
        }

        main .custom:is(ul, ol) li:last-child,
        main :is(.elementor, .product-description-short, .product-description-long) :is(ul, ol, li):last-child {
            margin-block-end: 0;
        }

        main ol.custom li,
        main :is(.elementor, .product-description-short, .product-description-long) ol li {
            list-style-position: inside;
        }

        main ul.custom li,
        main :is(.elementor, .product-description-short, .product-description-long) ul:not(.product-flags, .elementor-editor-element-settings, .slick-dots, .swiper-wrapper) li {
            padding-inline-start: 2ch;
            position: relative;
        }

        main ul.custom li::before,
        main :is(.elementor, .product-description-short, .product-description-long) ul:not(.product-flags, .elementor-editor-element-settings, .slick-dots, .swiper-wrapper) li::before {
            content: "-" / "";
            font: inherit;
            letter-spacing: 0;
            position: absolute;
            inset-inline-start: 0;
        }
    }

    @layer links {

        a {
            color: var(--primary-color);
        }

        :is(a, button, summary).link-dark,
        :is(.btn-touchspin, .elementor-accordion-title) {
            color: var(--title-color);
        }

        :is(a, button, summary).link-dark:focus-visible,
        .custom-radio:has(input:not(:checked):focus-visible),
        .custom-checkbox input[type=checkbox]:not(:checked):focus-visible + span,
        :is(.header-top__block--logo > a, .logo-footer, .btn-password, .btn-touchspin, .elementor-accordion-title):focus-visible {
            outline-color: var(--title-color);
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            a:hover {
                color: var(--primary-hover-color);
            }

            a:active {
                color: var(--primary-active-color);
            }

            :is(a, button, summary).link-dark:hover,
            :is(.btn-touchspin, .elementor-accordion-title):hover {
                color: var(--primary-hover-color);
            }

            :is(a, button, summary).link-dark:active,
            :is(.btn-touchspin, .elementor-accordion-title):active {
                color: var(--primary-active-color);
            }
        }

        @media only screen and (hover: none) and (pointer: coarse) {

            a:active {
                color: var(--primary-active-color);
            }

            :is(a, button, summary).link-dark:active,
            :is(.btn-touchspin, .elementor-accordion-title):active {
                color: var(--primary-color);
            }
        }

        .custom-link {
            display: inline-flex;
            align-items: center;
            gap: 2ch;
        }

        .account-link {
            font: var(--text-weight-normal) var(--text-size-small)/1.3 var(--font-text);
        }

        .account-link i {
            font-size: .5rem;
        }

        .skip-link:not(:hover, :active),
        :where(.alert, .elementor-tab-content, .elementor-widget-text-editor, .message-rgpd, .custom-checkbox, .product-description-short) a:not(:hover, :active) {
            text-decoration: underline;
        }
    }

    @layer buttons {

        .boutons:has(> .bouton),
        .boutons .elementor-widget-wrap {
            display: flex;
            flex-flow: row wrap;
            justify-content: flex-start;
            gap: var(--spacing-2xs);
        }

        .center:is(.wrap-bouton, .bouton),
        .center :is(.wrap-bouton, .bouton),
        .center .boutons .elementor-widget-wrap {
            display: flex;
            justify-content: center;
        }

        .boutons .bouton {
            inline-size: auto;
        }

        .bouton:not(div),
        .bouton :is(a, button, [type=submit]) {
            color: var(--_btn-text-color);
            display: inline-flex;
            align-items: center;
            justify-content: center;
            gap: 1ch;
            outline-color: var(--_btn-color);
        }

        .bouton:not(.bouton-link, div),
        .bouton:not(.bouton-link) :is(a, button, [type=submit]) {
            background: var(--_btn-color);
            border: var(--border-width) solid transparent;
            border-radius: var(--border-radius);
            text-align: center;
            padding-block: var(--spacing-xs);
            padding-inline: calc(var(--spacing-xs) * 2);
            text-transform: uppercase;
        }

        .bouton.wpcf7-submit,
        .bouton:not(.bouton-icon, .bouton-link) span,
        .bouton:not(.elementor-element, .bouton-icon) {
            font: var(--text-weight-medium) var(--text-size-small)/1.1 var(--font-text);
            letter-spacing: .12em;
        }

        .bouton.bouton-link a {
            font: var(--text-weight-bold) var(--text-size-normal)/1.1 var(--font-text);
        }

        .bouton span {
            color: inherit;
            display: inline-flex;
            gap: var(--spacing-2xs);
            text-align: center;
        }

        .bouton-download:not(div)::before,
        .bouton-download :is(a, button, [type=submit]) > span::before {
            font: var(--font-icon);
            letter-spacing: 0;
        }

        .bouton-primary:not(div),
        .bouton-primary :is(a, button, [type=submit]) {
            --_btn-color: var(--primary-color);
            --_btn-text-color: var(--light-color);
        }

        .bouton-secondary:not(div),
        .bouton-secondary :is(a, button, [type=submit]) {
            --_btn-color: var(--secondary-color);
            --_btn-text-color: var(--light-color);
        }

        .bouton-dark:not(div),
        .bouton-dark :is(a, button, [type=submit]) {
            --_btn-color: var(--title-color);
            --_btn-text-color: var(--background-color);
        }

        .bouton-contour:not(:hover, :active, div),
        .bouton-contour :is(a, button, [type=submit]):not(:hover, :active),
        .bouton-link:not(div),
        .bouton-link :is(a, button, [type=submit]) {
            background: transparent;
            border-color: var(--_btn-color);
            --_btn-text-color: var(--_btn-color);
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            .bouton-primary:not(.bouton-contour, div):hover,
            .bouton-primary:not(.bouton-contour) :is(a, button, [type=submit]):hover,
            .bouton-primary.bouton-contour:not(div):active,
            .bouton-primary.bouton-contour :is(a, button, [type=submit]):active {
                --_btn-color: var(--primary-hover-color);
            }

            .bouton-primary:not(.bouton-contour, div):active,
            .bouton-primary:not(.bouton-contour) :is(a, button, [type=submit]):active {
                --_btn-color: var(--primary-active-color);
            }

            .bouton-secondary:not(.bouton-contour, div):hover,
            .bouton-secondary:not(.bouton-contour) :is(a, button, [type=submit]):hover,
            .bouton-secondary.bouton-contour:not(div):active,
            .bouton-secondary.bouton-contour :is(a, button, [type=submit]):active {
                --_btn-color: var(--secondary-hover-color);
            }

            .bouton-secondary:not(.bouton-contour, div):active,
            .bouton-secondary:not(.bouton-contour) :is(a, button, [type=submit]):active {
                --_btn-color: var(--secondary-active-color);
            }

            .bouton-dark:not(.bouton-contour, div):hover,
            .bouton-dark:not(.bouton-contour) :is(a, button, [type=submit]):hover,
            .bouton-dark.bouton-contour:not(div):active,
            .bouton-dark.bouton-contour :is(a, button, [type=submit]):active {
                --_btn-color: var(--strong-color);
            }

            .bouton-dark:not(.bouton-contour, div):active,
            .bouton-dark:not(.bouton-contour) :is(a, button, [type=submit]):active {
                --_btn-color: var(--text-color);
            }
        }

        @media only screen and (hover: none) and (pointer: coarse) {

            .bouton-primary:not(.bouton-contour, div):active,
            .bouton-primary:not(.bouton-contour) :is(a, button, [type=submit]):active {
                --_btn-color: var(--primary-hover-color);
            }

            .bouton-primary.bouton-contour:not(div):active,
            .bouton-primary.bouton-contour :is(a, button, [type=submit]):active {
                --_btn-color: var(--primary-color);
            }

            .bouton-secondary:not(.bouton-contour, div):active,
            .bouton-secondary:not(.bouton-contour) :is(a, button, [type=submit]):active {
                --_btn-color: var(--secondary-hover-color);
            }

            .bouton-secondary.bouton-contour:not(div):active,
            .bouton-secondary.bouton-contour :is(a, button, [type=submit]):active {
                --_btn-color: var(--secondary-color);
            }

            .bouton-dark:not(.bouton-contour, div):active,
            .bouton-dark:not(.bouton-contour) :is(a, button, [type=submit]):active {
                --_btn-color: var(--strong-color);
            }

            .bouton-dark.bouton-contour:not(div):active,
            .bouton-dark.bouton-contour :is(a, button, [type=submit]):active {
                --_btn-color: var(--title-color);
            }
        }

        .bouton-link:not(div),
        .bouton-link :is(a, button, [type=submit]) {
            color: var(--_btn-color);
        }

        .bouton-link:not(div, .plus)::after,
        .bouton-link:not(.plus) :is(a, button, [type=submit])::after {
            content: "\e925" / "";
            color: inherit;
            font: var(--font-icon);
            font-size: 1rem;
            letter-spacing: 0;
            transition: translate .5s cubic-bezier(0.8, -0.4, 0.5, 1);
        }

        @media (prefers-reduced-motion: no-preference) {

            .bouton-link:not(div):hover::after,
            .bouton-link :is(a, button, [type=submit]):hover::after {
                translate: .25rem;
            }

            .bouton-link:not(div):active::after,
            .bouton-link :is(a, button, [type=submit]):active::after {
                translate: .5rem;
            }
        }

        .bouton-icon .elementor-button-wrapper {
            display: table;
        }

        .bouton-icon:not(div),
        .bouton-icon :is(a, button, [type=submit]) {
            color: var(--_btn-text-color);
            aspect-ratio: 1;
            border-radius: 50%;
            padding: var(--spacing-sm);
        }

        .bouton-icon :is(a, button, [type=submit]) > span {
            font-size: var(--h4-font-size);
        }

        @media (prefers-reduced-motion: no-preference) {

            @media only screen and (hover: hover) and (pointer: fine) {

                .bouton-icon.icon-play a:hover {
                    scale: 1.05;
                }

                .bouton-icon.icon-play a:active {
                    scale: 1.1;
                }
            }

            @media only screen and (hover: none) and (pointer: coarse) {

                .bouton-icon.icon-play a:active {
                    scale: 1.05;
                }
            }
        }

        .input-group .input-group-append:is(.bouton, .btn-password) {
            border-radius: 0 calc(var(--border-radius) / 2) calc(var(--border-radius) / 2) 0 !important;
            margin: 0;
        }

        .input-group .btn-password {
            align-items: center;
            justify-content: center;
            padding-block: 0;
            padding-inline: var(--spacing-2xs);
        }

        .input-group .btn-password i {
            font-size: 1.25rem;
        }

        @container viewport (30rem < inline-size) {

            .bouton:not(.bouton-link, .bouton-icon, .input-group-append):is(a, button, [type=submit]),
            .bouton:not(.bouton-link, .bouton-icon, .input-group-append) :is(a, button, [type=submit]) {
                min-inline-size: 9rem;
            }
        }

        @container viewport (inline-size <= 30rem) {

            .bouton:not(.bouton-link),
            .boutons .bouton:not(.bouton-link),
            .bouton:not(.bouton-link) :is(a, .elementor-widget-container, .elementor-button-wrapper) {
                inline-size: 100%;
            }

            .bouton:where(a, button, [type=submit]):not(.input-group-append, .bouton-link),
            .bouton:not(.bouton-link) :where(a, button, [type=submit]):not(.input-group-append) {
                padding: var(--spacing-xs);
            }

            .boutons .bouton-contour {
                order: 1;
            }

            .boutons .bouton:not(.bouton-contour) {
                order: 2;
            }
        }
    }

    @layer badges {

        .badge {
            border-radius: clamp(0rem, var(--border-radius) / 2, .25rem);
            display: inline-flex;
            align-items: center;
            line-height: 1.3;
            margin: 0;
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-3xs);
        }

        :is(.badge-order-1, .badge-order-10, .badge-order-12, .badge-order-13, .badge-order-14, .badge-order-15, .badge-order-16, .badge-order-19, .badge-return-1) {
            background: var(--status-waiting);
            color: var(--title-color);
        }

        :is(.badge-order-2, .badge-order-9, .badge-order-11, .badge-order-17, .badge-return-2) {
            background: var(--status-accepted);
            color: var(--background-color);
        }

        :is(.badge-order-3, .badge-order-18, .badge-return-3) {
            background: var(--status-processing);
            color: var(--light-color);
        }

        .badge-order-4 {
            background: var(--status-sent);
            color: var(--light-color);
        }

        :is(.badge-order-5, .badge-order-7, .badge-return-5) {
            background: var(--status-success);
            color: var(--background-color);
        }

        :is(.badge-order-6, .badge-order-8, .badge-return-4) {
            background: var(--status-error);
            color: var(--background-color);
        }
    }

    @layer flags {

        .product-flags {
            display: flex;
            flex-flow: column;
            align-items: flex-end;
            gap: var(--spacing-4xs);
            inline-size: 100%;
            pointer-events: none;
            padding: var(--spacing-2xs);
            position: absolute;
            inset-block-start: 0;
            inset-inline-end: 0;
            z-index: 2;
        }

        .product-flags__flag {
            background: var(--dark-color);
            border-radius: calc(var(--border-radius) / 2);
            color: var(--light-color);
            font: var(--text-weight-medium) var(--text-size-small)/var(--line-height) var(--font-text);
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-2xs);
        }

        .product-flags__flag--discount {
            background: var(--primary-color);
        }
    }

    @layer tables {

        table {
            border-collapse: collapse;
        }

        .table {
            inline-size: 100%;
            margin-block-end: 0;
        }

        .table :is(th, td) {
            text-align: inherit;
            padding: var(--spacing-2xs);
        }

        .table:not(.table-striped) :is(th, td) {
            border-block-start: var(--border-width) solid var(--border-color);
        }

        .table .thead-default,
        .table .thead-default th {
            background: var(--title-color);
            color: var(--background-color);
            font: var(--text-weight-bold) var(--text-size-small)/1 var(--font-text);
        }

        .table-bordered,
        .table-bordered td,
        .table-bordered .thead-default th {
            border-color: var(--shadow-color);
        }

        .table-striped {
            border-radius: clamp(0rem, var(--border-radius), 1rem);
            overflow: hidden;
        }

        .table-striped tbody tr:nth-of-type(odd) {
            background: var(--background-grey);
        }

        .table :is(td.number, th.number) {
            text-align: right;
        }

        .table :is(.head-checkbox, .product-line__cell--checkbox) {
            text-align: center;
            vertical-align: middle;
        }

        .table :is(.head-checkbox, .product-line__cell--checkbox) > .custom-checkbox {
            margin-inline: auto;
        }

        .product-table .product-line__title {
            color: var(--title-color);
            font: var(--font-product-title);
            letter-spacing: var(--product-title-letter-spacing);
            text-transform: var(--product-title-transform);
        }

        .product-table .product-line__cell--img {
            inline-size: 5.5rem;
        }

        .product-table .product-line__cell .number {
            white-space: nowrap;
        }
    }

    html {
        background: var(--dark-color);
    }

    body {
        background: var(--background-color);
        color: var(--title-color);
        font: var(--text-weight-normal) var(--text-size-normal)/1 var(--font-text);
        accent-color: var(--primary-color);
        caret-color: var(--primary-color);
    }

    figcaption {
        font: var(--text-weight-medium) var(--text-size-small)/1.3 var(--font-text);
        letter-spacing: var(--letter-spacing);
    }

    .missing-img {
        filter: invert(1) !important;
        mix-blend-mode: difference;
    }

    main .search-modal-btn-open {
        display: none;
    }

    .breadcrumb {
        margin-block-end: var(--spacing-md);
    }

    .breadcrumb ol {
        display: flex;
        gap: var(--spacing-3xs) 1ch;
    }

    .breadcrumb li {
        display: inline-flex;
        align-items: baseline;
        gap: 1ch;
        line-height: 1.1;
    }

    .breadcrumb li:not(:first-child)::before {
        content: ">" / "";
        color: var(--title-color);
        font-size: var(--text-size-small);
        padding: 0;
    }

    .breadcrumb a {
        display: flex;
    }

    .breadcrumb span {
        font: var(--text-weight-normal) var(--text-size-small)/1.3 var(--font-text);
        white-space: nowrap;
        text-overflow: ellipsis;
        overflow: hidden;
    }

    .breadcrumb a span {
        max-inline-size: 12ch;
    }

    .breadcrumb li > span {
        color: var(--title-color);
        font-weight: var(--text-weight-medium);
        max-inline-size: 24ch;
    }

    .back-to-top {
        border-radius: calc(var(--border-radius) / 2);
        padding: var(--spacing-2xs);
        position: fixed;
        inset-block-end: var(--spacing-md);
        inset-inline-end: var(--spacing-md);
        transition: var(--transition-default), opacity .15s ease-in-out;
        z-index: 50;
    }

    .back-to-top i {
        font-size: .5rem;
    }

    .back-to-top.hide {
        opacity: 0;
        pointer-events: none;
    }

    .prices:has(+ .attributes) {
        margin-block-end: var(--spacing-2xs);
    }

    .tax-label p,
    .price {
        color: var(--primary-color);
        font: var(--font-product-price);
        letter-spacing: var(--product-price-letter-spacing);
    }

    .price:is(.price--regular, .unit-price-cart) {
        color: var(--muted-color);
        font-weight: var(--text-weight-normal);
    }

    .price.price--regular {
        text-decoration: line-through;
    }

    .attributes :is(li, span) {
        line-height: 1.3;
    }

    .attributes span {
        font-size: var(--text-size-small);
    }

    .attributes .value {
        font-weight: var(--text-weight-medium);
    }

    .js-search-result .search-result {
        max-block-size: 20rem;
        overflow: auto;
        overscroll-behavior: contain;
        padding: var(--spacing-xs);
    }

    @-moz-document url-prefix() {

        .js-search-result .search-result {
            scrollbar-color: var(--shadow-color) var(--background-color);
            scrollbar-width: thin;
        }
    }

    .js-search-result .search-result::-webkit-scrollbar {
        inline-size: 4px;
    }

    .js-search-result .search-result::-webkit-scrollbar-thumb {
        background: var(--shadow-color);
    }

    .js-search-result .search-result__products {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-sm);
    }

    .js-search-result .search-result__products:not(:last-child) {
        margin-block-end: var(--spacing-sm);
    }

    .js-search-result .search-result__bottom {
        position: sticky;
        inset-block-end: var(--spacing-3xs);
        inset-inline-start: 0;
        z-index: 1;
    }

    .js-search-result .search-result__bottom .bouton {
        inline-size: 100%;
        font-size: var(--text-size-small);
        padding-block: var(--spacing-3xs);
        padding-inline: var(--spacing-xs);
    }

    .cart-summary-line {
        display: flex;
        align-items: baseline;
        justify-content: space-between;
        gap: var(--spacing-xs);
    }

    .cart-summary-line:not(:first-child, .cart-total) {
        margin-block-start: var(--spacing-2xs);
    }

    .cart-summary-line.cart-total:not(:first-child) {
        margin-block-start: var(--spacing-sm);
    }

    .cart-summary-line span {
        line-height: 1;
    }

    .cart-summary-line :is(.label, .value) {
        font-size: var(--text-size-small);
        letter-spacing: var(--letter-spacing);
        margin: 0;
    }

    .cart-summary-line.cart-total :is(.label, .value) {
        font-size: var(--text-size-normal);
    }

    .cart-summary-line .label {
        color: var(--text-color);
        font-weight: var(--text-weight-normal);
    }

    .cart-summary-line .value,
    .cart-summary-line.cart-total .label {
        color: var(--title-color);
        font-weight: var(--text-weight-bold);
    }

    .cart-summary-line .value {
        text-align: right;
    }

    :is(form, .forgotten-password) .form-footer {
        margin-block-start: var(--spacing-md);
    }

    @container viewport (60rem < inline-size) {

        .js-search-result {
            background: var(--background-color);
            border: var(--border-width) solid var(--border-color);
            border-radius: 0 0 clamp(0rem, var(--border-radius), 2rem) clamp(0rem, var(--border-radius), 2rem);
            inline-size: 100%;
            padding-block-start: var(--spacing-sm);
            overflow: hidden;
            position: absolute;
            inset-block-end: 50%;
            inset-inline-start: 0;
            translate: 0 100%;
            z-index: -1;
        }
    }

    @container viewport (inline-size <= 30rem) {

        .custom-checkbox small {
            inset: initial;
        }

        :is(.alert, textarea, .form-control:not(.input-custom-qty), .input-group-append.bouton) {
            padding-block: var(--spacing-2xs);
            padding-inline: var(--spacing-xs);
        }

        .form-wrapper:has(select)::after {
            inset-inline-end: var(--spacing-xs);
        }

        select {
            padding-block: var(--spacing-2xs);
            padding-inline: var(--spacing-xs) calc(var(--spacing-xs) * 3);
        }

        form.search-form input[type=search] {
            padding-block: var(--spacing-2xs);
            padding-inline: calc(var(--spacing-xs) * 3) var(--spacing-xs);
        }

        .input-group:has(.input-group-append):not(.bootstrap-touchspin) input:not([type=password]),
        .input-group .input-group-append .bouton {
            font-size: var(--text-size-small);
        }
    }
}

@layer components {

    @layer pagination {

        .pagination {
            display: flex;
            flex-flow: column;
            align-items: center;
            gap: var(--spacing-md);
            margin-block-start: var(--spacing-xl);
        }

        .pagination p {
            text-align: center;
        }

        .pagination > p,
        .products-selection .showing {
            color: var(--muted-color);
        }

        .pagination .page-list {
            display: flex;
            flex-flow: row wrap;
            justify-content: center;
            gap: var(--spacing-2xs) calc(var(--spacing-2xs) * 2);
        }

        .pagination :is(li, a, li.disabled > span)  {
            line-height: 1;
        }

        .pagination :is(a, li.disabled > span)  {
            display: inline-flex;
            align-items: center;
            gap: var(--spacing-2xs);
        }

        .pagination li.disabled > span {
            color: var(--title-color);
        }

        .pagination i {
            font-size: var(--text-size-small);
        }

        .pagination .current a {
            color: var(--primary-color);
        }

        @container viewport (inline-size <= 24rem) {

            .pagination .page-list {
                gap: var(--spacing-3xs);
            }

            .pagination :is(a, li.disabled > span) {
                font-size: var(--text-size-small);
                gap: var(--spacing-3xs);
            }

            .pagination a {
                padding-block: var(--spacing-4xs);
            }

            .pagination a:not(.previous, .next) {
                padding-inline: var(--spacing-3xs);
            }

            .pagination a:is(.previous, .next) {
                padding-inline: var(--spacing-2xs);
            }

            .pagination i {
                font-size: .5rem;
            }
        }
    }

    @layer modals {

        .modal-backdrop {
            background: radial-gradient(oklch(from var(--dark-color) l c h / 50%), 25%, var(--dark-color));
        }

        .modal-backdrop.show {
            opacity: .66;
        }

        .modal-content {
            background: var(--background-color);
        }

        .modal:not(.modal-fullscreen) .modal-content {
            border-radius: clamp(0rem, var(--border-radius), 2rem);
            box-shadow: 0 8px 64px -32px var(--shadow-color);
        }

        :is(.modal-header, .cart-dropdown__title) {
            display: grid;
            grid-template-columns: 1fr auto;
            gap: calc(var(--spacing-2xs) * 2);
        }

        .modal-title {
            line-height: 1;
        }

        .modal-header .close span {
            font-size: var(--text-size-normal);
        }

        .modal:not(.js-product-images-modal, .modal-fullscreen) .modal-header + .modal-body {
            border-block-start: var(--border-width) solid var(--shadow-color);
        }

        .modal:not(.js-product-images-modal, .modal-fullscreen) .modal-body:has(+ .modal-footer) {
            border-block-end: var(--border-width) solid var(--shadow-color);
        }

        :is(.modal-body, .cart-summary) .cart-products {
            display: grid;
            grid-template-columns: 72px minmax(0, 1fr);
            gap: var(--spacing-xs);
        }

        .modal-content .cart-products {
            padding: var(--spacing-xs);
            margin-block-end: var(--spacing-xs);
        }

        .modal-content .cart-products .product-name {
            color: var(--title-color);
            display: table;
            font: var(--font-product-title);
            letter-spacing: var(--product-title-letter-spacing);
            text-transform: var(--product-title-transform);
        }

        .modal-content .cart-products .price {
            font-size: var(--text-size-small);
        }

        .modal-footer {
            justify-content: center;
            padding: var(--spacing-xs);
        }

        .modal-btn {
            display: flex;
            inline-size: 100%;
        }

        .ino-modal {
            background: var(--background-color);
            display: flex;
            flex-flow: column;
            inline-size: 100%;
            block-size: 100%;
            transition: opacity .15s linear;
        }

        .ino-modal:not([open]) {
            opacity: 0;
            visibility: hidden;
        }

        .ino-modal-wrapper {
            display: flex;
            flex-flow: column;
            flex-grow: 1;
            inline-size: 100%;
            block-size: auto;
            overflow: auto;
            overscroll-behavior: contain;
        }

        @-moz-document url-prefix() {

            .ino-modal-wrapper {
                scrollbar-color: transparent transparent;
            }
        }

        .ino-modal-wrapper::-webkit-scrollbar,
        .ino-modal-wrapper::-webkit-scrollbar-thumb {
            background: transparent;
        }

        .ino-modal-container {
            display: flex;
            justify-content: center;
            flex-grow: 1;
            align-items: safe center;
            block-size: auto;
            padding-block: 6rem;
            position: relative;
            transition: translate .3s ease-out;
        }

        @media (prefers-reduced-motion: no-preference) {

            .ino-modal:not([open]) .ino-modal-container {
                translate: 0 -50px;
            }
        }

        .ino-modal-close {
            display: flex;
            font-size: var(--text-size-normal);
            text-shadow: none;
            opacity: 1;
            position: absolute;
            inset-block-start: calc(var(--padding-header) + (var(--logo-height) / 2) - var(--banner-height));
            inset-inline-end: 0;
            translate: -25% -50%;
        }

        @container viewport (45rem < inline-size) {

            .modal-dialog {
                max-inline-size: 40rem;
                margin-block: var(--spacing-md);
                margin-inline: auto;
            }
        }

        @container viewport (inline-size <= 45rem) {

            .modal-dialog {
                margin: var(--spacing-3xs);
            }
        }

        @container viewport (36rem < inline-size) {

            .modal-btn {
                flex-flow: row wrap;
                justify-content: flex-end;
                gap: var(--spacing-2xs);
            }
        }

        @container viewport (inline-size <= 36rem) {

            .modal-btn {
                flex-flow: column;
                align-items: center;
                gap: var(--spacing-3xs);
                max-inline-size: fit-content;
                margin: 0;
            }

            .modal-btn > * {
                inline-size: 100%;
            }
        }

        @container viewport (inline-size <= 30rem) {

            .modal-btn {
                max-inline-size: initial;
            }
        }

        @container viewport (inline-size <= 24rem) {

            .modal-content :is(.cart-products, .cart-products__desc) {
                display: flex;
                flex-flow: column;
                align-items: center;
            }

            .modal-content .cart-products {
                padding: 0;
                margin-block-end: var(--spacing-md);
            }

            .modal-content .cart-products__desc {
                inline-size: 100%;
            }

            .modal-content .cart-products :is(.product-name, .price) {
                text-align: center;
            }
        }
    }

    @layer elementor-widgets {

        :is(.elementor-widget-image, .elementor-widget-image-carousel) figure {
            position: relative;
        }

        :is(.elementor-widget-image, .elementor-widget-image-carousel) figcaption {
            background: oklch(from var(--dark-color) l c h / 25%);
            border-radius: var(--border-radius);
            color: var(--light-color);
            inline-size: var(--wrapper-size-mobile);
            padding: var(--spacing-3xs);
            position: absolute;
            inset-block-end: var(--spacing-xs);
            inset-inline-start: 50%;
            translate: -50%;
        }

        .elementor-accordion-item:not(:last-child) :is(.elementor-tab-title, .elementor-tab-content) {
            border-block-end: var(--border-width) solid var(--shadow-color);
        }

        .elementor-accordion-item {
            --_padding-accordion: var(--spacing-sm);
        }

        .elementor-accordion-item:not(:first-child) .elementor-tab-title {
            padding-block-start: var(--_padding-accordion);
        }

        .elementor-accordion-item:not(:last-child) .elementor-tab-title {
            padding-block-end: var(--_padding-accordion);
        }

        .elementor-accordion-title {
            display: flex;
            align-items: center;
            justify-content: space-between;
            gap: 3ch;
            font: var(--text-weight-medium) var(--text-size-big)/1.3 var(--font-text);
        }

        .elementor-tab-title:not(.elementor-active) .elementor-accordion-title::after {
            content: "\e900" / "";
        }

        .elementor-tab-title.elementor-active .elementor-accordion-title::after {
            content: "\e901" / "";
        }

        .elementor-widget-accordion .elementor-tab-content {
            padding-block: var(--_padding-accordion) calc(var(--_padding-accordion) * 2);
        }

        .elementor-widget-testimonial-carousel .elementor-main-swiper {
            inline-size: 100%;
        }

        .elementor-widget-testimonial-carousel .swiper-slide {
            padding: 0;
        }

        .elementor-widget-testimonial-carousel :is(.elementor-testimonial__text, .elementor-testimonial__name) {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--text-size-normal)/1.3 var(--font-text);
        }

        .elementor-widget-testimonial-carousel .elementor-testimonial__title {
            font: var(--text-weight-normal) var(--text-size-small)/1.3 var(--font-text);
            margin-block-start: var(--spacing-4xs);
        }

        @container viewport (80rem < inline-size <= 90rem) {

            main :is(.swiper.slideperview-5, .swiper-inodia.slideperview-5):not(.swiper-initialized) .swiper-slide {
                --_nb-slide-item: 4;
            }
        }

        @container viewport (45rem < inline-size <= 80rem) {

            main :is(.swiper.slideperview-5, .swiper.slideperview-4, .swiper-inodia.slideperview-5, .swiper-inodia.slideperview-4):not(.swiper-initialized) .swiper-slide {
                --_nb-slide-item: 3;
            }
        }

        @container viewport (inline-size <= 45rem) {

            main :is(.swiper, .swiper-inodia):not(.swiper-initialized, .slideperview-1) .swiper-slide {
                --_nb-slide-item: 2;
            }
        }
    }

    @layer card-items {

        .card {
            background: var(--background-color);
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1.75rem + 1.25vw, 3rem));
        }

        .card__item {
            border-radius: clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem));
            container: card__item / inline-size;
            display: flex;
            flex-flow: column;
            overflow: hidden;
        }

        .card__header {
            padding-block: var(--spacing-md) 0;
            padding-inline: var(--spacing-md);
        }

        .card__body {
            flex-grow: 1;
            padding-block: var(--spacing-xs) var(--spacing-md);
            padding-inline: var(--spacing-md);
        }

        ul.card__body {
            display: flex;
            flex-flow: column;
            gap: var(--spacing-3xs);
        }

        .card__footer {
            background: var(--background-color);
            border-radius: 0 0 clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem)) clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem));
            display: flex;
            align-items: stretch;
            justify-content: center;
            gap: var(--spacing-xs);
            padding: var(--spacing-2xs);
        }

        .card__footer .separator {
            background: var(--outline-color);
            display: flex;
            inline-size: var(--border-width);
            block-size: 100%;
        }

        .card__footer a {
            display: inline-flex;
            align-items: center;
            gap: 1ch;
            font: var(--text-weight-medium) var(--text-size-small)/1.1 var(--font-text);
        }

        .card__footer a i {
            font-size: var(--text-size-small);
        }

        @container card__item (inline-size < 16rem) {

            .card__header {
                font-size: var(--text-size-normal);
                padding-block: var(--spacing-sm) 0;
                padding-inline: var(--spacing-sm);
            }

            .card__body {
                padding-block: var(--spacing-xs) var(--spacing-sm);
                padding-inline: var(--spacing-sm);
            }

            ul.card__body {
                gap: var(--spacing-4xs);
            }

            ul.card__body li {
                display: flex;
                flex-flow: row wrap;
                align-items: baseline;
                gap: var(--spacing-3xs);
                line-height: 1.3;
            }

            .card__item :is(address, li, strong) {
                font-size: var(--text-size-small);
            }

            .card__footer {
                gap: var(--spacing-2xs);
                padding: var(--spacing-3xs);
            }

            .card__footer a {
                font-size: .5rem;
                gap: var(--spacing-4xs);
            }
        }

        @container viewport (inline-size <= 30rem) {

            .card__items {
                display: grid;
                gap: var(--items-gap);
            }
        }
    }

    @layer miniatures {

        :is([class*="-slider__item "],[class$="-slider__item"]),
        .elementor-widget-product-carousel .swiper-slide {
            block-size: auto;
            overflow: initial;
            padding: var(--spacing-sm) var(--spacing-2xs);
        }

        .featured-products__slider .product-miniature,
        .elementor-widget-product-carousel .products-list__block {
            inline-size: 100%;
        }

        main :is(.product-slider__item, .products-list__block) {
            container: product / inline-size;
        }

        :is([class*="-miniature "],[class$="-miniature"]):not(.product-miniature--smaller) {
            display: flex;
            flex-flow: column;
            align-items: flex-start;
            gap: var(--spacing-xs);
            block-size: 100%;
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list {
            display: grid;
            grid-template-columns: repeat(4, 1fr);
            gap: var(--spacing-md);
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list .product-container {
            gap: var(--spacing-xs);
            padding: var(--spacing-sm);
            padding-block-end: var(--spacing-md);
            display: flex;
            flex-flow: column;
            box-shadow: var(--box-shadow);
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list .product-container img {
            width: 100%;
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list .product-container .right-block {
            gap: var(--spacing-xs);
            display: flex;
            flex-flow: column;
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list .product-container .right-block .blog-product-extra.content_price {
            display: none;
        }

        .page-ybc_blog_page :is(.ybc-blog-related-posts, #ybc-blog-related-products) {
            margin-block-start: var(--spacing-2xl);
        }

        .product-miniature {
            padding: var(--spacing-xs);
        }

        .product-miniature:hover {
            box-shadow: var(--box-shadow);
        }

        .product-miniature .product-miniature__thumb {
            background: var(--background-grey);
        }

        .product-miniature img {
            background: transparent;
            object-fit: cover;
            mix-blend-mode: darken;
        }

        .product-miniature h2 {
            font: var(--text-weight-normal) var(--text-size-small) / 1.1 var(--font-title) !important;
            text-transform: uppercase !important;
        }

        .product-miniature .price-btn {
            display: grid;
            grid-template-columns: auto 40px;
            gap: var(--spacing-sm);
            justify-content: space-between;
            width: 100%;
        }

        .product-miniature.unavailable .price-btn {
            justify-content: flex-end;
            grid-template-columns: minmax(auto, 42px);
        }

        .product-miniature .price-btn .product-miniature__actions a {
            padding: var(--spacing-2xs);
        }

        .ce-product-grid {
            gap: var(--spacing-sm);
        }

        .product-miniature--smaller {
            display: grid;
            grid-template: auto 1fr / 48px auto;
            gap: var(--spacing-3xs);
        }

        .product-table .product-line__cell--img img,
        .product-miniature--smaller .product-miniature__thumb {
            border-radius: clamp(0rem, var(--border-radius), .5rem);
        }

        .product-miniature--smaller .product-miniature__thumb {
            grid-row: 1 / 3;
        }

        .product-miniature--smaller :is(.product-miniature__pricing, .price) {
            flex-grow: initial;
        }

        .product-miniature.center:not(.product-miniature--smaller) {
            align-items: center;
        }

        .cart-products__thumb,
        :is([class*="-miniature "],[class$="-miniature"]) [class*="-miniature__thumb"] {
            inline-size: 100%;
            block-size: auto;
            overflow: hidden;
            position: relative;
        }

        :is(.cart-products__thumb, .product-miniature__thumb) {
            aspect-ratio: var(--product-img-ratio);
        }

        .product-miniature:not(.product-miniature--smaller) .product-miniature__thumb {
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1.5rem + 2.5vw, 4rem));
        }

        :is([class*="-miniature "],[class$="-miniature"]) [class*="-miniature__thumb"] :is(picture, img, svg),
        :is(.cart-products, .cart-dropdown__products) .cart-products__thumb :is(picture, img) {
            inline-size: 100%;
            block-size: 100%;
        }

        :is([class*="-miniature "],[class$="-miniature"]) [class*="-miniature__thumb"] :is(img, svg),
        .header-top__block--cart .cart-products__thumb img {
            object-fit: cover;
            position: absolute;
            transition: scale .75s linear(0, 0.402 7.4%, 0.711 15.3%, 0.929 23.7%, 1.008 28.2%, 1.067 33%, 1.099 36.9%, 1.12 41%, 1.13 45.4%, 1.13 50.1%, 1.111 58.5%, 1.019 83.2%, 1.004 91.3%, 1);
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            :is([class*="-miniature "],[class$="-miniature"]) [class*="-miniature__thumb"]:hover :is(img, svg),
            .header-top__block--cart .cart-products__thumb:hover img {
                scale: 1.033;
            }
        }

        :is([class*="-miniature "],[class$="-miniature"]) [class*="-miniature__thumb"]:active :is(img, svg),
        .header-top__block--cart .cart-products__thumb:active img {
            scale: 1.05;
        }

        .product-miniature__thumb .bandeau {
            background: var(--alert-danger-color);
            color: var(--light-color);
            font: var(--text-weight-bold) var(--text-size-small)/1.3 var(--font-text);
            text-align: center;
            inline-size: 100%;
            margin: 0;
            pointer-events: none;
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-xs);
            position: absolute;
            inset-block-end: 0;
            inset-inline-start: 0;
        }

        main :is([class*="-miniature "],[class$="-miniature"]) a[class*="-miniature__title"] {
            display: inline-flex;
            font: var(--font-product-title);
            letter-spacing: var(--product-title-letter-spacing);
            text-transform: var(--product-title-transform);
            max-inline-size: 100%;
        }

        :is([class*="-miniature "],[class$="-miniature"]) a[class*="-miniature__title"] :is(h2, h3, h4, p) {
            all: inherit;
            overflow: hidden;
            text-overflow: ellipsis;
        }

        .product-miniature:not(.product-miniature--smaller) .product-miniature__pricing {
            display: flex;
            flex-flow: row wrap;
            align-items: flex-end;
            justify-content: flex-end;
            flex-grow: 1;
            gap: var(--spacing-4xs) var(--spacing-2xs);
        }

        .product-miniature :is(.product-miniature__actions, .bouton) {
            inline-size: 100%;
            min-inline-size: initial;
        }

        @container product (inline-size < 14rem) {

            .product-miniature:not(.product-miniature--smaller) {
                gap: var(--spacing-2xs);
            }

            .tax-label p,
            .product-miniature:not(.product-miniature--smaller) :is(a.product-miniature__title, .price, .bouton) {
                font-size: var(--text-size-small);
            }

            .product-miniature:not(.product-miniature--smaller) :is(.product-flags__flag, .bandeau) {
                padding-block: var(--spacing-4xs);
                padding-inline: var(--spacing-3xs);
            }

            .product-miniature:not(.product-miniature--smaller) .product-flags {
                padding: var(--spacing-3xs);
            }

            .product-miniature:not(.product-miniature--smaller) .product-flags__flag {
                font-size: .5rem;
            }

            .product-miniature:not(.product-miniature--smaller) .bouton {
                padding: var(--spacing-2xs);
            }

            .product-miniature.center:not(.product-miniature--smaller) .product-miniature__pricing {
                align-items: center;
            }
        }
    }

    .header-banner:not(:empty) {
        background: var(--primary-color);
        color-scheme: dark;
        padding-block: var(--spacing-3xs);
    }

    .header-banner .swiper-content {
        display: flex;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        gap: var(--spacing-3xs);
    }

    .header-banner :is(p, a) {
        font: var(--text-weight-normal) var(--text-size-small)/1.1 var(--font-text);
        text-align: center;
        text-wrap: balance;
        text-transform: uppercase;
        letter-spacing: .08em;
    }

    .header-banner a {
        position: relative;
        white-space: pre;
    }

    .header-banner a::before {
        content: "";
        display: block;
        inline-size: 100%;
        block-size: var(--border-width);
        position: absolute;
        inset-block: auto 0;
        inset-inline: 0;
        opacity: 1;
        transition: width .3s cubic-bezier(0.51, 0.18, 0, 0.88) .15s;
    }

    @media only screen and (hover: hover) and (pointer: fine) {

        .header-banner a:is(:hover, :focus-visible)::before {
            inline-size: 0;
            inset-inline-start: initial;
        }
    }

    .header-banner-title {
        color: var(--title-color);
        font-weight: var(--text-weight-bold);
    }

    .header {
        container: main-nav / inline-size;
        position: relative;
        z-index: 50;
    }

    .header:not(.header-absolute) .header-wrapper {
        background: var(--background-color);
    }

    .header-nav {
        padding-block: var(--padding-header);
        position: relative;
    }

    .header-absolute:not(.header-absolute-home) .header-nav,
    .page-index .header-absolute-home .header-nav {
        color-scheme: dark;
    }

    .header-nav > .container {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        justify-content: space-between;
        gap: 5%;
    }

    .header-top__block--logo {
        display: flex;
        align-items: center;
        gap: var(--spacing-sm);
    }

    .header-top__block--logo a {
        aspect-ratio: var(--logo-ratio);
        inline-size: auto;
        block-size: var(--logo-height);
    }

    .header-top__block--logo img {
        inline-size: 100%;
        block-size: 100%;
    }

    .header-top__block--eshop {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        flex-grow: 1;
        gap: var(--spacing-xs);
    }

    .header-top__block--phone {
        display: flex;
        align-items: center;
        gap: var(--spacing-xs);
        margin-inline-end: var(--spacing-md);
    }

    .header-top__block--phone small {
        font: var(--text-weight-medium) var(--text-size-small) / 1 var(--font-text);
    }

    .header-top__block--eshop i.phone {
        font-size: 1.5rem;
    }

    .header-top__block--phone p {
        display: flex;
        flex-flow: column;
        text-transform: uppercase;
    }

    :is(.header-top__block, .blockcart) > :is(a, button):not(.bouton) {
        display: flex;
        position: relative;
    }

    :is(.header-top__block, .blockcart) > :is(a, button):not(.bouton) .header-top__icon {
        font-size: 1rem;
        padding: var(--spacing-xs);
        transform: skewX(-15deg);
        color-scheme: dark;
        color: var(--title-color);
    }

    .header-top__icon.inodia-icons:before {
        transform: skewX(15deg);
        display: inline-block;
    }

    .header-top__icon.search {
        background: var(--dark-color);
    }

    .header-top__icon.profile {
        background: var(--secondary-color);
    }

    .header-top__icon.cart {
        background: var(--primary-color);
    }

    .header-top__badge {
        background: transparent;
        color: var(--light-color);
        display: flex;
        inline-size: auto;
        block-size: auto;
        font: var(--text-weight-medium) .5rem/1 var(--font-text);
        letter-spacing: var(--letter-spacing);
        padding: var(--spacing-4xs);
        position: absolute;
        inset-block-start: 0;
        inset-inline-end: 0;
        translate: 15% 0;
        z-index: 1;
    }

    .header-top__badge::before {
        content: "";
        background: var(--primary-color);
        border-radius: 100%;
        aspect-ratio: 1;
        inline-size: 100%;
        line-height: 1;
        position: absolute;
        inset-block: 50% 0;
        inset-inline: 0 50%;
        translate: 0 -50%;
        z-index: -1;
    }

    .blockcart__dropdown {
        background: var(--background-color);
        border-radius: clamp(0rem, var(--border-radius), 2rem);
        box-shadow: 0 2px 14px var(--shadow-color);
        inline-size: 20rem;
        overflow: hidden;
        z-index: 1000;
    }

    .blockcart__dropdown.show {
        display: block;
    }

    .cart-dropdown__content {
        padding: var(--spacing-sm);
    }

    .cart-dropdown__title {
        margin-block-end: var(--spacing-sm);
    }

    .cart-dropdown__title p {
        color: var(--title-color);
        font: var(--text-weight-bold) var(--text-size-normal)/1 var(--font-text);
    }

    .cart-dropdown__close {
        display: flex;
        font-size: var(--text-size-normal);
        line-height: 1;
    }

    .cart-dropdown__products {
        border: none;
        max-block-size: 15rem;
        overflow: auto;
        overscroll-behavior: contain;
        padding-block: var(--spacing-3xs);
        padding-inline: var(--spacing-3xs) 0;
    }

    @-moz-document url-prefix() {

        .cart-dropdown__products {
            scrollbar-color: var(--shadow-color) var(--background-color);
            scrollbar-width: thin;
        }
    }

    .cart-dropdown__products::-webkit-scrollbar {
        inline-size: 4px;
    }

    .cart-dropdown__products::-webkit-scrollbar-thumb {
        background: var(--shadow-color);
    }

    .cart-dropdown__products .cart-products {
        display: grid;
        grid-template-columns: 64px minmax(0, 1fr) auto;
        align-items: flex-start;
        gap: var(--spacing-2xs);
        padding-block-end: var(--spacing-xs);
    }

    .cart-dropdown__products .cart-products:not(:first-child) {
        border-block-start: var(--border-width) solid var(--shadow-color);
        padding-block-start: var(--spacing-xs);
    }

    :is(.blockcart__dropdown, .cart-summary-products) .cart-products__thumb {
        border-radius: clamp(0rem, var(--border-radius), .5rem);
    }

    .cart-dropdown__products .cart-products__title {
        display: inline-flex;
        font: var(--font-product-title);
        font-size: var(--text-size-small);
        letter-spacing: var(--product-title-letter-spacing);
        text-transform: var(--product-title-transform);
    }

    .cart-dropdown__products .price,
    .header-top__block--cart .wrapper-boutons,
    .product-miniature--smaller .product-miniature__pricing {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-4xs);
    }

    .cart-dropdown__products .price {
        margin-block-start: var(--spacing-3xs);
    }

    :is(.cart-dropdown__products, .product-miniature--smaller) .price,
    .page-checkout .cart-products__desc .price {
        display: flex;
        font-size: var(--text-size-small);
        text-align: left;
    }

    .cart-dropdown__products .price:has(+ ul) {
        margin-block-end: var(--spacing-2xs);
    }

    .cart-dropdown__products .price + ul li {
        display: flex;
        flex-flow: row wrap;
    }

    .cart-dropdown__products .price + ul li:not(:first-child) {
        margin-block-start: var(--spacing-4xs);
    }

    :is(.blockcart__dropdown, .cart-summary-products) .cart-products__thumb {
        border-radius: clamp(0rem, var(--border-radius), .5rem);
    }

    .cart-dropdown__products + .cart-total {
        margin-block: calc(var(--spacing-2xs) * 2) var(--spacing-2xs);
    }

    .header-top__block--cart .bouton {
        font-size: var(--text-size-small);
        inline-size: 100%;
    }

    .ino-menu-level-1 {
        display: flex;
        align-items: stretch;
        /*gap: var(--spacing-lg);*/
    }

    /*.ino-menu-level-1 .ino-nav-menu-item-1:not(:first-child):before {
        content: "";
        display: block;
        background: var(--muted-color);
        width: 1px;
        height: calc(100% + .5rem);
        position: absolute;
        top: 50%;
        translate: 0 -50%;
        left: calc(var(--spacing-lg) / -2);
    }*/

    .ino-nav-main li {
        line-height: 1;
    }

    :is(.ino-nav-menu-item-1, .ino-nav-item-link-1) {
        display: flex;
        align-items: center;
        gap: 1ch;
    }

    li.ino-nav-menu-item.ino-nav-menu-item-1 {
        padding: 10px 20px;
        border-inline-start: 1px solid var(--muted-color);
    }

    li.ino-nav-menu-item.ino-nav-menu-item-1:first-child {
        border-inline-start: none;
    }

    .ino-nav-menu-item.pieces a {
        color: var(--secondary-color);
    }

    .ino-nav-menu-item.promo a {
        color: var(--primary-color);
    }

    .ino-nav-menu-item:is(.promo, .pieces) a:hover {
        color: var(--primary-hover-color);
    }

    .ino-nav-item-link-1 {
        font: var(--text-weight-medium) var(--text-size-small)/1 var(--font-text);
        letter-spacing: 0.08em;
        text-transform: uppercase;
    }

    .ino-nav-main :is(a:not([href]), a[href="#"]) {
        cursor: default;
    }

    .ino-nav-item-link-1 i {
        font-size: var(--text-size-small);
    }

    .header .search-form {
        position: relative;
        z-index: 1;
    }

    .header .desktop-search-from {
        display: none;
    }



    @container main-nav (85rem < inline-size) {

        .show-inodia-menu {
            display: none !important;
        }

        :is(.header-wrapper, .header-nav) {
            pointer-events: none;
        }

        .header-banner,
        :where(.header-top__block:not(.header-top__block--eshop), .ino-nav-menu-item-1) {
            pointer-events: initial;
        }


        .header .desktop-search-from {
            justify-content: flex-end;
        }

        .header-menu {
            inline-size: 100%;
            display: grid;
            grid-template-columns: 1fr repeat(6, calc(min(var(--wrapper-size-mobile), var(--wrapper-size)) / 6)) 1fr;
            margin-block-start: var(--spacing-md);
            position: relative;
            z-index: 1;
        }

        .header-menu::before {
            content: "";
            display: block;
            background: var(--background-color);
            color-scheme: dark;
            grid-column: 1 / 2;
        }

        .header-menu > div {
            display: flex;
            grid-column: 2 / -2;
            justify-items: flex-start;
            align-items: center;
            background: var(--background-color);
            color-scheme: dark;
            width: max-content;
            gap: var(--spacing-lg);
        }

        .header-menu > div:after {
            content: "";
            display: block;
            background: var(--background-color);
            color-scheme: dark;
            height: 100%;
            width: 5rem;
            transform: skewX(-15deg);
            margin-inline-start: calc(-5rem - var(--spacing-lg));
            translate: 33%;
            z-index: -1;
        }

        .header-menu > div p {
            color: var(--secondary-color);
            margin: 0;
            padding-inline-start: 5rem;
        }

        .ino-nav {
            align-content: center;
            padding-block: var(--spacing-xs);
        }

        .ino-nav-menu-item-1.ino-nav-menu-default:has(.ino-nav-sub-menu-wrapper) {
            position: relative;
        }

        .ino-nav-item-link-1.hassubmenu::after {
            content: "\e900" / "";
            color: inherit;
            font: var(--font-icon);
            font-size: var(--text-size-small);
            letter-spacing: 0;
        }

        .ino-nav-menu-item-1 > .ino-nav-sub-menu-wrapper {
            display: table;
            opacity: 0;
            visibility: hidden;
            position: absolute;
            translate: 0 100%;
            transition: var(--transition-default);
            z-index: -1;
        }

        .ino-nav-menu-item-1:not(.ino-nav-menu-full-width) > .ino-nav-sub-menu-wrapper {
            border-radius: 0 0 clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem)) clamp(0rem, var(--border-radius), clamp(1.5rem, 1.375rem + .625vw, 2rem));
            inline-size: calc(100% + (var(--spacing-sm) * 2));
            inset-block-end: 50%;
            inset-inline-start: calc(var(--spacing-sm) * -1);
        }

        .ino-nav-menu-item-1.ino-nav-menu-full-width > .ino-nav-sub-menu-wrapper {
            inline-size: 100%;
            inset-block-end: 50%;
            inset-inline-start: 0;
            padding-block: var(--spacing-xl) var(--spacing-xl);
        }

        .header:not(.header-absolute) .ino-nav-menu-item-1 > .ino-nav-sub-menu-wrapper,
        body:not(.page-index) .header-absolute-home .ino-nav-menu-item-1 > .ino-nav-sub-menu-wrapper {
            background: var(--background-color);
            box-shadow: 0 16px 24px -16px var(--shadow-color);
        }

        .header:not(.header-absolute) .ino-nav-menu-item-1:not(.ino-nav-menu-full-width) > .ino-nav-sub-menu-wrapper,
        body:not(.page-index) .header-absolute-home .ino-nav-menu-item-1:not(.ino-nav-menu-full-width) > .ino-nav-sub-menu-wrapper {
            padding-block: var(--spacing-lg) var(--spacing-lg);
            padding-inline: var(--spacing-sm);
        }

        .header-absolute:not(.header-absolute-home) .ino-nav-menu-item-1:not(.ino-nav-menu-full-width) > .ino-nav-sub-menu-wrapper,
        .page-index .header-absolute-home .ino-nav-menu-item-1:not(.ino-nav-menu-full-width) > .ino-nav-sub-menu-wrapper {
            padding-block: calc(var(--spacing-sm) * 2) var(--spacing-sm);
            padding-inline: var(--spacing-sm);
        }

        .ino-nav-menu-item-1:hover > .ino-nav-sub-menu-wrapper,
        .ino-nav-menu-item-1 > .ino-nav-sub-menu-wrapper:focus-within,
        .ino-nav-menu-item-1 > :where(.hassubmenu:focus-visible, .ino-nav-wrapper-link:has(a.hassubmenu:focus-visible)) ~ .ino-nav-sub-menu-wrapper {
            opacity: 1;
            visibility: visible;
        }

        .ino-nav-menu-item-1.ino-nav-menu-full-width .ino-menu-level-2 {
            display: grid;
            grid-template-columns: repeat(3, minmax(0, 1fr));
            align-items: flex-start;
            gap: var(--spacing-sm) 7%;
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
            max-width: 1100px;
        }

        .ino-nav-menu-full-width :is(.ino-nav-menu-item-2, .ino-menu-level-3) {
            display: flex;
            flex-flow: column;
            align-items: flex-start;
        }

        .ino-nav-menu-full-width .ino-nav-menu-item-2 {
            gap: var(--spacing-sm);
        }

        .ino-nav-menu-full-width .ino-menu-level-3 {
            gap: var(--spacing-xs);
        }

        .ino-nav-menu-item-1:not(.ino-nav-menu-full-width) .ino-nav-menu-item-2:not(:first-child) {
            margin-block-start: var(--spacing-xs);
        }

        .ino-nav-menu-item-1:is(.ino-nav-menu-full-width, .ino-nav-menu-default) .ino-nav-item-link-2 {
            font: var(--text-weight-normal) var(--text-size-small) / 1 var(--font-text);
            letter-spacing: 0.08em;
            text-transform: uppercase;
        }

        .ino-nav-menu-default .ino-nav-sub-menu a,
        .ino-nav-menu-full-width .ino-nav-item-link-3 {
            font: var(--text-weight-medium) var(--text-size-normal)/1 var(--font-text);
        }
    }

    @container main-nav (inline-size <= 85rem) {

        .ino-menu-level-1 .ino-nav-menu-item-1:not(:first-child):before,
        .hide-inodia-menu {
            display: none !important;
        }

        .ino-nav-mobile-btn-open .burger {
            background: var(--dark-color);
        }

        .ino-nav-mobile-menu :is(ul, li) {
            display: flex;
            flex-flow: column;
            line-height: 1;
        }

        .ino-nav-mobile-menu li > :where(a[aria-expanded="false"], .ino-nav-wrapper-link:has(button[aria-expanded="false"])) ~ .ino-nav-sub-menu-wrapper {
            visibility: hidden;
            translate: 100%;
        }

        .ino-nav-sub-menu-wrapper {
            background: var(--background-color);
            display: flex;
            flex-flow: column;
            align-items: flex-start;
            gap: var(--spacing-lg);
            inline-size: 100%;
            block-size: 100%;
            position: fixed;
            inset: 0;
            padding-block: 6rem;
            transition: var(--transition-default);
            overflow-y: auto;
            z-index: 3;
        }

        .ino-nav-mobile-menu .ino-nav-sub-menu-wrapper > :is(.ino-nav-sub-menu, .wrapper-close) {
            inline-size: min(var(--wrapper-size), var(--wrapper-size-mobile));
            margin-inline: auto;
        }

        .ino-nav-mobile-menu.center {
            justify-content: flex-start;
        }

        .ino-nav-mobile-menu.center :is(ul, li) {
            align-items: flex-start;
            width: 100%;
            padding: 0;
            border: none;
        }

        .ino-nav-mobile-menu.center a {
            text-align: center;
        }

        .ino-menu-level-1 {
            gap: var(--spacing-xl);
        }

        .ino-menu-level-2 {
            gap: var(--spacing-md);
        }

        .ino-menu-level-3 {
            gap: var(--spacing-sm);
        }

        .ino-nav-menu-item-1 {
            gap: var(--spacing-md) var(--spacing-2xs);
            position: relative;
        }

        .ino-nav-menu-item-1::after {
            content: "";
            display: block;
            position: absolute;
            bottom: calc(var(--spacing-xl) * -0.5);
            background: var(--shadow-color);
            width: 100%;
            height: 1px;
        }

        .ino-nav-menu-item-2 {
            gap: var(--spacing-sm) var(--spacing-2xs);
        }

        .ino-nav-menu-item-3 {
            gap: var(--spacing-xs) var(--spacing-2xs);
        }

        .ino-nav-menu-item-1:not(:last-child) > :where(a.hassubmenu[href="#"], .ino-nav-sub-menu-wrapper) > .ino-nav-sub-menu {
            margin-block-end: var(--spacing-sm);
        }

        .ino-nav-menu-item-2:not(:last-child) > :where(a.hassubmenu[href="#"], .ino-nav-sub-menu-wrapper) > .ino-nav-sub-menu {
            margin-block-end: var(--spacing-2xs);
        }

        .ino-nav-mobile-menu :is(a.hassubmenu[href="#"], .ino-nav-wrapper-link) {
            display: flex;
            align-items: baseline;
            gap: 1.5ch;
        }

        .ino-nav-mobile-menu a.hassubmenu[href="#"]::after {
            content: "\e900" / "";
            font: var(--font-icon);
            letter-spacing: 0;
        }

        .ino-nav-item-link-2::after,
        .ino-nav-menu-item-2 > .ino-nav-wrapper-link > button i {
            font-size: var(--text-size-small);
        }

        .ino-nav-mobile-menu a[aria-expanded="true"]::after,
        .ino-nav-mobile-menu button[aria-expanded="true"] i {
            display: block;
            rotate: 180deg;
        }

        .ino-nav-item-link-1 {
            font: var(--text-weight-bold) var(--h4-font-size)/1.1 var(--font-text);
        }

        .ino-nav-item-link-2 {
            color: var(--strong-color);
            font: var(--text-weight-medium) var(--text-size-big)/1.1 var(--font-text);
        }

        .ino-nav-item-link-3 {
            color: var(--text-color);
            font: var(--text-weight-normal) var(--text-size-normal)/1.1 var(--font-text);
        }

        .ino-modal-search form {
            inline-size: min(100%, 45rem);
            margin-inline: auto;
        }

        .header .search-toggler,
        .header-top__block--menu-toggle > .header-link {
            border: none;
            box-shadow: none;
            font-size: 1.5rem;
        }

        .header-nav > .container {
            gap: var(--spacing-sm);
        }

        .header-top__block--eshop {
            justify-content: flex-end;
        }
    }

    .sur-footer {
        display: flex;
        flex-flow: column;
    }

    .sur-footer > .fond {
        padding-block: var(--spacing-2xl);
    }

    .blockreassurance:not(.single-reassurances) {
        padding-block: var(--spacing-xl);
    }

    .blockreassurance .container {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
        gap: var(--spacing-xl) 5%;
        position: relative;
    }

    .single-reassurances.blockreassurance {
        display: grid;
        grid-template-columns: repeat(2, minmax(150px,250px));
        gap: var(--spacing-xs);
    }

    .blockreassurance .container:before {
        content: "";
        display: block;
        background: var(--shadow-color);
        height: 1px;
        width: 100%;
        position: absolute;
        top: calc(var(--spacing-xl) / -1.5);
    }

    .blockreassurance .reassurance {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-3xs);
    }

    .blockreassurance .block-title {
        color: var(--title-color);
        display: flex;
        flex-flow: column;
        gap: var(--spacing-xs);
        font: var(--text-weight-bold) var(--text-size-normal)/1.1 var(--font-title);
        text-transform: uppercase;
        letter-spacing: .012em;
    }

    .single-reassurances.blockreassurance .block-title {
        flex-flow: wrap;
        align-items: center;
        font: var(--text-weight-medium) var(--text-size-small)/1.1 var(--font-title);
    }

    .blockreassurance .block-title::before {
        color: var(--primary-color);
        font: var(--font-icon);
        font-size: 1.5rem;
        letter-spacing: 0;
    }

    .single-reassurances.blockreassurance .block-title::before {
        font-size: 1.25rem;
    }

    .blockreassurance .reassurance:nth-child(1) .block-title::before {
        content: "\e912" / "";
    }

    .single-reassurances.blockreassurance .reassurance:nth-child(3) .block-title::before,
    .blockreassurance .reassurance:nth-child(2) .block-title::before {
        content: "\e927" / "";
    }

    .blockreassurance .reassurance:nth-child(3) .block-title::before {
        content: "\e919" / "";
    }

    .single-reassurances.blockreassurance .reassurance:nth-child(2) .block-title::before,
    .blockreassurance .reassurance:nth-child(4) .block-title::before {
        content: "\e920" / "";
    }

    .single-reassurances.blockreassurance .reassurance:nth-child(4) .block-title::before,
    .blockreassurance .reassurance:nth-child(5) .block-title::before {
        content: "\e90f" / "";
    }

    .blockreassurance p:not(.block-title) {
        font-size: var(--text-size-small);
        line-height: 1.3;
    }

    .block-newsletter {
        display: grid;
        grid-template-columns: .66fr 1fr;
        column-gap: 4%;
        max-inline-size: 70rem;
        margin-inline: auto;
    }

    .block-newsletter .newsletter-text p {
        line-height: 1.3;
    }

    .block-newsletter .title {
        color: var(--title-color);
        font: var(--text-weight-bold) var(--h4-font-size)/1.1 var(--font-text);
        letter-spacing: var(--letter-spacing);
        margin-block-end: var(--spacing-2xs);
    }

    .block-newsletter form {
        inline-size: 100%;
    }

    .block-newsletter .champ + .messages {
        margin-block-start: var(--spacing-xs);
    }

    .block-newsletter input[type=email] {
        border: none;
    }

    .block-newsletter input[type=email]:focus {
        border-color: var(--primary-color);
        color: var(--title-color);
    }

    .footer-container {
        background: var(--background-color);
        color-scheme: dark;
        display: flex;
        flex-flow: column;
    }

    .footer-container > .footer-links {
        display: grid;
        grid-template-columns: repeat(auto-fit, minmax(min(100%, 12rem), 1fr));
        gap: var(--spacing-3xl) 6%;
        padding-block: var(--spacing-2xl);
    }

    .footer-container .col-links:not(:has(> .title)),
    .footer-container .coordonnees :is(.footer-contact-list, .location) {
        display: flex;
        flex-flow: column;
        align-items: flex-start;
    }

    .footer-container .footer-contact-list > a.link-dark,
    .footer-container .coordonnees :is(.location) strong {
        display: none;
    }

    .footer-container .logo-map .title {
        text-transform: initial;
    }

    .footer-container .logo-map .links-list {
        display: flex;
        flex-flow: wrap;
        gap: var(--spacing-2xs);
    }

    .footer-container .block-social {
        position: relative;
    }

    .footer-container .block-social:before {
        content: "Suivez-nous";
        display: block;
        color: var(--title-color);
    }

    .footer-container .block-social a.social {
        font-size: 0;
        position: relative;
        background: var(--title-color);
        color: var(--dark-color);
        padding: calc(var(--spacing-3xs) /2);
    }

    .footer-container .block-social a.social:hover {
        background: var(--primary-color);
        color: var(--light-color);
    }

    .footer-container .col-links:not(:has(> .title)) {
        gap: var(--spacing-md);
    }

    .footer-container .col-links.ino-links-cat {
        position: relative;
    }

    .footer-container .col-links.ino-links-cat:after,
    .footer-container .col-links.ino-links-cat:before {
        content: "";
        display: block;
        background: var(--outline-color);
        width: 1px;
        height: 100%;
        position: absolute;
        top: 0;
        left: calc(var(--spacing-md) / -.5);
    }

    .footer-container .col-links.ino-links-cat:after {
        left: initial;
        right: calc(var(--spacing-md) / -.5);
    }

    .footer-container .coordonnees .footer-contact-list {
        gap: var(--spacing-2xs);
    }

    .footer-container .coordonnees a p {
        color: inherit;
    }

    .footer-container .block-social,
    .footer-container .block-social ul {
        display: flex;
        gap: var(--spacing-xs);
    }

    .footer-container .block-social {
        flex-flow: column;
    }

    .footer-container .block-social a {
        display: flex;
    }

    .footer-container .block-social i::before {
        color: inherit;
        font-size: var(--h4-font-size);
    }

    .ino-links-cat > ul > li > a,
    .footer-container .title {
        color: var(--title-color);
        font: var(--text-weight-bold) var(--text-size-small)/1.1 var(--font-text);
        margin-block-end: var(--spacing-sm);
        text-transform: uppercase;
        letter-spacing: .08em;
    }

    .ino-links-cat > ul > li > a {
        margin-block-end: 0;
    }

    .footer-container .list-group .list-group-item div:has(.list-group),
    .footer-container .categories > ul > li > a {
        display: none;
    }

    .footer-container div:not(.block-social) > ul {
        display: flex;
        flex-flow: column;
        align-items: flex-start;
        gap: var(--spacing-sm);
    }

    .footer-container div:not(.block-social) > ul :where(li, a) {
        display: flex;
        line-height: 1.3;
        flex-flow: column;
        font: var(--text-weight-normal) var(--text-size-small) / 1 var(--font-text);
    }

    .col-links-wrapper {
        display: flex;
        justify-content: space-between;
    }

    .footer-container .title,
    .footer-container div:not(.block-social) > ul a:not(:hover, :active) {
        color: var(--text-color);
        font: var(--text-weight-normal) var(--text-size-small) / 1 var(--font-text);
    }

    .logo-map {
        display: grid !important;
        grid-template-columns: repeat(2, minmax(220px, 250px));
        grid-auto-rows: max-content;
        gap: var(--spacing-2xs) var(--spacing-md) !important;
    }

    .logo-map a { grid-area: 1 / 1 / 2 / 2; }
    .logo-map .coordonnees { grid-area: 2 / 1 / 3 / 2; }
    .logo-map .map-footer { grid-area: 1 / 2 / 3 / 3; }

    .post-footer {
        padding-block: var(--spacing-xs);
    }

    .post-footer :is(p, a) {
        font: var(--text-weight-normal) var(--text-size-small)/2.5 var(--font-text);
        letter-spacing: var(--letter-spacing);
        text-align: center;
    }

    .post-footer :is(p, a:not(:hover, :active)) {
        color: var(--muted-color);
    }

    .featured-products__footer:not(:empty) {
        margin-block-start: var(--spacing-lg);
    }

    .featured-products__footer.center {
        display: flex;
        justify-content: center;
    }

    .page-index .page-home > *:not(:first-child) {
        margin-block-start: var(--spacing-4xl);
    }

    .ino-slider-home > .elementor-container > .elementor-row {
        display: grid;
        grid-template-columns: repeat(10, 1fr);
        grid-template-rows: auto;
        gap: var(--spacing-xs);
    }

    .ino-slider-home :is(.slider, .fond-gris, .france, .fond-noir) {
        width: 100%;
    }

    .ino-slider-home :is(.slider) .elementor-widget-image,
    .ino-slider-home :is(.slider) .elementor-widget-image * {
        height: 100%;
    }

    .ino-slider-home :is(.slider) .elementor-widget-image img {
        object-fit: cover;
    }

    .ino-slider-home :is(.slider) .bouton {
        position: absolute;
        left: 0;
        bottom: var(--spacing-md);
    }

    .ino-slider-home :is(.fond-gris, .fond-noir) {
        padding: 0;
    }

    .ino-slider-home :is(.fond-gris, .fond-noir, .france) > .elementor-column-wrap {
        padding: var(--spacing-md) !important;
    }

    .sur-titre p {
        text-transform: uppercase;
        letter-spacing: .08em;
    }

    .ino-slider-home .slider { grid-area: 1 / 1 / 3 / 6; }
    .ino-slider-home .fond-gris { grid-area: 1 / 6 / 2 / 8; }
    .ino-slider-home .france { grid-area: 2 / 6 / 3 / 8; }
    .ino-slider-home .fond-noir:not(.france) { grid-area: 1 / 8 / 3 / 11; }

    .ino-slider-home .fond-noir:not(.france) .elementor-widget-wrap {
        align-content: center;
    }

    .ino-slider-home .fond-gris :is(.elementor-widget-text-editor, .bouton) {
        margin-block-start: var(--spacing-2xs);
    }

    .ino-slider-home .france :is(.elementor-widget-text-editor) {
        margin-block-start: var(--spacing-2xs);
    }

    .ino-section-cat-home {
        z-index: 1;
    }

    .ino-section-cat-home .ino-card-cat {
        height: calc(var(--spacing-2xl) * 5);
    }

    .ino-section-cat-home .ino-card-cat .elementor-column-wrap {
        align-content: flex-end;
        display: flex;
        flex-wrap: wrap;
    }

    .ino-section-cat-home .ino-card-cat .elementor-column-wrap .elementor-widget-wrap {
        height: 100%;
        width: 100%;
        padding: 0;
        align-content: flex-end;
    }

    .ino-section-cat-home .ino-card-cat .elementor-widget-image {
        position: absolute;
        top: 50%;
        left: 50%;
        translate: -50% -50%;
        height: 100%;
        width: 100%;
    }

    .ino-section-cat-home .ino-card-cat .elementor-widget-image img {
        height: 100%;
        width: 100%;
        object-fit: cover;
    }

    .ino-section-cat-home .ino-card-cat .elementor-widget-image a:hover {
        opacity: .7;
    }

    .ino-section-cat-home .ino-card-cat .elementor-widget-image * {
        height: 100%;
        width: 100%;
    }

    .ino-section-cat-home .ino-card-cat .elementor-widget-heading {
        margin-block: auto var(--spacing-md);
        margin-inline: var(--spacing-md);
    }

    .ino-slider-home {
        padding-block: var(--spacing-lg);
    }

    .ino-slider-home > .elementor-container:before {
        content: "";
        display: block;
        background: var(--secondary-color);
        width: 650px;
        height: calc(100% + var(--spacing-4xl));
        position: absolute;
        right: -400px;
        top: 50%;
        translate: 0 -50%;
        transform: skewX(-15deg);
        pointer-events: none;
    }

    .ino-slider-home .fond-noir:not(.france):before {
        content: "";
        display: block;
        background: var(--secondary-color);
        width: 150px;
        height: 3rem;
        position: absolute;
        right: -2rem;
        bottom: 0;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 1;
    }

    .ino-slider-home .slider:before {
        content: "";
        display: block;
        background: var(--background-color);
        width: 180px;
        height: 3rem;
        position: absolute;
        left: -2rem;
        top: 0;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 1;
    }

    .ino-section-promotion:before {
        content: "";
        display: block;
        background: var(--background-grey);
        width: 850px;
        height: calc(100% + calc(var(--spacing-4xl) * 1.5));
        position: absolute;
        right: -200px;
        top: 50%;
        translate: 0 -50%;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 0;
    }

    .ino-section-promotion .elementor-row {
        flex-flow: column;
    }

    .ino-section-promotion .elementor-col-50 {
        width: 100%;
    }

    .ino-section-promotion .elementor-col-50:first-child {
        padding: var(--spacing-lg);
        box-shadow: var(--box-shadow);
        z-index: 1;
        background: var(--background-color);
    }

    .ino-section-promotion .elementor-inner-section .elementor-row {
        display: grid;
        grid-template-columns: minmax(75%, auto) minmax(15%, auto);
        gap: var(--spacing-lg);
    }

    .ino-section-promotion .elementor-inner-section .elementor-row .elementor-inner-column {
        width: 100%;
    }

    .ino-section-promotion .elementor-col-33 {
        background: var(--primary-color);
        height: max-content;
    }

    .ino-section-promotion .elementor-col-33 img {
        width: 100%;
    }

    .ino-section-promotion .fond-primary {
        padding: var(--spacing-xs);
        margin: 0;
    }

    .ino-section-promotion .fond-primary.chat {
        padding-block-end: 0;
    }

    :is(.ino-section-promotion, .page-sidebar-left) .inodia-icons.chat:before {
        color: var(--title-color);
        font-size: 1.5rem;
    }

    :is(.ino-section-promotion, .page-sidebar-left) .inodia-icons.chat .elementor-heading-title a {
        color: var(--title-color);
        margin-block-start: var(--spacing-xs);
        text-transform: uppercase;
        font: var(--text-weight-bold) var(--text-size-normal) / 1.1 var(--font-text);
        letter-spacing: .04em;
        text-wrap-style: balance;
    }

    :is(.page-sidebar-left) .text-small {
        margin-block-start: var(--spacing-xs);
    }

    :is(.page-sidebar-left) .fond-primary {
        margin-block-start: var(--spacing-md);
    }

    .title-filters {
        padding: var(--spacing-2xs);
        background: var(--background-grey);
        margin-block-end: var(--spacing-md);
    }

    .title-filters p {
        color: var(--secondary-color);
        text-transform: uppercase;
        margin: 0;
    }

    .ino-section-star-product > .elementor-container > .elementor-row {
        gap: var(--spacing-md);
    }

    .ino-section-star-product .elementor-col-25 .elementor-widget-wrap:has(.elementor-widget-heading) {
        padding-block: 0;
    }

    .ino-section-star-product .elementor-col-25 .product-miniature {
        max-height: 450px;
    }

    .before.elementor-widget-image .elementor-image {
        position: relative;
    }

    .before.elementor-widget-image .elementor-image:before {
        content: "";
        display: block;
        position: absolute;
        top: 0;
        right: 15%;
        translate: 0 -50%;
        background: var(--primary-color);
        height: 41px;
        width: 54px;
        transform: skewX(-15deg);
    }

    .ino-section-actu-home .fond-gris:before {
        content: "";
        display: block;
        background: var(--background-color);
        width: 50%;
        height: 3rem;
        position: absolute;
        left: -2rem;
        top: 0;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 1;
    }

    .ino-section-actu-home .fond-gris:after {
        content: "";
        display: block;
        background: var(--background-grey);
        width: 20rem;
        height: 100%;
        position: absolute;
        right: -6.5rem;
        top: 50%;
        translate: 0 -50%;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 0;
    }

    .ino-section-actu-home .fond-gris > .elementor-column-wrap {
        z-index: 1;
    }

    .ybc-blog-list .post-wrapper .ybc_item_img > svg,
    :is(.ybc_blog_ltr_mode, .ybc-blog-related-posts-wrapper) :is(.title_blog, .ybc-blog-latest-toolbar, .ybc-blog-categories) {
        display: none;
    }

    .ybc_blog_ltr_mode .ybc_blog_content_block {
        gap: var(--spacing-sm);
        display: flex;
        flex-flow: column;
    }

    :is(.ybc-blog-list) {
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: var(--spacing-sm) var(--spacing-md);
        margin-block: var(--spacing-xl);
    }

    :is(.ybc-blog-related-posts-list) {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr 1fr;
        gap: var(--spacing-sm) var(--spacing-md);
    }

    :is(.ybc-blog-related-posts-list) .ybc_blog_content_block_item {
        background: var(--background-color);
        box-shadow: var(--box-shadow);
        padding: var(--spacing-sm);
    }

    :is(.ybc-blog-related-posts-list) .ybc_blog_content_block_item img {
        width: 100%;
        max-height: 200px;
        object-fit: cover;
        margin-block-end: var(--spacing-sm);
    }

    .ybc-blog-list .post-wrapper,
    .ino-section-actu-home .ybc_blog_content_block_item {
        background: var(--background-color);
        display: grid;
        grid-template-columns: 174px 1fr;
        box-shadow: var(--box-shadow);
        padding: 0;
        height: 100%;
    }

    .ybc-blog-wrapper-content,
    .ybc_blog_ltr_mode .ybc-blog-latest-post-content {
        padding: var(--spacing-sm);
        z-index: 1;
        display: flex;
        flex-flow: column;
    }

    .ybc_blog_ltr_mode .ybc-blog-sidear-post-meta {
        order: -1;
    }

    :is(.ybc_blog_ltr_mode, .ybc-blog-list) :is(.ybc_blog_content_block_item, .post-wrapper) img {
        width: 100%;
        height: 100%;
        min-height: 208px;
        object-fit: cover;
    }

    :is(.ybc_blog_ltr_mode, .ybc-blog-list) .ybc_item_img {
        position: relative;
    }

    :is(.ybc_blog_ltr_mode, .ybc-blog-list) .ybc_item_img:after {
        content: "";
        display: block;
        background: var(--background-color);
        width: 10rem;
        height: 100%;
        position: absolute;
        right: -8.5rem;
        top: 50%;
        translate: 0 -50%;
        transform: skewX(-10deg);
        pointer-events: none;
        z-index: 0;
    }

    :is(.ybc-blog-related-posts-list)  .post-date,
    .ybc_blog_ltr_mode .post-date {
        color: var(--secondary-color);
        font: var(--text-weight-normal) var(--text-size-small) / 1 var(--font-text);
    }

    :is(.ybc_blog_ltr_mode, .ybc-blog-list, .ybc-blog-related-posts-list, .ybc-blog-related-posts-wrapper) :is(.read_more, .ybc_title_block, .blog_description) {
        margin-block-start: var(--spacing-3xs);
    }

    :is(.ybc_blog_ltr_mode, .ybc-blog-list, .ybc-blog-related-posts-list) .read_more {
        color: var(--secondary-color);
        text-decoration: underline;
    }

    :is(.ybc_blog_ltr_mode, .ybc-blog-list, .ybc-blog-related-posts-list) :is(.read_more:hover, .ybc_title_block:hover) {
        color: var(--primary-color);
    }

    .ybc_title_block {
        color: var(--title-color);
        font: var(--text-weight-medium) var(--h3-font-size) / 1.1 var(--font-text);
    }

    .ybc_title_block a {
        color: inherit;
    }

    :is(.ybc-blog-related-posts-wrapper) .blog_description,
    :is(.ybc_blog_ltr_mode, .ybc-blog-list, .ybc-blog-related-posts-list) .blog_description p {
        font: var(--text-weight-normal) var(--text-size-small) / var(--line-height) var(--font-text) !important;
        display: -webkit-box;
        -webkit-box-orient: vertical;
        -webkit-line-clamp: 4;
        overflow: hidden;
    }

    .ino-section-actu-home .bouton-primary {
        margin-block-start: var(--spacing-xl);
    }

    .product-details.product-tabs .ino-container {
        position: relative;
    }

    .product-details.product-tabs .ino-container:before {
        content: "";
        display: block;
        background: var(--background-color);
        width: 20rem;
        height: 3rem;
        position: absolute;
        left: -2rem;
        top: 0;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 1;
    }

    .product-details.product-tabs .ino-container:after {
        content: "";
        display: block;
        background: var(--background-color);
        width: 20rem;
        height: 3rem;
        position: absolute;
        right: -2rem;
        bottom: 0;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 1;
    }

    .ino-product-tabs .ino-tab-titles {
        display: grid;
        grid-template-columns: 1fr 1fr 1fr;
        margin-block: var(--spacing-xl) var(--spacing-lg);
        gap: var(--spacing-2xl);
    }

    .ino-product-tabs .ino-tab-title {
        width: max-content;
        margin-inline: auto;
        position: relative;
        transition: var(--transition-default);
    }

    .ino-product-tabs .ino-tab-title:not(.active):hover {
        color: var(--primary-color);
    }

    .ino-product-tabs .ino-tab-title.active:after {
        content: "";
        display: block;
        background: var(--primary-color);
        width: calc(100% + 2rem);
        height: 2px;
        position: absolute;
        bottom: -1rem;
        left: 50%;
        translate: -50% 0;
    }

    .ino-tab-content {
        display: none;
    }

    .ino-tab-content ul li {
        display: flex;
        flex-wrap: wrap;
    }

    .ino-tab-content ul li:before {
        content: "-";
        display: block;
        margin-inline-end: .5ch;
    }

    .ino-tab-content.active {
        display: flex;
        flex-flow: column;
    }

    .ino-tab-content.active iframe {
        margin-inline: auto;
        margin-block-start: var(--spacing-lg);
    }

    .products-selection {
        display: grid;
        grid-template-columns: 1fr 2fr;
        align-items: center;
        margin-block-start: var(--spacing-xl);
    }

    .products-selection .total-products {
        margin: 0;
    }

    .products-selection select {
        color: var(--secondary-color);
        border: var(--border-width) solid var(--secondary-color);
    }

    .products-selection :is(.total-products, .sort-by) {
        font: var(--text-weight-normal) var(--text-size-small) / 1 var(--font-text);
        color: var(--secondary-color);
    }

    .products-selection .sort-by-row {
        display: grid;
        grid-template-columns: minmax(80px, max-content) minmax(250px, max-content);
        align-items: center;
        justify-content: flex-end;
    }

    .ino-section-description {
        display: grid;
        grid-template-columns: 1.75fr 1fr;
        gap: var(--spacing-lg);
    }

    .ino-section-description .category-additional-description {
        gap: var(--spacing-md);
        display: flex;
        flex-flow: column;
    }

    .ino-section-description .category-cover-image {
        position: relative;
    }

    .ino-section-description .category-cover-image img {
        position: absolute;
        height: 100%;
        width: 100%;
        inset: 0;
        object-fit: cover;
    }

    .ino-section-description .category-cover-image:before {
        content: "";
        display: block;
        background: var(--light-color);
        width: 150px;
        height: 3rem;
        position: absolute;
        right: -2rem;
        bottom: 0;
        transform: skewX(-15deg);
        pointer-events: none;
        z-index: 1;
    }

    /* début */

    .customer-links__list {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-2xs);
    }

    .customer-links__list a {
        border-radius: var(--border-radius);
        display: flex;
        align-items: center;
        gap: var(--spacing-2xs);
        font: var(--text-weight-medium) var(--text-size-normal)/1.3 var(--font-text);
        letter-spacing: var(--letter-spacing);
        white-space: initial;
        padding-block: var(--spacing-2xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
    }

    @media only screen and (hover: hover) and (pointer: fine) {

        .customer-links__list a:hover {
            background: var(--background-grey);
        }

        .customer-links__list a:active {
            background: oklch(from var(--primary-color) l c h / .3);
        }
    }

    @media only screen and (hover: none) and (pointer: coarse) {

        .customer-links__list a:active {
            background: var(--background-grey);
        }
    }

    .customer-links__list a.active {
        background: var(--primary-color);
        color: var(--light-color);
        outline-color: var(--primary-color);
    }

    .customer-links__list i {
        display: grid;
        place-items: center;
        aspect-ratio: 1 / 1;
        block-size: var(--text-size-big);
        font-size: var(--text-size-big);
    }

    .customer-links .col-lg-4 {
        display: none;
    }

    .customer-links .logout-btn {
        display: table;
        font-size: var(--text-size-small);
        inline-size: 100%;
        margin-block-start: var(--spacing-sm);
    }


    #checkout-login-form {
        margin-block: var(--spacing-lg);
    }

    #checkout-login-form > .left {
        padding: var(--spacing-md);
        background: var(--background-grey);
    }

    .forgot-password,
    .page-authentication p + .bouton {
        margin-block-start: var(--spacing-sm);
    }

    :is(.page-registration, .page-authentication) .user-form:not(#customer-form) {
        border: var(--border-width) solid var(--primary-color);
    }

    :is(.page-registration, .page-authentication) .user-form__block {
        padding: var(--spacing-md);
    }

    :is(.page-registration, .page-authentication) .user-form__block > .help-block {
        inline-size: 100%;
        margin-block-end: var(--spacing-xs);
    }

    .page-password .form-group,
    :is(.page-registration, .page-authentication) .user-form__block.center,
    :is(.page-registration, .page-authentication) .user-form__block.center .login-form {
        display: flex;
        flex-flow: column;
        align-items: center;
    }

    :is(.page-registration, .page-authentication) .user-form__block.center .form-group {
        inline-size: 100%;
    }

    :is(.page-authentication, .page-registration) :is(.user-form__block.new-account, .user-form.registration > .form-footer) {
        background: oklch(from var(--primary-color) l c h / .15);
    }

    .page-registration .user-form.registration > .form-footer {
        border-radius: 0 0 clamp(0rem, var(--border-radius), clamp(2rem, 1.75rem + 1.25vw, 3rem)) clamp(0rem, var(--border-radius), clamp(2rem, 1.75rem + 1.25vw, 3rem));
        padding-block: var(--spacing-xs);
        padding-inline: var(--spacing-md);
    }

    .page-authentication .user-form__block :is(.form-footer, .bouton) {
        inline-size: 100%;
    }

    .page-registration .user-form.registration > .form-footer a {
        white-space: nowrap;
    }

    .page-authentication .registration .card-body {
        padding: var(--spacing-md);
    }

    .page-authentication .registration .card-footer {
        background: var(--background-grey);
        border-block-start: calc(var(--border-width) * 2) solid var(--outline-color);
    }

    .page-authentication .registration .card-footer a {
        margin-inline-start: var(--spacing-4xs);
    }

    .page-password .form-mdp {
        max-inline-size: 50rem;
        margin-inline: auto;
    }

    .page-password .send-renew-password-link {
        margin-block-end: var(--spacing-md);
    }

    .page-password .form-group > label {
        align-self: flex-start;
    }

    .page-password :where(.form-group, .form-fields) > input + div {
        margin-block-start: var(--spacing-xs);
    }

    :is(p + table, .order-products + .form-fields) {
        margin-block-start: var(--spacing-md);
    }

    .page-history tbody :is(th, td) {
        vertical-align: middle;
    }

    .page-history tbody td.order-actions {
        inline-size: 15%;
        white-space: nowrap;
        text-align: center;
    }

    .page-history tbody td.order-actions div {
        display: grid;
        gap: var(--spacing-3xs);
    }

    .order-details-list {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-2xs);
    }

    .order-details-list :is(li, strong) {
        line-height: 1.3;
    }

    .section-orderdetail:not(:first-of-type) {
        margin-block-start: var(--spacing-4xl);
    }

    .order-message-form form {
        inline-size: min(100%, 50rem);
        margin-inline: auto;
    }

    .order-message {
        --_size-message: 90%;
        background: var(--background-grey);
        border-radius: var(--border-radius);
        inline-size: var(--_size-message);
        padding: var(--spacing-md);
    }

    @container order-messages (50rem < inline-size) {

        .order-message {
            inline-size: calc(var(--_size-message) / 2);
        }
    }

    :where(.order-message:not(:first-of-type), .order-message-text) {
        margin-block-start: var(--spacing-xs);
    }

    .order-message:nth-child(2n - 1) {
        align-self: flex-end;
    }

    .order-message-name {
        color: var(--title-color);
        font-size: var(--text-size-big);
    }

    .order-message-time {
        margin-block-start: var(--spacing-3xs);
    }

    .order-address {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--items-min-size)), 1fr));
        gap: var(--items-gap);
    }

    .order-address .address__header {
        margin: 0;
    }

    .order-address .adresse-alias {
        color: var(--secondary-color);
        display: flex;
        font: var(--text-weight-bold) var(--text-size-normal)/1.3 var(--font-text);
        letter-spacing: var(--letter-spacing);
        margin-block-start: var(--spacing-sm);
    }

    .page-order-detail .order-infos {
        display: flex;
        flex-flow: column;
        align-items: flex-start;
        gap: var(--spacing-sm);
    }

    .order-recap .product-table + .recap {
        margin-block-start: var(--spacing-lg);
    }

    .order-recap .order-return,
    .page-order-return .order-return-infos div + .h3,
    .page-order-return .order-return-infos + section {
        margin-block-start: var(--spacing-4xl);
    }

    .card__item:not(.address),
    :is(.address__header, .address__body) {
        background: var(--background-grey);
    }

    .page-addresses .addresses-footer {
        margin-block-start: var(--spacing-lg);
    }

    .page-module-psgdpr-gdpr .page-content > div:not(:first-child) {
        margin-block-start: var(--spacing-4xl);
    }

    .page-module-psgdpr-gdpr .wrapper-boutons {
        display: flex;
        flex-flow: row wrap;
        gap: var(--spacing-xs) var(--spacing-2xs);
        margin-block-start: var(--spacing-sm);
    }

    @container viewport (inline-size <= 70rem) {

        :where(.page-customer-account, .page-order-detail, .page-addresses, .page-order-return) main > .container {
            display: flex;
            flex-flow: column;
        }

        :where(.page-customer-account, .page-order-detail, .page-addresses, .page-order-return) .breadcrumb {
            order: 1;
        }

        :where(.page-customer-account, .page-order-detail, .page-addresses, .page-order-return) .page-sidebar-left {
            order: 3;
            margin-block-start: var(--spacing-4xl);
        }

        :where(.page-customer-account, .page-order-detail, .page-addresses, .page-order-return) .content-wrapper {
            order: 2;
        }

        .customer-links__list {
            overflow: initial;
            white-space: initial;
            margin: 0;
        }

    }

    @container viewport (45rem < inline-size) {

        .page-authentication .user-form,
        .order-recap .product-table + .recap {
            display: grid;
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .order-recap .product-table + .recap {
            column-gap: 5rem;
        }

        .page-authentication .user-form__row > .user-form__block {
            border-radius: 0 clamp(0rem, var(--border-radius), 3rem) clamp(0rem, var(--border-radius), 3rem) 0;
            inline-size: 50%;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .order-recap .product-table .product-line {
            background: var(--background-grey);
        }

        .order-recap .product-table .product-line:not(:first-child) {
            margin-block-start: var(--spacing-2xs);
        }

        .product-table__head {
            display: none;
        }

        .product-table tbody {
            display: block;
        }

        .product-table tbody .product-line {
            display: flex;
            flex-wrap: wrap;
            position: relative;
        }

        .product-table .product-line__cell--img {
            inline-size: auto;
        }

        .product-table .product-line__cell--prod {
            flex: 0 0 calc(100% - 5.625rem);
            max-inline-size: calc(100% - 5.625rem);
        }

        .product-table :is(.product-line__cell--price,.product-line__cell--qty,.product-line__cell--total) {
            flex: 0 0 33.33333%;
            max-inline-size: 33.33333%;
        }

        .table .product-line__cell--total {
            text-align: right;
        }

        .order-recap .order-details:not(:first-child) {
            margin-block-start: var(--spacing-lg);
        }

        .order-return-form .table .product-line--return {
            display: flex;
            flex-flow: row wrap;
        }

        .order-return-form .table :is(.product-line__cell--checkbox, .product-line__cell--img, .product-line__cell--prod) {
            inline-size: auto;
        }

        .order-return-form .table .product-line__cell--prod {
            flex: 1 1 10rem;
        }

        .order-return-form .table :is(.product-line__cell--price, .product-line__cell--qty) {
            inline-size: 50%;
        }

        .order-return-form .product-line__price.number {
            font-size: var(--text-size-normal);
            font-weight: var(--text-weight-medium);
        }

        .order-return-form .qty .form-wrapper {
            display: table;
            inline-size: auto;
        }

        .order-recap .order-subtotals {
            margin-block-start: var(--spacing-lg);
        }
    }

    @container viewport (inline-size <= 36rem) {

        .order-return-form .table .product-line__cell--img img {
            inline-size: 96px;
        }
    }

    @container viewport (30rem < inline-size <= 70rem) {

        .customer-links {
            max-inline-size: max-content;
        }

        .customer-links__list a {
            inline-size: 100%;
        }
    }

    @container viewport (inline-size <= 30rem) {

        .page-password .form-group > div {
            inline-size: 100%;
        }

        .order-return-form .table .product-line__cell--img img {
            inline-size: 72px;
        }
    }

    @container viewport (inline-size <= 24rem) {

        .section-orderdetail:not(:first-of-type),
        .order-recap :is(.product-table + .recap, .order-return) {
            margin-block-start: var(--spacing-3xl);
        }

        .order-return-form .table .product-line__cell--prod {
            flex: initial;
            inline-size: 100%;
            max-inline-size: initial;
        }
    }

    .product-line-grid {
        display: grid;
        grid-template-columns: 128px minmax(0,1fr) auto minmax(auto, .15fr) auto;
        align-items: center;
        gap: var(--spacing-lg);
    }

    .product-line-grid:not(:first-child) {
        border-block-start: var(--border-width) solid var(--shadow-color);
        padding-block-start: var(--spacing-md);
        margin-block-start: var(--spacing-md);
    }

    .product-line-image img {
        border-radius: clamp(0rem, var(--border-radius), clamp(1rem, .875rem + .625vw, 1.5rem));
    }

    .product-line-prod :where(.product-line-grid__title, .product-price) {
        display: table;
    }

    .product-line-prod .product-line-grid__title {
        font: var(--font-product-title);
        letter-spacing: var(--product-title-letter-spacing);
        text-transform: var(--product-title-transform);
    }

    .product-line-prod .current-price {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-4xs);
    }

    .product-line-prod .price {
        font-size: var(--text-size-small);
    }

    .product-line-prod .product-line-info {
        margin-block-start: var(--spacing-xs);
    }

    :where(.product-line-total, .product-line-delete) {
        justify-self: flex-end;
    }

    .product-line-qty :is(.qty > .input-custom-qty, .bootstrap-touchspin) {
        max-inline-size: 5rem;
    }

    .product-line-delete .remove-from-cart {
        display: flex;
        font-size: var(--text-size-normal);
    }

    .cart-grid-right :where(.cart-voucher, .cart-voucher > .cart-voucher:has(ul.promo-name))
    .cart-grid-right .cart-voucher > .cart-voucher ul.promo-name {
        display: flex;
        flex-flow: column;
    }

    .cart-grid-right .cart-voucher {
        border-block-start: var(--border-width) solid var(--shadow-color);
        margin-block-start: var(--spacing-sm);
        padding-block-start: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher > .cart-voucher:has(ul.promo-name) {
        gap: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher,
    .cart-grid-right .cart-voucher > .cart-voucher ul.promo-name {
        gap: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher > .cart-voucher ul.promo-name li {
        margin: 0;
    }

    .cart-grid-right .cart-voucher .cart-voucher {
        border-block-start: none;
        margin-block-start: 0;
        padding-block-start: 0;
    }

    .cart-grid-right .cart-voucher .bouton {
        font-size: var(--text-size-small);
        padding-block: var(--spacing-2xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
    }

    .cart-grid-right .cart-voucher .promo-name + p {
        margin-block-start: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher .promo-name li:not(:first-child) {
        margin-block-start: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher .promo-name .value {
        display: flex;
        align-items: center;
        gap: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher .promo-name .value > a {
        display: flex;
    }

    .cart-grid-right .cart-voucher .promo-name span {
        color: var(--primary-color);
        font-weight: var(--text-weight-bold);
    }

    .cart-grid-right .cart-voucher :where(#promo-code, form) + .alert {
        margin-block-start: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher .promo-highlighted {
        margin-block-end: var(--spacing-3xs);
    }

    .cart-grid-right .cart-detailed-actions {
        border-block-start: var(--border-width) solid var(--shadow-color);
        margin-block-start: var(--spacing-sm);
        padding-block-start: var(--spacing-sm);
    }

    .cart-grid-right .bouton {
        inline-size: 100%;
    }

    .featured-products {
        margin-block-start: var(--spacing-4xl);
    }

    @container viewport (80rem < inline-size) {

        .cart-overview {
            margin-block-end: var(--spacing-4xl);
        }
    }

    @container viewport (inline-size <= 80rem) {

        .cart-grid-body {
            margin-block-end: var(--spacing-4xl);
        }

        .cart-overview {
            margin-block-end: var(--spacing-3xl);
        }
    }

    @container viewport (inline-size <= 70rem) {

        .cart-overview {
            margin-block-end: var(--spacing-md);
        }
    }

    @container viewport (45rem < inline-size <= 60rem) {

        .product-line-grid {
            grid-template-columns: 128px minmax(0, 1fr) auto minmax(auto, .33fr) auto;
            gap: var(--spacing-md);
        }
    }

    @container viewport (inline-size <= 45rem) {

        .product-line-grid {
            grid-template-columns: 128px minmax(0,1fr) minmax(0,1fr);
            gap: var(--items-gap);
        }

        .product-line-grid:not(:last-child) {
            padding-block-end: var(--spacing-lg);
            margin-block-end: var(--spacing-lg);
        }

        .product-line-prod {
            grid-column: 2 / 4;
        }

        :where(.product-line-image, .product-line-prod) {
            align-self: self-start;
        }
    }

    @container viewport (inline-size <= 36rem) {

        .product-line-grid {
            grid-template-columns: 96px minmax(0,1fr) minmax(0,1fr);
        }
    }

    @container viewport (inline-size <= 24rem) {

        .product-line-grid {
            grid-template-columns: 72px auto auto;
        }

        .product-line-qty .bootstrap-touchspin {
            inline-size: 100%;
            block-size: 3rem;
            max-inline-size: initial;
        }
    }

    .product-line-grid {
        display: grid;
        grid-template-columns: 128px minmax(0,1fr) auto minmax(auto, .15fr) auto;
        align-items: center;
        gap: var(--spacing-lg);
    }

    .product-line-grid:not(:first-child) {
        border-block-start: var(--border-width) solid var(--shadow-color);
        padding-block-start: var(--spacing-md);
        margin-block-start: var(--spacing-md);
    }

    .product-line-image img {
        border-radius: clamp(0rem, var(--border-radius), clamp(1rem, .875rem + .625vw, 1.5rem));
    }

    .product-line-prod :where(.product-line-grid__title, .product-price) {
        display: table;
    }

    .product-line-prod .product-line-grid__title {
        font: var(--font-product-title);
        letter-spacing: var(--product-title-letter-spacing);
        text-transform: var(--product-title-transform);
    }

    .product-line-prod .current-price {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-4xs);
    }

    .product-line-prod .price {
        font-size: var(--text-size-small);
    }

    .product-line-prod .product-line-info {
        margin-block-start: var(--spacing-xs);
    }

    :where(.product-line-total, .product-line-delete) {
        justify-self: flex-end;
    }

    .product-line-qty :is(.qty > .input-custom-qty, .bootstrap-touchspin) {
        max-inline-size: 5rem;
    }

    .product-line-delete .remove-from-cart {
        display: flex;
        font-size: var(--text-size-normal);
    }

    .cart-grid-right :where(.cart-voucher, .cart-voucher > .cart-voucher:has(ul.promo-name))
    .cart-grid-right .cart-voucher > .cart-voucher ul.promo-name {
        display: flex;
        flex-flow: column;
    }

    .cart-grid-right .cart-voucher {
        border-block-start: var(--border-width) solid var(--shadow-color);
        margin-block-start: var(--spacing-sm);
        padding-block-start: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher > .cart-voucher:has(ul.promo-name) {
        gap: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher,
    .cart-grid-right .cart-voucher > .cart-voucher ul.promo-name {
        gap: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher > .cart-voucher ul.promo-name li {
        margin: 0;
    }

    .cart-grid-right .cart-voucher .cart-voucher {
        border-block-start: none;
        margin-block-start: 0;
        padding-block-start: 0;
    }

    .cart-grid-right .cart-voucher .bouton {
        font-size: var(--text-size-small);
        padding-block: var(--spacing-2xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
    }

    .cart-grid-right .cart-voucher .promo-name + p {
        margin-block-start: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher .promo-name li:not(:first-child) {
        margin-block-start: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher .promo-name .value {
        display: flex;
        align-items: center;
        gap: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher .promo-name .value > a {
        display: flex;
    }

    .cart-grid-right .cart-voucher .promo-name span {
        color: var(--primary-color);
        font-weight: var(--text-weight-bold);
    }

    .cart-grid-right .cart-voucher :where(#promo-code, form) + .alert {
        margin-block-start: var(--spacing-2xs);
    }

    .cart-grid-right .cart-voucher .promo-highlighted {
        margin-block-end: var(--spacing-3xs);
    }

    .cart-grid-right .cart-detailed-actions {
        border-block-start: var(--border-width) solid var(--shadow-color);
        margin-block-start: var(--spacing-sm);
        padding-block-start: var(--spacing-sm);
    }

    .cart-grid-right .bouton {
        inline-size: 100%;
    }

    .featured-products {
        margin-block-start: var(--spacing-4xl);
    }

    @container viewport (80rem < inline-size) {

        .cart-overview {
            margin-block-end: var(--spacing-4xl);
        }
    }

    @container viewport (inline-size <= 80rem) {

        .cart-grid-body {
            margin-block-end: var(--spacing-4xl);
        }

        .cart-overview {
            margin-block-end: var(--spacing-3xl);
        }
    }

    @container viewport (inline-size <= 70rem) {

        .cart-overview {
            margin-block-end: var(--spacing-md);
        }
    }

    @container viewport (45rem < inline-size <= 60rem) {

        .product-line-grid {
            grid-template-columns: 128px minmax(0, 1fr) auto minmax(auto, .33fr) auto;
            gap: var(--spacing-md);
        }
    }

    @container viewport (inline-size <= 45rem) {

        .product-line-grid {
            grid-template-columns: 128px minmax(0,1fr) minmax(0,1fr);
            gap: var(--items-gap);
        }

        .product-line-grid:not(:last-child) {
            padding-block-end: var(--spacing-lg);
            margin-block-end: var(--spacing-lg);
        }

        .product-line-prod {
            grid-column: 2 / 4;
        }

        :where(.product-line-image, .product-line-prod) {
            align-self: self-start;
        }
    }

    @container viewport (inline-size <= 36rem) {

        .product-line-grid {
            grid-template-columns: 96px minmax(0,1fr) minmax(0,1fr);
        }
    }

    @container viewport (inline-size <= 24rem) {

        .product-line-grid {
            grid-template-columns: 72px auto auto;
        }

        .product-line-qty .bootstrap-touchspin {
            inline-size: 100%;
            block-size: 3rem;
            max-inline-size: initial;
        }
    }

    .checkout-step:not(:nth-last-child(2)) {
        margin-block-end: var(--spacing-md);
    }

    .checkout-step.-current:not(:nth-last-child(2)) {
        padding-block-end: var(--spacing-xl);
    }

    .checkout-step.-current:nth-last-child(2) {
        padding-block-end: 0;
    }

    .checkout-step :is(.content, .done, .step-edit),
    .checkout-step.-complete.-current .done,
    .checkout-step.-complete:not(.-current) .step-number {
        display: none;
    }

    .checkout-step.-current.-reachable.-complete .content,
    .checkout-step.-current .content {
        display: block;
    }

    .checkout-step.-complete .done {
        display: inline-block;
    }

    .checkout-step .step-title {
        display: flex;
        flex-flow: initial;
        align-items: baseline;
        justify-content: space-between;
        opacity: .5;
    }

    .checkout-step:is(.-current, .-complete) .step-title {
        opacity: 1;
    }

    .checkout-step.-current .step-title {
        margin-block-end: var(--spacing-lg);
    }

    .checkout-step.-complete .done {
        color: var(--alert-success-color);
        font-size: var(--text-size-normal);
    }

    .checkout-step .step-title span {
        display: flex;
        align-items: center;
        gap: var(--spacing-xs);
        margin: 0;
    }

    .checkout-step .step-title .step-edit,
    .checkout-step.-current .step-title .step-edit {
        display: none;
    }

    .checkout-step.-complete .step-title .step-edit {
        appearance: none;
        background: transparent;
        display: inline-flex;
        align-items: center;
        gap: var(--spacing-3xs);
        padding: 0;
    }

    .checkout-step.-complete .step-title .step-edit i {
        font-size: var(--text-size-small);
    }

    .checkout-step .custom-radio input[type=radio] {
        inline-size: auto;
        block-size: auto;
    }

    .checkout-step :is(.login-form, .customer-form, .delivery-address, .invoice-address) {
        margin-inline-start: 0;
    }

    .checkout-modal .modal-header > p {
        padding-inline-end: var(--spacing-xs);
        margin: 0;
    }

    .checkout-step.-complete .step-title .step-edit {
        font-size: var(--text-size-small);
        font-weight: var(--text-weight-medium);
        letter-spacing: var(--letter-spacing);
    }

    .checkout-step.-complete .step-title .step-edit:not(:hover, :active) {
        color: var(--muted-color);
    }

    .checkout-step :is(.wrapper-btn-next, .js-payment-ps_checkout-paypal, .js-payment-ps_checkout-google_pay, .js-payment-ps_checkout-apple_pay) {
        margin-block-start: var(--spacing-lg);
        width: max-content;
    }

    .checkout-step .wrapper-boutons {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: var(--spacing-sm) var(--spacing-md);
    }

    .checkout-option-block label {
        background: var(--background-grey);
    }

    .checkout-personal-information-step .user-form {
        inline-size: min(36rem, 100%);
    }

    .checkout-personal-information-step .tab-pane:not(.active) {
        display: none;
    }

    .checkout-personal-information-step .nav {
        display: flex;
        flex-wrap: nowrap;
        align-items: center;
        gap: var(--spacing-xs);
        margin-block: 0 var(--spacing-md);
    }

    .checkout-personal-information-step .nav-item,
    .checkout-personal-information-step .nav-item :is(a, span) {
        display: flex;
        align-items: center;
        line-height: 1.2;
        text-align: center;
    }

    .checkout-personal-information-step .nav-item {
        flex: initial;
    }

    .checkout-personal-information-step .nav-link {
        padding: 0;
    }

    .checkout-personal-information-step .nav-link.active {
        background: transparent;
        border: none;
    }

    .checkout-step :is(.login-form, .customer-form) {
        margin: 0;
    }

    .checkout-step .customer-form > section > p {
        margin-block: var(--spacing-lg) var(--spacing-sm);
    }

    .checkout-step .customer-form > section > p span {
        font-size: var(--text-size-small);
    }

    .checkout-step .customer-form > section > p .creer-compte-title,
    .checkout-step .forgot-password {
        display: table;
    }

    .checkout-step .customer-form footer.form-footer {
        margin-block-start: var(--spacing-lg);
    }

    .checkout-personal-information-step .identity.is-logged {
        margin-block-end: var(--spacing-3xs);
    }

    .checkout-personal-information-step .is-logged.deco {
        margin-block-end: var(--spacing-sm);
    }

    .checkout-personal-information-step p small {
        font-style: italic;
    }

    .checkout-step .forgot-password {
        display: flex;
        justify-content: flex-start;
        margin-inline-start: 0;
    }

    .checkout-step footer.form-footer {
        text-align: left;
    }

    .additional-information:not(:first-child) {
        margin-block-start: var(--spacing-xs);
        width: max-content;
    }

    .checkout-personal-information-step .nav-link {
        border-radius: 0;
        font-size: var(--text-size-normal);
        font-weight: var(--text-weight-bold);
        letter-spacing: var(--letter-spacing);
    }

    .checkout-personal-information-step .nav-link:not(.active, :hover, :active) {
        color: var(--muted-color);
    }

    .checkout-personal-information-step .form-group + .form-informations {
        margin-block: calc(var(--spacing-sm) * 2) 0;
    }

    .checkout-personal-information-step .form-informations .h3 + .form-informations-option {
        margin-inline-start: var(--spacing-4xs);
    }

    .checkout-personal-information-step .form-informations .form-informations-subtitle {
        display: block;
        margin-block-start: var(--spacing-3xs);
    }

    .checkout-addresses-step .invoice-address .user-form {
        margin-inline-start: 0;
    }

    .checkout-addresses-step .js-address-form > form {
        display: flex;
        flex-flow: column;
    }

    .checkout-addresses-step p + .address-selector {
        margin-block-start: var(--spacing-sm);
    }

    .checkout-addresses-step .address-selector {
        display: grid;
        grid-template-columns: repeat(auto-fill, minmax(min(100%, var(--items-min-size)), 1fr));
        gap: var(--items-gap);
    }

    .checkout-addresses-step .address {
        border: var(--border-width) solid transparent;
        transition: var(--transition-default);
    }

    .checkout-addresses-step .address:has(input[type="radio"]:focus-visible) {
        outline-color: var(--primary-color);
    }

    .checkout-addresses-step .address:not(.selected) {
        opacity: .5;
    }

    @media only screen and (hover: hover) and (pointer: fine) {

        .checkout-addresses-step .address:not(.selected):hover {
            border-color: var(--outline-color);
        }

        .checkout-addresses-step .address:not(.selected):active {
            border-color: var(--border-color);
        }
    }

    @media only screen and (hover: none) and (pointer: coarse) {

        .checkout-addresses-step .address:not(.selected):active {
            border-color: var(--outline-color);
        }
    }

    .checkout-addresses-step .address.selected {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 2px oklch(from var(--primary-color) l c h / .1);
    }

    .checkout-addresses-step .address > label {
        cursor: pointer;
        display: flex;
        flex-flow: column;
        align-items: initial;
        gap: 0;
        inline-size: 100%;
        block-size: 100%;
        margin: 0;
        position: relative;
    }

    .checkout-addresses-step .address input,
    .checkout-delivery-step .checkout-option input {
        position: absolute;
        /*inset: 0;*/
    }

    .checkout-addresses-step .address__footer {
        border-radius: 0;
    }

    .checkout-addresses-step .address__footer a {
        position: relative;
        z-index: 1;
    }

    .checkout-addresses-step form > a {
        inline-size: fit-content;
    }

    .checkout-addresses-step .add-address {
        display: inline-flex;
        align-items: center;
        gap: 1ch;
        font-size: var(--text-size-normal);
        font-weight: var(--text-weight-medium);
        letter-spacing: var(--letter-spacing);
        margin-block: var(--spacing-md) 0;
    }

    .checkout-addresses-step .add-address i {
        font-size: var(--text-size-small);
    }

    .checkout-addresses-step .add-address + .custom-link {
        margin-block-start: var(--spacing-xs);
    }

    .checkout-addresses-step :is(.add-address, form) + .h4 {
        margin-block: var(--spacing-xl) 0;
    }

    .checkout-addresses-step .user-form {
        margin-inline-start: 0;
    }

    #hook-display-before-carrier > * {
        margin-block-start: var(--spacing-md);
    }

    .checkout-delivery-step .checkout-option:not(:first-child) {
        margin-block-start: var(--spacing-xs);
    }

    .checkout-delivery-step .checkout-option-block label {
        border: var(--border-width) solid transparent;
        border-radius: var(--border-radius);
        cursor: pointer;
        display: grid;
        align-items: center;
        grid-template-columns: 48px minmax(0,1fr) minmax(0,1fr) minmax(0,.25fr);
        column-gap: var(--spacing-sm);
        inline-size: 100%;
        block-size: auto;
        margin: 0;
        padding: var(--spacing-sm);
        transition: var(--transition-default);
    }

    .checkout-delivery-step .checkout-option-block:not(.selected) > label {
        opacity: .5;
    }

    @media only screen and (hover: hover) and (pointer: fine) {

        .checkout-delivery-step .checkout-option-block:not(.selected) > label:hover {
            opacity: .75;
        }

        .checkout-delivery-step .checkout-option-block:not(.selected) > label:active {
            opacity: .85;
        }
    }

    @media only screen and (hover: none) and (pointer: coarse) {

        .checkout-delivery-step .checkout-option-block:not(.selected) > label:active {
            opacity: .75;
        }
    }

    .checkout-delivery-step .checkout-option-block.selected > label {
        border-color: var(--primary-color);
        box-shadow: 0 0 0 2px oklch(from var(--primary-color) l c h / .1);
    }

    .checkout-delivery-step .checkout-option-block.selected > label:has(input[type="radio"]:focus-visible) {
        outline-color: var(--primary-color);
    }

    .checkout-delivery-step .checkout-option-block .checkout-option__thumb {
        display: flex;
        align-items: center;
        justify-content: center;
        aspect-ratio: var(--product-img-ratio);
        inline-size: 100%;
        block-size: auto;
    }

    .checkout-delivery-step .checkout-option-block .checkout-option__thumb img {
        object-fit: contain;
        inline-size: 100%;
        block-size: 100%;
    }

    .checkout-delivery-step .checkout-option-block :is(.carrier-name, .carrier-price) {
        color: var(--title-color);
        font-size: var(--text-size-normal);
    }

    .checkout-delivery-step .checkout-option-block .carrier-name {
        font-weight: var(--text-weight-bold);
        line-height: 1.2;
        letter-spacing: var(--letter-spacing);
    }

    .checkout-delivery-step .checkout-option-block .carrier-price {
        font-weight: var(--text-weight-medium);
        text-transform: capitalize;
    }

    .checkout-delivery-step .checkout-option-block .carrier-delay {
        text-transform: initial;
    }

    .checkout-delivery-step .order-options {
        margin-block-start: var(--spacing-sm);
    }

    .checkout-delivery-step #delivery {
        display: flex;
        flex-flow: column;
    }

    .checkout-payment-step .additional-information.ps_wirepayment a {
        display: none;
    }

    .checkout-payment-step :is(.checkout-option, .js-payment-option-form) {
        display: table;
    }

    .checkout-payment-step :is(.checkout-option, .js-payment-option-form):not(:first-child) {
        margin-block-start: var(--spacing-2xs);
    }

    .checkout-payment-step :is(.checkout-option, .js-payment-option-form) label {
        margin-block-end: var(--spacing-xs);
    }

    .checkout-payment-step label.radio-inline {
        margin: 0;
    }

    .checkout-payment-step label.radio-inline .custom-radio + span,
    .checkout-payment-step label.radio-inline .custom-radio + span .checkout-option__thumb {
        display: flex;
        align-items: center;
    }

    .checkout-payment-step label.radio-inline .custom-radio + span .checkout-option__thumb {
        inline-size: auto;
        block-size: 24px;
    }

    #div_dpdfrance_predict_block .module#predict,
    .payline :has(img),
    :is(.checkout-option__thumb, .ps_checkout-mark) {
        display: none !important;
    }

    .delivery-options-list :is(.checkout-option__thumb, .ps_checkout-mark) {
        display: block !important;
    }

    .checkout-payment-step label.radio-inline .custom-radio + span .checkout-option__thumb img {
        margin-inline-start: var(--spacing-3xs);
    }

    .checkout-payment-step #conditions-to-approve {
        margin-block-start: var(--spacing-sm);
    }

    .cart-summary-products {
        max-block-size: 20rem;
        overflow: auto;
        overscroll-behavior: contain;
    }

    @-moz-document url-prefix() {

        .cart-summary-products {
            scrollbar-color: oklch(from var(--primary-color) l c h / .4) transparent;
            scrollbar-width: thin;
        }
    }

    .cart-summary-products::-webkit-scrollbar {
        background: transparent;
        inline-size: 4px;
    }

    .cart-summary-products::-webkit-scrollbar-thumb {
        background: oklch(from var(--primary-color) l c h / .4);
    }

    .cart-summary-products > div {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-sm);
    }

    .cart-grid-right .cart-products:last-child {
        padding-block-end: 0;
    }

    .cart-grid-right .cart-products:not(:first-child) {
        border-block-start: none;
    }

    .cart-grid-right .cart-products__desc .title {
        color: inherit;
        font: var(--font-product-title);
        font-size: var(--text-size-small);
        letter-spacing: var(--product-title-letter-spacing);
        text-transform: var(--product-title-transform);
        margin: 0;
    }

    .cart-grid-right .cart-products__desc .prices {
        display: flex;
        flex-flow: column;
        gap: var(--spacing-4xs);
        margin-block-start: var(--spacing-3xs);
    }

    .cart-grid-right .cart-detailed-totals {
        border-block-start: var(--border-width) solid var(--shadow-color);
        margin-block-start: var(--spacing-sm);
        padding-block-start: var(--spacing-sm);
    }

    .cart-grid-right .cart-voucher {
        /*display: none;*/
    }

    .cart-grid-right picture {
        background: var(--background-color);
    }

    @container viewport (60rem < inline-size) {

        .checkout-step .checkout-step__content {
            padding-block: 0;
            padding-inline: var(--spacing-md);
        }
    }

    @container viewport (45rem < inline-size) {

        .checkout-delivery-step .checkout-option label .checkout-option__price {
            justify-self: flex-end;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .checkout-step.-complete .step-title {
            flex-flow: column;
            align-items: flex-start;
        }

        .checkout-step.-complete .step-title .step-edit {
            margin-block-start: var(--spacing-sm);
        }

        .checkout-delivery-step .checkout-option label {
            grid-template-columns: 48px minmax(0,1fr);
            row-gap: var(--items-margin);
        }

        .checkout-delivery-step .checkout-option :is(.checkout-option__delay, .checkout-option__price) {
            grid-column: 1 / -1;
        }

        .checkout-delivery-step .checkout-option .checkout-option__name {
            align-self: center;
        }
    }

    @container viewport (inline-size <= 36rem) {

        .checkout-step :is(.wrapper-btn-next, .js-payment-ps_checkout-paypal) {
            margin-block-start: var(--spacing-md);
        }
    }

    @container viewport (inline-size <= 30rem) {

        .checkout-step .wrapper-boutons {
            flex-flow: column;
        }

        .checkout-personal-information-step li:nth-child(2)::before {
            background: var(--strong-color);
        }

        .checkout-delivery-step .checkout-option label {
            grid-template-columns: 32px minmax(0,1fr);
            gap: var(--spacing-xs);
        }

        .cart-summary .cart-products .cart-products__thumb {
            padding: 0;
        }

        .checkout-personal-information-step .nav-item,
        .checkout-personal-information-step .nav-item :is(a, span) {
            justify-content: center;
        }

        .checkout-personal-information-step .nav-item {
            inline-size: 50%;
        }

        .checkout-personal-information-step .nav-item:nth-child(2) {
            inline-size: auto;
        }
    }

    @container viewport (inline-size <= 24rem) {

        .checkout-step.-complete .step-title .step-edit {
            margin-block-start: var(--spacing-sm);
        }
    }

    body:not(.category-id-16, .category-id-14, .category-id-17, .category-id-15) .search-filters-wrapper {
        block-size: 100%;
    }

    body:not(.category-id-16, .category-id-14, .category-id-17, .category-id-15) .page-sidebar-left > .list-group {
        display: none;
    }

    body:is(.category-id-16, .category-id-14, .category-id-17, .category-id-15) .page-sidebar-left > .list-group {
        margin-bottom: var(--spacing-md);
    }

    :is(.noUi-target, .noUi-target) * {
        -webkit-touch-callout: none;
        -webkit-tap-highlight-color: none;
        touch-action: none;
        user-select: none
    }

    :is(.noUi-base, .noUi-connects, .noUi-connect, .noUi-touch-area) {
        inline-size: 100%;
        block-size: 100%;
    }

    :is(.noUi-base, .noUi-connects) {
        position: relative;
        z-index: 1;
    }

    :is(.noUi-connect, .noUi-origin) {
        position: absolute;
        inset-inline-end: 0;
        inset-block-start: 0;
        transform-origin: 0 0;
        transform-style: preserve-3d;
        transform-style: flat;
        will-change: transform;
        z-index: 1
    }

    .noUi-origin {
        block-size: 10%;
        inline-size: 10%
    }

    .noUi-txt-dir-rtl.noUi-horizontal .noUi-origin {
        inset-inline-start: 0;
        inset-inline-end: auto
    }

    .noUi-horizontal .noUi-origin {
        block-size: 0
    }

    .pagination p,
    .products-selection :is(.showing, .total-products, .sort-by) {
        font: var(--text-weight-normal) var(--text-size-small)/1.1 var(--font-text);
        letter-spacing: var(--letter-spacing);
    }

    .products-selection {
        display: flex;
        flex-flow: row;
        align-items: center;
        justify-content: space-between;
    }

    .products-selection :is(.total-products, .sort-by-row, .sort-by) {
        inline-size: auto;
        margin: 0;
    }

    .products-selection .sort-by-row {
        display: flex;
        align-items: center;
        gap: var(--spacing-xs);
    }

    .products-selection .sort-by {
        white-space: nowrap;
        pointer-events: none;
    }

    .search-filters .list-group {
        display: grid;
        gap: var(--spacing-md);
    }

    .search-filters .bouton {
        gap: var(--spacing-2xs);
    }

    .search-filters .bouton i {
        font-size: var(--text-size-small);
    }

    .search-filters__block:not(:first-child) {
        border-block-start: var(--border-width) solid var(--shadow-color);
        padding-block-start: var(--spacing-md);
    }

    .search-filters__header {
        margin-block-end: var(--spacing-sm);
    }

    .search-filters__collapse {
        display: grid;
        gap: var(--spacing-2xs);
    }

    .search-filters__slider .js-input-range-slider-container {
        display: flex;
        flex-flow: row wrap;
        justify-content: space-between;
    }

    .search-filters__slider .search-filters__input-group {
        inline-size: auto;
        max-inline-size: 40%;
    }

    .search-filters__slider .search-filters__input-group input {
        background: transparent;
        border: transparent;
        color: var(--title-color);
        inline-size: 100%;
        padding: 0;
        margin-block-end: var(--spacing-2xs);
    }

    .search-filters__slider input[data-action="range-to"] {
        text-align: right;
    }

    .search-filters__slider .js-range-slider {
        inline-size: 100%;
        block-size: .25rem;
        border-radius: var(--border-radius);
        position: relative;
    }

    .search-filters__slider .noUi-connects {
        background: oklch(from var(--primary-color) l c h / .3);
        border-radius: var(--border-radius);
        overflow: hidden;
        z-index: 0
    }

    .search-filters__slider .noUi-connect {
        background: var(--primary-color);
    }

    .search-filters__slider .noUi-handle {
        background: var(--title-color);
        border-radius: .25rem;
        cursor: pointer;
        inline-size: .5rem;
        block-size: 1rem;
        position: absolute;
        inset-block-start: -.25rem;
        inset-inline-end: 0;
    }

    .search-filters__slider .noUi-handle-lower {
        translate: 100%;
    }

    .search-filters__block .custom-checkbox-color input + span::before,
    .search-filters__block .custom-checkbox-color input + span::after {
        opacity: 0;
        position: absolute;
        transition: var(--transition-default);
    }

    .search-filters__block .custom-checkbox-color input + span::before {
        content: "";
        background: var(--outline-color);
        display: flex;
        inset: 0;
    }

    .search-filters__block .custom-checkbox-color input + span::after {
        content: "\e90b" / "";
        color: var(--background-color);
        font: var(--font-icon);
        font-size: var(--text-size-small);
        letter-spacing: 0;
        inset: 50% auto auto 50%;
        translate: -50% -50%;
    }

    .search-filters__block .custom-checkbox-color input:checked + span::before,
    .search-filters__block .custom-checkbox-color input:checked + span::after {
        opacity: 1;
    }

    .search-filters__block .custom-checkbox label {
        display: inline-flex;
        inline-size: auto;
    }

    .search-filters__block .custom-checkbox .text {
        font: var(--text-weight-normal) var(--text-size-normal)/1.3 var(--font-text);
    }

    @container viewport (70rem < inline-size) {

        .clear-all-wrapper .bouton {
            inline-size: 100%;
        }
    }

    @container viewport (inline-size <= 70rem) {

        .mobile-filters-open {
            overflow: hidden;
        }

        .products-selection {
            inline-size: 100%;
        }

        .ino-section-description {
            grid-template-columns: 1fr;
        }

        .ino-section-description img {
            max-height: 300px;
            width: 100%;
            object-fit: cover;
        }

        .products-selection .sort-by-row {
            display: grid;
            gap: var(--spacing-3xs);
        }

        .products-selection .sort-by-row:has(.btn-mobile-filters) {
            grid-template-columns: auto auto auto;
        }

        .products-selection .sort-by-row:not(:has(.btn-mobile-filters)) {
            grid-template-columns: auto auto;
        }

        .products-selection .sort-by-row :is(.form-wrapper, select, button) {
            block-size: 100%;
        }

        .products-selection .sort-by-row .btn-mobile-filters {
            border: var(--border-width) solid transparent;
            font-size: var(--text-size-small);
            min-inline-size: initial;
        }

        .products-selection .sort-by,
        .products-selection .sort-by-row .btn-mobile-filters {
            order: -1;
        }

        .search-filters-wrapper {
            background: var(--background-color);
            inline-size: 100%;
            max-block-size: 100svh;
            max-block-size: fill-available;
            max-block-size: -webkit-fill-available;
            position: fixed;
            inset: 0;
            z-index: 999999;
            transition: opacity .15s linear;
            overflow: auto;
            overscroll-behavior: contain;
        }

        @-moz-document url-prefix() {

            .search-filters-wrapper {
                scrollbar-width: none;
            }
        }

        .search-filters-wrapper::-webkit-scrollbar {
            display: none;
        }

        body:not(.mobile-filters-open) .search-filters-wrapper {
            pointer-events: none;
            visibility: hidden;
            opacity: 0;
        }

        .search-filters-wrapper .search-filters {
            display: flex;
            flex-flow: column;
            align-items: flex-end;
            gap: var(--spacing-2xl);
            min-block-size: 100svh;
            min-block-size: fill-available;
            min-block-size: -webkit-fill-available;
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            padding-block: var(--spacing-2xl);
            margin-inline: auto;
        }

        @media (prefers-reduced-motion: no-preference) {

            .search-filters-wrapper .search-filters {
                transition: translate .3s ease-out;
            }

            body:not(.mobile-filters-open) .search-filters-wrapper .search-filters {
                translate: 0 -50px;
            }
        }

        .search-filters-wrapper :is(.search-filters-inner, .list-group) {
            inline-size: 100%;
        }

        .search-filters-wrapper .search-filters__header + .search-filters__slider {
            max-inline-size: 20rem;
        }
    }

    @container viewport (45rem < inline-size) {

        .products-selection .products-sort-order select {
            min-inline-size: 15rem;
        }

        .active-search-filters .active-filters {
            background: var(--background-grey);
            border-radius: calc(var(--border-radius) / 2);
            display: flex;
            align-items: baseline;
            padding-block: var(--spacing-xs);
            padding-inline: calc(var(--spacing-2xs) * 2);
            margin-block-start: var(--spacing-sm);
        }

        .active-search-filters .active-filter-title {
            color: var(--title-color);
            font: var(--text-weight-bold) var(--text-size-normal)/1.3 var(--font-text);
            letter-spacing: var(--letter-spacing);
            white-space: nowrap;
            margin-block: 0;
            margin-inline: 0 var(--spacing-xs);
        }

        .active-search-filters ul {
            display: flex;
            flex-flow: row wrap;
            gap: var(--spacing-3xs);
        }

        .active-search-filters .filter-block a {
            border: var(--border-width) solid var(--title-color);
            border-radius: clamp(0rem, var(--border-radius) / 4, .5rem);
            display: flex;
            align-items: center;
            gap: var(--spacing-3xs);
            font-size: var(--text-size-small);
            line-height: 1;
            padding-block: var(--spacing-3xs);
            padding-inline: var(--spacing-xs);
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            .active-search-filters .filter-block a:hover {
                border-color: var(--primary-color);
            }

            .active-search-filters .filter-block a:active {
                border-color: var(--primary-hover-color);
            }
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            .active-search-filters .filter-block a:active {
                border-color: var(--primary-color);
            }
        }

        .active-search-filters .filter-block i {
            font-size: .5rem;
        }
    }

    @container viewport (45rem < inline-size <= 90rem) {

        .products-selection {
            display: flex;
            align-items: center;
            justify-content: space-between;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .product-list {
            display: flex;
            flex-flow: column;
            align-items: center;
        }

        .product-list > *:not(.product-back-top) {
            inline-size: 100%;
        }

        .product-miniatures__list {
            grid-template-columns: repeat(2, minmax(0, 1fr));
        }

        .products-selection {
            display: grid;
            grid-template-columns: minmax(0,1fr);
            gap: var(--spacing-xs);
        }

        .products-selection .sort-by-row:has(.btn-mobile-filters) {
            grid-template-columns: minmax(0,1fr) auto;
        }

        .products-selection .sort-by-row:not(:has(.btn-mobile-filters)) {
            grid-template-columns: auto;
        }

        .products-selection :is(.total-products, .sort-by) {
            display: none;
        }

        .products-selection :is(.sort-by-row, .products-sort-order, .products-sort-order > select) {
            inline-size: 100%;
        }

        .product-back-top {
            margin-block-start: var(--spacing-xl);
        }

        .product-back-top i {
            font-size: var(--text-size-small);
        }
    }

    @container viewport (inline-size <= 30rem)  {

        .products-selection .products-sort-order select {
            font-size: var(--text-size-small);
        }

        .products-selection .sort-by-row .btn-mobile-filters {
            padding-block: var(--spacing-2xs);
            padding-inline: calc(var(--spacing-2xs) * 2);
        }

        .search-filters-wrapper .search-filters:has(.clear-all-wrapper) {
            gap: var(--spacing-3xs);
        }

        .search-filters-wrapper .custom-checkbox .text {
            inset-block-start: calc((var(--text-size-normal) / 8) * -1);
            margin-block-end: calc((var(--text-size-normal) / 8) * -1);
        }
    }

    #content-hook-order-confirmation-footer {
        margin-block-start: var(--spacing-4xl);
    }

    .section-recap-order {
        border: var(--border-width) solid var(--outline-color);
        border-radius: clamp(0rem, var(--border-radius), 4rem);
        display: flex;
        flex-flow: column;
        gap: var(--spacing-2xl);
        inline-size: min(var(--wrapper-size-mobile), 70rem);
        padding: var(--spacing-2xl);
        margin: auto;
    }

    .section-recap-order > section:not(:first-child),
    .section-recap-order .order-summary .order-subtotals {
        margin-block-start: var(--spacing-xl);
    }

    @container viewport (inline-size <= 60rem) {

        .section-recap-order > section:not(:first-child) {
            margin-block-start: var(--spacing-3xl);
        }
    }

    @container viewport (45rem < inline-size) {

        .product-table .product-line__cell .number {
            display: flex;
            justify-content: flex-end;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .section-recap-order {
            border-radius: clamp(0rem, var(--border-radius), clamp(2rem, 1.75rem + 1.25vw, 3rem));
        }

        :is(.page-header, .section-recap-order)  {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }

        .section-recap-order {
            padding: var(--spacing-xl);
        }
    }

    @container viewport (inline-size <= 36rem) {

        .product-table :is(.product-line__cell--img, .product-line__cell--prod) {
            border-block-start: none;
        }

        .page-order-confirmation .section-recap-order {
            border: none;
            padding: 0;
        }

        .customer-form {
            display: flex;
            flex-flow: column;
        }

        .customer-form :is(.form-group, .field-password-policy) {
            width: 100%;
        }

        :is(#delivery-address, #invoice-address) .form-fields {
            grid-template-columns: 1fr;
        }

        #ybc_blog_page .fond-gris {
            padding: var(--spacing-md);
        }

    }

    /* fin */

    .homeslider {
        block-size: 40rem;
    }

    .homeslider {
        background: var(--background-color);
        color-scheme: dark;
        display: flex;
        flex-flow: column;
    }

    .homeslider__slide :is(figure, picture, img) {
        inline-size: 100%;
        block-size: 100%;
    }

    .homeslider__slide img {
        object-fit: cover;
    }

    .homeslider__caption {
        inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size-small));
        position: absolute;
        inset: 50% auto auto 50%;
        translate: -50% -50%;
    }

    .homeslider__desc :is(p, span, strong) {
        font-size: var(--text-size-big);
    }

    .homeslider__desc :is(p, span) {
        color: var(--text-color);
    }

    .homeslider__desc strong {
        color: var(--strong-color);
    }

    .homeslider__desc + .bouton {
        margin-block-start: var(--spacing-md);
    }

    .homeslider .direction {
        display: flex;
        align-items: center;
        justify-content: space-between;
        inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
        pointer-events: none;
        position: absolute;
        inset: 50% auto auto 50%;
        translate: -50% -50%;
        z-index: 1;
    }

    .homeslider__arrow {
        pointer-events: initial;
        inset-block-start: 0;
    }

    .homeslider__arrow--prev {
        inset-inline-start: 0;
    }

    .homeslider__arrow--next {
        inset-inline-end: 0;
    }

    .homeslider__arrow :is(span, i) {
        color: inherit;
        font-size: 1.5rem;
    }

    .homeslider .swiper-pagination {
        position: absolute;
        inset-block-end: var(--spacing-md);
    }

    .homeslider .swiper-pagination span {
        background: var(--title-color);
        border-radius: 100%;
        display: flex;
        opacity: .15;
        aspect-ratio: 1;
        inline-size: auto;
        block-size: .5rem;
        margin: 0;
        transition: var(--transition-default);
    }

    .homeslider .swiper-pagination-bullet-active {
        opacity: 1;
    }

    :is(.card__header, .search-filters__header),
    .section-contact .block-infos .elementor-widget-heading p {
        color: var(--title-color);
        font: var(--text-weight-bold) var(--text-size-big)/1.1 var(--font-text);
        text-transform: uppercase;
    }

    .product-variants ul,
    .search-filters__block .colors {
        display: flex;
        flex-flow: row wrap;
        justify-content: flex-start;
        gap: var(--spacing-3xs);
    }

    .search-filters__block .custom-checkbox-color label,
    .search-filters__block .custom-control-input-color,
    .product-variants ul.colors label span {
        border-radius: 100%;
    }

    .search-filters__block .custom-checkbox-color label,
    .product-variants ul.colors label {
        cursor: pointer;
    }

    .search-filters__block .custom-control-input-color,
    .product-variants ul.colors .control-input-color {
        background-size: cover;
        border: var(--border-width) solid var(--shadow-color);
        display: table;
        aspect-ratio: 1;
        block-size: 2rem;
        overflow: hidden;
        position: relative;
        inset: auto;
    }

    .wpcf7 {
        inline-size: min(100%, 50rem);
    }

    body:not(.cms-id-10) .wpcf7 {
        margin-inline: auto;
    }

    .wpcf7 .form-champs {
        display: grid;
        grid-template-columns: repeat(2, minmax(0,1fr));
        gap: var(--spacing-sm) var(--items-margin);
        margin-block-start: var(--spacing-md);
    }

    .wpcf7 .form-champ.full {
        grid-column: 1 / -1;
    }

    .wpcf7 .form-champ :is(label, label > span) {
        display: flex;
        flex-flow: column;
        inline-size: 100%;
        gap: var(--spacing-3xs);
    }

    .wpcf7 .form-champ label {
        flex-flow: column;
        gap: var(--spacing-3xs);
        margin: 0;
    }

    .wpcf7 .form-champ-upload input {
        appearance: none;
        border: var(--border-width) solid;
        font-size: var(--text-size-small);
        min-block-size: initial;
        margin: 0;
        padding-block: var(--spacing-xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
    }

    .wpcf7 .form-champ-upload input::-webkit-file-upload-button {
        display: none;
    }

    .wpcf7 .form-champ-upload .bouton {
        border: var(--border-width) solid var(--title-color);
        padding-block: var(--spacing-2xs);
        padding-inline: calc(var(--spacing-2xs) * 2);
    }

    .wpcf7 .form-champ-upload .bouton i {
        font-size: var(--text-size-small);
    }

    .wpcf7 .form-champ-upload .bouton span {
        color: inherit;
        font: inherit var(--text-size-small)/inherit inherit;
        letter-spacing: inherit;
        margin-inline-start: var(--spacing-3xs);
    }

    .wpcf7 :is(br, .ajax-loader) {
        display: none;
    }

    .wpcf7 .message-rgpd {
        margin-block: var(--spacing-xs) calc(var(--spacing-2xs) * 2);
    }

    .wpcf7-response-output {
        margin-block-start: var(--spacing-xs);
    }

    .section-contact .block-infos :is(.elementor-widget-heading + .elementor-widget-text-editor, .elementor-widget-text-editor + .elementor-widget-heading) {
        margin-block-start: var(--spacing-sm);
    }

    .section-contact .block-infos .elementor-widget-text-editor + .elementor-widget-heading {
        border-block-start: var(--border-width) solid var(--shadow-color);
        padding-block-start: var(--spacing-lg);
    }

    .section-infos-contact .elementor-inner-section {
        margin: 0;
    }

    .section-infos-contact .phone {
        display: flex;
        align-items: center;
        gap: var(--spacing-sm);
    }

    .section-infos-contact .phone p {
        color: var(--title-color);
    }

    .section-infos-contact .phone :is(p, a) {
        font: var(--text-weight-bold) var(--text-size-big)/1.1 var(--font-text);
    }

    .elementor-widget-google_maps iframe {
        min-block-size: 40rem;
    }

    @container viewport (80rem < inline-size) {

        :is(.page-cart, .page-checkout) .cart-grid {
            grid-template-columns: minmax(0,1fr) minmax(var(--sidebar-width), .25fr);
        }
    }

    @container viewport (inline-size <= 80rem) {

        .cart-grid-right {
            inline-size: 100%;
            max-inline-size: 25rem;
            margin-inline: auto;
        }

        .ino-slider-home > .elementor-container > .elementor-row {
            grid-template-columns: repeat(5, 1fr);
        }

        .ino-slider-home :is(.slider) .elementor-widget-image img {
            width: 100%;
        }

        .footer-container .col-links.ino-links-cat:after, .footer-container .col-links.ino-links-cat:before,
        .ino-slider-home > .elementor-container:before {
            display: none
        }

        .ino-slider-home .fond-noir:not(.france):before {
            background: var(--light-color);
        }

        .ino-slider-home .slider { grid-area: 1 / 1 / 2 / 6; }
        .ino-slider-home .fond-gris { grid-area: 2 / 1 / 3 / 3; }
        .ino-slider-home .france { grid-area: 3 / 1 / 4 / 3; }
        .ino-slider-home .fond-noir:not(.france) { grid-area: 2 / 3 / 4 / 6; }

        .ybc-blog-list {
            grid-template-columns: 1fr;
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list,
        :is(.ybc-blog-related-posts-list) {
            grid-template-columns: 1fr 1fr;
        }

    }

    @container viewport (70rem < inline-size) {

        .cart-grid-right {
            position: sticky;
            inset-block-start: var(--spacing-lg);
            block-size: fit-content;
        }

        :is(.page-cart, .page-checkout) .cart-grid,
        .section-contact > .elementor-container > .elementor-row,
        :where(body.layout-left-column, body.layout-right-column, body:has(.content-has-sidebar)) main > .container {
            display: grid;
            column-gap: var(--columns-gap);
        }

        .section-contact > .elementor-container > .elementor-row,
        :where(body.layout-left-column:not(:has(.page-sidebar-left.hide-col)), body:has(.content-has-sidebar)) main > .container {
            grid-template-columns: minmax(var(--sidebar-width), .25fr) minmax(0,1fr);
        }

        body.layout-right-column main > .container {
            grid-template-columns: minmax(0,1fr) minmax(var(--sidebar-width), .25fr);
        }

        :where(body.layout-left-column:not(:has(.page-sidebar-left.hide-col)), body.layout-right-column, body:has(.content-has-sidebar)) main > .container > .breadcrumb {
            grid-column: 1 / -1;
        }

        .section-sticky-sidebar .sidebar > .elementor-column-wrap,
        :where(body.layout-left-column, body:has(.content-has-sidebar)) .page-sidebar-left :is(.search-filters, .customer-links) {
            max-block-size: calc(100vh - var(--spacing-lg));
            overflow-y: auto;
            overscroll-behavior: contain;
            padding-block-end: var(--spacing-lg);
            position: sticky;
            inset-block-start: var(--spacing-lg);
            z-index: 49;
        }

        @-moz-document url-prefix() {

            .section-sticky-sidebar .sidebar > .elementor-column-wrap,
            :where(body.layout-left-column, body:has(.content-has-sidebar)) .page-sidebar-left :is(.search-filters, .customer-links) {
                scrollbar-width: none;
            }
        }

        .header-top__block--menu-toggle .mobile-search,
        .section-sticky-sidebar .sidebar > .elementor-column-wrap::-webkit-scrollbar,
        .section-sticky-sidebar .sidebar > .elementor-column-wrap::-webkit-scrollbar-thumb,
        :where(body.layout-left-column, body:has(.content-has-sidebar)) .page-sidebar-left :is(.search-filters, .customer-links)::-webkit-scrollbar,
        :where(body.layout-left-column, body:has(.content-has-sidebar)) .page-sidebar-left :is(.search-filters, .customer-links)::-webkit-scrollbar-thumb {
            display: none;
        }

        .section-sticky-sidebar :is(.sidebar, .main-content) {
            width: auto;
        }

        .section-sticky-sidebar .sidebar {
            display: table;
            inline-size: var(--sidebar-width);
        }

        .section-sticky-sidebar .main-content {
            inline-size: 100%;
        }

        .section-contact :is(.block-infos, .block-formulaire) {
            inline-size: auto;
            margin: 0;
        }
    }

    @container viewport (inline-size <= 90rem) {
        .ino-section-promotion .elementor-inner-section .elementor-row {
            display: flex;
            grid-template-columns: 1fr;
        }

        .ino-section-promotion .elementor-inner-section .elementor-col-33 {
            display: none;
        }
    }

    @container viewport (inline-size <= 70rem) {

        .cart-grid-right {
            margin-block-start: var(--spacing-4xl);
        }

        .ino-section-actu-home .fond-gris:after,
        .ino-section-promotion:before,
        .header-top__block--logo img.logo-bis,
        .header-top__block--search .desktop-search-from {
            display: none;
        }

        .header-top__block--search .search-toggler {
            padding: 0;
        }

        .ino-section-star-product > .elementor-container > .elementor-row,
        .ino-section-cat-home .elementor-row {
            flex-flow: wrap;
        }

        .ino-section-cat-home .ino-card-cat {
            height: calc(var(--spacing-2xl) * 3);
            inline-size: 50%;
        }

        .ino-section-star-product .elementor-col-25 {
            inline-size: 47%;
        }

        .ino-section-actu-home .fond-gris:before {
            width: 8rem;
        }

        .footer-container > .footer-links {
            grid-template-columns: 1fr;
        }

        .product-details.product-tabs .ino-container:after,
        .product-details.product-tabs .ino-container:before {
            width: 7rem;
        }


    }

    @container viewport (inline-size <= 60rem) {

        .featured-products__navigation {
            display: none;
        }
    }

    @container viewport (45rem < inline-size) {

        .block-newsletter .newsletter-text p {
            text-align: right;
        }

        .section-infos-contact .wrapper-infos-contact > .elementor-column-wrap > .elementor-widget-wrap {
            display: grid;
        }
    }

    @container viewport (inline-size <= 45rem) {

        .wpcf7 .form-champ-upload .bouton {
            letter-spacing: 0;
            padding-block: var(--spacing-3xs);
            padding-inline: var(--spacing-xs);
        }

        .wpcf7 .form-champ-upload .bouton span {
            display: none;
        }

        .featured-products {
            inline-size: 100%;
            max-inline-size: 100%;
        }

        .featured-products :is(.featured-products__header, .featured-products__footer) {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }

        .featured-products .product-slider {
            margin: 0;
        }

        .featured-products .product-slider .featured-products__slider {
            display: flex;
            align-items: stretch;
        }

        :is(.elementor-widget-product-carousel, .featured-products) .swiper-slide {
            display: flex;
            block-size: auto;
            padding-inline: var(--spacing-xs);
        }

        @media (prefers-reduced-motion: no-preference) {

            .header {
                transition: all .75s cubic-bezier(0.85, 0.09, 0.15, 0.91);
            }
        }

        .header.show {
            inline-size: 100%;
            position: sticky;
            inset-block-start: var(--header-height);
            inset-inline-start: 0;
            z-index: 2000;
        }

        .header.sticky.show {
            inset-block-start: var(--banner-height);
            inset-inline-start: 0;
        }

        .header-absolute.show {
            background: var(--background-color);
        }

        .header.hide {
            translate: initial;
        }

        body:has(.header.sticky.show) .ino-modal .ino-modal-close {
            inset-block-start: calc(var(--padding-header) + (var(--logo-height) / 2));
            inset-inline-end: 0;
        }

        .mobile-bottom-menu {
            background: var(--background-grey);
            display: flex;
            align-items: stretch;
            justify-content: center;
            inline-size: 100%;
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-3xs);
            position: fixed;
            inset-block-end: 0;
            inset-inline-start: 0;
            z-index: 2000;
            transition: all .75s cubic-bezier(0.85, 0.09, 0.15, 0.91);
            transition-delay: .3s;
        }

        .mobile-bottom-menu .links .chat {
            font-size: 1rem;
            padding: var(--spacing-xs);
            transform: skewX(-15deg);
            color-scheme: dark;
            color: var(--title-color);
            background: var(--background-color);
        }


        @media (prefers-reduced-motion: no-preference) {

            .mobile-bottom-menu {
                translate: 0 100%;
            }
        }

        .mobile-bottom-menu.show,
        .mobile-bottom-menu:has(a:focus-visible),
        .mobile-bottom-menu:has(.header-top__block--cart.product-in-cart) {
            translate: initial;
        }

        .mobile-bottom-menu > div {
            padding-block: 0;
            padding-inline: var(--spacing-md);
        }

        .mobile-bottom-menu > div:not(:last-child) {
            border-inline-end: var(--border-width) solid var(--outline-color);
        }

        .mobile-bottom-menu :is(.links, .header-top__block--user, .header-top__block--cart) a {
            background: transparent;
            display: flex;
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-md);
            position: relative;
        }

        .mobile-bottom-menu :is(a, button) i {
            font-size: 1.25rem;
        }

        .header :is(.header-top__block--user, .header-top__block--cart),
        .mobile-bottom-menu .blockcart > *:not(.cart-mobile) {
            display: none;
        }

        .mobile-bottom-menu .header-top__block--cart .header-top__icon-container {
            position: relative;
        }

        .mobile-bottom-menu .header-top__block--cart .header-top__badge {
            background: transparent;
            color: var(--light-color);
            display: flex;
            inline-size: auto;
            block-size: auto;
            font: var(--text-weight-bold) .5rem/1 var(--font-text);
            padding: var(--spacing-4xs);
            position: absolute;
            inset-block-start: 0;
            inset-inline-end: var(--spacing-md);
            translate: 40% 0;
            z-index: 1;
        }

        .mobile-bottom-menu .header-top__block--cart .header-top__badge::before {
            content: "";
            background: var(--primary-color);
            border-radius: 50%;
            display: table;
            aspect-ratio: 1;
            inline-size: 100%;
            min-inline-size: var(--spacing-2xs);
            min-block-size: var(--spacing-2xs);
            line-height: 1;
            position: absolute;
            inset: 50% auto auto 50%;
            translate: -50% -50%;
            z-index: -1;
        }

        .product-table.table-bordered {
            border: none;
        }

        .product-table.table-bordered .product-line:not(:first-child) {
            padding-block-start: var(--spacing-md);
        }

        .blockreassurance .container {
            grid-template-columns: repeat(2, minmax(0,1fr));
        }

        .block-newsletter {
            grid-template-columns: minmax(0,1fr);
            gap: var(--spacing-sm);
        }

        .post-footer {
            padding-block: var(--spacing-sm) var(--spacing-2xl);
        }

        .section-infos-contact .elementor-inner-section:not(:first-child) {
            margin-block-start: var(--spacing-sm);
        }

        .page-ybc_blog_page #ybc-blog-related-products .blog-product-list,
        :is(.ybc-blog-related-posts-list),
        .ino-slider-home > .elementor-container > .elementor-row {
            grid-template-columns: 1fr;
        }

        .ino-slider-home .elementor-col-25 {
            grid-area: initial !important;
        }

        .ino-slider-home :is(.slider) .bouton,
        .ino-slider-home > .elementor-container > .elementor-row :is(.ino-slider-home .fond-gris, .france),
        .ino-slider-home .slider:before,
        .ino-slider-home .fond-noir:not(.france):before {
            display: none;
        }

        #index #content > div > .elementor-section-wrap {
            display: block;
        }

        :is(.ino-section-cat-home, .ino-slider-home) {
            order: -1;
        }

        .ino-slider-home :is(.slider) .elementor-widget-image,
        .ino-slider-home :is(.slider) .elementor-widget-image * {
            height: auto;
        }

        .ino-slider-home :is(.slider) .bouton {
            position: initial;
            margin-block-start: var(--spacing-xs);
        }


    }

    @container viewport (inline-size <= 36rem) {

        .logo-map,
        .wpcf7 .form-champs {
            grid-template-columns: minmax(0, 1fr);
        }

        .logo-map :is(a, .coordonnees, .map-footer) {
            grid-area: initial;
        }

        .col-links-wrapper {
            flex-flow: column;
            gap: var(--spacing-lg);
        }

        :is(.elementor-widget-product-carousel, .featured-products) .swiper-slide {
            padding-inline: var(--spacing-3xs);
        }

        .header-banner .banner-title .title {
            font-size: var(--text-size-small);
        }

        .post-footer {
            padding-block-start: 0;
        }

        :is(.ybc_blog_ltr_mode, .ybc-blog-list) .ybc_item_img:after,
        .header-top__block--phone {
            display: none;
        }

        .ino-section-cat-home .elementor-row {
            flex-flow: column;
        }

        .ino-section-cat-home .ino-card-cat {
            inline-size: 100%;
        }

        .ino-section-actu-home .fond-gris:before {
            width: 5rem;
        }

        .ybc-blog-list,
        .ino-section-actu-home .fond-gris {
            padding: var(--spacing-xl) var(--spacing-sm);
        }

        .ybc-blog-list .post-wrapper,
        .ino-section-actu-home .ybc_blog_content_block_item{
            display: flex;
            flex-flow: column;
        }

        :is(.ybc_blog_ltr_mode, .ybc-blog-list) img {
            max-height: 200px;
            object-fit: cover;
            width: 100%;
        }

        .bouton-primary.bouton-link.right .elementor-button-wrapper {
            display: flex;
            justify-content: center;
        }

        .single-reassurances.blockreassurance {
            grid-template-columns: 1fr;
        }

        .product-details.product-tabs .ino-container {
            width: 100%;
            padding: var(--spacing-2xl) var(--spacing-xl);
        }

        #ybc_blog_page .ybc-blog-wrapper-detail .ybc-blog-wrapper-content {
            padding: 0;
        }

        #ybc_blog_page .container-small.elementor-section-boxed > .elementor-container {
            inline-size: 100%;
        }

    }

    @container viewport (30rem < inline-size <= 45rem) {

        .card__items,
        .checkout-addresses-step .address-selector,
        .layout-left-column .page-sidebar-left + .content-wrapper .adresses-grid {
            display: grid;
            grid-template-columns: repeat(2, minmax(0,1fr));
            gap: var(--items-gap);
            margin-block-start: var(--spacing-md);
        }
    }

    @container viewport (inline-size <= 30rem) {

        :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
            padding-inline: 0;
        }

        :is(.elementor-top-section, .ino-top-section).fond.block:not(.full) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) > div {
            inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            margin-inline: auto;
        }

        :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) + :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) {
            margin-block-start: 0;
        }

        :is(.elementor-top-section, .ino-top-section):is(.fond, .supp) {
            margin-block-end: 0;
        }

        :is(.elementor-top-section, .ino-top-section).fond.block:not(.elementor-section-full_width) > div:not(.elementor-element-overlay, .elementor-background-overlay, .elementor-shape) {
            border-radius: 0;
        }

        .header-top__block--eshop {
            gap: var(--spacing-sm);
        }

        .header-top__block > :is(a, button):not(.bouton) .header-top__icon {
            font-size: 1rem;
        }

        .mobile-bottom-menu .links .chat,
        :is(.header-top__block, .blockcart) > :is(a, button):not(.bouton) .header-top__icon {
            padding: var(--spacing-3xs);
        }

        .mobile-bottom-menu > div {
            display: flex;
            flex-grow: 1;
            justify-content: center;
            padding: 0;
        }

        .mobile-bottom-menu :is(.links, .header-top__block--user, .header-top__block--cart) a {
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-xs);
        }

        .mobile-bottom-menu .header-top__badge {
            inset-block-start: 0;
            inset-inline-end: var(--spacing-xs);
        }

        .blockreassurance .block-title {
            font-size: var(--text-size-small);
        }

        .footer-container .coordonnees :is(.footer-contact-list, .location),
        .footer-container .col-links:not(:has(> .title)),
        .footer-container div:not(.block-social) > ul {
            align-items: safe center;
        }

        .footer-container .logo-map .links-list,
        .footer-container .block-social {
            align-items: center;
            justify-content: center;
        }

        .footer-container div:not(.block-social) > ul li {
            flex-flow: column;
            align-items: center;
        }

        .footer-container .title,
        .footer-container .coordonnees :is(p, strong),
        .footer-container div:not(.block-social) > ul a {
            text-align: center;
        }

        .ino-section-star-product .elementor-col-25 {
            inline-size: 62%;
        }

        .ino-section-star-product .elementor-col-25.tp {
            inline-size: 30%;
        }

        .logo-map :is(a, .coordonnees, .map-footer) {
            grid-area: initial;
            justify-content: center;
            display: flex;
        }

        .ino-tab-content p {
            font: var(--text-weight-normal) var(--text-size-small) / 1 var(--font-text);
        }

        .ino-product-tabs .ino-tab-title {
            font: var(--text-weight-bold) var(--h4-font-size) / 1.1 var(--font-text);
        }

        .product-details.product-tabs .ino-container:after,
        .product-details.product-tabs .ino-container:before {
            display: none;
        }

    }

    @container viewport (inline-size <= 24rem) {

        .address__footer a i {
            font-size: var(--text-size-small);
        }

        :is(.elementor-widget-product-carousel, .featured-products) .swiper-slide {
            padding-inline: var(--spacing-4xs);
        }

        .cart-products__thumb {
            inline-size: auto;
        }
    }

    @layer components {

        .product-variants ul:not(.colors) label:has(input:focus-visible),
        .product-main-images > button:focus-visible {
            outline-color: var(--title-color);
        }

        .fiche-produit > .container {
            gap: var(--spacing-lg) calc(var(--columns-gap) / 2);
        }

        .fiche-produit > .container h1 {
            margin: 0;
        }

        .product-main-images {
            display: flex;
            inline-size: 100%;
            block-size: auto;
            position: relative;
        }

        .fiche-produit .product-main-images {
            box-shadow: var(--box-shadow);
        }

        :is(.no-miniatures > .product-main-images, .product-main-images__list) :is(button, picture, img) {
            inline-size: 100%;
        }

        .product-main-images img {
            border-radius: clamp(0rem, var(--border-radius), 6rem);
        }

        .product-main-images .swiper-slide button:focus-visible {
            opacity: .66;
        }

        .product-main-images button img,
        .product-block-img .miniatures .swiper-slide {
            block-size: auto;
            transition: var(--transition-default);
        }

        .product-main-images .swiper-button-wrapper {
            display: none;
        }

        .product-block-img .miniatures .swiper-wrapper {
            gap: var(--spacing-3xs);
        }

        .product-block-img .miniatures .swiper-slide {
            aspect-ratio: var(--product-img-ratio);
            display: flex;
        }

        .product-block-img .miniatures .swiper-slide:not(.swiper-slide-thumb-active) {
            cursor: pointer;
            opacity: .3;
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            .product-main-images button:hover img,
            .product-block-img .miniatures .swiper-slide:not(.swiper-slide-thumb-active):hover {
                opacity: .66;
            }
        }

        .product-block-img .miniatures .swiper-slide img {
            border-radius: clamp(0rem, var(--border-radius), 1.5rem);
            object-fit: cover;
            inline-size: 100%;
            block-size: 100%;
        }

        .product-block-img .product-flags {
            pointer-events: none;
        }

        .product-information .promo-flag {
            background: var(--primary-color);
            display: table;
            padding-block: var(--spacing-4xs);
            padding-inline: var(--spacing-2xs);
            margin-block: var(--spacing-2xs) var(--spacing-sm);
            margin-inline: 0;
        }

        .product-information .promo-flag p {
            color: var(--light-color);
            font: var(--text-weight-medium) var(--text-size-small)/1 var(--font-text);
            letter-spacing: var(--letter-spacing);
        }

        .js-product-images-modal {
            max-block-size: 100svh;
            max-block-size: fill-available;
            max-block-size: -webkit-fill-available;
            max-inline-size: calc(100% - (var(--spacing-2xs) * 2));
            margin: var(--spacing-2xs);
            inset: 0;
        }

        .js-product-images-modal .modal-body {
            padding: 0;
        }

        .js-product-images-modal .modal-gallery {
            border-radius: var(--border-radius);
            aspect-ratio: var(--product-img-ratio);
            display: flex;
            justify-content: center;
        }

        .js-product-images-modal .modal-gallery :is(picture, img) {
            inline-size: 100%;
            block-size: 100%;
        }

        .js-product-images-modal .modal-gallery picture {
            pointer-events: initial;
        }

        .js-product-images-modal .modal-gallery .swiper-button-custom {
            position: absolute;
            inset-block-start: 50%;
            translate: 0 -50%;
            z-index: 10;
        }

        .js-product-images-modal .modal-gallery .swiper-button-disabled {
            cursor: default;
            opacity: .35;
        }

        .js-product-images-modal .modal-gallery .swiper-button-prev {
            inset-inline-start: var(--spacing-2xs);
        }

        .js-product-images-modal .modal-gallery .swiper-button-next {
            inset-inline-end: var(--spacing-2xs);
        }

        .category-additional-description h1 {
           margin: 0;
        }

        :where(.product-information, .product-actions > form) {
            display: flex;
            flex-flow: column;
            gap: var(--spacing-xs);
        }

        .product-variants ul:not(.colors) :where(span:hover, span:active, input:checked + span)  {
            border-color: transparent;
            color: var(--background-color);
        }

        @media only screen and (hover: hover) and (pointer: fine) {

            .product-variants ul:not(.colors) :where(span:hover, input:checked + span) {
                background: var(--title-color);
            }
        }

        .product-variants ul:not(.colors) :where(span:active, input:checked + span:hover) {
            background: var(--strong-color);
        }

        .product-variants ul:not(.colors) input:checked + span:active {
            background: var(--text-color);
        }

        .product-information :is(.product-prices, .current-price, .current-price-tax) {
            display: flex;
        }

        .product-information :is(.product-prices, .current-price) {
            flex-flow: column;
        }

        .product-information .product-prices :is(.current-price, .current-price-tax) {
            align-items: baseline;
        }

        .product-information .product-prices .current-price {
            gap: var(--spacing-3xs) var(--spacing-sm);
        }

        .product-information .product-prices .current-price-tax {
            gap: var(--spacing-3xs);
        }

        .product-information .product-prices .current-price .price {
            font-size: var(--h3-font-size);
        }

        .product-information .product-prices .current-price .price--regular {
            font-size: var(--h4-font-size);
        }

        .product-information .product-prices :is(.price-ecotax, .product-unit-price) {
            color: var(--title-color);
            font-size: var(--text-size-small);
            line-height: 1.3;
        }

        .product-information .prices-add-cart {
            margin-block-start: var(--spacing-md);
        }

        .product-information .product-add-to-cart .product-quantity {
            display: flex;
            align-items: stretch;
            gap: var(--spacing-3xs);
        }

        .product-information .product-add-to-cart {
            display: flex;
            align-items: center;
            gap: var(--spacing-2xs);
        }

        .product-information .product-add-to-cart .qty {
            min-inline-size: 5rem;
        }

        .product-information .product-add-to-cart .add {
            display: flex;
            max-inline-size: 25rem;
        }

        .product-information .prices-availability {
            display: flex;
            align-items: flex-start;
            justify-content: space-between;
        }

        .product-information .availability {
            display: flex;
            flex-flow: row wrap;
            align-items: baseline;
            line-height: 1.1;
        }

        .product-information .availability .value {
            font-size: var(--text-size-small);
            letter-spacing: var(--letter-spacing);
        }

        .product-actions {
            padding-block: var(--spacing-sm);
            border-block: 1px solid var(--shadow-color);
        }

        .availability {
            margin-block-start: var(--spacing-2xs);
        }

        .product-availability {
            display: flex;
            margin-block-start: var(--spacing-sm);
        }

        .product-availability .badge {
            font-size: var(--text-size-small);
            font-weight: var(--text-weight-medium);
            padding: 0;
        }

        .product-availability .badge i {
            font-size: var(--text-size-small);
            margin-inline-end: var(--spacing-3xs);
        }

        .product-availability .badge-info {
            color: var(--alert-info-color);
        }

        .product-availability .badge-success {
            color: var(--alert-success-color);
        }

        .product-availability .badge-warning {
            color: var(--alert-warning-color);
        }

        .product-availability .badge-danger {
            color: var(--alert-danger-color);
        }

        :is(.product-details, .featured-products) {
            margin-block-start: var(--spacing-2xl);
        }

        @container viewport (inline-size <= 90rem) {

            .product-main-images img {
                border-radius: clamp(0rem, var(--border-radius), 4.5rem);
            }

        }

        @container viewport (80rem < inline-size) {

            .js-product-images:not(.no-miniatures) {
                grid-template-columns: 144px auto;
            }
        }

        @container viewport (80rem < inline-size <= 90rem) {

            .js-product-images {
                grid-template-columns: 96px auto;
            }

            .product-main-images .swiper-button-wrapper :is(.swiper-button-prev, .swiper-button-next) {
                block-size: 2.5rem;
            }
        }

        @container viewport (70rem < inline-size) {

            .fiche-produit {
                position: relative;
            }

            .fiche-produit > .container {
                display: grid;
                grid-template: auto 1fr / repeat(2, minmax(0, 1fr));
            }

            .product-block-img {
                grid-area: 1 / 1 / 3 / 2;
                inline-size: min(100%, 50rem);
                block-size: 100%;
                margin: auto;
            }

            :is(.product-block-img > div, .product-block-txt > .product-information) {
                position: sticky;
                inset-block-start: var(--spacing-sm);
            }

            .js-product-images:not(.no-miniatures) {
                display: grid;
                column-gap: var(--spacing-sm);
            }

            .js-product-images:not(.no-miniatures) .product-main-images {
                grid-area: 1 / 2 / 2 / 3;
            }

            .js-product-images:not(.no-miniatures) .miniatures {
                grid-area: 1 / 1 / 2 / 2;
                position: relative;
                overflow: hidden;
            }

            .js-product-images:not(.no-miniatures) :is(.product-main-images__list > .swiper-slide, .product-thumbs__elem) {
                inline-size: 100% !important;
            }

            .js-product-images:not(.no-miniatures) .miniatures .product-thumbs {
                overflow-y: auto;
                overscroll-behavior: contain;
                max-block-size: 100%;
                position: absolute;
                height: 100%;
            }

            @-moz-document url-prefix() {

                .js-product-images:not(.no-miniatures) .miniatures .product-thumbs {
                    scrollbar-color: transparent transparent;
                    scrollbar-width: none;
                }
            }

            .js-product-images:not(.no-miniatures) .miniatures .product-thumbs::-webkit-scrollbar {
                background: transparent;
                inline-size: 0;
            }

            .js-product-images:not(.no-miniatures) .miniatures .product-thumbs::-webkit-scrollbar-thumb {
                background: transparent;
                inline-size: 0;
            }

            .js-product-images:not(.no-miniatures) .miniatures .product-thumbs__list {
                flex-flow: column;
                justify-content: space-around;
            }
        }

        @container viewport (70rem < inline-size <= 80rem) {

            .js-product-images:not(.no-miniatures) {
                grid-template-columns: 96px auto;
            }
        }

        @container viewport (70rem < inline-size <= 90rem) {

            .product-information .prices-availability .availability {
                flex-flow: column;
            }

            .product-information .product-variants ul.colors .control-input-hover {
                inset-inline: auto 0;
                translate: 0 calc(-100% - .5rem);
            }
        }

        @container viewport (inline-size <= 70rem) {

            .fiche-produit > .container {
                display: flex;
                flex-flow: column;
            }

            .product-main-images + .miniatures {
                margin-block-start: var(--spacing-xs);
            }

            .product-block-img .miniatures .swiper-wrapper {
                gap: var(--spacing-xs);
            }

            .product-block-img .miniatures .swiper-slide {
                max-inline-size: fit-content;
            }

            .product-main-images img {
                border-radius: clamp(0rem, var(--border-radius), clamp(3rem, 1.8rem + 6vw, 6rem));
            }
        }

        @container viewport (45rem < inline-size) {

            .featured-products > .container {
                inline-size: min(var(--wrapper-size-mobile), var(--wrapper-size));
            }
        }

        @container viewport (36rem < inline-size <= 45rem) {

            .product-information .prices-availability .availability {
                flex-flow: column;
            }
        }

        @container viewport (inline-size <= 36rem) {

            .product-information .prices-availability {
                flex-flow: column;
            }

            .product-information .prices-availability .availability {
                margin-block-start: var(--spacing-sm);
            }
        }

        @container viewport (inline-size <= 30rem) {

            .product-block-img .miniatures .swiper-slide {
                max-inline-size: 128px;
            }

            .swiper-button-prev {
                inset-inline-start: 0;
            }

            .swiper-button-next {
                inset-inline-end: 0;
            }

            .product-information .current-price {
                flex-flow: column;
            }

            .product-information .current-price .price {
                font-size: var(--h4-font-size);
            }

            .product-information .current-price .price.price--regular {
                font-size: var(--text-size-normal);
            }

            .product-miniature .price-btn .product-miniature__actions a {
                padding: calc(var(--spacing-3xs) / 2);
            }

            .product-miniature :is(.product-miniature__actions, .bouton) {
                width: max-content;
            }
        }

        @container viewport (24rem < inline-size) {

            .product-information .qty {
                max-inline-size: 5rem;
            }

            .product-information .input-custom-qty {
                inline-size: 100%;
            }
        }

        @container viewport (inline-size <= 24rem) {

            .product-block-img .miniatures .swiper-slide {
                max-inline-size: 5rem;
            }

            .product-information .product-add-to-cart .qty {
                min-inline-size: 4rem;
            }
        }
    }
}

@layer fixpscheckout{
    .ps_checkout-payment-option label {
        display: flex !important;
    }
}