:root {
    --black: #1C1C1E;
    --blue: #0075BF;
    --white: #FFFFFF;
    --light-blue: #C0DDF2;
    --light-blue-02: #F0F7FF;
    --dgrad-bleu-AA: linear-gradient(268deg, #007EBC 4%, #0076B2 25.17%, #006198 61.05%, #004778 96.02%);
    --grey-dark: #646161;
    --grey: #d9d9d9;
}

.container {
    max-width:1312px;
    padding: 0;
}


.aa-fullwidth-section {
    
}

/* MOBILE */
@media screen and (max-width: 768px) {
    .aa-fullwidth-section {
        padding: 0 20px;   
    }   

    .container {
        padding: 0 20px;
    }
}

/* FORM */

button, input, optgroup, select, textarea {
    font-family: "DM Sans";
}

.form-control {
    border-color: #000000;
    border-radius: 8px;
    padding: 8px 12px;
}

.input-group-with-border {
    border-color: #000000;
    border-radius: 8px;
}

input.form-control {
    height: 48px;
}

select.form-control:not([size]):not([multiple]) {
    height: calc(46px + 2px);   
}

.form-control-select {
    background-color: var(--light-blue-02);
}

.contact-form .input-group-btn:not(:first-child)>.btn {
    padding: 14px 24px;
    border: 0;
}

.card {
    border-color: var(--grey);
    border-radius: 8px;
}

.card-header:first-child {
    border-radius: 8px 8px 0 0;
}

.form-group label {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

/* Mobile */
@media (max-width: 768px) {
    .input-group-btn:not(:first-child)>.btn {
        padding: 10.5px 24px;
    }
}

/* BTN */

.btn {
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    border-radius: 8px;
    padding: 16px 24px;
    text-transform: none;
}

.btn-primary,
.btn-default {
    background: var(--dgrad-bleu-AA);
    border: 1px solid;
}

.btn-primary:hover,
.btn-default:hover {
    border: 1px solid #FFF;
    background: linear-gradient(0deg, rgba(53, 49, 49, 0.60) 0%, rgba(53, 49, 49, 0.60) 100%), linear-gradient(268deg, #007EBC 4%, #0076B2 25.17%, #006198 61.05%, #004778 96.02%);
}

.btn-secondary {
    border: 1px solid #007EBC;
    background: var(--white, #FFF);
}

.btn-secondary:hover {
    border-radius: 8px;
    border: 1px solid var(--light-blue);
    background: var(--light-blue);
}

/* assets/css/icons.css */
.icon {
  display: inline-block;
  fill: currentColor;
  vertical-align: middle;
  flex-shrink: 0;
}

/* Classes utilitaires */
.icon-xs { width: 12px; height: 12px; }
.icon-sm { width: 16px; height: 16px; }
.icon-md { width: 20px; height: 20px; }
.icon-lg { width: 24px; height: 24px; }
.icon-xl { width: 32px; height: 32px; }
.icon-2xl { width: 48px; height: 48px; }

/* Variantes de couleurs */
.icon-primary { color: #3b82f6; }
.icon-secondary { color: #6b7280; }
.icon-success { color: #10b981; }
.icon-warning { color: #f59e0b; }
.icon-danger { color: #ef4444; }
.icon-white { color: #ffffff; }

/* Animations */
.icon-spin {
  animation: spin 1s linear infinite;
}

.icon-pulse {
  animation: pulse 2s infinite;
}

@keyframes spin {
  from { transform: rotate(0deg); }
  to { transform: rotate(360deg); }
}

@keyframes pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.5; }
}


aa-icone {
    transition: all .2s ease-in-out;
}

.products_sldier_swiper .pro_outer_box:hover .pro_second_box,.product_list.grid .pro_outer_box:hover .pro_second_box{ background: none; }


/* TYPO */

.aa-h1{
    font-family: "Plus Jakarta Sans";
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 38.4px */
}

.aa-h1-desk{
    font-family: "Plus Jakarta Sans";
    font-size: 56px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 67.2px */
    letter-spacing: 0.56px;
}

.aa-h2,
section.page-cms h2,
.cms_content h2{
    color: var(--black);
    font-family: "Plus Jakarta Sans";
    font-size: 48px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 57.6px */
    letter-spacing: 0.48px;
}

.aa-h4{
    font-family: "Plus Jakarta Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 33.6px */
}

.aa-link {
    color: var(--black);
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    transition: all .2s ease-in-out;
}

a, .link_color, a:focus, .additional-information a.link_color .dropdown_tri, .checkout-step .sttab_2_1 .nav-tabs .nav-link, .add_to_love, .add_to_love:hover, .add_to_wishlit, .add_to_wishlit:hover, .stcompare_add, .stcompare_add:hover {
    color: var(--blue);
}

.aa-link:hover {
    color: var(--black);
}

.aa-link span{
    text-decoration-line: underline;
}

.aa-link aa-icon{
    margin-left: 5px;
}

.aa-link:hover aa-icon{
    margin-left: 10px;
}

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

/* MOBILE */
@media screen and (max-width: 768px) {
    .aa-h2,
    section.page-cms h2,
    .cms_content h2 {
        font-size: 32px;
        line-height: 120%; /* 38.4px */
    }

    .aa-h1-desk{
        font-size: 32px;
        line-height: 120%; /* 38.4px */
    }
}

/* HEADER */

body#index #st_header,
#st_header {
    /* background-color: var(--white); */
    /* border-bottom: 1px solid var(--Linear-white, rgba(233, 233, 233, 0.30)); */
}

body#index .header-container {
    margin: 0;
}

body#index #st_header.stuck,
#st_header.stuck {
    background-color: rgba(255, 255, 255, 0.30);
    backdrop-filter: blur(12px);
    box-shadow: none;
}

#header_primary {
    border: none;
}

.logo_box {
    margin-right: 146px;
}

#st_header #header_primary_container {
    height: 72px;
}

/* MOBILE */
@media screen and (max-width: 768px) {
    #mobile_bar {
        height: 72px;
    }

    #mobile_bar_top {
        height: 72px;
    }
    
    #mobile_bar_bottom {
        display: none;
    }
    .mobile_logo {
        max-width: 61px;
        padding: 0;
    }
}

#rightbar_4.mobile_bar_item {
    color: var(--black);
}
/* MENU */


#side_stmobilemenu {
    background: var(--light-blue-02);
}

.aa-menu-icon {
    position: absolute;
    top: 10px;
    right: 10px;
    display: flex;
    width: 32px;
    height: 32px;
    justify-content: center;
    align-items: center;
    border-radius: 6.4px;
    border: 1px solid rgba(233, 233, 233, 0.40);
    background: #FFF;
}

/* Mobile */
@media screen and (max-width: 768px) {

    .icon-menu-mobile {
        display: flex;
        width: 40px;
        height: 40px;
        justify-content: center;
        align-items: center;
        border-radius: 6px;
        border: 1px solid rgba(233, 233, 233, 0.50);
        background: var(--white);
    }

    .menu-li-mobile {
        display: flex;
        align-items: center;
        gap: 16px;
    }

    .st-menu-header {
        height: 72px;
        background-color: var(--white);
    }
    
    .aa-menu-itemmobile{
        border-radius: 8px;
        background: var(--White, #FFF);
        padding: 8px;
    }

    .mo_ml_level_0.active .aa-menu-itemmobile{
        border-radius: 8px 8px 0 0;
        border-bottom: 1px solid rgba(196, 196, 196, 0.30);
    }

    #st_mobile_menu .mo_ma_level_0{
        color: var(--black);
        font-family: "DM Sans";
        font-size: 16px;
        font-style: normal;
        text-transform: none;
        font-weight: 400;
        line-height: 150%; /* 24px */
    }

    .mo_mu_level_1:first-of-type {
        margin-top: 16px;
    }

    .mo_mu_level_1:last-of-type {
        margin-bottom: 16px;
    }

    .mo_ml_level_0 {
        padding: 0;
        margin-bottom: 8px;
        background-color: var(--white);
        border-radius: 8px;
        border: 1px solid rgba(196, 196, 196, 0.30);
        overflow: hidden;
    }

    .mo_mu_level_0 {
        padding: 20px 20px 0 20px;
        margin-bottom: 0;
    }

    #st_mobile_menu .opener {
        left: auto;
        right: 20px;
    }

    .mo_sub_li {
        padding-left: 24px;
    }
    .mo_ml_level_1 {
        border: none;
    }

    .mo_ml_level_1 a{
        color: var(--black);
        font-family: "DM Sans";
        font-size: 16px;
        font-style: normal;
        font-weight: 500;
        line-height: 150%; /* 24px */
    }

    .mo_ml_level_0 .style_content {
        padding: 0;
    }
}

/* Brand */

/* #st_menu_12 .stmenu_sub {
    display: block!important;
} */

/* -- Highllight Bloc */
.aa_mega-menu_high-light a{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    max-width: 280px;
    width: 100%;
    padding: 32px 24px;
    gap: 8px;
    background: var(--blue);
    margin-left: auto;
    color: var(--white);
}

.aa_mega-menu_high-light .img-layout {
    position: relative;
    border-radius: 8px;
    background: #C7DEFF;
    margin-bottom: 24px;
    height: 216px;
    display: flex;
    width: 100%;
    background-repeat: no-repeat;
    background-size: 100%;
    background-position: center bottom;
    transition: all .2s ease-in-out;
}

.aa_mega-menu_high-light a:hover .img-layout {
    background-size: 105%;
}

.aa_mega-menu_high-light a{
    color: var(--white);
}

.aa_mega-menu_high-light p {
    color: var(--white);
    font-family: "DM Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */    
    padding: 0;
    margin: 0;
}

.aa_mega-menu_high-light .lead {
    font-family: "Plus Jakarta Sans";
    font-size: 18px;
    font-weight: 600;
    line-height: 150%; /* 27px */
}

.aa_mega-menu_high-light a .aa-menu-icon {
    color: var(--blue);
}

.aa_mega-menu_high-light a img.brand{
    width: 142px;
}

.aa_mega-menu_high-light .aa-labels-group {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    align-self: stretch;
}

.aa_mega-menu_high-light.menu-lfb a,
.aa_mega-menu_high-light.menu-lbo a,
.aa_mega-menu_high-light.menu-lbb a {
    min-height: 403px;
}

