/* ==========================================================================
Header Module Styles
========================================================================== */
@import url('https://fonts.googleapis.com/css2?family=Quicksand:wght@300..700&display=swap');

.header-container-wrapper {
    position:sticky;
    top:0px;
    z-index:10000;
}
#header-dw_header_2025_main {
    font-family: "Quicksand", sans-serif;
    font-optical-sizing: auto;
    width: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: flex-start;
    color: var(--col-asys-blue);
    position: sticky;
    top: 0;
    background-color: white; /* Assure que le header a un fond quand il est sticky */
    border-bottom: 2px solid var(--col-asys-lightblue);
    z-index: 100; /* S'assure qu'il reste au-dessus du contenu */
}

/* ==========================================================================
Pre-navigation Announcement Banner
========================================================================== */
.dw_header_2025_pre_nav_announcement {
    cursor:pointer;
    width: 100%;
    padding: 5px 9px;
    z-index: 101;
    color: var(--col-asys-blue);
    font-size: 10px;
    transition: color 0.3s ease, background-color 0.3s ease;
    /* NOUVEAU : Utilise flexbox pour aligner le contenu et le bouton de fermeture */
    display: flex;
    align-items: center;
    justify-content: center; /* Centrer le contenu par défaut sur desktop */
    position: relative; /* Pour positionner le bouton de fermeture sur desktop si besoin */
}

.dw_header_2025_pre_nav_announcement:hover {
    color: var(--col-asys-lightblue);
    background-color: var(--col-asys-blue);
}

.dw_header_2025_pre_nav_announcement_content {
    max-width: 1170px;
    margin: 0 auto;
    display: flex;
    align-items: center;
    justify-content: center; /* Centrer le contenu par défaut */
    gap: 10px;
    flex-wrap: wrap;
    flex-grow: 1; /* Permet au contenu de prendre l'espace disponible */
}

.dw_header_2025_pre_nav_bordered_text {
    padding: 2px 5px;
    text-transform: uppercase;
    border-radius: 60px;
    font-weight: bold;
    white-space: nowrap;
    transition:all .3s ease-out;
}

.dw_header_2025_pre_nav_simple_text {
    font-size:12px;
    font-weight:700;
    transition:all .3s ease-out;
}

.dw_header_2025_pre_nav_link {
    display: inline-flex;
    align-items: center;
    gap: 5px; /* Espace entre le texte du lien et l'icône */
    text-decoration: none;
    color: var(--col-asys-blue); /* Couleur du lien */
    font-weight: bold;
    transition: color 0.2s ease;
}

