/* Correction du comportement mobile */
@media (max-width: 63.99rem) {
    /* FORCER le masquage complet des items FAQ par dÃ©faut en mobile */ .cd-faq__items {
        position: fixed !important;
        z-index: 1000 !important;
        height: 100% !important;
        width: 90% !important;
        top: 0 !important;
        right: 0 !important;
        background: #fff !important;
        padding: 60px 20px 20px 20px !important;
        overflow: auto !important;
        transform: translateX(100%) !important;
        /* ComplÃ¨tement hors Ã©cran */
        transition: transform 0.3s ease !important;
        box-shadow: -5px 0 15px rgba(0,0,0,0.3) !important;
        visibility: hidden !important;
        /* Masquer complÃ¨tement */
        opacity: 0 !important;
    }

    /* Afficher les items quand la classe slide-in est active */
    .cd-faq__items--slide-in {
        transform: translateX(0) !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* Bouton de fermeture mobile - MASQUÃ‰ par dÃ©faut */
    .cd-faq__close-panel {
        position: absolute !important;
        top: 10px !important;
        right: 10px !important;
        width: 40px !important;
        height: 40px !important;
        background: #6072AC !important;
        border-radius: 50% !important;
        display: none !important;
        /* MASQUÃ‰ par dÃ©faut */
        align-items: center !important;
        justify-content: center !important;
        cursor: pointer !important;
        z-index: 1001 !important;
        transition: background 0.2s ease !important;
    }

    /* Afficher le bouton UNIQUEMENT quand le panel est ouvert */
    .cd-faq__items--slide-in .cd-faq__close-panel {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* RÃ¨gles ultra-prioritaires pour le bouton de fermeture */
    html .cd-faq__items--slide-in .cd-faq__close-panel, html.js .cd-faq__items--slide-in .cd-faq__close-panel, html:not(.js) .cd-faq__items--slide-in .cd-faq__close-panel, body .cd-faq__items--slide-in .cd-faq__close-panel {
        display: flex !important;
        visibility: visible !important;
        opacity: 1 !important;
        z-index: 9999 !important;
        position: absolute !important;
        top: 10px !important;
        right: 10px !important;
    }

    .cd-faq__close-panel:hover {
        background: #4a5a8c !important;
    }

    .cd-faq__close-panel::before, .cd-faq__close-panel::after {
        content: '' !important;
        position: absolute !important;
        top: 50% !important;
        left: 50% !important;
        width: 20px !important;
        height: 2px !important;
        background: white !important;
        transform: translate(-50%, -50%) rotate(45deg) !important;
    }

    .cd-faq__close-panel::after {
        transform: translate(-50%, -50%) rotate(-45deg) !important;
    }

    /* S'assurer que le texte du bouton est masquÃ© et que les pseudo-Ã©lÃ©ments sont visibles */
    .cd-faq__close-panel {
        color: transparent !important;
        text-indent: -9999px !important;
        overflow: hidden !important;
    }

    .cd-faq__close-panel::before, .cd-faq__close-panel::after {
        z-index: 1 !important;
    }

    /* Overlay masquÃ© par dÃ©faut */
    .cd-faq__overlay {
        position: fixed !important;
        top: 0 !important;
        left: 0 !important;
        width: 100% !important;
        height: 100% !important;
        background-color: rgba(0,0,0,0.5) !important;
        visibility: hidden !important;
        opacity: 0 !important;
        transition: opacity 0.3s, visibility 0.3s !important;
        z-index: 999 !important;
    }

    .cd-faq__overlay--is-visible {
        visibility: visible !important;
        opacity: 1 !important;
    }

    /* S'assurer que les contenus FAQ ne sont pas affichÃ©s par dÃ©faut en mobile */
    .cd-faq__content {
        display: none !important;
        padding: 10px 0 !important;
    }

    /* Afficher le contenu quand la classe visible est active */
    .cd-faq__content--visible, .cd-faq__item-visible .cd-faq__content {
        display: block !important;
    }

    /* Style des dÃ©clencheurs en mobile */
    .cd-faq__trigger {
        display: block !important;
        position: relative !important;
        padding: 15px 40px 15px 0 !important;
        color: #6072AC !important;
        font-size: 1.2em !important;
        border-bottom: 1px solid #eee !important;
    }

    /* FlÃ¨ches pour les dÃ©clencheurs en mobile */
    .cd-faq__trigger::after {
        content: '+' !important;
        position: absolute !important;
        right: 15px !important;
        top: 50% !important;
        transform: translateY(-50%) !important;
        font-size: 1.5em !important;
        font-weight: bold !important;
        color: #6072AC !important;
        transition: transform 0.2s ease !important;
    }

    /* Rotation de la flÃ¨che quand ouvert */
    .cd-faq__item-visible .cd-faq__trigger::after {
        content: 'âˆ’' !important;
    }

    /* RÃˆGLES ULTRA-PRIORITAIRES pour forcer le masquage */
    html .cd-faq__items, html.js .cd-faq__items, html:not(.js) .cd-faq__items, body .cd-faq__items {
        transform: translateX(100%) !important;
        visibility: hidden !important;
        opacity: 0 !important;
    }

    /* SEULE exception : quand slide-in est actif */
    html .cd-faq__items--slide-in, html.js .cd-faq__items--slide-in, html:not(.js) .cd-faq__items--slide-in, body .cd-faq__items--slide-in {
        transform: translateX(0) !important;
        visibility: visible !important;
        opacity: 1 !important;
    }
}

*,*::after,*::before {
    box-sizing: inherit
}

* {
    font: inherit
}

html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video,hr {
    margin: 0;
    padding: 0;
    border: 0
}

html {
    box-sizing: border-box
}

body {
    background-color: hsl(0, 0%, 100%);
    background-color: var(--color-bg, white)
}

article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section,main,form legend {
    display: block
}

ol,ul {
    list-style: none
}

blockquote,q {
    quotes: none
}

button,input,textarea,select {
    margin: 0
}

.form-control::-ms-expand {
    display: none
}

textarea {
    resize: vertical;
    overflow: auto;
    vertical-align: top
}

input::-ms-clear {
    display: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

img,video,svg {
    max-width: 100%
}

[data-theme] {
    background-color: hsl(0, 0%, 100%);
    background-color: var(--color-bg, #fff);
    color: hsl(240, 4%, 20%);
    color: var(--color-contrast-high, #313135)
}

:root {
    --space-unit: 1em;
    --space-xxxxs: calc(0.125*var(--space-unit));
    --space-xxxs: calc(0.25*var(--space-unit));
    --space-xxs: calc(0.375*var(--space-unit));
    --space-xs: calc(0.5*var(--space-unit));
    --space-sm: calc(0.75*var(--space-unit));
    --space-md: calc(1.25*var(--space-unit));
    --space-lg: calc(2*var(--space-unit));
    --space-xl: calc(3.25*var(--space-unit));
    --space-xxl: calc(5.25*var(--space-unit));
    --space-xxxl: calc(8.5*var(--space-unit));
    --space-xxxxl: calc(13.75*var(--space-unit));
    --component-padding: var(--space-md)
}

:root {
    --max-width-xxs: 32rem;
    --max-width-xs: 38rem;
    --max-width-sm: 48rem;
    --max-width-md: 64rem;
    --max-width-lg: 80rem;
    --max-width-xl: 90rem;
    --max-width-xxl: 120rem
}

:root,[data-theme="default"] {
    --color-primary-darker: #6072AC;
    --color-primary-darker-h: 220;
    --color-primary-darker-s: 90%;
    --color-primary-darker-l: 36%;
    --color-primary-dark: #6072AC;
    --color-primary-dark-h: 220;
    --color-primary-dark-s: 90%;
    --color-primary-dark-l: 46%;
    --color-primary: #6072AC;
    --color-primary-h: 220;
    --color-primary-s: 90%;
    --color-primary-l: 56%;
    --color-primary-light: hsl(220, 90%, 66%);
    --color-primary-light-h: 220;
    --color-primary-light-s: 90%;
    --color-primary-light-l: 66%;
    --color-primary-lighter: hsl(220, 90%, 76%);
    --color-primary-lighter-h: 220;
    --color-primary-lighter-s: 90%;
    --color-primary-lighter-l: 76%;
    --color-accent-darker: hsl(355, 90%, 41%);
    --color-accent-darker-h: 355;
    --color-accent-darker-s: 90%;
    --color-accent-darker-l: 41%;
    --color-accent-dark: hsl(355, 90%, 51%);
    --color-accent-dark-h: 355;
    --color-accent-dark-s: 90%;
    --color-accent-dark-l: 51%;
    --color-accent: hsl(355, 90%, 61%);
    --color-accent-h: 355;
    --color-accent-s: 90%;
    --color-accent-l: 61%;
    --color-accent-light: hsl(355, 90%, 71%);
    --color-accent-light-h: 355;
    --color-accent-light-s: 90%;
    --color-accent-light-l: 71%;
    --color-accent-lighter: hsl(355, 90%, 81%);
    --color-accent-lighter-h: 355;
    --color-accent-lighter-s: 90%;
    --color-accent-lighter-l: 81%;
    --color-black: hsl(240, 8%, 12%);
    --color-black-h: 240;
    --color-black-s: 8%;
    --color-black-l: 12%;
    --color-white: hsl(0, 0%, 100%);
    --color-white-h: 0;
    --color-white-s: 0%;
    --color-white-l: 100%;
    --color-success-darker: hsl(94, 48%, 36%);
    --color-success-darker-h: 94;
    --color-success-darker-s: 48%;
    --color-success-darker-l: 36%;
    --color-success-dark: hsl(94, 48%, 46%);
    --color-success-dark-h: 94;
    --color-success-dark-s: 48%;
    --color-success-dark-l: 46%;
    --color-success: hsl(94, 48%, 56%);
    --color-success-h: 94;
    --color-success-s: 48%;
    --color-success-l: 56%;
    --color-success-light: hsl(94, 48%, 66%);
    --color-success-light-h: 94;
    --color-success-light-s: 48%;
    --color-success-light-l: 66%;
    --color-success-lighter: hsl(94, 48%, 76%);
    --color-success-lighter-h: 94;
    --color-success-lighter-s: 48%;
    --color-success-lighter-l: 76%;
    --color-error-darker: hsl(355, 90%, 41%);
    --color-error-darker-h: 355;
    --color-error-darker-s: 90%;
    --color-error-darker-l: 41%;
    --color-error-dark: hsl(355, 90%, 51%);
    --color-error-dark-h: 355;
    --color-error-dark-s: 90%;
    --color-error-dark-l: 51%;
    --color-error: hsl(355, 90%, 61%);
    --color-error-h: 355;
    --color-error-s: 90%;
    --color-error-l: 61%;
    --color-error-light: hsl(355, 90%, 71%);
    --color-error-light-h: 355;
    --color-error-light-s: 90%;
    --color-error-light-l: 71%;
    --color-error-lighter: hsl(355, 90%, 81%);
    --color-error-lighter-h: 355;
    --color-error-lighter-s: 90%;
    --color-error-lighter-l: 81%;
    --color-warning-darker: hsl(46, 100%, 41%);
    --color-warning-darker-h: 46;
    --color-warning-darker-s: 100%;
    --color-warning-darker-l: 41%;
    --color-warning-dark: hsl(46, 100%, 51%);
    --color-warning-dark-h: 46;
    --color-warning-dark-s: 100%;
    --color-warning-dark-l: 51%;
    --color-warning: hsl(46, 100%, 61%);
    --color-warning-h: 46;
    --color-warning-s: 100%;
    --color-warning-l: 61%;
    --color-warning-light: hsl(46, 100%, 71%);
    --color-warning-light-h: 46;
    --color-warning-light-s: 100%;
    --color-warning-light-l: 71%;
    --color-warning-lighter: hsl(46, 100%, 81%);
    --color-warning-lighter-h: 46;
    --color-warning-lighter-s: 100%;
    --color-warning-lighter-l: 81%;
    --color-bg: hsl(0, 0%, 100%);
    --color-bg-h: 0;
    --color-bg-s: 0%;
    --color-bg-l: 100%;
    --color-contrast-lower: hsl(0, 0%, 95%);
    --color-contrast-lower-h: 0;
    --color-contrast-lower-s: 0%;
    --color-contrast-lower-l: 95%;
    --color-contrast-low: hsl(240, 1%, 83%);
    --color-contrast-low-h: 240;
    --color-contrast-low-s: 1%;
    --color-contrast-low-l: 83%;
    --color-contrast-medium: hsl(240, 1%, 48%);
    --color-contrast-medium-h: 240;
    --color-contrast-medium-s: 1%;
    --color-contrast-medium-l: 48%;
    --color-contrast-high: hsl(240, 4%, 20%);
    --color-contrast-high-h: 240;
    --color-contrast-high-s: 4%;
    --color-contrast-high-l: 20%;
    --color-contrast-higher: hsl(240, 8%, 12%);
    --color-contrast-higher-h: 240;
    --color-contrast-higher-s: 8%;
    --color-contrast-higher-l: 12%;
}

@supports (--css: variables) {
    @media (min-width: 64rem) {
        :root {
            --space-unit: 1.25em
        }
    }
}

:root {
    --radius: 0.25em
}

:root {
    --font-primary: sans-serif;
    --text-base-size: 1em;
    --text-scale-ratio: 1.2;
    --text-xs: calc(1em/var(--text-scale-ratio)/var(--text-scale-ratio));
    --text-sm: calc(var(--text-xs)*var(--text-scale-ratio));
    --text-md: calc(var(--text-sm)*var(--text-scale-ratio)*var(--text-scale-ratio));
    --text-lg: calc(var(--text-md)*var(--text-scale-ratio));
    --text-xl: calc(var(--text-lg)*var(--text-scale-ratio));
    --text-xxl: calc(var(--text-xl)*var(--text-scale-ratio));
    --text-xxxl: calc(var(--text-xxl)*var(--text-scale-ratio));
    --body-line-height: 1.4;
    --heading-line-height: 1.2;
    --font-primary-capital-letter: 1
}

@supports (--css: variables) {
    @media (min-width: 64rem) {
        :root {
            --text-base-size: 1.25em;
            --text-scale-ratio: 1.25
        }
    }
}

mark {
    background-color: hsla(355, 90%, 61%, 0.2);
    background-color: hsla(var(--color-accent-h), var(--color-accent-s), var(--color-accent-l), 0.2);
    color: inherit
}

.text-component {
    --line-height-multiplier: 1;
    --text-vspace-multiplier: 1
}

.text-component blockquote {
    padding-left: 1em;
    border-left: 4px solid hsl(240, 1%, 83%);
    border-left: 4px solid var(--color-contrast-low)
}

.text-component hr {
    background: hsl(240, 1%, 83%);
    background: var(--color-contrast-low);
    height: 1px
}

.text-component figcaption {
    font-size: 0.83333em;
    font-size: var(--text-sm);
    color: hsl(240, 1%, 48%);
    color: var(--color-contrast-medium)
}

.article.text-component {
    --line-height-multiplier: 1.13;
    --text-vspace-multiplier: 1.2
}

:root {
    --btn-font-size: 1em;
    --btn-font-size-sm: calc(var(--btn-font-size) - 0.2em);
    --btn-font-size-md: calc(var(--btn-font-size) + 0.2em);
    --btn-font-size-lg: calc(var(--btn-font-size) + 0.4em);
    --btn-radius: 0.25em;
    --btn-padding-x: var(--space-sm);
    --btn-padding-y: var(--space-xs)
}

.btn {
    --color-shadow: hsla(240, 8%, 12%, 0.15);
    --color-shadow: hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.15);
    box-shadow: 0 4px 16px hsla(240, 8%, 12%, 0.15);
    box-shadow: 0 4px 16px hsla(var(--color-black-h), var(--color-black-s), var(--color-black-l), 0.15);
    cursor: pointer
}

:root {
    --form-control-padding-x: var(--space-sm);
    --form-control-padding-y: var(--space-xs);
    --form-control-radius: 0.25em
}

.form-control {
    border: 2px solid hsl(240, 1%, 83%);
    border: 2px solid var(--color-contrast-low)
}

.form-control:focus {
    outline: none;
    border-color: hsl(220, 90%, 56%);
    border-color: var(--color-primary);
    --color-shadow: hsla(220, 90%, 56%, 0.2);
    --color-shadow: hsla(var(--color-primary-h), var(--color-primary-s), var(--color-primary-l), 0.2);
    box-shadow: undefined;
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-control:focus:focus {
    box-shadow: 0 0 0 3px hsla(220, 90%, 56%, 0.2);
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-control[aria-invalid="true"] {
    border-color: hsl(355, 90%, 61%);
    border-color: var(--color-error)
}

.form-control[aria-invalid="true"]:focus {
    --color-shadow: hsla(355, 90%, 61%, 0.2);
    --color-shadow: hsla(var(--color-error-h), var(--color-error-s), var(--color-error-l), 0.2);
    box-shadow: undefined;
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-control[aria-invalid="true"]:focus:focus {
    box-shadow: 0 0 0 3px hsla(355, 90%, 61%, 0.2);
    box-shadow: 0 0 0 3px var(--color-shadow)
}

.form-label {
    font-size: 0.83333em;
    font-size: var(--text-sm)
}

:root {
    --cd-color-1: hsl(213, 7%, 33%);
    --cd-color-1-h: 213;
    --cd-color-1-s: 7%;
    --cd-color-1-l: 33%;
    --cd-color-2: hsl(73, 46%, 55%);
    --cd-color-2-h: 73;
    --cd-color-2-s: 46%;
    --cd-color-2-l: 55%;
    --cd-color-3: hsl(210, 14%, 49%);
    --cd-color-3-h: 210;
    --cd-color-3-s: 14%;
    --cd-color-3-l: 49%;
    --cd-color-4: hsl(0, 0%, 100%);
    --cd-color-4-h: 0;
    --cd-color-4-s: 0%;
    --cd-color-4-l: 100%;
    --font-primary: 'Open Sans', sans-serif
}

.cd-faq {
    box-shadow: 0 1px 2px rgba(0, 0, 0, .085), 0 1px 8px rgba(0, 0, 0, .1);
    box-shadow: var(--shadow-sm)
}

.cd-faq::before {
    content: 'mobile';
    display: none
}

.cd-faq a {
    text-decoration: none
}

@media (min-width: 64rem) {
    .cd-faq {
        position: relative;
        box-shadow: none;
        display: flex !important; /* Force flexbox */
        align-items: flex-start !important; /* Alignement en haut */
        gap: 0 !important; /* Pas d'espace entre les Ã©lÃ©ments */
        width: 100% !important;
        box-sizing: border-box !important;
        /* overflow: hidden supprimÃ© car il casse le sticky */
    }

    .cd-faq::before {
        content: 'desktop'
    }
}

/* Styles pour le conteneur des catÃ©gories - dimensions fixes */
.cd-faq__categories {
    margin: 15px 0px 0 0px;
    padding: 0;
    list-style: none;
}

@media (min-width: 64rem) {
    .cd-faq__categories {
        position: sticky !important;
        /* top: 88px !important; */ /* DÃ©calage pour la navbar */
        /* width: 250px !important; */ /* Largeur fixe */
        /* min-width: 250px !important; */
        /* max-width: 250px !important; */
        flex-shrink: 0 !important; /* EmpÃªche la contraction */
        flex-grow: 0 !important; /* EmpÃªche l'expansion */
        z-index: 100 !important;
        /* background: #6072AC !important; */ /* Fond pour masquer le contenu qui passe dessous */
        box-sizing: border-box !important;
        overflow-y: auto !important; /* Scroll si contenu trop long */
        max-height: calc(100vh - 82px) !important; /* Hauteur max moins la navbar */
    }
}

.cd-faq__category {
    position: relative;
    display: block;
    height: 50px;
    line-height: 50px;
    padding: 0 2em 0 1.05em;
    padding: 0 var(--space-lg) 0 calc(var(--space-sm)*1.4);
    color: hsl(0, 0%, 100%);
    color: var(--cd-color-4);
    background-color: #6072AC;
    background-color: var(--cd-color-1);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    --border-color: hsl(213, 7%, 36.3%);
    --border-color: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*1.1));
    border-bottom: 1px solid hsl(213, 7%, 36.3%);
    border-bottom: 1px solid var(--border-color);
}

.cd-faq__category::before,.cd-faq__category::after {
    content: '';
    position: absolute;
    top: 50%;
    right: 16px;
    display: inline-block;
    height: 1px;
    width: 10px;
    background-color: hsl(213, 7%, 52.8%);
    background-color: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*1.6))
}

.cd-faq__category::after {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg)
}

li:last-child .cd-faq__category {
    border-bottom: none
}

@media (min-width: 64rem) {
    .cd-faq__category {
        font-size:0.69444em;
        font-size: var(--text-xs);
        /* font-weight:600; */
        padding: 0 1.25em;
        padding: 0 var(--space-md);
        transition: background .2s;
        font-size: 1em;
    }

    .cd-faq__category::before,.cd-faq__category::after {
        display: none
    }

    .cd-faq__category:hover {
        background: hsl(213, 7%, 36.3%);
        background: hsl(var(--cd-color-1-h), var(--cd-color-1-s), calc(var(--cd-color-1-l)*1.1))
    }
}

@media (min-width: 80rem) {
    .cd-faq__category::before {
        display:block;
        top: 0;
        right: auto;
        left: 0;
        height: 100%;
        width: 3px;
        background-color: hsl(73, 46%, 55%);
        background-color: #6072AC;
        opacity: 0;
        transition: opacity .2s
    }
}

@media (min-width: 80rem) {
}

.cd-faq__items {
    position: fixed;
    z-index: 1;
    height: 100%;
    /* width: 90%; */
    top: 0;
    right: 0;
    background: hsl(0, 0%, 100%);
    background: var(--cd-color-4);
    padding: 0 1.25em 1.25em;
    padding: 0 var(--component-padding) var(--space-md);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-transform: translateZ(0) translateX(100%);
    transform: translateZ(0) translateX(100%);
    transition: -webkit-transform .3s;
    transition: transform .3s;
    transition: transform .3s, -webkit-transform .3s
}

@media (min-width: 64rem) {
    .cd-faq__items {
        position: static;
        height: auto;
        flex: 1 !important; /* Prend tout l'espace restant aprÃ¨s les catÃ©gories fixes */
        overflow: visible;
        -webkit-transform: translateX(0);
        -ms-transform: translateX(0);
        transform: translateX(0);
        padding: 0 1em 0 0.75em !important; /* Padding gauche et droit pour un espacement optimal */
        padding: 0 var(--space-md) 0 var(--space-sm) !important;
        background: transparent;
        box-sizing: border-box !important;
        min-width: 0 !important; /* Permet la contraction du contenu si nÃ©cessaire */
        max-width: 100% !important; /* S'assure qu'il n'y a pas de dÃ©bordement */
    }
}

.cd-faq__items--slide-in {
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

html:not(.js) .cd-faq__items {
    position: static;
    height: auto;
    width: 100%;
    -webkit-transform: translateX(0);
    -ms-transform: translateX(0);
    transform: translateX(0)
}

.cd-faq__group {
    display: none
}

@media (min-width: 64rem) {
    .cd-faq__group {
        display:block;
        padding-top: 1px;
    }
}

html:not(.js) .cd-faq__group,.cd-faq__group--selected {
    display: block
}

.cd-faq__title {
    margin: 1.25em 0;
    margin: var(--space-md) 0
}

.cd-faq__title h2 {
    text-transform: uppercase;
    font-size: 0.83333em;
    font-size: var(--text-sm);
    font-weight: 700;
    color: hsl(240, 1%, 74.7%);
    color: hsl(var(--color-contrast-low-h), var(--color-contrast-low-s), calc(var(--color-contrast-low-l)*0.9))
}

@media (min-width: 64rem) {
    .cd-faq__title {
        margin-bottom:0.75em;
        margin-bottom: var(--space-sm)
    }

    .cd-faq__title h2 {
        font-size: 0.69444em;
        font-size: var(--text-xs);
        font-size: 1em;
    }
}

@media (min-width: 64rem) {
    .cd-faq__item {
        background:hsl(0, 0%, 100%);
        background: var(--cd-color-4);
        margin-bottom: 0.25em;
        margin-bottom: var(--space-xxxs);
        box-shadow: 0 1px 2px rgba(0,0,0,0.08);
        transition: box-shadow .2s
    }

    .cd-faq__item:hover {
        --box-shadow: hsla(210, 14%, 49%, 0.3);
        --box-shadow: hsla(var(--cd-color-3-h), var(--cd-color-3-s), var(--cd-color-3-l), 0.3);
        box-shadow: undefined;
        box-shadow: 0 1px 10px var(--box-shadow)
    }

    @media (min-width: 64rem) {
        .cd-faq__item:hover {
            box-shadow:0 1px 10px hsla(210, 14%, 49%, 0.3);
            box-shadow: 0 1px 10px var(--box-shadow);
        }
    }

    .cd-faq__item:last-of-type {
        margin-bottom: 0
    }
}

.cd-faq__trigger {
    display: block;
    position: relative;
    margin: 1.25em 0 0.5em;
    margin: var(--space-md) 0 var(--space-xs);
    color: #6072AC;
    color: #6072AC;
    font-size: 1.5em;
}

@media (min-width: 64rem) {
    .cd-faq__trigger {
        font-weight:300;
        margin: 0;
        padding: 0.75em 2em 0.75em 0.75em;
        padding: var(--space-sm) var(--space-lg) var(--space-sm) var(--space-sm)
    }

    .cd-faq__trigger span {
        /* font-size:1.2em; */
        /* font-size:var(--text-md); */
        color: #6072AC;
    }

    .cd-faq__trigger::before,.cd-faq__trigger::after {
        content: '';
        position: absolute;
        right: 24px;
        top: 50%;
        height: 2px;
        width: 13px;
        background: #6072AC;
        background: hsl(var(--cd-color-2-h), var(--cd-color-2-s), calc(var(--cd-color-2-l)*1.3));
        -webkit-backface-visibility: hidden;
        backface-visibility: hidden;
        transition: -webkit-transform .2s;
        transition: transform .2s;
        transition: transform .2s, -webkit-transform .2s;
    }

    .cd-faq__trigger::before {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
        right: 32px;
    }

    .cd-faq__trigger::after {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .cd-faq__item-visible .cd-faq__trigger::before {
        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg)
    }

    .cd-faq__item-visible .cd-faq__trigger::after {
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg)
    }
}

.cd-faq__content .text-component {
    font-size: 0.95em
}

.cd-faq__content p {
    color: hsl(210, 14%, 49%);
    color: var(--cd-color-3);
    font-size: 1.15em;
}

@media (min-width: 64rem) {
    .cd-faq__content {
        display:none;
        padding: 0 0.75em;
        padding: 0 var(--space-sm);
        overflow: hidden
    }

    .cd-faq__content .text-component {
        font-size: 0.75em;
        padding-bottom: 1.25em;
        padding-bottom: var(--space-md)
    }
}

@media (min-width: 64rem) {
    html:not(.js) .cd-faq__content {
        display:block
    }
}

.cd-faq__close-panel {
    position: fixed;
    z-index: 2;
    display: block;
    top: 5px;
    right: -40px;
    height: 40px;
    width: 40px;
    -webkit-transform: translateZ(0);
    transform: translateZ(0);
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    transition: right .3s
}

.cd-faq__close-panel::before,.cd-faq__close-panel::after {
    content: '';
    position: absolute;
    top: 16px;
    left: 12px;
    display: inline-block;
    height: 3px;
    width: 18px;
    background: hsl(210, 14%, 49%);
    background: var(--cd-color-3)
}

.cd-faq__close-panel::before {
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg)
}

.cd-faq__close-panel::after {
    -webkit-transform: rotate(-45deg);
    -ms-transform: rotate(-45deg);
    transform: rotate(-45deg)
}

@media (min-width: 64rem) {
    .cd-faq__close-panel {
        display:none
    }
}

.cd-faq__overlay {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: hsla(213, 7%, 33%, 0.8);
    background-color: hsla(var(--cd-color-1-h), var(--cd-color-1-s), var(--cd-color-1-l), 0.8);
    visibility: hidden;
    opacity: 0;
    transition: opacity .3s, visibility .3s
}

@media (min-width: 64rem) {
    .cd-faq__overlay {
        display:none
    }
}

.cd-faq__overlay--is-visible {
    visibility: visible;
    opacity: 1
}

body {
    background-color: hsl(0, 0%, 95%);
    background-color: var(--color-contrast-lower)
}

@media (min-width: 80rem) {
}

@media (min-width: 80rem) {
}

/* Styles supplÃ©mentaires pour stabiliser les dimensions FAQ */
@media (min-width: 64rem) {
    /* Assurer que le conteneur FAQ maintient ses proportions */
    .cd-faq {
        box-sizing: border-box;
        min-height: 400px; /* Hauteur minimum pour Ã©viter les collapsements */
    }
    
    /* Forcer les dimensions stables pour les Ã©lÃ©ments FAQ */
    .cd-faq__categories {
        box-sizing: border-box;
        height: auto;
        margin: 17px 0px 0px 0px;
        /* Styles sticky dÃ©jÃ  dÃ©finis plus haut */
    }
    
    .cd-faq__items {
        box-sizing: border-box;
        height: auto;
        margin: 17px 0px 0px 0px;
        /* Largeur et dimensions dÃ©jÃ  dÃ©finies plus haut */
    }
    
    /* EmpÃªcher le dÃ©bordement de contenu qui pourrait affecter les dimensions */
    .cd-faq__content {
        overflow-wrap: break-word;
        word-wrap: break-word;
        max-width: 100%;
    }
    
    /* S'assurer que les groupes FAQ n'affectent pas les dimensions du parent */
    .cd-faq__group {
        width: 100% !important;
        box-sizing: border-box;
        flex-shrink: 0;
        max-width: 100% !important; /* Force la largeur maximale */
    }
    
    /* Stabiliser les items individuels */
    .cd-faq__item {
        width: 100% !important;
        box-sizing: border-box;
        max-width: 100% !important; /* Force la largeur maximale */
    }
}