.aa_mega-menu_high-light.menu-lfb p,
.aa_mega-menu_high-light.menu-lbo p,
.aa_mega-menu_high-light.menu-lbb p {
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa_mega-menu_high-light.menu-lbo a{
    
}
.aa_mega-menu_high-light.menu-lbb a{
    background: var(--light-blue);
}

.aa_mega-menu_high-light.menu-lbo a{
    background: #D51317;
}

.aa_mega-menu_high-light.menu-lbb a p{
    color: var(--black);
}

.aa_mega-menu_high-light.menu-lbb .img-layout,
.aa_mega-menu_high-light.menu-lbo .img-layout {
    background-color: #ffffff;
}

@media screen and (max-width: 768px) {
    .aa_mega-menu_high-light a{
        max-width: 500px;
    }

    .aa_mega-menu_high-light .img-layout {
        height: 169px;
        background-size: 60%;
    }

    .aa_mega-menu_high-light .lead {
        font-size: 17px;
    }

    .aa_mega-menu_high-light .lead br,
    .aa_mega-menu_high-light p br{
        display: none;
    }

    .aa_mega-menu_high-light.menu-lfb a,
    .aa_mega-menu_high-light.menu-lbo a,
    .aa_mega-menu_high-light.menu-lbb a {
        min-height: auto;
    }

    .stmobilemenu_column {
        border: none;
    }

    #side_stmobilemenu {
        border: none;
    }

    .st-menu-header {
        padding: 10px 12px 10px 20px;
    }

}

.aa-mobile-menu-footer {
    margin-top: 16px;
}

.aa-mobile-menu-footer nav,
.aa-mobile-menu-footer .aa-rs{
    padding: 0 20px;
}

.aa-mobile-menu-footer nav li {
    padding: 8px 0;
}

.aa-mobile-menu-footer nav ul {
    margin-bottom: 8px;
}

.aa-mobile-menu-footer nav li a,
.aa-mobile-menu-footer .aa-rs p{
    color: var(--black);
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-mobile-menu-footer .aa-rs .links {
    display: flex;
    column-gap: 8px;
}

.aa-mobile-menu-footer .logo-paiements{
    margin-top: 32px;
    display: flex;
    padding: 16px 0;
    background-color: var(--white);
    justify-content: center;
}

/* -- Bottom bloc */

.aa_mega-menu_bottom-link {
    background: var(--light-blue-02);
    display: flex;
    padding: 24px 32px;
    justify-content: center;
    align-items: center;
    gap: 8px;
    align-self: stretch;
}

.aa_mega-menu_bottom-link a{
    color: var(--black);
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 24px */
    text-decoration-line: underline;
    text-decoration-style: solid;
    text-decoration-skip-ink: none;
    text-decoration-thickness: auto;
    text-underline-offset: auto;
    text-underline-position: from-font;
    margin: 0;
}
    
@media screen and (max-width: 768px) {
    .aa_mega-menu_bottom-link {
        display: none;
    }
}

/* -- Sous-Menu Blocs*/

.stmenu_sub.style_wide,
#st_mega_menu_wrap .stmenu_sub {
    border-radius: 8px;
    /* border: 1px solid rgba(233, 233, 233, 0.30); */
    background: var(--white);
    clip-path: inset(0 round 8px); /* Utilise le même rayon */
}

.stmenu_sub.style_wide {
    padding: 0;
}

.stmenu_sub > .row {
    padding: 0;
    margin: 0;
    border: none;
}

.stmenu_sub > .row > .col-md-12{
    padding: 0;
    margin: 0;
}

.stmenu_sub > .row:first-child > div:nth-child(1) {
    background-color: var(--white);
    padding: 32px 0 32px 32px;
}

.stmenu_sub > .row:first-child > div:nth-child(2),
.stmenu_sub > .row:first-child > div:nth-child(3),
.stmenu_sub > .row:first-child > div:nth-child(4) {
    margin: 0;
    padding: 0;
}


/* --  First Level */
#st_mega_menu_wrap .ma_level_0 {
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 72px;
    height: 72px;
    text-transform: none;
}

#st_mega_menu_wrap .ml_level_0.current .ma_level_0, #st_mega_menu_wrap .ma_level_0:hover {
    color: #000;
    border: none;
}

#st_mega_menu_wrap .ma_level_0:hover {
    color: #000;
}

/* -- Link */
.stmenu_sub a.ma_level_1{
    padding: 8px;
    color: #000;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    text-transform: none;
}

.stmenu_sub a.ma_level_1:hover {
    border-radius: 8px;
    background: var(--light-blue-02);
    position: relative;
}

.stmenu_sub a.ma_level_1 .cate_label {
    padding: 4px 8px;
    border-radius: 8px;
    background: var(--dgrad-bleu-AA);
    color: var(--white);
    text-align: center;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
    height: auto;
}

.stmenu_sub a.ma_level_1:hover::before {
    content: '';
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    width: 14px;
    height: 14px;
    mask-size: contain;
    background-color: currentColor;
    mask-repeat: no-repeat;
    mask-position: center;
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 14 14' fill='none'%3E%3Cpath d='M5.87894 12.293L7.29294 13.707L13.9999 6.99997L7.29294 0.292969L5.87894 1.70697L10.1719 5.99997H0.585938V7.99997H10.1719L5.87894 12.293Z' fill='black'/%3E%3C/svg%3E");
}

/* #st_menu_6 .stmenu_sub.style_wide {
    display: block;
} */

/* Icon Cart */

.amount_circle {
    width: 14px;
    height: 14px;
    background-color: var(--blue);
    line-height: 14px;
    text-align: center;
    font-size: 10px;
    font-style: normal;
    font-weight: 600;   
}

.header_icon_btn_icon .amount_circle {
    top: 0;
    left: 14px;
}

.header_icon_btn_icon .amount_circle.dozens{
    padding: 0;
    width: 16px;
    left: 13px;
}

/* HEADER BANNER */

.aa-header__banner {
    color: var(--White, #FFF);

    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */

    display: flex;
    justify-content: center;

    padding: 12px 16px;
    align-items: center;
    gap: 16px;
    align-self: stretch;
    background: var(--dgrad-bleu-AA);
}


.aa-header__banner p{
    padding: 0;
    margin: 0;
}

.aa-header__banner a{
    color: var(--White, #FFF);
    text-decoration-line: underline;
    display: flex;
    column-gap: 8px;
    margin-left: 8px;
}

.aa-header__banner a:hover{
    opacity: .75;
}

@media screen and (max-width: 768px) {
    .aa-header__banner {
        flex-wrap: wrap;
        row-gap: 2px;
    }

    .aa-header__banner a:first-of-type img{ width: 93px; }
    .aa-header__banner img:first-of-type { width: 40px; }
    .aa-header__banner a:nth-of-type(2) img{ width: 96px; }
    .aa-header__banner a:nth-of-type(3){ display: none; }
    .aa-header__banner span:last-of-type{ display: none; }
    
    .aa-header__banner a:last-of-type{ display: none; }

    #rightbar_4 {
        line-height: 44px;
    }

}

/* MENU OVERLAY */

.megamenu-overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.4); /* Fond noir avec 30% d'opacité */
    z-index: 99; /* Juste en dessous du megamenu */
    opacity: 0;
    visibility: hidden; /* Utiliser visibility au lieu de display */
    transition: opacity .3s ease, visibility 5s ease;
    pointer-events: none; /* Empêche les interactions quand invisible */

}

.megamenu-overlay.show {
    transition: opacity .3s ease; /* Apparition en 5s */
    visibility: visible;
    pointer-events: auto; /* Réactive les interactions */
    opacity: 1;
}

.stmenu_sub {
    position: relative;
}

#st_mega_menu_wrap .ma_level_0 {
    z-index: 101;    
}

#st_mega_menu_wrap .ml_level_0:hover .ma_level_0 {
    z-index: 103;
}

.mu_level_2 .granditem_0>ul, 
.st_mega_menu .stmenu_sub, 
.stmenu_multi_level ul {
    z-index: 102;
}


/* HOME HERO */

.aa-home-hero {
    color: var(--black);
    display: flex;
    padding: 24px 0;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
}

.aa-home-hero .content{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
    width: 565px;
}

.aa-home-hero .titles,
.aa-home-hero .texte{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
}

.aa-home-hero .action-cta{
    display: flex;
    align-items: flex-start;
    gap: 16px;
}