.dw_header_2025_pre_nav_link_icon {
    width: auto; /* Taille de l'icône SVG */
    height: 10px;
    flex-shrink: 0; /* Empêche l'icône de rétrécir */
    stroke: currentColor; /* Utilise la couleur du texte parent */
    stroke-width: 1;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* NOUVEAU : Styles pour le bouton de fermeture du bandeau d'annonce */
.dw_header_2025_pre_nav_close_button {
    display: none; /* Caché par défaut sur desktop */
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    width: 20px; /* Taille de la zone cliquable */
    height: 20px;
    justify-content: center;
    align-items: center;
    flex-shrink: 0; /* Empêche le bouton de rétrécir */
    margin-left: 10px; /* Espace entre le contenu et le bouton */
    color: var(--col-asys-blue); /* Couleur de base de l'icône */
}

.dw_header_2025_pre_nav_close_button:hover {
    color: white; /* Couleur de l'icône au survol */
}

.dw_header_2025_pre_nav_close_button svg {
    width: 12px;
    height: 12px;
    stroke: currentColor; /* L'icône hérite de la couleur du bouton */
    transition: stroke 0.3s ease;
}

/* ==========================================================================
Main Header Container
========================================================================== */
.dw_header_2025_container {
    width: 1170px;
    height: 66px;
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 8px 0;
    box-sizing: border-box;
    position: relative; /* Ajouté pour le positionnement absolu des boutons */
}

.dw_header_2025_desktop_ctas { /* This targets the desktop CTAs */
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
}

/* --- Burger Button (Hidden by default on desktop) --- */
.dw_header_2025_burger_button {
    display: none; /* Hidden on desktop */
    position: absolute; /* Positionné relative à .dw_header_2025_container */
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    width: 30px; /* Taille de la zone cliquable */
    height: 30px;
    justify-content: center;
    align-items: center;
}

.dw_header_2025_burger_button .dw_header_2025_burger_svg {
    width: 22px; /* MODIFIÉ : Taille du SVG */
    height: 22px; /* MODIFIÉ : Taille du SVG */
    stroke: var(--col-asys-blue); /* Couleur des lignes */
    transition: stroke 0.3s ease;
}

/* Styles pour les lignes du burger */
.dw_header_2025_burger_button .burger-line {
    transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
    transform-origin: center; /* Point de rotation au centre */
}

/* Animation du burger en croix */
.dw_header_2025_burger_button.is-active .burger-line.top {
    transform: translateY(5px) rotate(45deg); /* MODIFIÉ : Ajusté pour le nouveau SVG */
}

.dw_header_2025_burger_button.is-active .burger-line.middle {
    opacity: 0;
}

.dw_header_2025_burger_button.is-active .burger-line.bottom {
    transform: translateY(-5px) rotate(-45deg); /* MODIFIÉ : Ajusté pour le nouveau SVG */
}

/* --- Close Button (Décommenté et ajusté pour ne pas avoir de bordure) --- */
.dw_header_2025_close_button {
    display: none; /* Hidden by default, JS will manage visibility */
    position: absolute;
    right: 16px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 10;
    background: none;
    border: none; /* Supprime la bordure inattendue */
    padding: 0;
    cursor: pointer;
    width: 30px;
    height: 30px;
    justify-content: center;
    align-items: center;
}

.dw_header_2025_close_button svg {
    width: 24px;
    height: 24px;
    stroke: var(--col-asys-blue);
    transition: stroke 0.3s ease;
}

/* ==========================================================================
Customer Portal
========================================================================== */
.dw_header_2025_customer_link {
    color: var(--col-asys-blue);
    font-weight:600;
    font-size:14px;
    text-decoration: none;
    transition: color 0.3s ease;
    display: inline-flex; /* Pour que le texte et le chevron soient sur la même ligne */
    align-items: center;
    gap: 5px; /* Espacement entre le texte et le chevron */
}

.dw_header_2025_customer_link .dw_header_2025_customer_link_icon {
    display: none; /* Masqué par défaut sur desktop */
    width: 8px; /* Taille de l'icône SVG */
    height: 12px;
    flex-shrink: 0;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.dw_header_2025_customer_link:hover {
    background: linear-gradient(to right, var(--color1-asys), var(--color2-asys));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    display: inline-block;
}

/* ==========================================================================
Tabs Group
========================================================================== */
.dw_header_2025_tabsGroup {
    display: flex;
    align-items: center;
    gap: 30px;
}

.dw_header_2025_tab {
    display: flex;
    align-items: center;
    /* Le gap est géré par le wrapper interne pour le desktop */
    cursor: pointer;
    padding: 10px 0;
    transition: background-color 0.3s ease;
    background-color: transparent;
}

.dw_header_2025_tab.active {
    background-color: transparent;
}

.dw_header_2025_tab_content_wrapper {
    display: flex;
    align-items: center;
    gap: 8px;
    color: var(--col-asys-blue);
    transition: color 0.3s ease;
}

.dw_header_2025_tab.active .dw_header_2025_tab_content_wrapper {
    color: var(--color2-asys);
    background: none;
}

.dw_header_2025_tab_text {
    display: inline-block;
    font-size:14px;
    font-weight:600;
}

.dw_header_2025_tab.active .dw_header_2025_tab_text {
    background: linear-gradient(to right, var(--color1-asys), var(--color2-asys));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
    display: inline-block;
    transition:all .2s ease-out;
}

/* ==========================================================================
Content Area (Dropdown Panel)
========================================================================== */
.dw_header_2025_content_area {
    display: none; /* Hidden by default, shown by JS */
    position: absolute;
    top: calc(100% + 15px);
    left: 0;
    right: 0;
    margin: 0 auto;
    width: 100%;
    z-index: 99;
    max-width: 1170px;
    border-radius: 10px;
    border: 2px solid var(--col-asys-lightblue);
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.05);
    background-color: white;
    padding: 30px;
    box-sizing: border-box;
    overflow: hidden;
    transition: opacity 0.3s ease, transform 0.3s ease;
    opacity: 0;
    transform: translateY(-10px);
    pointer-events: none;
    flex-direction: column; /* Stack content and lower banner vertically */
    justify-content: space-between; /* Push lower banner to bottom */
}

.dw_header_2025_content_area.active {
    display: flex; /* ONLY display: flex; when active */
    opacity: 1;
    transform: translateY(0);
    pointer-events: auto;
}

.dw_header_2025_content_panel {
    display: none; /* Hidden by default */
    flex-grow: 1; /* Allow content panel to grow */
    flex-direction: column; /* Stack internal elements */
    justify-content: space-between; /* Push lower banner to bottom */
}

.dw_header_2025_content_panel.active {
    display: flex; /* ONLY display: flex; when active */
    gap:21px;
}

/* ==========================================================================
Links Columns Layout
========================================================================== */
.dw_header_2025_links_columns_layout {
    display: flex; /* Default flex-direction is row */
    gap: 50px;
    justify-content: start;
    max-width: 100%;
}

.dw_header_2025_column {
    min-width: 150px;
    gap: 4px;
}

.dw_header_2025_column .column-title {
    margin-top: 0;
    margin-bottom: 4px;
    display: inline-block;
    padding: 6px 9px;
    font-size: 11px;
    border-radius: 8px;
    color: var(--col-asys-darkblue);
    text-transform: uppercase;
    font-weight: bold;
    padding: 5px 0;
    transition: background-color 0.3s ease;
    cursor: default;
}

.dw_header_2025_column .column-title.column-title-linked {
    cursor: pointer;
    padding: 6px 9px;
}

.dw_header_2025_column .column-title.column-title-linked:hover {
    background-color: var(--col-asys-lightblue);
}

.dw_header_2025_column .column-title a {
    text-decoration: none;
    color: inherit;
    display: block;
}

.dw_header_2025_column .column-links-list {
    list-style: none;
    padding: 0;
    margin: 0;
}

.dw_header_2025_column .column-links-list li {
    font-weight: bold;
    font-size: 13px;
    /* TODO supprimer si deja importé dans le theme */
    font-family: var(--font-primary) !important;
}

.dw_header_2025_column.simple .column-links-list {}

.dw_header_2025_column.double .column-links-list {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    row-gap: 1px;
    column-gap: 30px;
}

.dw_header_2025_column.triple .column-links-list {
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 10px;
}

.dw_header_2025_column_separator {
    width: 2px;
    background-color: var(--col-asys-lightblue);
}

.standard-link {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    text-decoration: none;
    color: var(--col-asys-blue);
    transition: color 0.2s ease;
    padding: 9px 12px 9px 9px;
    border-radius: 10px;
    transition:all .3s ease-out;
}

.standard-link:hover {
    background-color: var(--col-asys-lightblue);
    color:var(--col-asys-blue);
}

.standard-link .link-icon {
    width: 30px;
    height: 30px;
    object-fit:contain;
    padding:4px;
    flex-shrink: 0;
    border: 1px solid var(--col-asys-lightblue);
    border-radius: 6px;
    background:#fff;
}

.column-type-logo {
    max-width: 30%;
}

.logo-link {
    display: inline-flex;
    flex-direction: column;
    align-items: start;
    text-align: center;
    gap: 8px;
    text-decoration: none;
    font-weight:500;
    color: var(--col-asys-darkblue);
    font-size: 11px;
    padding: 9px 32px 9px 9px;
    border-radius: 10px;
    border: 1px solid transparent;
    transition: all 0.2s ease;
}

.logo-link:hover {
    background-color: var(--col-asys-lightblue);
    color:var(--col-asys-blue);
}

.logo-link .logo-image {
    max-width:168px;
}

/* ==========================================================================
Cards Layout
========================================================================== */
.dw_header_2025_card_panel_intro_text {
    font-size: 11px;
    text-align: center;
    color: var(--col-asys-darkblue);
    text-transform: uppercase;
    font-weight:700;
}

.dw_header_2025_cards_layout {
    display: flex; /* Changed from grid to flex */
    flex-wrap: wrap; /* Allow cards to wrap */
    gap: 18px;
    justify-content: center; /* Center cards if they don't fill the row */
}

.dw_header_2025_card {
    display: block; /* Pour que le lien englobe tout */
    text-decoration: none;
    color: var(--col-asys-blue); /* Couleur par défaut, sera écrasée pour le titre */
    border-radius: 10px; /* Border-radius de 20px */
    overflow: hidden; /* Important pour que le border-radius s'applique aux enfants */
    transition: box-shadow 0.2s ease, transform 0.2s ease;
    border: none; /* Supprime la bordure par défaut de la carte */
    flex: 0 0 calc(16.666% - 15px); /* Approx 6 cards per row, adjust as needed */
    max-width: calc(16.666% - 15px); /* Ensure max width for flex item */
    box-sizing: border-box; /* Include padding/border in width calculation */
}
.dw_header_2025_card:hover {

}

/* Wrapper pour l'image et le titre superposé */
.dw_header_2025_card_visual {
    position: relative;
    width: 100%;
    /* NOUVEAU : Utilise aspect-ratio pour conserver la proportion 170:76 */
    aspect-ratio: 170 / 76; /* Largeur / Hauteur */
    /* Supprime height: 150px; car aspect-ratio gère la hauteur */
    overflow: hidden;
    border-radius: 10px;
}

.dw_header_2025_card_visual .card-image {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    z-index: 1;
    border-radius: 10px;
}

/* Filtre bleu transparent */
.dw_header_2025_card_visual::after {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: rgba(150, 172, 225, 0.6); /* R:150, G:172, B:225 */
    z-index: 2;
    border-radius: 10px;
    transition: background-color 0.3s ease;
}

/* Effet de survol sur le filtre */
.dw_header_2025_card:hover .dw_header_2025_card_visual::after {
    /* Augmente l'opacité au survol, par exemple à 80% */
    background-color: background-blend-mode: screen;
    background: #0F2B6E33;
    background: #53628699;

}


.dw_header_2025_card .card-title {
    position: absolute;
    top: 50%;
    left: 50%; 
    transform: translate(-50%, -50%);
    width: calc(100% - 30px);
    margin: 0;
    color: white; 
    z-index: 3; 
    text-align: center;
    line-height:1.3;
    font-size:16px;
    font-weight:bold;
}

/* ==========================================================================
Card Panel CTA (Bouton en dessous des cartes)
========================================================================== */
.dw_header_2025_card_panel_cta_wrapper {
    text-align: center;
}

.dw_header_2025_card_panel_cta {
    display: inline-flex;
    align-items: center;
    gap: 5px; 
    padding: 3px 8px;
    background-color: transparent;
    color: var(--col-asys-blue);
    border: 1px solid var(--col-asys-blue);
    border-radius: 60px;
    font-weight: bold;
    font-size:11px;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.dw_header_2025_card_panel_cta_icon {
    width: 6px;
    height: 8px;
    flex-shrink: 0;

}

.dw_header_2025_card_panel_cta:hover {
    background-color: var(--col-asys-blue);
    color: var(--col-asys-lightblue);
    border-color: var(--col-asys-blue);
}

/* ==========================================================================
Lower Banner Styles
========================================================================== */
.dw_header_2025_lower_banner {
    background-color: var(--col-asys-lightblue);
    padding: 14px; /* Keep desktop padding */
    border-radius: 10px;
    margin-top: auto;
    /* MODIFIÉ : Alignement horizontal pour desktop */
    display: flex;
    align-items: center;
    gap: 19px; /* Espace entre le texte et le contenu collapsible */
    width: 100%;
    box-sizing: border-box;
}

.dw_header_2025_lower_banner_text_wrapper { /* New wrapper for text and toggle */
    display: flex;
    align-items: center;
    gap: 10px; /* Espace entre le texte et le toggle */
}

.dw_header_2025_lower_banner_text {
    color: var(--col-asys-darkblue);
    font-size: 12px;
    font-weight: bold;
    white-space: nowrap; /* Keep on one line for desktop */
}

.dw_header_2025_lower_banner_toggle { /* New toggle button */
    display: none; /* Hidden by default on desktop */
    background: none;
    border: none;
    padding: 0;
    cursor: pointer;
    width: 20px;
    height: 20px;
    flex-shrink: 0;
    justify-content: center;
    align-items: center;
}

.dw_header_2025_lower_banner_toggle_icon {
    width: 8px;
    height: 12px;
    stroke: var(--col-asys-blue); /* Default color */
    transition: transform 0.3s ease;
    transform: rotate(0deg); /* Default: points right */
}

.dw_header_2025_lower_banner_toggle[aria-expanded="true"] .dw_header_2025_lower_banner_toggle_icon {
    transform: rotate(90deg); /* Expanded: points down */
}

.dw_header_2025_lower_banner_collapsible_content { /* New collapsible content wrapper */
    width: 100%; /* Prend la largeur restante sur desktop */
    /* On desktop, it's always visible, so no max-height limit */
    display: flex; /* Changed from default block to flex */
    flex-direction: row; /* Alignement horizontal des logos/liens et CTA sur desktop */
    align-items: center;
    gap: 19px; /* Espace entre les logos/liens et le CTA */
    overflow: visible; /* Visible on desktop */
    max-height: none; /* No max-height limit on desktop */
    transition: max-height 0.3s ease-out; /* For smooth transition */
}

.dw_header_2025_lower_banner_logos {
    display: flex;
    gap: 19px;
    flex:auto;
    align-items: center;
    justify-content: space-around;
}

.dw_header_2025_lower_banner_logo_img {
    height: 20px;
    width: auto;
    max-width:100%;
    object-fit:contain;
}

.dw_header_2025_lower_banner_links {
    display: flex;
    gap: 25px;
    width: 100%;
}

.dw_header_2025_lower_banner_link {
    display: inline-flex;
    align-items: center;
    gap: 5px;
    text-decoration: none;
    color: var(--col-asys-blue); 
    font-weight: bold; 
    font-size: 11px;
    transition: all 0.3s ease;
}

.dw_header_2025_lower_banner_link:hover {
    background: linear-gradient(to right, var(--color1-asys), var(--color2-asys));
    -webkit-background-clip: text;
    background-clip: text;
    color: transparent;
}

.dw_header_2025_lower_banner_link:hover svg path {
    stroke:#FF554F;
}

.dw_header_2025_lower_banner_link_icon {
    width: 5px;
    height: 8px;
    flex-shrink: 0;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.dw_header_2025_lower_banner_cta_wrapper {
    width: 100%;
    text-align: start;
    width:fit-content;
    align-items:center;
}
.dw_header_2025_lower_banner_cta_wrapper>a {
    align-items:center;
}

.dw_header_2025_lower_banner_cta {
    display: inline-flex;
    align-items: start;
    gap: 5px;
    padding: 3px 8px;
    background-color: transparent;
    color: var(--col-asys-blue);
    border: 1px solid var(--col-asys-blue);
    border-radius: 60px;
    font-weight: bold;
    font-size: 11px;
    text-decoration: none;
    transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
}

.dw_header_2025_lower_banner_cta:hover {
    background-color: var(--col-asys-blue);
    color: var(--col-asys-lightblue);
    border-color: var(--col-asys-blue);
}

.dw_header_2025_lower_banner_cta_icon {
    width: 6px;
    height: 8px;
    flex-shrink: 0;
}


/* ==========================================================================
Font Imports & Variables
========================================================================== */
@font-face {
    font-family: 'Quicksand';
    src: url('https://7482495.fs1.hubspotusercontent-na1.net/hubfs/7482495/Font%20Family/Quicksand/Quicksand_Light.otf') format('otf');
    font-weight: 400;
    font-style: normal;
    font-display: swap;
}

@font-face {
    font-family: 'Quicksand';
    src: url('https://7482495.fs1.hubspotusercontent-na1.net/hubfs/7482495/Font%20Family/Quicksand/Quicksand_Bold.otf') format('otf');
    font-weight: 700;
    font-display: swap;
}

:root {
    --font-primary: 'Quicksand', sans-serif;
    /* Assure-toi que ces variables sont définies dans ton thème ou ici */
    --col-asys-blue: #0056b3;
    --col-asys-lightblue: #e0f2f7;
    --col-asys-darkblue: #003366;
    --col-asys-shadow: rgba(0, 0, 0, 0.1);
    --color1-asys: #0056b3; /* Example color, adjust as needed */
    --color2-asys: #003366; /* Example color, adjust as needed */
}

@media (min-width:1190px) {
    .dw_header_2025_home_logo_link img {
        height:35px;
        width:auto;
    }
    img.logo-image {
        height:auto!important;
        width:162px!important;
    }
    .dw_header_2025_customer_link svg {
        display:none;
    }

    .logo-link {
        width:100%;
        text-align:left;
    }

}

/* ==========================================================================
Mobile Specific Styles (Media Queries)
========================================================================== */
@media (max-width: 1190px) {
    :root {
        --mobile-header-height: 66px;
    }

    /*
    * DEBUG
    */
    body.no-scroll {
        overflow: hidden;
    }

    .dw_header_2025_pre_nav_simple_text {
        font-size:10px;
        line-height:1.2;
    }
    .dw_header_2025_pre_nav_link_icon {
        height: 8px;
    }
    
    .dw_header_2025_pre_nav_link svg {
        display:none;
    }

    .dw_header_2025_lower_banner_collapsible_content {
        max-height:none;
    }

    .dw_header_2025_lower_banner_logos {
        display:none;
    }
    .dw_header_2025_tabsGroup {
        gap:0px!important;
    }
    .dw_header_2025_lower_banner_link {
        justify-content:space-between;
    }
    .dw_header_2025_customer_portal_wrapper svg {
        display:none;
    }


    /* MODIFIÉ : Le bandeau d'annonce est maintenant visible sur mobile */
    .dw_header_2025_pre_nav_announcement {
        display: flex; /* S'assure qu'il est visible */
        padding: 9px 20px; /* Nouveau padding vertical 9px, horizontal 20px */
        justify-content: space-between; /* Pousse le contenu à gauche et le bouton à droite */
    }

    .dw_header_2025_pre_nav_announcement_content {
        justify-content: center; /* Aligne le contenu à gauche */
        flex-wrap: nowrap; /* Empêche le contenu de passer à la ligne */
        overflow: hidden; /* Cache le texte qui dépasse */
        text-overflow: ellipsis; /* Ajoute des points de suspension si le texte est tronqué */
    }

    /* NOUVEAU : Affiche le bouton de fermeture du bandeau d'annonce sur mobile */
    .dw_header_2025_pre_nav_close_button {
        display: flex; /* Affiche le bouton */
        position: static; /* Fait partie du flux flexbox */
        transform: none; /* Supprime toute transformation */
        margin-left: 10px; /* Ajoute un peu d'espace par rapport au contenu */
        position:absolute; 
        right:10px;
        top:10px;
    }

    .dw_header_2025_pre_nav_close_button svg {
        stroke: currentColor; /* L'icône hérite de la couleur du bouton */
    }

    .dw_header_2025_container {
        width: 100%;
        padding: 8px 16px;
        height: var(--mobile-header-height);
        position: relative;
    }

    /* Masque les éléments de navigation et CTA desktop dans l'en-tête principal */
    .dw_header_2025_container .dw_header_2025_tabsGroup,
    .dw_header_2025_container .dw_header_2025_desktop_ctas {
        display: none;
    }

    .dw_header_2025_burger_button {
        display: flex;
        position: absolute;
        right: 16px;
        top: 50%;
        transform: translateY(-50%);
        z-index: 10;
        background: none;
        border: none;
        padding: 0;
        cursor: pointer;
        width: 30px;
        height: 30px;
        justify-content: center;
        align-items: center;
    }

    .dw_header_2025_burger_button .dw_header_2025_burger_svg {
        width: 22px;
        height: 22px;
        stroke: var(--col-asys-blue);
        transition: stroke 0.3s ease;
    }

    /* Styles pour les lignes du burger */
    .dw_header_2025_burger_button .burger-line {
        transition: transform 0.3s ease-in-out, opacity 0.3s ease-in-out;
        transform-origin: center; /* Point de rotation au centre */
    }

    /* Animation du burger en croix */
    .dw_header_2025_burger_button.is-active .burger-line.top {
        transform: translateY(5px) rotate(45deg); /* MODIFIÉ : Ajusté pour le nouveau SVG */
    }

    .dw_header_2025_burger_button.is-active .burger-line.middle {
        opacity: 0;
    }

    .dw_header_2025_burger_button.is-active .burger-line.bottom {
        transform: translateY(-5px) rotate(-45deg); /* MODIFIÉ : Ajusté pour le nouveau SVG */
    }

    .dw_header_2025_content_area {
        position: fixed; /* Reste fixed, mais maintenant par rapport à un header sticky */
        /* SUPPRIMÉ : top: var(--mobile-header-height); */
        /* SUPPRIMÉ : height: calc(100vh - var(--mobile-header-height)); */
        left: 0;
        width: 100%;
        max-width: 100%;
        border-radius: 0;
        border: none;
        box-shadow: none;
        background-color: white;
        padding: 32px 32px;
        overflow-y: auto; /* Permet le défilement du conteneur principal */
        transform: translateX(100%);
        opacity: 1;
        pointer-events: auto;
        transition: transform 0.3s ease-in-out;
        z-index: 99; /* Inférieur au z-index du header pour qu'il soit en dessous */
        display: flex;
        flex-direction: column;
        justify-content: flex-start;
    }

    .dw_header_2025_content_area.active {
        transform: translateX(0);
    }

    .dw_header_2025_content_area.panel-active > .dw_header_2025_tabsGroup,
    .dw_header_2025_content_area.panel-active > .dw_header_2025_desktop_ctas {
        display: none;
    }

    .dw_header_2025_content_area .dw_header_2025_tabsGroup {
        flex-direction: column;
        width: 100%;
        gap: 30px; /* MODIFIÉ */
        margin-bottom: 50px; /* MODIFIÉ */
    }

    .dw_header_2025_content_area .dw_header_2025_tab {
        width: 100%;
        padding: 15px 0;
        border-bottom: none; /* MODIFIÉ : Pas de séparateur */
        background-color: transparent;
        cursor: pointer;
        display: block;
    }

    .dw_header_2025_content_area .dw_header_2025_tab:last-of-type {
        border-bottom: none;
    }

    .dw_header_2025_content_area .dw_header_2025_tab_content_wrapper {
        display: flex;
        align-items: center;
        justify-content: space-between;
        width: 100%;
        /* color: var(--col-asys-blue); */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        gap: 8px;
    }

    .dw_header_2025_content_area .dw_header_2025_tab_text {
        text-align: left;
        /* color: var(--col-asys-blue); */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        /* background: none; */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        /* -webkit-background-clip: unset; */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        /* background-clip: unset; */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        font-size: 21px; /* AJOUTÉ */
    }

    .dw_header_2025_content_area .dw_header_2025_tab svg {
        transform: rotate(-90deg);
        transition: transform 0.3s ease;
    }

    .dw_header_2025_content_area .dw_header_2025_desktop_ctas {
        flex-direction: column;
        width: 100%;
        gap: 30px; /* MODIFIÉ */
        margin-bottom: 30px;
    }

    .dw_header_2025_content_area .dw_header_2025_customer_portal_wrapper {
        width: 100%;
    }

    .dw_header_2025_content_area .dw_header_2025_customer_link {
        text-align: left;
        padding: 15px 0;
        font-size:21px;
        border-bottom: 1px solid var(--col-asys-lightblue);
        display: flex; /* MODIFIÉ : Pour aligner le texte et le chevron */
        justify-content: space-between; /* MODIFIÉ : Pour pousser le chevron à droite */
        align-items: center; /* MODIFIÉ : Pour centrer verticalement */
        /* color: var(--col-asys-blue); */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
    }

    .dw_header_2025_content_area .dw_header_2025_customer_link .dw_header_2025_customer_link_icon {
        display: block; /* AJOUTÉ : Rendre le chevron visible sur mobile */
        /* transform: rotate(-90deg); */ /* SUPPRIMÉ : Le SVG est déjà un chevron droit */
    }

    .dw_header_2025_customer_link svg {
        transform:rotate(-90deg);
    }

    .dw_header_2025_content_area .dw_header_2025_customer_link:hover {
        /* background: none; */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        /* -webkit-background-clip: unset; */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        /* background-clip: unset; */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
        /* color: var(--col-asys-darkblue); */ /* SUPPRIMÉ : Permet au dégradé de s'appliquer */
    }

    .dw_header_2025_content_area .dw_header_2025_demo_cta_wrapper {
        width: 100%;
    }

    .dw_header_2025_content_area .dw_header_2025_demo_cta_wrapper .hs-cta-wrapper {
        width: 100%;
    }

    .dw_header_2025_content_area .dw_header_2025_demo_cta_wrapper .hs-cta-wrapper a.cta_button {
        text-align: center;
        padding: 15px;
        box-sizing: border-box;
        display: block;
        font-size:14px;
    }

    .dw_header_2025_content_panel {
        display: none;
        padding: 0;
        overflow-y: auto; /* Permet le défilement du panneau de contenu */
        flex-grow: 1;
        flex-direction: column;
        justify-content: flex-start;
        width: 100%;
    }

    .dw_header_2025_content_panel.active {
        display: flex;
        padding-top: 8px;
    }

    .dw_header_2025_content_area.panel-active > .dw_header_2025_tabsGroup,
    .dw_header_2025_content_area.panel-active > .dw_header_2025_desktop_ctas {
        display: none;
    }

    .dw_header_2025_content_area .mobile-panel-title {
        display: flex;
        align-items: center;
        gap: 10px;
        font-size: 16px; /* MODIFIÉ */
        font-weight: bold;
        color: var(--col-asys-darkblue); /* MODIFIÉ */
        margin-bottom: 20px;
        cursor: pointer;
    }

    .dw_header_2025_content_area .mobile-panel-title svg {
        transform: rotate(90deg);
        width: 10px;
        height: 15px;
    }

    .dw_header_2025_links_columns_layout {
        display:block;
        gap: 25px;
        max-width: 100%;
    }

    .dw_header_2025_column {
        min-width: unset;
        width: 100%;
    }

    .dw_header_2025_column:not(:first-child):has(.column-title) {
        margin-top:25px;
    }


    .dw_header_2025_column_separator {
        display: none;
    }

    .dw_header_2025_column .column-links-list {
        display: block;
    }

    .dw_header_2025_column.double .column-links-list,
    .dw_header_2025_column.triple .column-links-list {
        display: block;
    }

    .standard-link {
        padding: 8px 8px;
        font-size: 14px;
    }

    .column-type-logo {
        max-width: 100%;
    }

    .logo-link {
        /* MODIFIÉ : Alignement à gauche et direction colonne pour mobile */
        align-items: flex-start; /* Aligne le contenu (image + texte) à gauche */
        padding: 10px;
        flex-direction: column; /* Le texte sous l'image */
        gap: 10px;
        text-align: left; /* Aligne le texte lui-même à gauche */
    }

    .dw_header_2025_card_panel_intro_text {
        text-align: left;
        margin-bottom: 5px;
    }

    .dw_header_2025_cards_layout {
        flex-direction: column;
        gap: 15px;
        width: 100%;
        flex-wrap: nowrap;
    }

    .dw_header_2025_card {
        display: block;
        text-decoration: none;
        color: var(--col-asys-blue);
        border-radius: 10px;
        overflow: hidden;
        transition: box-shadow 0.2s ease, transform 0.2s ease;
        border: none;
        width: 100%;
        max-width: 100%;
        box-sizing: border-box;
    }

    .dw_header_2025_card_visual {
        position: relative;
        width: 100%;
        height: 78px;
        overflow: hidden;
        border-radius: 10px;
    }

    .dw_header_2025_card_visual .card-image {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        object-fit: cover;
        z-index: 1;
        border-radius: 10px;
    }

    .dw_header_2025_card_visual::after {
        content: '';
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-color: rgba(150, 172, 225, 0.6);
        z-index: 2;
        border-radius: 10px;
        transition: background-color 0.3s ease;
    }

    .dw_header_2025_card:hover .dw_header_2025_card_visual::after {
        background-color: background-blend-mode: screen;
        background: #0F2B6E33;
        background: #53628699;
    }


    .dw_header_2025_card .card-title {
        position: absolute;
        top: 50%;
        left: 50%; 
        transform: translate(-50%, -50%);
        width: calc(100% - 30px);
        margin: 0;
        color: white; 
        text-transform: uppercase; 
        z-index: 3; 
        text-align: center;
        font-size:16px;
        font-weight:bold;
    }

    .dw_header_2025_card_panel_cta_wrapper {
        text-align: center;
    }

    .dw_header_2025_card_panel_cta {
        display: inline-flex;
        align-items: center;
        gap: 5px; 
        padding: 3px 8px;
        background-color: transparent;
        color: var(--col-asys-blue);
        border: 1px solid var(--col-asys-blue);
        border-radius: 60px;
        font-weight: bold;
        font-size:11px;
        text-decoration: none;
        transition: background-color 0.2s ease, color 0.2s ease, border-color 0.2s ease;
    }

    .dw_header_2025_card_panel_cta_icon {
        width: 6px;
        height: 8px;
        flex-shrink: 0;

    }

    .dw_header_2025_card_panel_cta:hover {
        background-color: var(--col-asys-blue);
        color: var(--col-asys-lightblue);
        border-color: var(--col-asys-blue);
    }

    .dw_header_2025_lower_banner {
        padding: 10px 20px; /* Adjusted padding for mobile */
        /* MODIFIÉ : Alignement vertical pour mobile */
        flex-direction: column;
        align-items: flex-start;
        gap: 10px; /* Espace entre le texte et le contenu collapsible */
    }

    .dw_header_2025_lower_banner_text_wrapper { /* New wrapper for text and toggle */
        width: 100%;
        justify-content: space-between; /* Pousse le texte à gauche et le toggle à droite */
    }

    .dw_header_2025_lower_banner_text {
        white-space: normal; /* Allow text to wrap on mobile */
        flex-grow: 1; /* Permet au texte de prendre l'espace disponible */
    }

    .dw_header_2025_lower_banner_toggle {
        display: none!important; /* Show toggle button on mobile */
    }

    .dw_header_2025_lower_banner_toggle_icon {
        transform: rotate(0deg); /* Default: points right */
    }

    .dw_header_2025_lower_banner_toggle[aria-expanded="true"] .dw_header_2025_lower_banner_toggle_icon {
        transform: rotate(90deg); /* Expanded: points down */
    }
    /*
    .dw_header_2025_lower_banner_collapsible_content {

    overflow: hidden;
    flex-direction: column; 

}

    .dw_header_2025_lower_banner_collapsible_content.is-expanded {
    max-height: 500px;
}
    */

    .dw_header_2025_lower_banner_links {
        display:block;
    }
    .dw_header_2025_lower_banner_link {
        display:flex;
    }
    .dw_header_2025_lower_banner_link:not(:last-child) {
        margin-bottom:10px;
    }
    .dw_header_2025_lower_banner_logos {
        flex-wrap: wrap;
        justify-content: flex-start;
        gap: 15px;
    }

    .dw_header_2025_lower_banner_cta_wrapper {
        width: 100%;
        text-align: left;
    }
}