.aa-home-hero .content .subtitle{
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

.aa-home-hero .content .title{
    font-family: "Plus Jakarta Sans";
    font-size: 56px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 67.2px */
    letter-spacing: 0.56px;
}

.aa-home-hero .content h1{
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 24px */
}

.aa-home-hero .content p{
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
}

/* -- VIDEOS */

.aa-home-hero .videos{
    width: 623px;
    height: 606px;
    display: flex;
    flex-direction: row;
    justify-content: center;
    gap: 16px;
}

.aa-home-hero .videos .aa-col{
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-end;
    justify-content: center;
    gap: 16px;
}

.aa-home-hero .videos .aa-col .item{
    position: relative;
}

.aa-home-hero .videos .aa-label-glass {
    z-index: 10;
    width: 216px;
    position: absolute;
    bottom: 10px;
}

.aa-home-hero .item-1 .aa-label-glass {
    left: -32px;
    bottom: 16px
}

.aa-home-hero .item-3 .aa-label-glass {
    right: -25px;
}

.aa-home-hero .item-2 .aa-label-glass {
    left: -21px;
    bottom: 26px
}

.aa-home-hero .item-4 video{
    width: 100%; height: auto; object-fit: cover;
    max-width: 269px;
    border-radius: 8px;
}

.aa-home-hero .item img {
    border-radius: 8px;
}

@media screen and (max-width: 768px) {
    .aa-home-hero {
        padding: 32px 20px;
        flex-direction: column;
    }

    .aa-home-hero .content .title {
        font-size: 32px;
        font-weight: 500;
        line-height: 120%; /* 38.4px */
    }

    .aa-home-hero .content {
        width: 100%;
        gap: 24px;
        align-items: center;
        margin-bottom: 32px;
    }

    .aa-home-hero .videos {
        width:  100%;
        height: auto;
        gap: 8px;
    }

    .aa-home-hero .videos .aa-col{
        width: calc(100% / 2);
        gap: 8px;
    }

    .aa-home-hero .videos .aa-label-glass {
        display: none;
    }

    .aa-home-hero .item {
        line-height: 0;
    }

    .aa-home-hero .action-cta {
        flex-direction: column;
        width: 100%;
        gap: 8px;
    }

    .aa-home-hero .action-cta a{
        width: 100%;
    }

    .aa-home-hero .content p {
        margin-bottom: 0;
    }
}


/* LABEL : GLASS */

.aa-label-glass {
    display: flex;
    padding: 10px;
    align-items: center;
    gap: 10px;
    border-radius: 8px;
    border: 1px solid var(--Linear-white, rgba(233, 233, 233, 0.30));
    background: var(--Linear-white, linear-gradient(90deg, rgba(233, 233, 233, 0.30) 0%, rgba(196, 196, 196, 0.60) 100%));
    backdrop-filter: blur(12px);
}

.aa-label-glass .icon-animated{
    display: flex;
    width: 24px;
    height: 24px;
    justify-content: center;
    align-items: center;
    border-radius: 5px;
    border: 0.6px solid var(--Linear-white, rgba(233, 233, 233, 0.30));
    background: #FFF;
}

/* HOME PRODUCTS */

.stfeaturedslider_container {
    padding: 56px 64px;
    background: var(--light-blue-02);
}

.stfeaturedslider_container .products_slider .subtitle{
    color: var(--black);
    font-family: "DM Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

@media screen and (max-width: 768px) {
    .stfeaturedslider_container {
        padding:  32px 20px 32px 20px;
        background: var(--light-blue-02);
    }

    .stfeaturedslider_container header{
        padding:  0 20px;
        background: var(--light-blue-02);
    }
}

/* PRODUCT CARTOUCHE */

.stfeaturedslider_container .products_slider {
    display: flex;
    flex-direction: column;
    row-gap: 80px;
}

.product-sub-title {
    margin-top: 8px;
    margin-bottom: 16px;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.pro_first_box {
    background-color: #ffffff;
    border-radius: 8px;
}

.ajax_block_product  h3.s_title_block a{
    color: var(--black, #1C1C1E);
    font-family: "Plus Jakarta Sans";
    height: 26px;
    font-size: 18px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%;
    text-align: left;
    text-transform: none;
}

.product-price-and-shipping .price{
    font-size: 20px;
    font-style: normal;
    font-weight: 700;
    line-height: 150%; /* 30px */   
}

.product-price-and-shipping {
    text-align: left;
}

.aa-slider-navigation {
    display: flex;
    justify-content: space-between;
}

.swiper-button-tr {
    column-gap: 16px;
}

.swiper-button-tr .swiper-button {
    display: flex;
    width: 48px;
    height: 48px;
    justify-content: center;
    align-items: center;
    border-radius: 50px;
    border: 1px solid var(--blue);
    color: var(--blue);
    font-weight: 900;
}

.swiper-button:not(.swiper-button-disabled):hover {
    background: var(--dgrad-bleu-AA);
    color: #ffffff;
}

.swiper-button-tr .swiper-button-disabled {
    border: 1px solid #9F9E9E;
    color: #9F9E9E;
}

.swiper-pagination-bullet {
    background-color: #C0C6CC;
}

.swiper-pagination-bullet-active {
    background: var(--dgrad-bleu-AA);
}

.stfeaturedslider_container  {
    margin-bottom: 0;
}

.price {
    color: var(--black);
}

@media screen and (max-width: 768px) {

    .stfeaturedslider_container .products_slider {
        row-gap: 48px;
        padding: 0;
    }

    .stfeaturedslider_container .container {
        padding: 0;
    }
    .aa-slider-navigation {
        padding-left: 20px;
        margin-top: 32px;
    }
}

/* Labels hover */

.aa-product-item-labels {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    row-gap: 8px;
    position:absolute;
    z-index: 10;
    bottom: calc(56px + 24px + 16px);
    padding: 24px;
    opacity: 0;
    z-index: -1;
}

.pro_first_box.showhoverimage .aa-product-item-labels {
    opacity: 1;
    z-index: 2;
}

/* Button ad-to-cart  */

.hover_fly {
    position: absolute;
    bottom: -395px;
    width: 100%;
    left: 0;
    z-index: 6;
    background: transparent;
    padding: 16px 24px;
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: flex-start;
    box-sizing: border-box;
    row-gap: 16px;

}

.hover_fly_0:hover .hover_fly_btn:first-child .hover_fly_btn_inner span,
.hover_fly_0 .hover_fly_btn .hover_fly_btn_inner span {
    display: flex;
}

.hover_fly .aa-btn-hover-black,
.hover_fly_0 .hover_fly_btn:first-child,
.hover_fly_0:hover .hover_fly_btn:first-child {
    border-radius: 8px;
    background: var(--black);
    display: flex;
    width: 100%;
    height: 56px;
    padding: 16px 24px;
    justify-content: center;
    align-items: center;
    color: var(--Color-White, #FFF);

    /* Body/Small */
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.hover_fly_0:hover .hover_fly_btn:first-child:hover,
.hover_fly .aa-btn-hover-black:hover{
    /* border: 1px solid #FFF; */
    background: linear-gradient(0deg, rgba(53, 49, 49, 0.60) 0%, rgba(53, 49, 49, 0.60) 100%), linear-gradient(268deg, #007EBC 4%, #0076B2 25.17%, #006198 61.05%, #004778 96.02%);
}

.hover_fly .hover_fly_btn {
    
}
/* HOME : PRESSE */

.aa-home-presse {
    background: var(--light-blue-02);
}

.aa-home-presse .aa-container {
    display: flex;
    margin: auto;
    max-width: 1440px;
    width: 100%;
    padding: 32px 64px;
    align-items: center;
    gap: 48px;
}

.aa-home-presse .aa-container .logos{
    display: flex;
    align-items: center;
    gap: 56px;
    flex-shrink: 0;
}

.aa-home-presse .aa-container .header{
    width: 312px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 8px;
}

.aa-home-presse .aa-container .header p{
    color: #000;
    font-family: "Plus Jakarta Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 33.6px */
    margin-bottom: 0;
}

/* MOBILE */
@media screen and (max-width: 768px) {
    .aa-home-presse .aa-container {
        flex-direction: column;
        padding: 32px 20px;
        gap: 24px;
    }

    .aa-home-presse .aa-container .header{
        width: 100%;
    }

    .aa-home-presse .aa-container .logos{
        display: flex;
        align-items: center;
        gap: 56px;
        flex-shrink: 0;
        overflow-y: scroll;
        scrollbar-width: none;
        margin: auto -20px;
        padding: 0 20px;
    }
}

/* HOME : BENTO  */

.aa-home-bento {
    display: flex;
    width: 1440px;
    padding: 56px 64px;
    flex-direction: column;
    align-items: center;
    gap: 32px;
    margin: auto;
}

.aa-home-bento .aa-container {
    display: grid;
    width: 100%;
    grid-template-columns: repeat(2, 1fr);
    grid-template-rows: repeat(2, 1fr);
    grid-column-gap: 32px;
    grid-row-gap: 32px;
}

.aa-home-bento .header {
    display: flex;
    max-width: 768px;
    width: 100%;
    flex-direction: column;
    align-items: center;
    gap: 16px;
    text-align: center;
    margin-bottom: calc(80px - 32px); /* 80 d'espace moins le gap du flex */
}

.aa-home-bento .header p{
    max-width: 620px;
    color: var(--black);
    font-family: "DM Sans";
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 27px */
}

.aa-home-bento .bento-item{
    display: flex;
    width: 100%;

    padding: 24px;
    flex-direction: column;
    justify-content: flex-end;
    align-items: flex-start;
    gap: 32px;
    border-radius: 8px;
    
    background-color: lightgray;
    background-repeat: no-repeat;
    transition: all .2s ease-in-out;
}

.bento-item.filtre {
    grid-area: 1 / 1 / 3 / 2;
    height: 752px;
    padding-top: 48px;
    background-image: url(../img/home/bento-filtre.webp);
    background-position: -285.741px -5.387px;
    background-size: 189.294% 107.181%;
}

.bento-item:hover.filtre {
    background-position: -3.845px -131.536p;
    background-size: 193.809% 109.737%;
}

.bento-item.gaz {
    grid-area: 1 / 2 / 2 / 3; 
    background-image: url(../img/home/bento-gaz.webp);
    background-position: center;
    background-size: 100%;
}

.bento-item:hover.gaz {
    background-size: 105%;
}

.bento-item.cylindre {
    grid-area: 2 / 2 / 3 / 3;
    background-image: url(../img/home/bento-cylindre.webp);
    background-position: center;
    background-size: 100%;
}

.bento-item:hover.cylindre {
    background-size: 105%;
}

.bento-item .caption {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
    padding: 48px;

    border-radius: 8px;
    border: 1px solid rgba(233, 233, 233, 0.30);
    background: rgba(240, 247, 255, 0.40);
    
    /* Blur effect */
    backdrop-filter: blur(12px);

    width: 100%;
    max-width: calc(244px + 48px * 2);
}

.bento-item .caption .img-product {
    display: flex;
    align-items: flex-start;
}

.bento-item .caption .bulle:last-of-type {
    margin-right: 0;
}
.bento-item .caption .bulle {
    position: relative;
    display: flex;
    width: 65px;
    height: 65px;
    justify-content: center;
    align-items: center;
    border-radius: 58px;
    border: 1px solid rgba(233, 233, 233, 0.30);
    background: var(--white);
    box-shadow: 0 2px 2px 0 rgba(0, 0, 0, 0.05);
    margin-right: -25px;
    transition: all .2s ease-in-out;
}

.bento-item:hover .caption .bulle {
    margin-right: -15px;
}

.bento-item .caption .bulle .icon-absolute {
    position: absolute;
    top: 0;
    right: -10px;
    display: flex;
    width: 27px;
    height: 27px;
    justify-content: center;
    align-items: center;
    gap: 10px;
    border-radius: 80px;
    border: 1px solid rgba(233, 233, 233, 0.30);
    background: var(--blue);
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.10);
}

.bento-item:hover .caption .bulle .icon-absolute aa-icon{
    margin-left: 0;
    animation: spin 2s linear infinite;
}

.bento-item:hover .caption aa-icon{
    margin-left: 10px;
}

.bento-item h3 {
    color: var(--black); 
    margin-bottom: 16px;  
}

/* MOBILE */
@media screen and (max-width: 768px) {

    .aa-home-bento {
        width: 100%;
        padding: 32px 20px;
    }

    .aa-home-bento .aa-container {
        display: flex;
        flex-direction: column;
        gap: 16px;
    }

    .aa-home-bento .header {
        text-align: center;
        margin-bottom: 0;
    }

    .bento-item.filtre,
    .aa-home-bento .bento-item {
        height: 400px;
    }

    .bento-item.filtre,
    .bento-item:hover.filtre {
        background-size: cover;
        background-position: center;
    }

    .bento-item.gaz,
    .bento-item:hover.gaz{
        background-size: cover;
        background-position: center right -60px;
    }

    .bento-item.cylindre,
    .bento-item:hover.cylindre{
        background-size: cover;
        background-position: center right;
    }

    .bento-item .caption {
        padding: 24px;
    }
    
    .bento-item h3 {
        font-size: 24px;
        line-height: 120%;
    }

    .bento-item .caption .bulle {
        width: 50px;
        height: 50px;
        margin-right: -15px;
    }

    .bento-item .caption .bulle img{
        max-height: 40px;
        max-width: 27px;
    }

    .bento-item:hover .caption .bulle {
        margin-right: -10px;
    }
}

/* HOME : BANNER CHIFFRES */

.aa-home-banner-chiffres {
    display: flex;
    padding: 64px;
    align-items: center;
    gap: 65px;
    align-self: stretch;
    border-radius: 8px;
    background: url(../img/icons/icon-bg-drop.svg), var(--dgrad-bleu-AA);
    margin: 56px 0;
    background-position: bottom left;
    background-repeat: no-repeat;
}

.aa-home-banner-chiffres h2{
    color: var(--white);    
    width: 100%;
    max-width: 560px;
}

.aa-home-banner-chiffres .chiffres{
    display: flex;
    align-items: flex-start;
    gap: 24px;
    color: var(--white);
}

.aa-home-banner-chiffres .chiffres strong{
    font-family: "Plus Jakarta Sans";
    display: block;
    font-size: 38px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 45.6px */
    letter-spacing: 0.38px;
    margin-bottom: 8px;
}

.aa-home-banner-chiffres .chiffres p{
    max-width: 265px;
    width: 100%;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-home-banner-chiffres .chiffres p:last-of-type{
    max-width: 180px;
    width: 100%;
}

/* MOBILE */
@media screen and (max-width: 768px) {

    .aa-home-banner-chiffres {
        padding: 32px 24px;
        flex-direction: column;
        align-items: flex-start;
        gap:  24px;
        margin: 32px 5px;
        background-image: url(../img/icons/icon-bg-drop-mobile.svg), var(--dgrad-bleu-AA);
        background-position: top 20px left 0px, 0 0;
        background-repeat: no-repeat, no-repeat;
    }

    .aa-home-banner-chiffres h2{
        font-size: 24px;
        line-height: 140%;
        width: 100%;
    }

    .aa-home-banner-chiffres .chiffres{
        flex-direction: column;
        gap: 24px;
    }

    .aa-home-banner-chiffres .chiffres strong{
        font-size: 32px;
    }

    .aa-home-banner-chiffres .chiffres p:last-of-type{
        max-width: 200px;
    }
}


/* MODULE : FAQ */

.aa-faq {
    display: flex;
    align-items: flex-start;
    align-self: stretch;
    max-width: 1440px;
    padding: 56px 0px;
}

.aa-faq header {
    display: flex;
    width: 351px;
    flex-direction: column;
    align-items: flex-start;
    gap: 32px;
}

.aa-faq .acc_header a {
    color: var(--black);
    font-family: "Plus Jakarta Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 33.6px */
    display: flex;
    padding: 20px 0;
    align-items: center;
    gap: 24px;
    align-self: stretch;
    border-bottom: 1px solid var(--black);
}

.aa-faq .acc_header a.collapsed,
.aa-faq .acc_header a {
    background: none!important;
}

.aa-faq .acc_header a.collapsed .acc_icon,
.aa-faq .acc_header a .acc_icon{
    background: none!important;
}

.aa-faq .acc_header .acc_content p{
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-faq .faqs{
    max-width: 960px;
    width: 100%;
}
/* MOBILE */
@media screen and (max-width: 768px) {
    .aa-faq {
        flex-direction: column;
        padding: 5px 5px;
        width: 100%;
        gap: 48px;
    }

    .aa-faq header {
        max-width: 100%;
        gap: 20px;

    }

    .aa-faq header h2{
        font-size: 48px;
        line-height: 120%; /* 57.6px */
    }

    .aa-faq header a{
        width: 100%;
    }

    .aa-faq .acc_header a {
        font-size: 18px;
        line-height: 140%; /* 25.2px */
        gap: 12px;
    }

    .aa-faq .acc_content p{
        font-size: 16px;
        font-weight: 400;
        line-height: 150%; /* 24px */
    }
}

/* FOOTER */

#footer-secondary {
    /* background: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 68.83%, #FFF 99.97%), url(../img/footer/faq-bg.webp) lightgray left top / cover no-repeat; */

    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 68.83%, #FFF 99.97%), url(../img/footer/faq-bg.webp);
    background-color: var(--white);
    background-position: left top;
    background-size: 100%;
    background-repeat: no-repeat;
}

.aa-footer {
    display: flex;
    width: 100%;
    max-width: 1440px;
    padding: 80px 0;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    gap: 80px;
    margin: auto;
}

.aa-footer .aa-container{
    display: flex;
    align-items: flex-start;
    gap: 76px;
    align-self: stretch;
    width: 100%;
}

.aa-footer .aa-container .logo{
    width: 224px;
}

.aa-footer .nav-links{
    display: flex;
    align-items: flex-start;
    gap: 56px;
    flex: 1 0 0;    
}

.aa-footer .nav-links nav{
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    flex: 1 0 0;
}

.aa-footer .nav-links nav li{
    padding: 8px 0;    
}

.aa-footer .nav-links nav li a:hover{
    text-decoration: underline;
}

.aa-footer .aa-container .nav-links h4,
.aa-footer .aa-container .newsletter h4{
    font-family: "Plus Jakarta Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 500;
    line-height: 150%; /* 24px */
    margin-bottom: 0;
}
.aa-footer .aa-container .nav-links a{
    color: var(--black);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-footer .sub-footer{
    width: 100%;
    border-top: 1px solid var(--black);
    padding-top: 32px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
}

body#checkout .aa-footer{
    padding-top: 0px;
}

body#checkout .aa-footer .sub-footer{
    border: none;
}

.aa-footer .sub-footer .text{
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.aa-footer .sub-footer p{
    margin-bottom: 0;
}

.aa-footer .sub-footer p a,
.aa-footer .sub-footer .links a:hover{
    text-decoration: underline;
    font-size: 14px;
}

.aa-footer .sub-footer .links {
    display: flex;
    align-items: flex-start;
    gap: 24px;
}

.aa-footer .sub-footer .links a{
    color: var(--black);
}


.aa-footer .aa-container .newsletter{
    max-width: 400px;
    display: flex;
    flex-direction: column;
    row-gap: 16px;
}

#footer .aa-footer .aa-container .newsletter .block{
    margin: 0;
}

.aa-footer .aa-container .newsletter p{
    font-size: 16px;
}

.aa-footer .aa-container .newsletter .aa-rs .links{
    display: flex;
    column-gap: 8px;
}

.st_news_letter_form_inner {
    display: flex;
    align-items: flex-start;
    gap: 16px;
    align-self: stretch;
    width: 100%;
}

.st_news_letter_form_inner .st_news_letter_input{
    height: 56px;
    padding: 12px;
    align-items: center;
    border-radius: 8px;
    border: 1px solid var(--black);
    color: var(--black);
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.st_news_letter_form_inner .st_news_letter_input::placeholder {
  color: rgba(0, 0, 0, 0.60);
}


/* MOBILE */
@media screen and (max-width: 768px) {

    #footer-secondary {
        background: none;
        padding-top: 32px;
    }
    
    .aa-footer {
        padding: 32px 12px 0;
        gap: 32px;
    }

    .aa-footer .aa-container {
        flex-direction: column;
        gap: 48px;
    }

    .aa-footer .nav-links {
        flex-direction: column;
        gap: 40px;
    }

    .aa-footer .sub-footer {
        flex-direction: column;
        padding-top: 24px;
    }

    .aa-footer .sub-footer .text {
        flex-direction: column-reverse;
        align-items: flex-start;
        gap: 32px;
    }

    .aa-footer .sub-footer .links {
        flex-direction: column;
        gap: 16px;
    }

    .aa-footer .sub-footer .links a {
        text-decoration: underline;
    }

    .sub-footer img {
        margin-top: calc(24px + 16px);
    }

    .aa-footer .aa-container .newsletter p {
        text-align: left;
    }
}


/* COMPONENT : BANNER LIGHT */

.aa-banner-light{
    background: var(--dgrad-bleu-AA);
    height: 92px;
    display: flex;
    justify-content: center;
    align-items: center;
}

.container-overflow-mobile {
    display: flex;
    justify-content: center;
    align-items: center;
    gap: 56px;
}

.aa-banner-light .item {
    display: flex;
    align-items: center;
    justify-items: center;
    gap: 16px;
}

.aa-banner-light .item p {
    color: var(--white);
    font-family: "Plus Jakarta Sans";
    font-size: 28px;
    font-style: normal;
    font-weight: 400;
    line-height: 120%; /* 33.6px */
    margin-bottom: 0;
}

@media screen and (max-width: 768px) {
    .aa-banner-light .container-overflow-mobile {
        align-items: center;
        justify-content: flex-start;
        gap: 24px;
        overflow-x: scroll;
        scrollbar-width: none;
        width: 100%;
        flex-wrap: nowrap;
        flex-direction: row;
        padding: 0 20px;
    }

    .aa-banner-light .item {
        width: 100%;
    }

    .aa-banner-light .item svg{
        min-width: 40px;
        width: 40px;
    }

    .aa-banner-light .item p {
        font-size: 24px;
        white-space: nowrap;
        font-weight: 400;
    }

}


/* COMPONENT : CARDS */

.aa-cards {
    width: 100%;
    display: flex;
    align-items: flex-start;
    gap: 32px;
    align-self: stretch;
    margin: auto;
}

.aa-cards-section {
    max-width: 1440px;
    padding: 56px 64px;
}

.aa-cards .card {
    color: var(--white);
    display: flex;
    padding: 48px 24px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    align-self: stretch;
    width: 100%;
    max-width: calc(100% / 3);

    border-radius: 8px;
    background: var(--dgrad-bleu-AA);
}

.aa-cards .card p{
    font-size: 18px;
    font-weight: 400;
    line-height: 150%; /* 27px */
}

/* MOBILE */
@media screen and (max-width: 768px) {

    .aa-cards-section {
        max-width: 1440px;
        padding: 32px 0;
    }

    .aa-cards {
        flex-direction: column;
        gap: 16px;
    }

    .aa-cards .card {
        max-width: 100%;
    }


}

/* COMPONENT : EDITO */

.aa-edito {
    background-image: linear-gradient(180deg, rgba(255, 255, 255, 0.00) 1%, #FFF 95.88%), url(../img/home/edito-bg.png);
    background-position: center center;
    background-size: cover;
    background-repeat: no-repeat;
}

.aa-edito .aa-container{
    display: flex;
    width: 1440px;
    padding: 56px 64px;
    flex-direction: column;
    align-items: flex-start;
    gap: 80px;
    margin: auto;
}

.aa-edito.aa-edito-cms .aa-container{
    display: flex;
    width: 100%;
    padding: 56px 0;
    flex-direction: column;
    align-items: flex-start;
    gap: 80px;
    margin: auto;
}

.aa-edito header{
    width: 100%;
    max-width: 690px;
}

.aa-edito.aa-edito-cms header{
    max-width: 100%;
}

.aa-edito .content{
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 32px;
    align-self: stretch;
}

.aa-edito .content p{
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-edito .content .item{
    width: 100%;
    max-width: calc(100% / 3);
}

.aa-edito .content .item .img-cover{
    height: 260px;
    align-self: stretch;
    margin-bottom: 32px;
    border-radius: 8px;
    border: 1px solid var(--Linear-white, rgba(233, 233, 233, 0.30));
    background: url(../img/home/edito-alpes.webp) lightgray 50%;
    background-size: cover;
    background-position: cover;
    background-repeat: no-repeat;
}

.aa-edito .content .item h4{
    min-height: 102px;
    margin-bottom: 16px;
}

.aa-edito.title-double-line .content .item h4{
    min-height: 68px;
}

/* MOBILE */
@media screen and (max-width: 768px) {

    .aa-edito {
        background: none;
    }

    .aa-edito .aa-container{
        width: 100%;
        padding: 32px 20px;
        flex-direction: column;
        align-items: flex-start;
        gap: 32px;
    }

    .aa-edito header h2{
        text-align: center;
    }

    .aa-edito .content {
        flex-direction: column;
    }

    .aa-edito .content .item {
        max-width: 100%;
    }

    .aa-edito a.btn {
        width: 100%;
    }

    .aa-edito .row{
        margin: 0;
    }

    .aa-edito .row .col-12{
        padding: 0;
    }
}


/* COMPONENT : Label icone  */

.aa-label-icon {
    display: flex;
    width: fit-content;
    padding: 4px 8px;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    background: var(--light-blue-02);

    /* Blur effect */
    backdrop-filter: blur(12px);
    margin-bottom: 8px;
}

.aa-label-icon.label-primary {
    background: var(--dgrad-bleu-AA);
}

.aa-label-icon:last-of-type,
.aa-labels-group .aa-label-icon {
    margin-bottom: 0;
}

.aa-label-icon span{
    color: var(--black);
    text-align: center;
    font-family: "DM Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
}

.aa-label-icon.label-primary span{
    color: var(--white);
}

/* COMPONENT : Label Glass icone  */

.aa-label-glass-icon {
    display: flex;
    width: fit-content;
    padding: 8px;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    border: 1px solid var(--Linear-white, rgba(233, 233, 233, 0.30));
    background: rgba(255, 255, 255, 0.40);

    /* Blur effect */
    backdrop-filter: blur(12px);
}


.aa-label-glass-icon span{
    color: var(--black);
    text-align: center;
    font-family: "DM Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
}

.aa-label-glass-icon.label-primary span{
    color: var(--white);
}


/* CATEGORY */

#product-list-top-wrap {
    display: none;
}

body#category  .breadcrumb_spacing {
    height: 0;
}

body#category  .breadcrumb_wrapper {
    margin: 0;
    padding: 0;
}

body#category  #wrapper {
    background: var(--light-blue-02);
}

body#category  .product_count {
    display: none;
}

.aa-category-header {
    display: flex;
    height: 374px;
    position: relative;
    overflow: hidden;
    border-radius: 8px;
    margin: 56px 0;
}

.aa-category-header video {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover; /* Maintient les proportions tout en couvrant l'espace */
}

.aa-category-header .aa-container{
    z-index: 1;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    flex-wrap: nowrap;
    background: rgba(0, 0, 0, 0.60);
}

.aa-category-header .aa-container p.lead{
    color: var(--white);
    text-align: center;

    /* Heading/H2 */
    font-family: "Plus Jakarta Sans";
    font-size: 48px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 57.6px */
    letter-spacing: 0.48px;
    
}

.aa-category-header .aa-container p{
    color: var(--white);
    text-align: center;
    /* Body/Small */
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-category-title {
    margin-bottom: 80px;
    width: 100%;
    max-width: 600px;
}

.category-id-4 .aa-category-title{
    max-width: 900px;
}

.aa-category-title h1{
    font-size: 48px;
    line-height: 120%; /* 57.6px */
    letter-spacing: 0.48px;
}

.aa-category-title p{
    font-family: "DM Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
    letter-spacing: 0.7px;
    text-transform: uppercase;   
    margin: 0;
}

@media (max-width: 768px) {
    .aa-category-header {
        height: 308px;
        margin: 32px 0;
    }

    .aa-category-header .aa-container p.lead{
        font-size: 32px;
    }

    .aa-category-title h1 {
        font-size: 32px;
    }

    .aa-category-title{
        margin-bottom: 48px;
    }
}



/* COMPONENT : ACCORDEON */

.aa-accordeon {
    display: flex;
    max-width: 1440px;
    padding: 80px 64px;
    flex-direction: column;
    align-items: flex-start;
    gap: 48px;
    margin: auto;
}

.aa-accordeon:has(+ .aa-banner-filtre) {
    padding: 0 64px;
}

.aa-accordeon .header {
    display: flex;
    max-width: 768px;
    flex-direction: column;
    align-items: flex-start;
    gap: 24px;
}

.aa-accordeon .header .aa-h2 {
  margin-bottom: 0;
}

.aa-accordeon .header p {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-accordeon-tab {
    display: flex;
    align-items: center;
    gap: 80px;
    align-self: stretch;
    justify-content: space-between;
}

.aa-tab-selector {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 40px;
    width: 100%;
    max-width: 592px;
}

.aa-tab-selector li {
    border-left: 2px solid #ffffff;
    padding-left: 32px;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: flex-start;
    gap: 16px;
    transition: border-left-color 0.2s ease; /* Transition sur la bordure */
    cursor: pointer; /* Indique que c'est interactif */
}

.aa-tab-selector li.aa-active {
    border-left: 2px solid var(--blue);
}

.aa-tab-selector li span {
    font-family: "Plus Jakarta Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 33.6px */
}

.aa-tab-selector li p {
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    margin: 0;
    opacity: 0; /* Au lieu de display: none */
    max-height: 0; /* Pour une animation fluide */
    overflow: hidden;
    transition: opacity 0.4s ease, max-height 0.8s ease; /* Transitions */

}

.aa-tab-selector li.aa-active p{
    opacity: 1; /* Au lieu de display: block */
    max-height: 80px; /* Hauteur suffisante pour le contenu */
}

.aa-visuel-wrapper {
    position: relative;
    width: 640px;
    min-width: 640px;
    height: 640px;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--light-blue-02);
    border-radius: 8px;
    overflow: hidden;
}

.aa-visuel-container {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0;
    transition: opacity 0.6s ease;
    display: flex;
    justify-content: center;
    align-items: center;
    background: var(--light-blue-02);
}

.aa-visuel-container.aa-active {
    opacity: 1;
}

.aa-visuel-container img {
  width: 100%;
  max-width: 100%;
  transition: opacity .3s ease; /* Transition sur l'image */
}


/* États hover */
.aa-tab-selector li:hover {
  /* Styles au survol des onglets */
}

/* États focus pour l'accessibilité */
.aa-tab-selector li:focus {
  /* Styles au focus clavier */
}



@media (max-width: 768px) {
    .aa-accordeon {
        padding: 0;
    }

    .aa-accordeon:has(+ .aa-banner-filtre) {
        padding: 0;
    }

    .aa-accordeon-tab {
        display: flex;
        flex-direction: column;
        gap: 48px;
    }

    .aa-accordeon .header {
        text-align: center;
    }

    .aa-tab-selector {
        display: flex;
        flex-direction: column;
        align-items: flex-start;
        gap: 40px;
        width: 100%;
        max-width: 592px;
    }

   .aa-visuel-wrapper {
        position: relative;
        width: 100%;
        min-width: auto;
        aspect-ratio: 1 / 1;
        height: auto;
        display: flex;
        justify-content: center;
        align-items: center;
        background: var(--light-blue-02);
        border-radius: 8px;
        overflow: hidden;
    }
}

/* COMPONENT : BANNER */

.aa-banner-filtre {
    display: flex;
    padding: 32px;
    align-items: center;
    justify-content: space-between;
    align-self: stretch;
    border-radius: 8px;
    background: var(--dgrad-bleu-AA);
    width: 100%;
    max-width: 1312px;
    margin: 48px auto;
}

.aa-banner-filtre .aa-content{
    max-width: 650px;
    display: flex;
    flex-direction: column;
    gap: 24px;
}

.aa-banner-filtre .aa-h2 {
    color: var(--white);
    font-size: 32px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 38.4px */
    margin-bottom: 0;
}

.aa-banner-filtre p {
    color: var(--white);
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-banner-filtre .aa-visuel {
    display: flex;
    height: 246px;
    align-items: center;
    justify-content: center;
    border-radius: 8px;
    background: #C7DEFF;
    max-width: 411px;
    width: 100%;
    padding: 0 40px;

}

.aa-banner-filtre .aa-visuel img {
    max-height: 100%;
    max-width: 100%;
}

@media (max-width: 768px) {
    .aa-banner-filtre {
        flex-direction: column;
    }
    .aa-banner-filtre .aa-visuel {
        padding: 0 7px;
    }
}


/* COMPONENT :Timeline */


.aa-timeline {
    display: flex;
    padding: 112px 64px;
    flex-direction: row;
    justify-content: center;
    background-color: var(--light-blue-02);
}

.aa-timeline .aa-container{
    display: flex;
    align-items: flex-start;
    gap: 80px;
    align-self: stretch;
    max-width: 1312px;
}

.aa-timeline .aa-content {
    display: flex;
    flex-direction: column;
    width: calc((100%/2) - (80px/2));
    gap: 8px;
}

.aa-timeline .aa-subtitle {
    text-transform: uppercase;
}

.aa-timeline .aa-label-icon {
    background-color: var(--white);
}

.aa-timeline .aa-label-icon span{
    font-size: 16px;
    line-height: 150%; /* 24px */
}

.aa-timeline .aa-title {
    width: 100%;
    margin-bottom: 16px;
}

.aa-timeline .aa-cta-group{
    margin-top: 24px;
    width: 100%;
    max-width: 385px;
    text-align: center;
    display: flex;
    gap: 8px;
    flex-direction: column;
}

.aa-timeline .aa-timeline-items {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    width: calc((100%/2) - (80px/2));
}

.aa-timeline .aa-timeline-item {
    display: flex;
    align-items: stretch; /* ← Important : étire tous les enfants */
    gap: 40px;
    align-self: stretch;
}

.aa-timeline .aa-timeline-marker {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
}

.aa-timeline .aa-timeline-line {
    position: relative;
    flex: 1; /* prend tout l'espace disponible */
}

.aa-timeline .aa-timeline-line::before {
    content: '';
    position: absolute;
    left: 50%;
    top: 0;
    bottom: 0;
    width: 2px;
    background: var(--blue);
    transform: translateX(-50%);
}

.aa-timeline .aa-timeline-content {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 16px;
    flex: 1 0 0;
}

.aa-timeline .aa-period {
    text-transform: uppercase;
    display: flex;
    padding-bottom: 8px;
}

.aa-timeline .aa-timeline-title {
    margin-bottom: 0;
}

.aa-timeline .aa-timeline-content p {
    margin: 0;
    font-size: 16px;
    line-height: 150%; /* 24px */
}

.aa-timeline .aa-timeline-content p.link a{
    text-decoration: underline;
    color: var(--black);
}

.aa-timeline .aa-info {
    display: flex;
    padding: 24px;
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
    align-self: stretch;
    border-radius: 8px;
    background:var(--dgrad-bleu-AA);
}

.aa-timeline .aa-info p {
    color: var(--white);
}

@media (max-width: 768px) {
    .aa-timeline {
        padding: 64px 20px;
    }

    .aa-timeline .aa-container{
        display: flex;
        flex-direction: column;
        gap: 32px;
    }

    .aa-timeline .aa-content {
        width: 100%;
        gap: 8px;
    }
    
    .aa-timeline .aa-timeline-items {
        gap: 16px;
        width: 100%;
    }

    .aa-timeline .aa-label-icon {
        margin-bottom: 0;
    }
    .aa-timeline .aa-timeline-item {
        gap: 16px;
    }
}


/* COMPONENT : TABLE */

.table-filtre {
    padding: 56px;
    gap: 80px;
    display: flex;
    flex-direction: column;
    align-items: center;
}

.table-filtre .aa-title {
    display: flex;
    max-width: 768px;
    flex-direction: column;
    gap: 24px;
    margin: auto;
    flex-wrap: nowrap;
    align-items: center;
    text-align: center;
}

.table-filtre .aa-title p{
    font-size: 16px;
    margin-bottom: 0;
}

/* Container responsive avec scroll horizontal */
.aa-table-container {
  width: 100%;
  max-width: 1440px;
  overflow-x: auto;
  background: var(--light-blue-02);
  border-radius: 8px;
  padding: 0;
  /* Smooth scrolling */
  scroll-behavior: smooth;
  /* Webkit scrollbar styling (optionnel) */
  scrollbar-width: thin;
  scrollbar-color: var(--light-blue) transparent;
}

.aa-table-container::-webkit-scrollbar {
  height: 8px;
}

.aa-table-container::-webkit-scrollbar-track {
  background: transparent;
}

.aa-table-container::-webkit-scrollbar-thumb {
  background: var(--light-blue);
  border-radius: 4px;
}

/* Table principale */
.aa-comparison-table {
  width: 100%;
  min-width: 800px; /* Largeur minimum pour forcer le scroll sur mobile */
  border-collapse: collapse;
  background: var(--light-blue-02);
  font-family: "DM Sans", sans-serif;
}

/* Header styling */

.aa-comparison-table th {
  padding-top: 24px;
  border: none;
  vertical-align: top;
}

/* Colonne des fonctionnalités (première colonne) */
.aa-feature-column {
  width: 420px;
  max-width: 420px;
  text-align: left;
}

/* Colonnes des solutions */
.aa-solution-column {
  width: 220px;
  min-width: 220px;
  text-align: center;
}

/* Colonne principale (Carafe filtrante) plus large */
.aa-solution-column.aa-solution-main {
  width: 220px;
  min-width: 220px;
  position: relative;
}

.aa-table-gaz .aa-solution-column,
.aa-table-gaz  .aa-solution-column.aa-solution-main {
    width: 300px;
}

.aa-solution-column .aa-solution-header {
    padding: 32px 24px;
    border-radius: 8px;
}

.aa-solution-column.aa-solution-main  .aa-solution-header {
    background: var(--blue);
}

/* Header des solutions */
.aa-solution-header {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
}

.aa-solution-header img {
  width: 74px;
  height: auto;
  object-fit: contain;
}

.aa-solution-header h3 {
  color: var(--black);
  text-align: center;
  font-family: "Plus Jakarta Sans", sans-serif;
  font-size: 24px;
  font-style: normal;
  font-weight: 600;
  line-height: 140%;
  margin: 0;
}

.aa-solution-main .aa-solution-header h3 {
  color: var(--white);
}

/* Body du tableau */
.aa-comparison-table tbody tr {
  border-bottom: 1px solid rgba(192, 221, 242, 0.5);
}

.aa-comparison-table tbody tr:last-child {
  border-bottom: none;
}

.aa-comparison-table tr:nth-child(even) {
    background-color: var(--light-blue);
}

/* Cellules */
.aa-comparison-table td {
  padding: 16px;
  vertical-align: middle;
  border: none;
}

/* Labels des fonctionnalités */
.aa-feature-label {
  color: var(--black);
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
  text-align: left;
  padding-left: 24px;
}

.aa-price-row .aa-feature-label {
    font-weight: 600;
    font-size: 18px;
}

/* Cellules des solutions */
.aa-solution-cell {
  text-align: center;
  color: var(--black);
  font-family: "DM Sans", sans-serif;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 150%;
}

/* Détails des fonctionnalités */
.aa-feature-detail {
  display: block;
  font-size: 14px;
  margin-top: 4px;
  opacity: 0.8;
}

.aa-material-info {
  font-size: 14px;
  line-height: 140%;
}

.aa-price {
  font-weight: 600;
  font-size: 18px;
}

.aa-eco-label {
  display: block;
  margin-top: 4px;
  font-size: 14px;
  font-weight: 500;
}

.aa-solution-cell aa-icon {
  display: inline-block;
  vertical-align: middle;
}

@media (max-width:  768px) {

    .table-filtre {
        padding: 32px 0;
        gap: 48px;
        display: flex;
        flex-direction: column;
        align-items: center;
    }

  .aa-table-container {
    margin: 0 -16px; /* Déborde des marges sur mobile */
  }
  
  .aa-comparison-table {
    min-width: 700px; /* Réduit légèrement sur très petit écran */
  }
  
  .aa-feature-column {
    width: 120px;
    min-width: 120px;
  }
  
  .aa-solution-column {
    width: 120px;
    min-width: 120px;
  }
  
  .aa-solution-column.aa-solution-main {
    width: 120px;
    min-width: 120px;
  }

    .aa-table-gaz .aa-solution-column,
    .aa-table-gaz  .aa-solution-column.aa-solution-main {
        width: 120px;
        min-width: 120px;
    }

  .aa-solution-column .aa-solution-header {
        padding: 8px;
        border-radius: 8px;
    }
  
  .aa-solution-header h3 {
    font-size: 16px;
  }
  
  .aa-feature-label {
    font-size: 16px;
    padding-left: 16px;
  }
}


/* PRODUCT */

.aa-product_page_container {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    gap: 80px;
    align-self: stretch;
}

.product_first_section {
    background-color: var(--light-blue-02);
}

.product .breadcrumb_spacing,
.product .breadcrumb_wrapper {
    background-color: var(--light-blue-02);
}

.product #page_banner_container_1{
    padding-top: calc(24px + 20px);
}

.product #page_banner_container_1 li > span{
    font-weight: 600;
}

.aa-product_page_container .product_left_column {
    width: calc(100%/2);
    max-width: calc(100%/2 - (80px / 2));
}

.aa-product_page_container .product_middle_column {
    width: calc(100%/2);
    max-width: calc(100%/2 - (80px / 2));
}

@media screen and (max-width: 768px) {
    .aa-product_page_container {
        flex-direction: column;
        gap: 16px ;
    }

    .aa-product_page_container .product_left_column {
        width: 100%;
        max-width: 100%;
    }

    .aa-product_page_container .product_middle_column {
        width: 100%;
        max-width: 100%;
    }

    .product #page_banner_container_1{
        padding-top: 16px;
        
    }

    .product #page_banner_container_1 li span{
        font-size: 14px;
    }

    .product #page_banner_container_1 li:nth-child(3) a{
        display: none;
    }

    .product #page_banner_container_1 li:nth-child(3)::before {
        content: "...";
        font-weight: bold;
    }

    .product .breadcrumb_spacing {
        height: 10px;
    }
}

/* PRODUCT : IMAGE */

.pro_gallery_thumb_box {
    border-radius: 8px;
    overflow: hidden;
    background-color: var(--white);
}

.clicked_thumb .pro_gallery_thumb_box {
    border: 1px solid var(--blue);
}

.pro_gallery_thumbs_horizontal .swiper-wrapper{
    gap: 6px;
}

.pro_gallery_top_container {
    background-color: var(--white);
    border-radius: 8px;
    overflow: hidden;
}

@media screen and (max-width: 768px) {
    .pro_gallery_thumbs_horizontal .swiper-slide {
        width: 77px;
    }

    .pro_gallery_thumbs_horizontal .swiper-wrapper{
        gap: 0px;
    }
}


/* PRODUCT : CONTENT */

.product_name_wrap .product_name {
    color: var(--black);
    text-transform: none;
    font-family: "Plus Jakarta Sans";
    font-size: 48px;
    font-style: normal;
    font-weight: 500;
    line-height: 120%; /* 57.6px */
    letter-spacing: 0.48px;
    margin: 0;
}

.skeepers_product__stars {
    margin: 0;
}

.stars-cursor {
    padding: 10px 0 16px;
    margin: 0;
}

.product-description-short p {
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.aa-product-description {
    max-width: 800px;
    margin: 20px auto;
    font-family: Arial, sans-serif;
}

.aa-product-description h3 {
    border-top: 1px solid #000000;
    padding: 16px 0;
    margin: 0;
    cursor: pointer;
    position: relative;
    
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 24px */
    color: var(--black);

    transition: all 0.2s ease;
}

.aa-product-description h3:hover {
}

.aa-product-description h3::after {
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6023 8.86784C11.822 8.64817 12.1781 8.64817 12.3978 8.86784L18.1326 14.6027C18.3523 14.8224 18.3523 15.1785 18.1326 15.3982L17.8674 15.6634C17.6478 15.883 17.2916 15.883 17.0719 15.6634L12 10.5914L6.92808 15.6634C6.7084 15.883 6.3523 15.883 6.13263 15.6634L5.86743 15.3982C5.64775 15.1785 5.64775 14.8224 5.86743 14.6027L11.6023 8.86784Z" fill="black"/></svg>');
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}

.aa-product-description h3.collapsed::after {
    transform: translateY(-50%) rotate(180deg);
}

.aa-product-description ul {
    margin: 0;
    padding: 0;
    border-top: none;
    overflow: hidden;
    transition: all 0.2s ease;
    margin-bottom: 24px;
    display: flex;
    gap: 8px;
    flex-direction: column;
}

.product-description-short ul {
    margin: 0;
    padding: 0;
    display: flex;
    gap: 8px;
    flex-direction: column;
}


.aa-product-description ul.collapsed {
    max-height: 0;
    border: none;
    margin: 0;
}

.aa-product-description ul:not(.collapsed) {
    max-height: 500px;
}

.aa-product-description li,
.product-description-short li {
    list-style: none;
    padding: 0;
    position: relative;
    display: flex;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    gap: 8px;
}

.aa-product-description li::before,
.product-description-short li::before {
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><g clip-path="url(%23clip0_2183_12733)"><path d="M9.00016 16.1701L4.83016 12.0001L3.41016 13.4101L9.00016 19.0001L21.0002 7.00009L19.5902 5.59009L9.00016 16.1701Z" fill="%23323232"/></g><defs><clipPath id="clip0_2183_12733"><rect width="24" height="24" fill="white"/></clipPath></defs></svg>');
    width: 24px;
    height: 24px;
    display: inline-block;
}


.btn.add-to-cart {
    width: 100%;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
}

.product-add-to-cart .qty_wrap {
    display: none;
}

.product_first_section .product-information {
    padding: 24px 0;
}

.product_first_section .current-price {
    padding-top: 10px;
}

.product_first_section .current-price span.price{
    font-family: "Plus Jakarta Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%; /* 33.6px */
}


@media screen and (max-width: 768px) {

    .product_name_wrap .product_name {
        color: var(--black);
        text-transform: none;
        font-family: "Plus Jakarta Sans";
        font-size: 32px;
        font-style: normal;
        font-weight: 500;
        line-height: 120%; /* 57.6px */
        letter-spacing: 0.48px;
        margin: 0;
    }


}

/* PRODUCT : RELATED */
.product_third_section {
    background-color: var(--light-blue-02);
    padding: 56px 0;
}

.strelatedproducts_container .products_slider {
    display: flex;
    flex-direction: column;
    row-gap: 80px;
}

.strelatedproducts_container {
    margin-bottom: 0;
}

.strelatedproducts_container .products_slider .subtitle{
    color: var(--black);
    font-family: "DM Sans";
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 21px */
    letter-spacing: 0.7px;
    text-transform: uppercase;
}

@media screen and (max-width: 768px) {
    .strelatedproducts_container {
        padding:  32px 20px 32px 20px;
        background: var(--light-blue-02);
    }

    .strelatedproducts_container header{
        padding:  0 20px;
        background: var(--light-blue-02);
    }

    .strelatedproducts_container .products_slider {
        row-gap: 48px;
        padding: 0;
    }

    .strelatedproducts_container .container {
        padding: 0;
    }
}

/* PRODUCT : REVIEW */
.aa-product-reviews {
    padding: 56px 0;
}

@media screen and (max-width: 768px) {
    .aa-product-reviews {
        padding: 32px 0 64px;
    }
}


/* PRODUCT : VARIANT */

.aa-product-variants {
    margin-bottom: 20px;
}

.aa-product-variants ul {
    display: flex;
    align-items: flex-start;
    gap: 8px;
}

.aa-product-variants .control-label{
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 27px */
    margin-bottom: 16px;
}

.aa-product-variants .product-variants-item ul li {
    margin: 0;
}

.aa-product-variants .product-variants-item ul li .input-color:checked+span {
    border: 2px solid #007EBC;
    position: relative;
}

.aa-product-variants .product-variants-item ul li .input-color:checked+span::before {
    position: absolute;
    content: "";
    display: inline-block;
    width: 14px;
    height: 14px;
    top: 6px;
    right: 6px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="14" height="14" viewBox="0 0 14 14" fill="none"><circle cx="7" cy="7" r="7" fill="%230075BF"/><path d="M3 7.5L4.86667 10L10 5" stroke="white" stroke-linecap="round"/></svg>');
    background-repeat: no-repeat;
    background-size: contain;
}

.aa-product-variants .product-variants-item ul li .input-color:hover+span {
    border: 2px solid #004778;
}

.aa-product-variants .product-variants-item .color{
    width: 72px;
    height: 72px;
    border-radius: 8px;
    background-color: var(--white);
    background-position: center center;
}

/* PRODUCT : VARIANT CUSTOM */

.aa-product-variants ul.aa-variants-group-radio {
    flex-direction: column;
    gap: 0;
}

.aa-product-variants .product-variants-item ul.aa-variants-group-radio li {
    width: 100%;
}


/* Structure principale */
.aa-variants-group-radio.aa-variants-modern {
    border: 1px solid var(--grey-dark);
    border-radius: 8px;
    padding: 0;
    list-style: none;
    background: white;
}

.aa-variants-modern .aa-variant-item {
    position: relative;
    border-bottom: 1px solid var(--grey-dark);
    cursor: pointer;
}

.aa-variants-modern .aa-variant-item:last-child {
    border-bottom: none;
    border-radius: 0 0 8px 8px;
}

.aa-variants-modern .aa-variant-item:first-child {
    border-radius: 8px 8px 0 0 ;
}

.aa-variants-modern .aa-variant-item:hover {
    background: var(--light-blue-02);
}

/* L'input radio reste invisible mais couvre tout le li */
.aa-variants-modern .input-radio {
    position: absolute;
    opacity: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    cursor: pointer;
    z-index: 2;
    top: 0;
    left: 0;
}

/* Masquer l'ancien radio-label mais le garder pour le JS */
.aa-variants-modern .radio-label {
    display: none !important;
}

/* Le nouveau contenu visuel */
.aa-variant-content {
    display: flex;
    align-items: center;
    padding: 16px 20px;
    position: relative;
    z-index: 1;
    pointer-events: none;
}

/* Icône */
.aa-variant-icon {
    width: 40px;
    margin-right: 16px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Informations du variant */
.aa-variant-info {
    flex: 1;
    display: flex;
    flex-direction: column;
}

.aa-variant-title {
    color: var(--Black, #0D0D0D);
    font-size: 16px;
    font-weight: 600;
    line-height: 150%; /* 24px */
    margin-bottom: 4px;
}

.aa-variant-description {
    color: var(--blue);
    font-family: "DM Sans";
    font-size: 14px;
    font-weight: 600;
    line-height: 150%; /* 21px */
}

/* Prix */
.aa-variant-price {
    font-weight: 700;
    font-size: 18px;
    color: #333;
}

/* État sélectionné */
.aa-variants-modern .input-radio:checked ~ .aa-variant-content {
    border: 2px solid var(--blue);
    border-radius: 8px;
    background-color: var(--white);
    width: calc(100% + 10px);
    padding: 15px; /* +10px de padding */
    margin: -5px; /* -10px de margin pour compenser */
}

/* État cliqué (ajouté par le JS existant) */
.aa-variants-modern .st-input-clicked .aa-variant-content {
    background-color: #e3f2fd;
}

/* ===== SYSTÈME DE LOADING ===== */
.aa-variants-modern .st-input-loading {
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(255, 255, 255, .8);
    z-index: 10;
    cursor: default;
    display: none;
    text-align: center;
    overflow: hidden;
    align-items: center;
    justify-content: center;
    color: #004778;
}

.aa-variants-modern .st-input-clicked .st-input-loading {
    display: flex !important;
}

/* États indisponibles */
.aa-variants-modern .st_unavailable_combination {
    opacity: 0.5;
}

.aa-variants-modern .st_unavailable_combination .input-radio {
    cursor: not-allowed;
}

/* Responsive */
@media (max-width: 768px) {
    .aa-variant-content {
        padding: 12px 16px;
    }
    
    .aa-variant-icon {
        width: 32px;
        margin-right: 12px;
    }
    
    .aa-variant-title {
        font-size: 14px;
    }
    
    .aa-variant-description {
        font-size: 12px;
    }
    
    .aa-variant-price {
        font-size: 16px;
    }
}


/* ACCOUNT */

.list-group-item {
    border: none;
    padding: 2px 0;
}

.list-group-item a{
    color: var(--black) ;
    font-family: "DM Sans";
    font-size: 16px;
    font-style: normal;;
    padding: 8px;
    border-radius: 8px;
    display: block;
    width: 100%;
}

.list-group-item a:hover{
    background-color: var(--light-blue);

}

.list-group-item a i{
    color: var(--blue) ;
}

.myacount_dashbord_list .list-group-item,
.myacount_dashbord_list .list-group-item:first-child, 
.myacount_dashbord_list .list-group-item:last-child {
    border-radius: 8px;
    display: flex;
    align-items: center;
    justify-content: center;
}

@media (min-width: 992px) {
  .myacount_dashbord_list .list-group-item,
    .myacount_dashbord_list .list-group-item:first-child, 
    .myacount_dashbord_list .list-group-item:last-child  {
    display: none;
  }
}

/* authentication */
.from_blcok {
    border-color: var(--grey);
    border-radius: 8px;
    padding: 12px 8px;
}

/* CONTACT */

body#contact  .breadcrumb_spacing {
    height: 0;
}
.aa-contact {

    background-color: var(--light-blue-02);
    padding: 32px 0;
    
}

.aa-contact .contact-form {
    padding: 32px;
    border-radius: 8px;
    border: 1px solid rgba(233, 233, 233, 0.30);
    background: var(--white);
}



.aa-contact .aa-content {
    max-width: 600px;   
    display: flex; 
    gap: 32px;
    flex-direction: column;
    align-items: flex-start;
    flex-wrap: nowrap;
}

.aa-contact .aa-title {
       
}

.aa-contact .aa-title p {
    text-transform: uppercase;
    margin-bottom: 0;
}

.aa-contact .aa-title h1 {
    
}

.aa-contact .aa-content > p {
    font-size: 16px;
    margin: 0;
}

.aa-contact .aa-content ul {
    margin: 0;
}

/* Mobile */
@media (max-width: 768px) {
    .aa-contact .aa-content {
        margin-bottom: 24px;
        gap: 24px;
    }

    .aa-contact .contact-form {
        padding:  20px;
    }
}



/*  CARTE de Paiement */
.payment-card {
    transition: all 0.3s ease;
}

.payment-card:hover {
    box-shadow: 0 2px 8px rgba(0,0,0,0.1);
}

#card-element {
    border: 1px solid #ccc;
    border-radius: 4px;
    padding: 10px;
}

#card-element.StripeElement--focus {
    border-color: #007bff;
    box-shadow: 0 0 0 2px rgba(0,123,255,0.25);
}

.lcb-payment-customer .card {
    
}

/* Cartes de paiement modernes */
.payment-card-modern {
    background: var(--white);
    border: 1px solid var(--blue);
    border-radius: 8px;
    padding: 0;
    overflow: hidden;
    transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
    box-shadow: 0 4px 20px rgba(0, 0, 0, 0.1);
    position: relative;
}

.payment-card-modern::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: linear-gradient(135deg, rgba(255,255,255,0.1) 0%, transparent 50%);
    pointer-events: none;
}

.payment-card-modern:hover {
    transform: translateY(-2px);
    box-shadow: 0 8px 30px rgba(0, 0, 0, 0.15);
}

.card-content {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 20px;
    position: relative;
    z-index: 1;
}

.card-left {
    display: flex;
    align-items: center;
    flex: 1;
}

.card-icon {
    margin-right: 16px;
}

.brand-logo {
    width: 50px;
    height: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 6px;
    font-size: 10px;
    font-weight: bold;
    color: white;
    text-shadow: 0 1px 2px rgba(0,0,0,0.3);
    background: var(--dgrad-bleu-AA);
}


.card-details {
    color: var(--black);
}

.card-number {
    font-size: 16px;
    font-weight: 600;
    margin-bottom: 4px;
    letter-spacing: 1px;
}

.card-meta {
    display: flex;
    align-items: center;
    gap: 8px;
}

.expiry {
    font-size: 12px;
    opacity: 0.9;
}

.status-badge {
    font-size: 10px;
    padding: 2px 8px;
    border-radius: 12px;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 0.5px;
}

.status-badge.valid {
    background: rgba(34, 197, 94, 0.2);
    color: #22c55e;
    border: 1px solid rgba(34, 197, 94, 0.3);
}

.status-badge.expired {
    background: rgba(239, 68, 68, 0.2);
    color: #ef4444;
    border: 1px solid rgba(239, 68, 68, 0.3);
}

.btn-delete {
    background: rgba(255, 255, 255, 0.1);
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-color: #ef4444;
    color: #ef4444;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 15px 10px;
    border-radius: 8px;
    cursor: pointer;
    transition: all 0.2s ease;
    backdrop-filter: blur(10px);
}

.btn-delete:hover {
    background: rgba(239, 68, 68, 0.8);
    border-color: #ef4444;
    color: #ffffff;
}

/* État vide */
.empty-state {
    text-align: center;
    padding: 40px 20px;
    color: #6b7280;
}

.empty-icon {
    margin-bottom: 16px;
    opacity: 0.5;
}

.empty-state h4 {
    margin-bottom: 8px;
    color: #374151;
}

.empty-state p {
    margin: 0;
    font-size: 14px;
}

/* Formulaire d'ajout amélioré */
.card-body #card-element {
    border: 2px solid #e5e7eb;
    border-radius: 12px;
    padding: 16px;
    background: #f9fafb;
    transition: all 0.2s ease;
}

.card-body #card-element.StripeElement--focus {
    border-color: var(--blue);
    background: white;
    box-shadow: 0 0 0 3px rgba(102, 126, 234, 0.1);
}

/* Responsive */
@media (max-width: 576px) {
    .card-content {
        padding: 16px;
    }
    
    .card-number {
        font-size: 14px;
    }
    
    .brand-logo {
        width: 40px;
        height: 26px;
        font-size: 9px;
    }
}

/* CMS */

/* CMS FAQ */

.aa-cms-full_width {
    background-color: var(--light-blue-02);
    padding: 32px 0;
}

.aa-cms-full_width .cms_content{
    padding: 56px;
    background-color: var(--white);
    border-radius: 8px;
}

.aa-cms-faq {
    margin: 20px auto;
    font-family: Arial, sans-serif;
    display: flex;
    flex-direction: row;
    gap: 64px;
}

.aa-cms-faq .title {
    width: 100%;
    max-width: 290px;
}

.aa-cms-faq .faq-content {
    width: 100%;
}

.aa-cms-faq h3 {
    border-top: 1px solid #000000;
    padding: 20px 50px 20px 0;
    margin: 0;
    cursor: pointer;
    position: relative;
    
    font-family: "DM Sans";
    font-size: 24px;
    font-style: normal;
    font-weight: 600;
    line-height: 140%;
    color: var(--black);

    transition: all 0.2s ease;
}

.aa-cms-faq .faq-content h3:first-of-type {
    border-top: none;
}

.aa-cms-faq p,
.aa-cms-faq li {
    font-size: 16px;
}

.aa-cms-faq li {
    list-style: none;
    padding: 0;
    position: relative;
    display: flex;
    font-size: 16px;
    font-style: normal;
    font-weight: 400;
    line-height: 150%; /* 24px */
    gap: 8px;
}

.aa-cms-faq li::before {
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><g clip-path="url(%23clip0_2183_12733)"><path d="M9.00016 16.1701L4.83016 12.0001L3.41016 13.4101L9.00016 19.0001L21.0002 7.00009L19.5902 5.59009L9.00016 16.1701Z" fill="%23323232"/></g><defs><clipPath id="clip0_2183_12733"><rect width="24" height="24" fill="white"/></clipPath></defs></svg>');
    width: 24px;
    height: 24px;
    display: inline-block;
}

.aa-cms-faq p:last-of-type {
    padding-bottom: 10px;
}

.aa-cms-faq h3::after {
    content: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.6023 8.86784C11.822 8.64817 12.1781 8.64817 12.3978 8.86784L18.1326 14.6027C18.3523 14.8224 18.3523 15.1785 18.1326 15.3982L17.8674 15.6634C17.6478 15.883 17.2916 15.883 17.0719 15.6634L12 10.5914L6.92808 15.6634C6.7084 15.883 6.3523 15.883 6.13263 15.6634L5.86743 15.3982C5.64775 15.1785 5.64775 14.8224 5.86743 14.6027L11.6023 8.86784Z" fill="black"/></svg>');
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translateY(-50%);
    transition: transform 0.3s ease;
}

.aa-cms-faq h3.collapsed::after {
    transform: translateY(-50%) rotate(180deg);
}

.aa_single_column {
    width: 100%;
    max-width: 100%;
}

@media screen and (max-width: 768px) {

    .aa_single_column .page-content{
        padding: 0 20px;
    }

    .aa_single_column .container .page-content{
        padding: 0;
    }

    .aa-cms-full_width {
        padding: 20px 0;
    }

    .aa-cms-full_width .cms_content{
        padding: 20px;
    }

    .aa-cms-faq {
        margin: 20px auto 0;
        flex-direction: column;
        gap: 12px;
    }

    .aa-cms-faq .title {
        max-width: 100%;
    }

    .aa-cms-faq h3 {
        padding: 20px 30px 20px 0;
        font-size: 18px;
    }
    .aa-cms-faq p:last-of-type {
        padding-bottom: 0;
    }

}



/* SUBSCRIPTION VARIANT */

.aa-subscription-product-variant {
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
    width: 100%;
}

.aa-subscription-product-variant strong {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 24px */   
}
.aa-subscription-product-variant span {
    display: flex;
}
.aa-subscription-product-variant span.aa-conso {
    color: var(--blue);
    font-size: 14px;
    font-weight: 600;
    display: flex;
    flex-direction: row;
    flex-wrap: nowrap;
    align-items: center;
    gap: 4px;
}


.aa-subscription-product-variant .info-price {
    display: flex;
    flex-direction: column;
    gap: 5px;
}
.aa-subscription-product-variant .info-price .price-per-month{
    font-size: 18px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 27px */
}

.aa-subscription-product-variant .info-price .billing-info{
    color: var(--blue);
    font-size: 12px;
    font-style: normal;
    font-weight: 600;
    line-height: 150%; /* 18px */
}

/* Product : Advantage */

/* Desktop styles */
.aa-product-advantages {
    display: flex;
    width: 100%;
    padding: 20px;
    align-items: center;
    gap: 8px;
    border-radius: 8px;
    background-color: var(--white);
    border: 1px solid rgba(233, 233, 233, 0.90);
}

.aa-product-advantages .img {
    width: 38px;
    min-width: 38px;
    height: 38px;
    display: flex;
    background-color: var(--blue);
    border-radius: 8px;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.aa-content {
  display: flex;
  flex-direction: column;
  width: 100%;
}

.aa-content .highlight {
    color: #000;
}

.aa-content span {
    color: var(--grey-dark);
    font-size: 16px;
}

.aa-prix {
    font-size: 16px;
    display: flex;
    gap: 8px;
}


/* Mobile breakpoint */
@media (max-width: 768px) {
  
  .aa-prix {
    display: none; 
  }
}

.pro_gallery_kk_item {
    background-color: #FFFFFF;
}

.s_title_block {
    height: 2em;
}