/* /Components/Forms/JobApplicationForm.razor.rz.scp.css */
.intro[b-jmkcfwwkf8] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.intro h2[b-jmkcfwwkf8] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 26px;
    color: var(--qa-ink);
}

.intro p[b-jmkcfwwkf8] {
    margin: 0;
    font-size: 15px;
    color: var(--qa-muted);
}
/* /Components/Forms/WebinarForm.razor.rz.scp.css */
.intro[b-a7ovt8mztn] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.intro h2[b-a7ovt8mztn] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 26px;
    color: var(--qa-ink);
}

.intro p[b-a7ovt8mztn] {
    margin: 0;
    font-size: 15px;
    color: var(--qa-muted);
}
/* /Components/Layout/ConsentBanner.razor.rz.scp.css */
/* Carte posée en bas de page, au-dessus du contenu sans le bloquer ; inset-inline : même rendu en arabe (RTL). */
.consent[b-1zmytnu3ib] {
    position: fixed;
    inset-inline: 16px;
    bottom: 16px;
    z-index: 1000;
    box-sizing: border-box;
    max-width: 620px;
    max-height: calc(100vh - 32px);
    overflow-y: auto;
    margin-inline: auto;
    padding: 24px;
    background: #ffffff;
    color: var(--qa-ink);
    border: 1px solid var(--qa-border);
    border-top: 4px solid var(--qa-pink);
    border-radius: 16px;
    box-shadow: 0 12px 40px rgba(35, 37, 47, 0.18);
    font-family: var(--qa-font-body);
    font-size: 15px;
    line-height: 1.5;
}

.consent[hidden][b-1zmytnu3ib] { display: none; }

.title[b-1zmytnu3ib] {
    margin: 0 0 8px;
    font-family: var(--qa-font-heading);
    font-size: 18px;
    font-weight: 700;
}

.text[b-1zmytnu3ib] {
    margin: 0;
    color: var(--qa-muted);
}

/* Le lien vient du .resx : sans attribut d'isolation CSS. */
.text[b-1zmytnu3ib]  a {
    color: var(--qa-pink);
    font-weight: 600;
}

.details[b-1zmytnu3ib] {
    display: flex;
    flex-direction: column;
    gap: 12px;
    margin-top: 16px;
}

.details[hidden][b-1zmytnu3ib] { display: none; }

.purpose[b-1zmytnu3ib] {
    padding: 12px 16px;
    background: #F4F4F7;
    border-radius: 12px;
}

.purpose-head[b-1zmytnu3ib] {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 16px;
    font-weight: 700;
}

label.purpose-head[b-1zmytnu3ib] { cursor: pointer; }

.purpose-text[b-1zmytnu3ib] {
    margin: 4px 0 0;
    font-size: 14px;
    color: var(--qa-muted);
}

.always-on[b-1zmytnu3ib] {
    flex-shrink: 0;
    font-size: 13px;
    font-weight: 600;
    color: #1D7540;
}

/* Interrupteur : case à cocher native restylée, donc accessible au clavier et aux lecteurs d'écran. */
.switch[b-1zmytnu3ib] {
    appearance: none;
    flex-shrink: 0;
    position: relative;
    width: 44px;
    height: 24px;
    margin: 0;
    border-radius: 999px;
    background: #B9BCC7;
    cursor: pointer;
    transition: background 0.15s;
}

.switch[b-1zmytnu3ib]::after {
    content: "";
    position: absolute;
    top: 3px;
    inset-inline-start: 3px;
    width: 18px;
    height: 18px;
    border-radius: 50%;
    background: #ffffff;
    transition: inset-inline-start 0.15s;
}

.switch:checked[b-1zmytnu3ib] { background: var(--qa-pink); }
.switch:checked[b-1zmytnu3ib]::after { inset-inline-start: 23px; }

.switch:focus-visible[b-1zmytnu3ib],
.actions button:focus-visible[b-1zmytnu3ib] {
    outline: 3px solid var(--qa-pink-light);
    outline-offset: 2px;
}

.actions[b-1zmytnu3ib] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px;
    margin-top: 20px;
}

.actions button[b-1zmytnu3ib] {
    font-family: inherit;
    font-size: 15px;
    font-weight: 700;
    cursor: pointer;
}

.actions button[hidden][b-1zmytnu3ib] { display: none; }

.customize[b-1zmytnu3ib],
.save[b-1zmytnu3ib] {
    margin-inline-end: auto;
    padding: 12px 4px;
    background: none;
    border: none;
    color: var(--qa-pink);
    text-decoration: underline;
    text-underline-offset: 3px;
}

/* Refuser et accepter : même style, même taille (la CNIL demande un choix aussi simple dans les deux sens). */
.choice[b-1zmytnu3ib] {
    min-height: 44px;
    padding: 10px 22px;
    background: var(--qa-pink);
    color: #ffffff;
    border: none;
    border-radius: 999px;
}

.choice:hover[b-1zmytnu3ib] { background: var(--qa-pink-dark); }

@media (max-width: 480px) {
    .consent[b-1zmytnu3ib] { padding: 20px 16px; }
    /* Le lien passe sur sa ligne, les deux boutons se partagent la suivante. */
    .customize[b-1zmytnu3ib], .save[b-1zmytnu3ib] { flex-basis: 100%; text-align: start; }
    .choice[b-1zmytnu3ib] { flex: 1 1 0; }
}
/* /Components/Layout/SiteFooter.razor.rz.scp.css */
.site-footer[b-u7dlhdxqnz] {
    background: var(--qa-ink);
    color: #D7D9E0;
}

.columns[b-u7dlhdxqnz] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 64px 32px 32px;
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
    gap: 40px;
}

.column[b-u7dlhdxqnz] {
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.column-brand[b-u7dlhdxqnz] {
    gap: 12px;
}

.brand[b-u7dlhdxqnz] {
    display: flex;
    align-items: center;
    gap: 10px;
}

.brand-logo[b-u7dlhdxqnz] {
    height: 38px;
    width: auto;
    display: block;
}

.brand-badge[b-u7dlhdxqnz] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 14px;
    color: var(--qa-pink-light);
    border: 2px solid var(--qa-pink-light);
    border-radius: 8px;
    padding: 2px 8px;
    letter-spacing: 0.04em;
    line-height: 1.2;
}

.title[b-u7dlhdxqnz] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    color: #ffffff;
}

.text[b-u7dlhdxqnz] {
    margin: 0;
    font-size: 15px;
    color: #B9BCC7;
}

.link[b-u7dlhdxqnz] {
    color: #D7D9E0;
    text-decoration: none;
    font-size: 15px;
}

.linkedin[b-u7dlhdxqnz] {
    color: var(--qa-pink-light);
    font-size: 15px;
    font-weight: 600;
}

.ecovadis[b-u7dlhdxqnz] {
    font-size: 15px;
    color: #F3D27A;
    font-weight: 600;
    margin-top: 6px;
}

.copyright[b-u7dlhdxqnz] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 20px 32px 32px;
    border-top: 1px solid #3A3D4A;
    font-size: 14px;
    color: #A3A7B4;
}

/* Bouton « Gestion des cookies », présenté comme les liens voisins. */
.consent-open[b-u7dlhdxqnz] {
    align-self: flex-start;
    padding: 0;
    background: none;
    border: none;
    font-family: inherit;
    text-align: start;
    cursor: pointer;
}

.consent-open[hidden][b-u7dlhdxqnz] { display: none; }
/* /Components/Layout/SiteHeader.razor.rz.scp.css */
.site-header[b-ze6g7h7md2] {
    background: #ffffff;
    border-bottom: 1px solid var(--qa-border);
}

.nav[b-ze6g7h7md2] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 14px 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 12px 24px;
}

/* --- Logo ------------------------------------------------------------ */

.brand[b-ze6g7h7md2] {
    display: flex;
    align-items: center;
    gap: 10px;
    text-decoration: none;
}

.brand-logo[b-ze6g7h7md2] {
    height: 44px;
    width: auto;
    display: block;
}

.brand-badge[b-ze6g7h7md2] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 15px;
    color: var(--qa-pink);
    border: 2px solid var(--qa-pink);
    border-radius: 8px;
    padding: 3px 9px;
    letter-spacing: 0.04em;
    line-height: 1.2;
}

/* --- Menu ------------------------------------------------------------ */

.menu[b-ze6g7h7md2] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px 4px;
}

.menu-link[b-ze6g7h7md2] {
    color: var(--qa-ink);
    font-weight: 600;
    text-decoration: none;
    padding: 10px 12px;
    font-size: 15px;
    min-height: 24px;
}

.menu-link[aria-current="page"][b-ze6g7h7md2] {
    color: var(--qa-pink);
    font-weight: 700;
}

.menu-cta[b-ze6g7h7md2] {
    margin-inline-start: 8px;
    background: var(--qa-pink);
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 15px;
    padding: 12px 20px;
    border-radius: 999px;
}

/* --- Sélecteur de langue ----------------------------------------------- */

.lang[b-ze6g7h7md2] {
    display: inline-flex;
    align-items: center;
    gap: 2px;
    margin-inline-start: 10px;
    border: 1px solid var(--qa-border);
    border-radius: 999px;
    padding: 3px;
}

.lang-item[b-ze6g7h7md2] {
    color: var(--qa-ink);
    text-decoration: none;
    font-weight: 600;
    font-size: 13px;
    padding: 6px 9px;
    border-radius: 999px;
    min-width: 18px;
    text-align: center;
}

.lang-current[b-ze6g7h7md2] {
    background: var(--qa-ink);
    color: #ffffff;
    font-weight: 700;
}
/* /Components/Pages/Contact.razor.rz.scp.css */
.contact[b-k6juliauz1] {
    padding: 88px 32px 96px;
}

/* --- Colonne de présentation ---------------------------------------------- */

.intro[b-k6juliauz1] {
    flex: 1 1 340px;
    min-width: 0;
    max-width: 460px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.eyebrow[b-k6juliauz1] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

h1[b-k6juliauz1] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(36px, 4.2vw, 54px);
    line-height: 1.08;
    letter-spacing: -0.02em;
}

.lead[b-k6juliauz1] {
    margin: 0;
    font-size: 19px;
    color: var(--qa-muted);
}

/* --- Adresse --------------------------------------------------------------- */

.address[b-k6juliauz1] {
    background: #ffffff;
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 6px;
    margin-top: 8px;
}

.address-name[b-k6juliauz1] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 18px;
}

.address-text[b-k6juliauz1] {
    font-size: 17px;
    color: #3B3E4A;
}

.address-link[b-k6juliauz1] {
    font-weight: 700;
    font-size: 16px;
    margin-top: 8px;
}
/* /Components/Pages/Entreprise.razor.rz.scp.css */
/* --- Mission ------------------------------------------------------------ */

.mission-heading[b-a93afrljdy] {
    gap: 18px;
}

.mission[b-a93afrljdy] {
    display: grid;
    /* min(320px, 100%) : une seule colonne sans débordement sur les écrans de 320 px. */
    grid-template-columns: repeat(auto-fit, minmax(min(320px, 100%), 1fr));
    gap: 48px;
    align-items: start;
}

.mission-text[b-a93afrljdy] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    font-size: 18px;
    color: #3B3E4A;
}

.mission-text p[b-a93afrljdy] {
    margin: 0;
}

/* --- Souveraineté numérique ----------------------------------------------- */

.sovereignty[b-a93afrljdy] {
    background: #FAFAFC;
    border-top: 1px solid var(--qa-border);
}

.sovereignty-stack[b-a93afrljdy] {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.sovereignty-heading[b-a93afrljdy] {
    max-width: 860px;
}

.sovereignty-cards[b-a93afrljdy] {
    display: flex;
    flex-wrap: wrap;
    gap: 18px;
}

/* min(300px, 100%) : pas de débordement sur les écrans de 320 px. */
.sovereignty-card[b-a93afrljdy] {
    flex: 1 1 min(300px, 100%);
    background: #ffffff;
    border: 1px solid var(--qa-border);
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.sovereignty-icon[b-a93afrljdy] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #FCE8EF;
    display: flex;
    align-items: center;
    justify-content: center;
}

.sovereignty-card h3[b-a93afrljdy] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 20px;
    color: var(--qa-ink);
}

.sovereignty-card p[b-a93afrljdy] {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    color: var(--qa-muted);
}

/* Hébergement : encadré sombre sur toute la largeur. */
.hosting[b-a93afrljdy] {
    background: var(--qa-ink);
    border-radius: 24px;
    padding: 36px 40px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px 32px;
}

.hosting-icon[b-a93afrljdy] {
    width: 72px;
    height: 72px;
    border-radius: 20px;
    background: #2E3140;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.hosting-text[b-a93afrljdy] {
    flex: 1 1 min(420px, 100%);
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.hosting h3[b-a93afrljdy] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 26px;
    line-height: 1.25;
    color: #ffffff;
}

.hosting p[b-a93afrljdy] {
    margin: 0;
    font-size: 17px;
    line-height: 1.6;
    color: #D7D9E0;
}

/* --- Histoire : cartouche de la ligne (la frise est le composant Timeline) ------------------------------------ */


.line[b-a93afrljdy] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 14px 20px;
    background: #ffffff;
    border-radius: 18px;
    padding: 16px 20px;
    align-self: flex-start;
}

.line-icon[b-a93afrljdy] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: var(--qa-pink);
    display: flex;
    align-items: center;
    justify-content: center;
}

.line-badge[b-a93afrljdy] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 26px;
    color: #ffffff;
    background: var(--qa-ink);
    border-radius: 10px;
    padding: 4px 14px;
    line-height: 1.2;
}

.line-label[b-a93afrljdy] {
    display: flex;
    flex-direction: column;
}

.line-name[b-a93afrljdy] {
    font-size: 13px;
    color: var(--qa-muted);
}

.line-direction[b-a93afrljdy] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 18px;
    color: var(--qa-ink);
}

/* --- Valeurs -------------------------------------------------------------- */

.values[b-a93afrljdy] {
    background: #FAFAFC;
}

.values-heading[b-a93afrljdy] {
    max-width: 820px;
}


.value-card[b-a93afrljdy] {
    background: #ffffff;
    border-radius: 20px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.value-icon[b-a93afrljdy] {
    width: 52px;
    height: 52px;
    border-radius: 14px;
    background: #FCE8EF;
    display: flex;
    align-items: center;
    justify-content: center;
}

.value-card h3[b-a93afrljdy] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 21px;
}

.value-card p[b-a93afrljdy] {
    margin: 0;
    font-size: 16px;
    color: var(--qa-muted);
}

/* --- EcoVadis et RSE (fond sombre) --------------------------------------- */


.ecovadis[b-a93afrljdy] {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 24px 32px;
    background: #2E3140;
    border: 1.5px solid #E0B84A;
    border-radius: 24px;
    padding: 32px 36px;
    text-decoration: none;
    color: #ffffff;
}

.ecovadis-medal[b-a93afrljdy] {
    width: 120px;
    height: 120px;
    flex-shrink: 0;
    display: block;
}

.ecovadis-text[b-a93afrljdy] {
    flex: 1 1 420px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.ecovadis-eyebrow[b-a93afrljdy] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #F3D27A;
}

.ecovadis-title[b-a93afrljdy] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 26px;
    line-height: 1.25;
}

.ecovadis-text p[b-a93afrljdy] {
    margin: 0;
    font-size: 17px;
    color: #D7D9E0;
}

.ecovadis-link[b-a93afrljdy] {
    background: #E0B84A;
    color: var(--qa-ink);
    font-weight: 700;
    font-size: 16px;
    padding: 14px 24px;
    border-radius: 999px;
    white-space: nowrap;
}

.csr-heading[b-a93afrljdy] {
    max-width: 820px;
}

.csr-lead[b-a93afrljdy] {
    margin: 0;
    font-size: 19px;
    line-height: 1.55;
    color: #C9CCD6;
}

/* Quatre colonnes en bureau, deux puis une en dessous ; min(…, 100%) : pas de débordement à 320 px. */
.csr-grid[b-a93afrljdy] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(250px, 100%), 1fr));
    gap: 20px;
}

.csr-card[b-a93afrljdy] {
    background: #2E3140;
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.csr-icon[b-a93afrljdy] {
    width: 48px;
    height: 48px;
    border-radius: 12px;
    background: rgba(240,106,151,0.14);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.csr-card h3[b-a93afrljdy],
.csr-focus h3[b-a93afrljdy] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    color: #ffffff;
}

.csr-card p[b-a93afrljdy],
.csr-focus p[b-a93afrljdy] {
    margin: 0;
    font-size: 16px;
    line-height: 1.55;
    color: #C9CCD6;
}

/* Engagements concrets : liste à puces roses, séparée du texte par un filet. */
.csr-points[b-a93afrljdy] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 12px;
    font-size: 15px;
    line-height: 1.45;
    color: #E6E7EC;
}

.csr-card .csr-points[b-a93afrljdy] {
    margin-top: 6px;
    padding-top: 20px;
    border-top: 1px solid rgba(255,255,255,0.10);
}

.csr-points li[b-a93afrljdy] {
    position: relative;
    padding-inline-start: 18px;
}

.csr-points li[b-a93afrljdy]::before {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 0.5em;
    width: 6px;
    height: 6px;
    border-radius: 50%;
    background: var(--qa-pink-light);
}

/* Focus : bandeau pleine largeur, texte d'un côté, engagements de l'autre. */
.csr-focus[b-a93afrljdy] {
    display: flex;
    align-items: center;
    gap: 28px 48px;
    border: 1.5px solid var(--qa-pink);
    border-radius: 24px;
    padding: 36px;
    background: linear-gradient(135deg, rgba(201,42,98,0.22), #2E3140 55%);
}

.csr-focus-text[b-a93afrljdy] {
    flex: 1 1 0;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.csr-focus-top[b-a93afrljdy] {
    display: flex;
    align-items: center;
    gap: 14px;
}

.csr-badge[b-a93afrljdy] {
    background: var(--qa-pink);
    color: #ffffff;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.12em;
    text-transform: uppercase;
    padding: 5px 12px;
    border-radius: 999px;
}

.csr-focus h3[b-a93afrljdy] {
    font-size: 26px;
}

.csr-focus .csr-points[b-a93afrljdy] {
    flex: 1 1 0;
    min-width: 0;
    padding-inline-start: 28px;
    border-inline-start: 1px solid rgba(255,255,255,0.14);
}

/* --- Recrutement ---------------------------------------------------------- */

.join[b-a93afrljdy] {
    padding: 96px 32px 0;
}

.join-box[b-a93afrljdy] {
    margin-bottom: 96px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
    gap: 24px;
    border: 1px solid var(--qa-border);
    border-radius: 24px;
    padding: 40px;
}

.join-text[b-a93afrljdy] {
    display: flex;
    flex-direction: column;
    gap: 8px;
    max-width: 700px;
}

.join-text h2[b-a93afrljdy] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 28px;
}

.join-text p[b-a93afrljdy] {
    margin: 0;
    font-size: 17px;
    color: var(--qa-muted);
}

.join-button[b-a93afrljdy] {
    border: 1.5px solid var(--qa-pink);
    color: var(--qa-pink);
    text-decoration: none;
    font-weight: 700;
    font-size: 16px;
    padding: 14px 24px;
    border-radius: 999px;
}

/* Mobile : le libellé du lien EcoVadis peut passer à la ligne. */
@media (max-width: 640px) {
    .ecovadis-link[b-a93afrljdy] {
        white-space: normal;
    }
}

/* Le focus passe en une colonne (sous ~900 px) : le filet vertical devient horizontal. */
@media (max-width: 900px) {
    .csr-focus[b-a93afrljdy] {
        flex-direction: column;
        align-items: stretch;
    }

    .csr-focus .csr-points[b-a93afrljdy] {
        padding-inline-start: 0;
        padding-top: 20px;
        border-inline-start: 0;
        border-top: 1px solid rgba(255,255,255,0.14);
    }
}

/* Mobile : titre du focus réduit. */
@media (max-width: 640px) {
    .csr-focus[b-a93afrljdy] {
        padding: 28px 24px;
    }

    .csr-focus h3[b-a93afrljdy] {
        font-size: 22px;
    }
}

/* Mobile : encadré de l'hébergement moins rembourré, titre réduit. */
@media (max-width: 640px) {
    .hosting[b-a93afrljdy] {
        padding: 28px 24px;
    }

    .hosting h3[b-a93afrljdy] {
        font-size: 22px;
    }
}
/* /Components/Pages/Evenements.razor.rz.scp.css */
/* Page « Nos événements » : landing page du webinaire Qommute Live, reprise de la maquette du marketing aux couleurs du site. */

/* --- Bandeau : présentation et inscription ------------------------------ */

.event-hero[b-gs8vov4527] {
    padding-top: 64px;
}

.event-grid[b-gs8vov4527] {
    display: grid;
    grid-template-columns: minmax(0, 1.1fr) minmax(0, 0.9fr);
    gap: 56px;
    align-items: start;
}

.event-intro[b-gs8vov4527] {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    gap: 22px;
}

.pill[b-gs8vov4527] {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    padding: 8px 18px 8px 14px;
    border-radius: 999px;
    background: #ffffff;
    border: 1.5px solid var(--qa-border);
    font-size: 16px;
    color: var(--qa-muted);
}

.pill b[b-gs8vov4527] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    color: var(--qa-ink);
}

.pill-dot[b-gs8vov4527] {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    background: var(--qa-pink);
    box-shadow: 0 0 0 4px rgba(201,42,98,0.22);
    animation: pulse-b-gs8vov4527 2.4s ease-in-out infinite;
}

@keyframes pulse-b-gs8vov4527 {
    50% { box-shadow: 0 0 0 8px rgba(201,42,98,0); }
}

@media (prefers-reduced-motion: reduce) {
    .pill-dot[b-gs8vov4527] { animation: none; }
}

/* Parallélogramme rose de la charte, devant les titres. */
.par[b-gs8vov4527] {
    display: inline-block;
    width: 26px;
    height: 13px;
    background: var(--qa-pink);
    transform: skewX(40deg);
    flex: none;
}

.episode[b-gs8vov4527] {
    display: flex;
    align-items: center;
    gap: 14px;
    font-weight: 700;
    font-size: 17px;
    color: var(--qa-pink);
}

h1[b-gs8vov4527] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(32px, 4.2vw, 50px);
    line-height: 1.1;
    letter-spacing: -0.02em;
    color: var(--qa-ink);
}

h1 span[b-gs8vov4527] {
    display: block;
    text-wrap: balance;
}

.lead[b-gs8vov4527] {
    margin: 0;
    font-size: 20px;
    line-height: 1.55;
    color: var(--qa-muted);
    max-width: 36em;
}

.meta[b-gs8vov4527] {
    display: grid;
    grid-template-columns: auto 1fr;
    gap: 10px 22px;
    margin: 6px 0 0;
    font-size: 18px;
}

.meta dt[b-gs8vov4527] {
    color: var(--qa-muted);
}

.meta dd[b-gs8vov4527] {
    margin: 0;
    font-weight: 700;
}

.avatars[b-gs8vov4527] {
    display: flex;
    align-items: center;
    gap: 28px;
    font-size: 17px;
    color: var(--qa-muted);
}

.avatar-stack[b-gs8vov4527] {
    display: flex;
    flex: none;
}

.avatar-stack img[b-gs8vov4527] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    object-fit: cover;
    border: 3px solid #F4F4F7;
    margin-inline-end: -12px;
    box-shadow: 0 0 0 2px var(--qa-pink);
}

.event-form[b-gs8vov4527] {
    scroll-margin-top: 24px;
    box-shadow: 0 24px 60px -24px rgba(35,37,47,0.28);
}

/* --- Démonstration -------------------------------------------------------- */

.demo[b-gs8vov4527] {
    padding-bottom: 40px;
}

.stage[b-gs8vov4527] {
    display: grid;
    grid-template-columns: 1fr auto 1fr;
    align-items: center;
    gap: 22px;
}

.card[b-gs8vov4527] {
    border-radius: 20px;
    background: #ffffff;
    border: 1.5px solid var(--qa-border);
    padding: 20px 22px;
    box-shadow: 0 16px 40px -20px rgba(35,37,47,0.3);
}

.card-head[b-gs8vov4527] {
    display: flex;
    align-items: center;
    gap: 8px;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: var(--module-accent);
}

/* Pastille de couleur d'un module : la classe .qa-module-{module} fixe --module-dot. */
.dot[b-gs8vov4527] {
    width: 11px;
    height: 11px;
    border-radius: 50%;
    display: inline-block;
    flex: none;
    background: var(--module-dot);
}

.chat-message[b-gs8vov4527] {
    margin-top: 12px;
    background: var(--module-bg);
    border-radius: 14px 14px 14px 4px;
    padding: 12px 14px;
    font-size: 17px;
}

.chat-ready[b-gs8vov4527] {
    margin-top: 12px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    gap: 12px;
    font-weight: 700;
    font-size: 15px;
}

.chat-ready span[b-gs8vov4527] {
    background: var(--module-accent);
    color: #ffffff;
    border-radius: 999px;
    padding: 6px 14px;
    font-size: 14px;
}

/* Le hub relie Companion (à gauche) et Display (à droite) : traits aux couleurs des deux modules. */
.hub[b-gs8vov4527] {
    width: 120px;
    height: 120px;
    border-radius: 50%;
    background: rgba(201,42,98,0.1);
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
}

.hub[b-gs8vov4527]::before,
.hub[b-gs8vov4527]::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 26px;
    height: 6px;
    border-radius: 3px;
}

.hub[b-gs8vov4527]::before {
    inset-inline-end: 100%;
    background: #C29B00;
}

.hub[b-gs8vov4527]::after {
    inset-inline-start: 100%;
    background: #9149C4;
}

.screen[b-gs8vov4527] {
    background: #14151A;
    border: 4px solid #3C3D48;
    color: #ffffff;
}

.screen-head[b-gs8vov4527] {
    display: flex;
    justify-content: space-between;
    font-size: 14px;
    font-weight: 700;
    letter-spacing: 0.04em;
    color: #C08AE8;
}

.screen-head em[b-gs8vov4527] {
    font-style: normal;
    color: #ffffff;
}

.screen-stop[b-gs8vov4527] {
    font-size: 14px;
    color: #9A9BA6;
    margin-top: 6px;
}

.screen-row[b-gs8vov4527] {
    display: flex;
    gap: 12px;
    align-items: center;
    margin-top: 10px;
    font-weight: 700;
}

.screen-row b[b-gs8vov4527] {
    background: #9149C4;
    border-radius: 6px;
    padding: 2px 7px;
    font-size: 13px;
}

.screen-row span[b-gs8vov4527] {
    flex: 1;
}

.screen-row i[b-gs8vov4527] {
    font-style: normal;
    color: #FFC24B;
}

.screen-alert[b-gs8vov4527] {
    margin-top: 12px;
    background: var(--qa-pink);
    border-radius: 8px;
    padding: 8px 12px;
    font-size: 14px;
    font-weight: 700;
}

.caption[b-gs8vov4527] {
    text-align: center;
    color: var(--qa-muted);
    margin: 26px auto 0;
    max-width: 40em;
}

/* --- Sections ------------------------------------------------------------- */

.kicker[b-gs8vov4527] {
    display: flex;
    align-items: center;
    gap: 14px;
    margin: 0 0 30px;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 24px;
    color: var(--qa-ink);
}

/* Déroulé : ligne rose verticale, une étape par point. */
.agenda[b-gs8vov4527] {
    list-style: none;
    margin: 0;
    position: relative;
    padding-inline-start: 58px;
    max-width: 860px;
}

.agenda[b-gs8vov4527]::before {
    content: "";
    position: absolute;
    inset-inline-start: 17px;
    top: 12px;
    bottom: 18px;
    width: 8px;
    border-radius: 4px;
    background: var(--qa-pink);
}

.agenda li[b-gs8vov4527] {
    position: relative;
    margin-bottom: 30px;
}

.agenda li[b-gs8vov4527]::before {
    content: "";
    position: absolute;
    inset-inline-start: -50px;
    top: 4px;
    width: 22px;
    height: 22px;
    border-radius: 50%;
    background: #ffffff;
    border: 6px solid var(--qa-ink);
    box-sizing: border-box;
}

.agenda-title[b-gs8vov4527] {
    display: flex;
    align-items: center;
    gap: 10px;
    flex-wrap: wrap;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 21px;
}

.agenda-title small[b-gs8vov4527] {
    font-family: var(--qa-font-body);
    font-weight: 400;
    font-size: 16px;
    color: var(--qa-muted);
}

.agenda p[b-gs8vov4527] {
    margin: 4px 0 0;
    color: var(--qa-muted);
}

.speakers[b-gs8vov4527] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(240px, 100%), 1fr));
    gap: 20px;
}

.speaker[b-gs8vov4527] {
    background: #F4F4F7;
    border-radius: 24px;
    padding: 30px 20px 28px;
    text-align: center;
}

.speaker img[b-gs8vov4527] {
    width: 132px;
    height: 132px;
    border-radius: 50%;
    object-fit: cover;
    margin: 0 auto;
    display: block;
    border: 5px solid #F4F4F7;
    box-shadow: 0 0 0 4px var(--qa-pink);
}

.speaker-name[b-gs8vov4527] {
    margin-top: 18px;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 20px;
}

.speaker-role[b-gs8vov4527] {
    margin-top: 2px;
    font-weight: 700;
    font-size: 16px;
    color: var(--qa-pink);
}

.audience[b-gs8vov4527] {
    display: flex;
    flex-wrap: wrap;
    gap: 12px;
    list-style: none;
    margin: 0;
    padding: 0;
}

.audience li[b-gs8vov4527] {
    border: 2px solid var(--qa-ink);
    border-radius: 999px;
    padding: 10px 20px;
    font-weight: 700;
    font-size: 17px;
}

.next-text[b-gs8vov4527] {
    margin: 0;
    max-width: 44em;
    color: var(--qa-muted);
}

/* Frise des épisodes : barre grise, premier tiers en rose (l'épisode en cours). */
.series[b-gs8vov4527] {
    position: relative;
    margin-top: 36px;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
}

.series[b-gs8vov4527]::before,
.series[b-gs8vov4527]::after {
    content: "";
    position: absolute;
    inset-inline-start: 0;
    top: 18px;
    height: 14px;
    border-radius: 7px;
}

.series[b-gs8vov4527]::before {
    inset-inline-end: 0;
    background: var(--qa-border);
}

.series[b-gs8vov4527]::after {
    width: calc(100% / 6 + 4px);
    background: var(--qa-pink);
}

.stop[b-gs8vov4527] {
    position: relative;
    padding-top: 62px;
    text-align: center;
}

.stop[b-gs8vov4527]::before {
    content: "";
    position: absolute;
    left: calc(50% - 15px);
    top: 10px;
    width: 30px;
    height: 30px;
    border-radius: 50%;
    background: #ffffff;
    border: 5px dashed var(--qa-muted);
    box-sizing: border-box;
}

.stop-current[b-gs8vov4527]::before {
    background: var(--qa-pink);
    border: 8px solid #ffffff;
    box-shadow: 0 0 0 3px var(--qa-pink), 0 0 0 14px rgba(201,42,98,0.15);
    left: calc(50% - 18px);
    top: 7px;
    width: 36px;
    height: 36px;
    z-index: 1;
}

.stop small[b-gs8vov4527] {
    display: block;
    color: var(--qa-muted);
    font-weight: 700;
    font-size: 15px;
}

.stop b[b-gs8vov4527] {
    display: block;
    font-size: 20px;
    color: var(--qa-muted);
}

.stop span[b-gs8vov4527] {
    font-size: 15px;
}

.stop-current b[b-gs8vov4527] {
    color: var(--qa-ink);
}

.stop-current small[b-gs8vov4527],
.stop-current span[b-gs8vov4527] {
    color: var(--qa-pink);
}

.faq[b-gs8vov4527] {
    max-width: 860px;
}

.faq details[b-gs8vov4527] {
    border-top: 1.5px solid var(--qa-border);
    padding: 18px 0;
}

.faq details:last-child[b-gs8vov4527] {
    border-bottom: 1.5px solid var(--qa-border);
}

.faq summary[b-gs8vov4527] {
    cursor: pointer;
    font-weight: 700;
    font-size: 19px;
    list-style: none;
    display: flex;
    justify-content: space-between;
    gap: 16px;
}

.faq summary[b-gs8vov4527]::-webkit-details-marker {
    display: none;
}

.faq summary[b-gs8vov4527]::after {
    content: "+";
    color: var(--qa-pink);
    font-size: 26px;
    line-height: 1;
    transition: transform 0.2s;
}

.faq details[open] summary[b-gs8vov4527]::after {
    transform: rotate(45deg);
}

.faq p[b-gs8vov4527] {
    margin: 10px 0 0;
    color: var(--qa-muted);
}

/* --- Tablette et mobile --------------------------------------------------- */

@media (max-width: 900px) {
    .event-grid[b-gs8vov4527] {
        grid-template-columns: 1fr;
        gap: 40px;
    }

    .stage[b-gs8vov4527] {
        grid-template-columns: 1fr;
        justify-items: center;
    }

    .hub[b-gs8vov4527]::before,
    .hub[b-gs8vov4527]::after {
        display: none;
    }

    .stage .card[b-gs8vov4527] {
        width: 100%;
        max-width: 440px;
        box-sizing: border-box;
    }
}

@media (max-width: 560px) {
    .pill-text[b-gs8vov4527] {
        display: none;
    }

    .stop b[b-gs8vov4527] {
        font-size: 16px;
    }
}
/* /Components/Pages/Ia.razor.rz.scp.css */
/* --- Axes et bandeau « moins / plus / résultat » ------------------------------------------------------------ */

.axes-stack[b-b5tkrpofsm] {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.balance[b-b5tkrpofsm] {
    background: var(--qa-ink);
    border-radius: 24px;
    padding: 28px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px;
}

.balance-item[b-b5tkrpofsm] {
    flex: 1 1 260px;
    min-width: 0;
    display: flex;
    gap: 16px;
    align-items: center;
}

.balance-sign[b-b5tkrpofsm] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: #50535F;
    color: #ffffff;
    font-size: 28px;
    font-weight: 700;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.more .balance-sign[b-b5tkrpofsm] {
    background: var(--qa-pink);
}

.balance-label[b-b5tkrpofsm] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    color: #ffffff;
    font-size: 18px;
    letter-spacing: 0.06em;
}

.more .balance-label[b-b5tkrpofsm] {
    color: var(--qa-pink-light);
}

.balance-text[b-b5tkrpofsm] {
    color: #C9CCD6;
    font-size: 16px;
}

.balance-result[b-b5tkrpofsm] {
    flex: 1 1 300px;
    min-width: 0;
    background: var(--qa-pink);
    border-radius: 16px;
    padding: 18px 22px;
}

.balance-result-label[b-b5tkrpofsm] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #FFE6EF;
}

.balance-result-text[b-b5tkrpofsm] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    color: #ffffff;
    font-size: 20px;
    line-height: 1.3;
}

/* --- Bénéfices ------------------------------------------------------------- */

.benefits-stack[b-b5tkrpofsm] {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.benefits-heading[b-b5tkrpofsm] {
    max-width: 820px;
}

.benefits[b-b5tkrpofsm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(270px, 100%), 1fr));
    gap: 18px;
}

.benefit[b-b5tkrpofsm] {
    background: #ffffff;
    border: 1px solid var(--qa-border);
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.benefit-icon[b-b5tkrpofsm] {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: #FCE8EF;
    display: flex;
    align-items: center;
    justify-content: center;
}

.benefit h3[b-b5tkrpofsm] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
    color: var(--qa-ink);
}

.benefit p[b-b5tkrpofsm] {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    color: var(--qa-muted);
}

/* --- Qommute.Companion ------------------------------------------------------ */

.companion[b-b5tkrpofsm] {
    background: #FAFAFC;
    padding: 96px 32px;
    border-top: 1px solid var(--qa-border);
}

.companion-stack[b-b5tkrpofsm] {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.companion-heading[b-b5tkrpofsm] {
    max-width: 820px;
}

/* Lien « Solutions » du texte (.resx) : sans l'attribut d'isolation CSS. */
.companion-lead[b-b5tkrpofsm]  a {
    color: var(--qa-pink);
    font-weight: 700;
}

.companion-card[b-b5tkrpofsm] {
    background: var(--qa-ink);
    border-radius: 24px;
    padding: 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 28px;
    text-decoration: none;
    color: #ffffff;
}

.companion-card:hover[b-b5tkrpofsm] {
    color: #ffffff;
}

.companion-icon[b-b5tkrpofsm] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: #C29B00;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.companion-body[b-b5tkrpofsm] {
    flex: 1 1 420px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.companion-name[b-b5tkrpofsm] {
    font-family: var(--qa-font-heading);
    font-size: 26px;
    line-height: 1.2;
}

.companion-prefix[b-b5tkrpofsm] {
    color: #B9BCC7;
    font-weight: 500;
}

.companion-brand[b-b5tkrpofsm] {
    color: #F3D27A;
    font-weight: 700;
}

.companion-body p[b-b5tkrpofsm] {
    margin: 0;
    font-size: 17px;
    color: #D7D9E0;
}

.companion-button[b-b5tkrpofsm] {
    background: #F3D27A;
    color: var(--qa-ink);
    font-weight: 700;
    font-size: 16px;
    padding: 14px 24px;
    border-radius: 999px;
    white-space: nowrap;
}

/* Le libellé du bouton peut passer à la ligne sur un petit écran (règle du marketing). */
@media (max-width: 640px) {
    .companion-button[b-b5tkrpofsm] {
        white-space: normal;
    }
}

/* --- Confiance et maîtrise (fond sombre) ------------------------------------- */

.trust[b-b5tkrpofsm] {
    background: var(--qa-ink);
    padding: 104px 32px;
}

.trust-stack[b-b5tkrpofsm] {
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.trust-heading[b-b5tkrpofsm] {
    max-width: 860px;
}

.trust-lead[b-b5tkrpofsm] {
    margin: 0;
    font-size: 19px;
    color: #C9CCD6;
}

.pledge[b-b5tkrpofsm] {
    margin: 0;
    border: 1.5px solid var(--qa-pink-light);
    border-radius: 24px;
    padding: 32px 36px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.pledge-label[b-b5tkrpofsm] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

.pledge blockquote[b-b5tkrpofsm] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 500;
    font-size: clamp(20px, 2vw, 25px);
    line-height: 1.45;
    color: #ffffff;
}

.trust-grid[b-b5tkrpofsm] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(260px, 100%), 1fr));
    gap: 18px;
}

.trust-card[b-b5tkrpofsm] {
    background: #2E3140;
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.trust-card h3[b-b5tkrpofsm] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 19px;
    line-height: 1.3;
    color: #ffffff;
}

.trust-card p[b-b5tkrpofsm] {
    margin: 0;
    font-size: 15.5px;
    line-height: 1.6;
    color: #C9CCD6;
}

.trust-footer[b-b5tkrpofsm] {
    margin: 0;
    font-size: 16px;
    color: #B9BCC7;
}

/* Liens du texte (.resx) : sans l'attribut d'isolation CSS. */
.trust-footer[b-b5tkrpofsm]  a {
    color: var(--qa-pink-light);
    font-weight: 700;
}

/* --- Appel à l'action ------------------------------------------------------ */

.cta-space[b-b5tkrpofsm] {
    padding-top: 96px;
}
/* /Components/Pages/Index.razor.rz.scp.css */
/* --- Bandeau : photo de ville, voile plus sombre que sur les autres pages ---------------------------------- */

.hero[b-xfroqu393c] {
    background-image: linear-gradient(90deg, rgba(18,20,30,0.80) 0%, rgba(18,20,30,0.55) 45%, rgba(18,20,30,0.08) 80%, rgba(18,20,30,0) 100%), var(--qa-hero-image);
    color: #ffffff;
}

[dir="rtl"] .hero[b-xfroqu393c] {
    background-image: linear-gradient(270deg, rgba(18,20,30,0.80) 0%, rgba(18,20,30,0.55) 45%, rgba(18,20,30,0.08) 80%, rgba(18,20,30,0) 100%), var(--qa-hero-image);
}

.hero-inner[b-xfroqu393c] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 120px 32px 132px;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.hero-eyebrow[b-xfroqu393c] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

.hero h1[b-xfroqu393c] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(40px, 5.4vw, 72px);
    line-height: 1.06;
    letter-spacing: -0.02em;
    max-width: 900px;
}

.hero-lead[b-xfroqu393c] {
    margin: 0;
    font-size: 21px;
    line-height: 1.5;
    color: #E3E5EC;
    max-width: 680px;
}

.hero-buttons[b-xfroqu393c] {
    display: flex;
    flex-wrap: wrap;
    gap: 14px;
    margin-top: 8px;
}

.hero-button-ghost[b-xfroqu393c] {
    background: rgba(255,255,255,0.12);
    border: 1.5px solid rgba(255,255,255,0.6);
    color: #ffffff;
    text-decoration: none;
    font-weight: 700;
    font-size: 17px;
    padding: 14.5px 26px;
    border-radius: 999px;
}

.hero-button-ghost:hover[b-xfroqu393c] {
    color: #ffffff;
}

/* --- Chiffres clés ------------------------------------------------------- */

.stats[b-xfroqu393c] {
    border-bottom: 1px solid var(--qa-border);
}

.stats-inner[b-xfroqu393c] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 56px 32px;
}

/* --- Modules --------------------------------------------------------------- */

.modules[b-xfroqu393c] {
    padding: 104px 32px 96px;
}

.modules-stack[b-xfroqu393c] {
    display: flex;
    flex-direction: column;
    gap: 48px;
}

.modules-heading[b-xfroqu393c] {
    max-width: 760px;
}

.module[b-xfroqu393c] {
    background: var(--module-bg);
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    text-decoration: none;
    color: var(--qa-ink);
}

.module:hover[b-xfroqu393c] {
    color: var(--qa-ink);
}

.module-icon[b-xfroqu393c] {
    width: 52px;
    height: 52px;
    border-radius: 50%;
    background: var(--module-dot);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.module-name[b-xfroqu393c] {
    font-family: var(--qa-font-heading);
    font-size: 22px;
    line-height: 1.2;
}

.module-prefix[b-xfroqu393c] {
    color: var(--qa-muted);
    font-weight: 500;
}

.module-brand[b-xfroqu393c] {
    color: var(--module-accent);
    font-weight: 700;
}

.module-badge[b-xfroqu393c] {
    display: inline-flex;
    align-items: center;
    gap: 6px;
    align-self: flex-start;
    background: #ffffff;
    color: var(--module-accent);
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    padding: 5px 10px;
    border-radius: 999px;
}

.module p[b-xfroqu393c] {
    margin: 0;
    font-size: 16px;
    color: #3B3E4A;
}

.module-link[b-xfroqu393c] {
    margin-top: auto;
    font-weight: 700;
    font-size: 15px;
    color: var(--module-accent);
}

/* --- Offre de service : bandeau sombre sous les modules ---------------------- */

.service[b-xfroqu393c] {
    background: var(--qa-ink);
    border-radius: 24px;
    padding: 32px 36px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 20px 32px;
    text-decoration: none;
    color: #ffffff;
}

.service:hover[b-xfroqu393c] {
    color: #ffffff;
}

.service-icon[b-xfroqu393c] {
    width: 64px;
    height: 64px;
    border-radius: 50%;
    background: var(--qa-pink-light);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

/* min(420px, 100%) : pas de débordement sur les écrans de 320 px. */
.service-text[b-xfroqu393c] {
    flex: 1 1 min(420px, 100%);
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.service-eyebrow[b-xfroqu393c] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

.service-title[b-xfroqu393c] {
    font-family: var(--qa-font-heading);
    font-size: 26px;
    line-height: 1.25;
}

.service-prefix[b-xfroqu393c] {
    color: #B9BCC7;
    font-weight: 500;
}

.service-name[b-xfroqu393c] {
    font-weight: 700;
}

.service-tagline[b-xfroqu393c] {
    font-weight: 600;
}

.service p[b-xfroqu393c] {
    margin: 0;
    font-size: 16px;
    color: #D7D9E0;
}

.service-link[b-xfroqu393c] {
    background: #ffffff;
    color: var(--qa-ink);
    font-weight: 700;
    font-size: 16px;
    padding: 14px 24px;
    border-radius: 999px;
    white-space: nowrap;
}

/* --- Focus IA (fond sombre) ------------------------------------------------- */

.ai[b-xfroqu393c] {
    background: var(--qa-ink);
    color: #ffffff;
    padding: 104px 32px;
}

.ai-stack[b-xfroqu393c] {
    display: flex;
    flex-direction: column;
    gap: 44px;
}

.ai-header[b-xfroqu393c] {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    gap: 24px;
}

.ai-heading[b-xfroqu393c] {
    max-width: 760px;
}

.ai-lead[b-xfroqu393c] {
    margin: 0;
    font-size: 19px;
    color: #C9CCD6;
}

.ai-link[b-xfroqu393c] {
    color: var(--qa-pink-light);
    font-weight: 700;
    font-size: 17px;
}

.ai-result[b-xfroqu393c] {
    background: var(--qa-pink);
    border-radius: 20px;
    padding: 26px 32px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 12px 24px;
}

.ai-result-label[b-xfroqu393c] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: #FFE6EF;
}

.ai-result-text[b-xfroqu393c] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 24px;
    color: #ffffff;
}

/* --- Engagement et témoignage ------------------------------------------- */

.quote-stack[b-xfroqu393c] {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

.statement[b-xfroqu393c] {
    display: flex;
    flex-direction: column;
    gap: 18px;
    max-width: 980px;
}

.statement-bar[b-xfroqu393c] {
    width: 56px;
    height: 4px;
    border-radius: 999px;
    background: var(--qa-pink);
}

.statement p[b-xfroqu393c] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: clamp(24px, 2.6vw, 34px);
    line-height: 1.35;
    letter-spacing: -0.01em;
    color: var(--qa-ink);
}

/* Les <span> mis en valeur viennent du texte (.resx) : sans l'attribut d'isolation CSS. */
.statement p[b-xfroqu393c]  span {
    color: var(--qa-pink);
}

.quote[b-xfroqu393c] {
    margin: 0;
    background: #ffffff;
    border-radius: 24px;
    padding: 40px;
    display: flex;
    flex-direction: column;
    gap: 18px;
    max-width: 900px;
}

.quote blockquote[b-xfroqu393c] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 500;
    font-size: 24px;
    line-height: 1.45;
    color: var(--qa-ink);
}

.quote figcaption[b-xfroqu393c] {
    font-size: 16px;
    color: var(--qa-muted);
}

.quote figcaption[b-xfroqu393c]  strong {
    color: var(--qa-ink);
}

.quote-link[b-xfroqu393c] {
    font-weight: 700;
    font-size: 17px;
}

/* --- Appel à l'action ------------------------------------------------------ */

.cta-space[b-xfroqu393c] {
    padding-top: 96px;
}

/* Mobile : bandeau de l'offre de service moins rembourré, titre réduit, bouton qui peut passer à la ligne. */
@media (max-width: 640px) {
    .service[b-xfroqu393c] {
        padding: 28px 24px;
    }

    .service-title[b-xfroqu393c] {
        font-size: 22px;
    }

    .service-link[b-xfroqu393c] {
        white-space: normal;
    }
}
/* /Components/Pages/NousRejoindre.razor.rz.scp.css */
.join[b-c7xt27mbmr] {
    padding: 72px 32px 96px;
}

/* --- Photo de l'équipe ----------------------------------------------------- */

/* Photo entière, à son format d'origine (pas de recadrage : personne ne doit être coupé), moins large que le contenu. */
.photo[b-c7xt27mbmr] {
    max-width: 760px;
    margin-bottom: 56px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.photo img[b-c7xt27mbmr] {
    width: 100%;
    height: auto;
    border-radius: 24px;
    display: block;
    box-shadow: 0 24px 60px -30px rgba(35,37,47,0.35);
}

.photo figcaption[b-c7xt27mbmr] {
    font-size: 15px;
    color: var(--qa-muted);
}

/* --- Colonne de présentation ---------------------------------------------- */

.intro[b-c7xt27mbmr] {
    flex: 1 1 340px;
    min-width: 0;
    max-width: 440px;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.heading[b-c7xt27mbmr] {
    display: flex;
    flex-direction: column;
    gap: 14px;
}

.eyebrow[b-c7xt27mbmr] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

h1[b-c7xt27mbmr] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(32px, 3.6vw, 46px);
    line-height: 1.12;
    letter-spacing: -0.02em;
    color: var(--qa-ink);
}

/* « recrute. » : le <span> vient du texte (.resx), il n'a pas l'attribut d'isolation CSS. */
h1[b-c7xt27mbmr]  span {
    color: var(--qa-pink);
}

.lead[b-c7xt27mbmr] {
    margin: 0;
    font-size: 19px;
    line-height: 1.55;
    color: #3B3E4A;
}

/* --- Raisons de nous rejoindre --------------------------------------------- */

.reason[b-c7xt27mbmr] {
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.reason-icon[b-c7xt27mbmr] {
    width: 48px;
    height: 48px;
    border-radius: 14px;
    background: #FCE8EF;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.reason-text[b-c7xt27mbmr] {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.reason-text h3[b-c7xt27mbmr] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 18px;
}

.reason-text p[b-c7xt27mbmr] {
    margin: 0;
    font-size: 16px;
    line-height: 1.5;
    color: var(--qa-muted);
}

.company-link[b-c7xt27mbmr] {
    font-weight: 700;
    font-size: 16px;
}

/* --- Adresse --------------------------------------------------------------- */

.address[b-c7xt27mbmr] {
    background: #ffffff;
    border-radius: 20px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.address-name[b-c7xt27mbmr] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 17px;
}

.address-text[b-c7xt27mbmr] {
    font-size: 16px;
    color: #3B3E4A;
}

.address-email[b-c7xt27mbmr] {
    font-weight: 600;
}
/* /Components/Pages/References.razor.rz.scp.css */
/* --- Bandeau ------------------------------------------------------------- */

.hero[b-j3nry54a8i] {
    color: #ffffff;
}

.hero-inner[b-j3nry54a8i] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 96px 32px 72px;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.hero-eyebrow[b-j3nry54a8i] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

.hero h1[b-j3nry54a8i] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(36px, 4.6vw, 60px);
    line-height: 1.08;
    letter-spacing: -0.02em;
    max-width: 920px;
}

.hero-figures[b-j3nry54a8i] {
    margin-top: 32px;
}

.section-stack[b-j3nry54a8i] {
    display: flex;
    flex-direction: column;
    gap: 36px;
}

/* --- Carte du monde : logos positionnés (--x / --y) ; grille de logos sur mobile ------------------------------ */

.map[b-j3nry54a8i] {
    position: relative;
}

.map-geo[b-j3nry54a8i] {
    position: relative;
}

.map-bg[b-j3nry54a8i] {
    display: block;
    width: 100%;
    height: auto;
}

.map-logos[b-j3nry54a8i] {
    position: absolute;
    inset: 0;
}

/* left (et non inset-inline-start) : la carte n'est pas inversée en arabe, les logos non plus. */
.map-logo[b-j3nry54a8i] {
    position: absolute;
    left: var(--x);
    top: var(--y);
    transform: translate(-50%, -50%);
    width: clamp(96px, 14%, 200px);
    height: clamp(44px, 6.6vw, 92px);
    display: flex;
    align-items: center;
    justify-content: center;
}

.map-logo img[b-j3nry54a8i] {
    max-width: 100%;
    max-height: 100%;
    width: auto;
    height: auto;
    object-fit: contain;
    display: block;
}

/* Positions des logos, dans l'ordre de References.razor (Logos). */
.map-logo:nth-child(1)[b-j3nry54a8i] { --x: 10%; --y: 24%; }
.map-logo:nth-child(2)[b-j3nry54a8i] { --x: 26%; --y: 24%; }
.map-logo:nth-child(3)[b-j3nry54a8i] { --x: 42%; --y: 24%; }
.map-logo:nth-child(4)[b-j3nry54a8i] { --x: 58%; --y: 24%; }
.map-logo:nth-child(5)[b-j3nry54a8i] { --x: 74%; --y: 24%; }
.map-logo:nth-child(6)[b-j3nry54a8i] { --x: 90%; --y: 24%; }
.map-logo:nth-child(7)[b-j3nry54a8i] { --x: 28%; --y: 44%; }
.map-logo:nth-child(8)[b-j3nry54a8i] { --x: 50%; --y: 44%; }
.map-logo:nth-child(9)[b-j3nry54a8i] { --x: 72%; --y: 44%; }
.map-logo:nth-child(10)[b-j3nry54a8i] { --x: 14%; --y: 63%; }
.map-logo:nth-child(11)[b-j3nry54a8i] { --x: 36%; --y: 63%; }
.map-logo:nth-child(12)[b-j3nry54a8i] { --x: 58%; --y: 63%; }
.map-logo:nth-child(13)[b-j3nry54a8i] { --x: 80%; --y: 63%; }
.map-logo:nth-child(14)[b-j3nry54a8i] { --x: 24%; --y: 82%; }
.map-logo:nth-child(15)[b-j3nry54a8i] { --x: 50%; --y: 82%; }
.map-logo:nth-child(16)[b-j3nry54a8i] { --x: 76%; --y: 82%; }

@media (max-width: 899px) {
    .map-geo[b-j3nry54a8i] {
        position: absolute;
        inset: 0;
        overflow: hidden;
    }

    .map-bg[b-j3nry54a8i] {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        height: 100%;
        width: auto;
        max-width: none;
    }

    .map-logos[b-j3nry54a8i] {
        position: relative;
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 22px 18px;
        padding: 8px 8px 16px;
    }

    .map-logo[b-j3nry54a8i] {
        position: static;
        transform: none;
        width: auto;
        height: 64px;
    }
}

.map-note[b-j3nry54a8i] {
    margin: 0;
    font-size: 16px;
    color: var(--qa-muted);
}

/* --- Témoignages ------------------------------------------------------------ */

.quotes[b-j3nry54a8i] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
    gap: 20px;
}

.quote[b-j3nry54a8i] {
    margin: 0;
    background: #ffffff;
    border-radius: 24px;
    padding: 36px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.quote blockquote[b-j3nry54a8i] {
    margin: 0;
    font-size: 18px;
    line-height: 1.6;
    color: var(--qa-ink);
}

.quote figcaption[b-j3nry54a8i] {
    margin-top: auto;
    font-size: 15px;
    color: var(--qa-muted);
}

/* Nom du client : le <strong> vient du texte (.resx), sans l'attribut d'isolation CSS. */
.quote figcaption[b-j3nry54a8i]  strong {
    color: var(--qa-ink);
    font-family: var(--qa-font-heading);
    font-size: 17px;
}

/* --- Cas clients ------------------------------------------------------------ */

.case[b-j3nry54a8i] {
    border: 1px solid var(--qa-border);
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    text-decoration: none;
    color: var(--qa-ink);
}

.case-date[b-j3nry54a8i] {
    font-size: 14px;
    color: var(--qa-muted);
}

.case-title[b-j3nry54a8i] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 20px;
    line-height: 1.3;
}

.case-link[b-j3nry54a8i] {
    margin-top: auto;
    color: var(--qa-pink);
    font-weight: 700;
    font-size: 15px;
}
/* /Components/Pages/Solutions.razor.rz.scp.css */
/* --- Bandeau ------------------------------------------------------------- */

.hero[b-qi4yb5qwpj] {
    color: #ffffff;
}

.hero-inner[b-qi4yb5qwpj] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 96px 32px 88px;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.hero-eyebrow[b-qi4yb5qwpj] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

.hero h1[b-qi4yb5qwpj] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(36px, 4.6vw, 60px);
    line-height: 1.08;
    letter-spacing: -0.02em;
    max-width: 900px;
}

.hero-lead[b-qi4yb5qwpj] {
    margin: 0;
    font-size: 20px;
    color: #E3E5EC;
    max-width: 720px;
}

.hero-audience[b-qi4yb5qwpj] {
    margin: 0;
    font-size: 18px;
    line-height: 1.55;
    color: #E3E5EC;
    max-width: 760px;
    border-inline-start: 3px solid var(--qa-pink-light);
    padding-inline-start: 16px;
}

/* Mises en valeur du texte (.resx) : sans l'attribut d'isolation CSS. */
.hero-audience[b-qi4yb5qwpj]  strong {
    color: #ffffff;
}

.chips[b-qi4yb5qwpj] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 10px;
}

.chip[b-qi4yb5qwpj] {
    display: flex;
    align-items: center;
    gap: 8px;
    background: rgba(255,255,255,0.1);
    border: 1px solid rgba(255,255,255,0.3);
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    padding: 10px 16px;
    border-radius: 999px;
}

/* Pastille de couleur : le <span> vide vient du texte (.resx). */
.chip[b-qi4yb5qwpj]  span {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    background: var(--module-dot);
}

/* Le gris de l'offre de service disparaîtrait sur le bandeau sombre : un gris plus clair. */
.chip.qa-module-service[b-qi4yb5qwpj]  span {
    background: #9A9CA5;
}

/* --- Visuel de Display (image ; les autres modules ont une maquette, Components/Sections/Mockups) --------- */

.visual-image[b-qi4yb5qwpj] {
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid var(--qa-border);
    box-shadow: 0 24px 60px -30px rgba(35,37,47,0.35);
}

.visual-image img[b-qi4yb5qwpj] {
    width: 100%;
    height: auto;
    display: block;
}

/* --- Offre de service : niveaux, organisation et abonnement (sous son périmètre) --------------------------- */

.levels[b-qi4yb5qwpj] {
    display: flex;
    flex-direction: column;
    gap: 16px;
}

.levels-label[b-qi4yb5qwpj] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

.levels-row[b-qi4yb5qwpj],
.terms[b-qi4yb5qwpj] {
    display: flex;
    flex-wrap: wrap;
    gap: 16px;
}

.level[b-qi4yb5qwpj] {
    flex: 1 1 240px;
    min-width: 0;
    background: #ffffff;
    border: 1px solid var(--qa-border);
    border-radius: 18px;
    padding: 22px;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.level-offer[b-qi4yb5qwpj] {
    font-family: var(--qa-font-heading);
    font-size: 13px;
    font-weight: 600;
    color: var(--qa-muted);
}

.level-name[b-qi4yb5qwpj] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 24px;
    color: var(--qa-ink);
}

.level p[b-qi4yb5qwpj] {
    margin: 0;
    font-size: 15px;
    line-height: 1.55;
    color: var(--qa-muted);
}

.levels-note[b-qi4yb5qwpj] {
    margin: 0;
    font-size: 15px;
    color: var(--qa-muted);
}

/* min(360px, 100%) : pas de débordement sur les écrans de 320 px. */
.term[b-qi4yb5qwpj] {
    flex: 1 1 min(360px, 100%);
    background: #F4F4F7;
    border-radius: 20px;
    padding: 28px;
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.term h3[b-qi4yb5qwpj] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 20px;
    color: var(--qa-ink);
}

.term p[b-qi4yb5qwpj] {
    margin: 0;
    font-size: 16px;
    line-height: 1.6;
    color: var(--qa-muted);
}
/* /Components/Sections/AiAxes.razor.rz.scp.css */
/* min(280px, 100%) : une seule colonne sans débordement sur les écrans de 320 px. */
.axes[b-z3qe39a7fe] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(280px, 100%), 1fr));
    gap: 20px;
}

.axis[b-z3qe39a7fe] {
    background: #F4F4F7;
    border-radius: 20px;
    padding: 32px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.eyebrow[b-z3qe39a7fe] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

h3[b-z3qe39a7fe] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 22px;
}

ul[b-z3qe39a7fe] {
    margin: 0;
    padding-inline-start: 20px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    color: var(--qa-muted);
    font-size: 16px;
}

/* --- Fond sombre (accueil) ------------------------------------------------- */

.dark .axis[b-z3qe39a7fe] {
    background: #2E3140;
}

.dark .eyebrow[b-z3qe39a7fe] {
    color: var(--qa-pink-light);
}

.dark h3[b-z3qe39a7fe] {
    color: #ffffff;
}

.dark ul[b-z3qe39a7fe] {
    color: #D7D9E0;
}

.dark li[b-z3qe39a7fe] {
    padding-inline-start: 4px;
}
/* /Components/Sections/ArticleView.razor.rz.scp.css */
/* --- Bandeau ------------------------------------------------------------- */

.hero[b-anoj6esd2f] {
    color: #ffffff;
}

.hero-inner[b-anoj6esd2f] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 72px 32px 64px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.crumbs[b-anoj6esd2f] {
    font-size: 15px;
    color: #E3E5EC;
}

.crumbs a[b-anoj6esd2f] {
    color: var(--qa-pink-light);
    font-weight: 600;
    text-decoration: none;
}

h1[b-anoj6esd2f] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(32px, 4vw, 52px);
    line-height: 1.12;
    letter-spacing: -0.02em;
    max-width: 920px;
}

.date[b-anoj6esd2f] {
    font-size: 16px;
    color: #E3E5EC;
}

/* --- Article et encarts ----------------------------------------------------- */

.main[b-anoj6esd2f] {
    padding: 64px 32px 96px;
}

.columns[b-anoj6esd2f] {
    max-width: 1240px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
    align-items: flex-start;
}

.article[b-anoj6esd2f] {
    flex: 999 1 560px;
    min-width: 0;
    max-width: 780px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.logo[b-anoj6esd2f] {
    background: #F4F4F7;
    border-radius: 24px;
    height: 220px;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 12px;
}

.illustration[b-anoj6esd2f] {
    width: 100%;
    height: auto;
    display: block;
    border-radius: 24px;
    margin-bottom: 12px;
}

.logo img[b-anoj6esd2f] {
    max-height: 110px;
    max-width: 60%;
    width: auto;
    height: auto;
    display: block;
}

.article[b-anoj6esd2f]  p {
    margin: 0;
    font-size: 18px;
    line-height: 1.7;
    color: #3B3E4A;
}

.article[b-anoj6esd2f]  h2 {
    margin: 12px 0 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 24px;
    line-height: 1.3;
    color: var(--qa-ink);
}

.article[b-anoj6esd2f]  ul {
    margin: 0;
    padding-inline-start: 24px;
    display: flex;
    flex-direction: column;
    gap: 10px;
    font-size: 18px;
    line-height: 1.6;
    color: #3B3E4A;
}

.article[b-anoj6esd2f]  li {
    padding-inline-start: 6px;
}

/* Liens longs (adresse d'une source citée en note) : coupés plutôt que de déborder sur mobile. */
.article[b-anoj6esd2f]  a {
    overflow-wrap: anywhere;
}

.back[b-anoj6esd2f] {
    align-self: flex-start;
    margin-top: 20px;
    font-weight: 700;
    font-size: 16px;
}

.aside[b-anoj6esd2f] {
    flex: 1 1 260px;
    min-width: 0;
    max-width: 340px;
    display: flex;
    flex-direction: column;
    gap: 28px;
}

.box[b-anoj6esd2f] {
    background: #ffffff;
    border: 1px solid var(--qa-border);
    border-radius: 20px;
    padding: 22px 24px;
}

.box-title[b-anoj6esd2f] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 18px;
    margin-bottom: 6px;
}

.fact[b-anoj6esd2f] {
    display: flex;
    flex-direction: column;
    gap: 2px;
    padding: 12px 0;
    border-top: 1px solid var(--qa-border);
}

.fact-label[b-anoj6esd2f] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

.fact-value[b-anoj6esd2f] {
    font-size: 16px;
    color: var(--qa-ink);
    font-weight: 600;
}

.other[b-anoj6esd2f] {
    display: flex;
    flex-direction: column;
    gap: 4px;
    padding: 14px 0;
    border-top: 1px solid var(--qa-border);
    text-decoration: none;
    color: var(--qa-ink);
}

.other-date[b-anoj6esd2f] {
    font-size: 13px;
    color: var(--qa-muted);
}

.other-title[b-anoj6esd2f] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 16px;
    line-height: 1.35;
}
/* /Components/Sections/CtaBand.razor.rz.scp.css */
.cta[b-eabq52fzu8] {
    padding: 0 32px 96px;
}

.box[b-eabq52fzu8] {
    max-width: 1240px;
    margin: 0 auto;
    background: var(--qa-pink);
    border-radius: 28px;
    padding: 56px 48px;
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    gap: 28px;
}

.text[b-eabq52fzu8] {
    display: flex;
    flex-direction: column;
    gap: 10px;
    max-width: 680px;
}

h2[b-eabq52fzu8] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(28px, 3vw, 38px);
    line-height: 1.2;
    color: #ffffff;
}

p[b-eabq52fzu8] {
    margin: 0;
    font-size: 18px;
    color: #FFE6EF;
}

.button[b-eabq52fzu8] {
    background: #ffffff;
    color: var(--qa-pink);
    text-decoration: none;
    font-weight: 700;
    font-size: 17px;
    padding: 16px 28px;
    border-radius: 999px;
}
/* /Components/Sections/KeyFigures.razor.rz.scp.css */
/* min(200px, 100%) : une seule colonne sans débordement sur les écrans de 320 px. */
.figures[b-jt5mj2twyz] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(200px, 100%), 1fr));
    gap: 32px;
}

.figure[b-jt5mj2twyz] {
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding: 8px 0;
}

.value[b-jt5mj2twyz] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 48px;
    line-height: 1;
    color: var(--qa-pink);
}

.label[b-jt5mj2twyz] {
    font-size: 16px;
    color: var(--qa-muted);
    max-width: 240px;
}

.dark .value[b-jt5mj2twyz] {
    color: var(--qa-pink-light);
}

.dark .label[b-jt5mj2twyz] {
    color: #C9CCD6;
}
/* /Components/Sections/LegalDocument.razor.rz.scp.css */
/* --- Bandeau et liens entre documents légaux ------------------------------------------------------------- */

.hero[b-tv9okjayt7] {
    color: #ffffff;
}

.hero-inner[b-tv9okjayt7] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 80px 32px 64px;
    display: flex;
    flex-direction: column;
    gap: 20px;
}

.eyebrow[b-tv9okjayt7] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

h1[b-tv9okjayt7] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(34px, 4.2vw, 54px);
    line-height: 1.1;
    letter-spacing: -0.02em;
    max-width: 920px;
}

.documents[b-tv9okjayt7] {
    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    margin-top: 8px;
}

.document[b-tv9okjayt7] {
    color: #ffffff;
    text-decoration: none;
    font-weight: 600;
    font-size: 15px;
    padding: 9px 17px;
    border-radius: 999px;
    border: 1px solid rgba(255,255,255,0.45);
}

.document.current[b-tv9okjayt7] {
    background: #ffffff;
    color: var(--qa-ink);
    font-weight: 700;
    padding: 10px 18px;
    border: 0;
}

/* --- Sommaire et article ----------------------------------------------------- */

.main[b-tv9okjayt7] {
    padding: 72px 32px 96px;
}

.columns[b-tv9okjayt7] {
    max-width: 1240px;
    margin: 0 auto;
    display: flex;
    flex-wrap: wrap;
    gap: 48px;
    align-items: flex-start;
}

.toc[b-tv9okjayt7] {
    flex: 1 1 240px;
    min-width: 0;
    max-width: 280px;
    align-self: flex-start;
    background: #F4F4F7;
    border-radius: 18px;
    padding: 24px;
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.toc-title[b-tv9okjayt7] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

/* Les titres portent déjà leur numéro (« 1. Préambule ») : pas de second numéro de liste. */
.toc ol[b-tv9okjayt7] {
    margin: 0;
    padding: 0;
    list-style: none;
    display: flex;
    flex-direction: column;
    gap: 8px;
}

.toc a[b-tv9okjayt7] {
    color: #3B3E4A;
    text-decoration: none;
    font-size: 15px;
    line-height: 1.4;
}

.article[b-tv9okjayt7] {
    flex: 999 1 560px;
    min-width: 0;
    max-width: 820px;
    display: flex;
    flex-direction: column;
    gap: 16px;
}

/* Le texte juridique vient d'un fragment HTML : ses éléments n'ont pas l'attribut d'isolation CSS, d'où ::deep. */

.article[b-tv9okjayt7]  h2 {
    margin: 28px 0 0;
    padding-top: 24px;
    border-top: 1px solid var(--qa-border);
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 26px;
    line-height: 1.25;
    color: var(--qa-ink);
    scroll-margin-top: 24px;
}

.article[b-tv9okjayt7]  h3 {
    margin: 10px 0 0;
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 19px;
    color: #B0255A;
}

.article[b-tv9okjayt7]  h4 {
    margin: 6px 0 0;
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 17px;
    color: var(--qa-ink);
}

.article[b-tv9okjayt7]  p {
    margin: 0;
    font-size: 17px;
    line-height: 1.7;
    color: #3B3E4A;
}

.article[b-tv9okjayt7]  :is(ul, ol) {
    margin: 0;
    padding-inline-start: 24px;
    display: flex;
    flex-direction: column;
    gap: 8px;
    font-size: 17px;
    line-height: 1.6;
    color: #3B3E4A;
}

.article[b-tv9okjayt7]  li {
    padding-inline-start: 6px;
}

.article[b-tv9okjayt7]  strong {
    color: var(--qa-ink);
}

.article[b-tv9okjayt7]  a {
    color: var(--qa-pink);
    font-weight: 600;
}

/* Tableau (politique de confidentialité) : défilement horizontal sur petit écran. */
.article[b-tv9okjayt7]  div:has(> table) {
    overflow-x: auto;
    border: 1px solid var(--qa-border);
    border-radius: 14px;
}

.article[b-tv9okjayt7]  table {
    width: 100%;
    min-width: 560px;
    border-collapse: collapse;
}

.article[b-tv9okjayt7]  th {
    text-align: start;
    padding: 14px 18px;
    background: var(--qa-ink);
    color: #ffffff;
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 15px;
}

.article[b-tv9okjayt7]  td {
    padding: 14px 18px;
    border-top: 1px solid var(--qa-border);
    vertical-align: top;
    font-size: 16px;
    line-height: 1.55;
    color: #3B3E4A;
}

.article[b-tv9okjayt7]  td:first-child {
    font-weight: 600;
    color: var(--qa-ink);
}

/* --- Encart contact ---------------------------------------------------------- */

.article .contact[b-tv9okjayt7] {
    margin: 32px 0 0;
    padding: 20px 24px;
    background: #F4F4F7;
    border-radius: 14px;
    font-size: 15px;
    color: var(--qa-muted);
}

.contact[b-tv9okjayt7]  a {
    color: var(--qa-pink);
    font-weight: 600;
}

/* --- Téléchargement (PDF des CGU) -------------------------------------------- */

.download[b-tv9okjayt7] {
    display: inline-flex;
    align-items: center;
    gap: 8px;
    width: fit-content;
    max-width: 100%;
    box-sizing: border-box;
    margin: 0 0 24px;
    padding: 10px 20px;
    border: 1.5px solid var(--qa-pink);
    border-radius: 999px;
    color: var(--qa-pink);
    font-weight: 700;
    font-size: 15px;
    text-decoration: none;
}

.download[b-tv9okjayt7]::before {
    content: "↓";
}

.download:hover[b-tv9okjayt7] {
    background: var(--qa-pink);
    color: #ffffff;
}
/* /Components/Sections/Mockups/AlertMockup.razor.rz.scp.css */
.console[b-hyon5un8ml] {
    display: flex;
    gap: 1.2cqw;
    padding: 1.2cqw;
}

/* --- Événements en cours ----------------------------------------------- */

.events[b-hyon5un8ml] {
    flex: 1.4;
    display: flex;
    flex-direction: column;
    gap: 0.8cqw;
}

.events-title[b-hyon5un8ml] {
    display: flex;
    align-items: center;
    gap: 0.6cqw;
    font-weight: 700;
    font-size: 1.1cqw;
}

.live[b-hyon5un8ml] {
    width: 0.6cqw;
    height: 0.6cqw;
    border-radius: 50%;
    background: #2E9E57;
}

.event[b-hyon5un8ml] {
    border: 0.08cqw solid #E4E5EA;
    border-inline-start: 0.35cqw solid var(--module-dot);
    border-radius: 0.5cqw;
    padding: 0.8cqw 1cqw;
    display: flex;
    flex-direction: column;
    gap: 0.3cqw;
}

.event-head[b-hyon5un8ml] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.event-name[b-hyon5un8ml] { font-weight: 700; font-size: 1.05cqw; }
.event-text[b-hyon5un8ml] { font-size: 0.9cqw; color: #545866; }

/* --- Diffusion --------------------------------------------------------- */

.broadcast[b-hyon5un8ml] {
    flex: 1;
    background: var(--module-bg);
    border-radius: 0.7cqw;
    padding: 1cqw;
    display: flex;
    flex-direction: column;
    gap: 0.4cqw;
}

.broadcast-title[b-hyon5un8ml] { font-weight: 700; font-size: 1cqw; color: var(--module-accent); }
.broadcast-step[b-hyon5un8ml] { font-size: 0.85cqw; color: #545866; margin-bottom: 0.4cqw; }

.channel[b-hyon5un8ml] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.9cqw;
    padding: 0.35cqw 0;
    border-bottom: 0.08cqw solid #E4E5EA;
}

.status[b-hyon5un8ml] { font-weight: 700; color: #1D7540; }
.status.pending[b-hyon5un8ml] { color: #9A5508; }

.validate[b-hyon5un8ml] {
    margin-top: auto;
    background: var(--module-dot);
    color: #ffffff;
    text-align: center;
    font-weight: 700;
    font-size: 0.95cqw;
    padding: 0.6cqw;
    border-radius: 999px;
}
/* /Components/Sections/Mockups/CompanionMockup.razor.rz.scp.css */
.conversation[b-v2nnysdpdx] {
    padding: 1.2cqw;
    display: flex;
    flex-direction: column;
    gap: 0.8cqw;
}

.bubble[b-v2nnysdpdx] {
    border-radius: 0.8cqw;
    padding: 0.7cqw 0.9cqw;
    font-size: 0.92cqw;
    max-width: 80%;
    line-height: 1.4;
}

.bubble.operator[b-v2nnysdpdx] { align-self: flex-end; background: #23252F; color: #ffffff; }
.bubble.assistant[b-v2nnysdpdx] { align-self: flex-start; background: #F4F4F7; color: #23252F; }

/* --- Événement préparé ------------------------------------------------- */

.event[b-v2nnysdpdx] {
    align-self: flex-start;
    width: 82%;
    border: 0.1cqw solid var(--module-dot);
    border-radius: 0.8cqw;
    padding: 0.9cqw;
    display: flex;
    flex-direction: column;
    gap: 0.3cqw;
    background: #ffffff;
}

.event-head[b-v2nnysdpdx] {
    display: flex;
    align-items: center;
    gap: 0.5cqw;
    font-weight: 700;
    font-size: 0.95cqw;
}

.event-icon[b-v2nnysdpdx] {
    width: 1.8cqw;
    height: 1.8cqw;
    border-radius: 50%;
    background: var(--module-dot);
    display: flex;
    align-items: center;
    justify-content: center;
}

.field[b-v2nnysdpdx] {
    display: flex;
    gap: 0.8cqw;
    font-size: 0.85cqw;
    padding: 0.3cqw 0;
    border-bottom: 0.08cqw solid #E4E5EA;
}

.field-name[b-v2nnysdpdx] { width: 4.5cqw; color: #545866; flex-shrink: 0; }
.field-value[b-v2nnysdpdx] { font-weight: 600; }

.actions[b-v2nnysdpdx] {
    display: flex;
    gap: 0.5cqw;
    margin-top: 0.5cqw;
}

.action[b-v2nnysdpdx] {
    border: 0.1cqw solid var(--module-dot);
    color: var(--module-accent);
    font-weight: 700;
    font-size: 0.85cqw;
    padding: 0.45cqw 1cqw;
    border-radius: 999px;
}

.action.primary[b-v2nnysdpdx] { border: none; background: var(--module-dot); color: #ffffff; }

.prompt[b-v2nnysdpdx] {
    display: flex;
    align-items: center;
    gap: 0.6cqw;
    border: 0.08cqw solid #C9CBD3;
    border-radius: 999px;
    padding: 0.55cqw 1cqw;
    font-size: 0.85cqw;
    color: #545866;
}
/* /Components/Sections/Mockups/DataMockup.razor.rz.scp.css */
.dashboard[b-nlo2qeteyb] {
    padding: 1.2cqw;
    display: flex;
    flex-direction: column;
    gap: 1cqw;
}

/* --- Indicateurs ------------------------------------------------------- */

.kpis[b-nlo2qeteyb] {
    display: flex;
    gap: 0.8cqw;
}

.kpi[b-nlo2qeteyb] {
    flex: 1;
    background: var(--module-bg);
    border-radius: 0.6cqw;
    padding: 0.8cqw;
}

.kpi-name[b-nlo2qeteyb] { font-size: 0.8cqw; color: #545866; }

.kpi-value[b-nlo2qeteyb] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 1.7cqw;
    color: var(--module-accent);
}

.kpi-trend[b-nlo2qeteyb] { font-size: 0.75cqw; font-weight: 700; color: #1D7540; }

/* --- Graphiques -------------------------------------------------------- */

.charts[b-nlo2qeteyb] {
    display: flex;
    gap: 1cqw;
}

.chart[b-nlo2qeteyb] {
    border: 0.08cqw solid #E4E5EA;
    border-radius: 0.6cqw;
    padding: 0.8cqw;
    display: flex;
    flex-direction: column;
}

.chart.monthly[b-nlo2qeteyb] { flex: 1.6; gap: 0.5cqw; }
.chart.causes[b-nlo2qeteyb] { flex: 1; gap: 0.6cqw; }

.chart-title[b-nlo2qeteyb] { font-weight: 700; font-size: 0.95cqw; }

.months[b-nlo2qeteyb] {
    height: 10cqw;
    display: flex;
    gap: 0.3cqw;
}

.month[b-nlo2qeteyb] {
    flex: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 0.3cqw;
    height: 100%;
    justify-content: flex-end;
}

.month-bar[b-nlo2qeteyb] {
    width: 70%;
    background: var(--module-dot);
    border-radius: 0.25cqw 0.25cqw 0 0;
}

.month-1 .month-bar[b-nlo2qeteyb] { height: 62%; }
.month-2 .month-bar[b-nlo2qeteyb] { height: 78%; }
.month-3 .month-bar[b-nlo2qeteyb] { height: 70%; }
.month-4 .month-bar[b-nlo2qeteyb] { height: 85%; }
.month-5 .month-bar[b-nlo2qeteyb] { height: 74%; }
.month-6 .month-bar[b-nlo2qeteyb] { height: 90%; }
.month-7 .month-bar[b-nlo2qeteyb] { height: 68%; }
.month-8 .month-bar[b-nlo2qeteyb] { height: 82%; }
.month-9 .month-bar[b-nlo2qeteyb] { height: 88%; }
.month-10 .month-bar[b-nlo2qeteyb] { height: 76%; }
/* Meilleur mois, mis en valeur. */
.month-11 .month-bar[b-nlo2qeteyb] { height: 93%; background: var(--module-accent); }
.month-12 .month-bar[b-nlo2qeteyb] { height: 80%; }

.month-name[b-nlo2qeteyb] { font-size: 0.7cqw; color: #545866; }

.cause[b-nlo2qeteyb] {
    display: flex;
    flex-direction: column;
    gap: 0.2cqw;
}

.cause-head[b-nlo2qeteyb] {
    display: flex;
    justify-content: space-between;
    font-size: 0.78cqw;
}

.cause-share[b-nlo2qeteyb] { font-weight: 700; }

.gauge[b-nlo2qeteyb] {
    display: block;
    height: 0.5cqw;
    background: #E4E5EA;
    border-radius: 999px;
}

.gauge-fill[b-nlo2qeteyb] {
    display: block;
    height: 100%;
    background: var(--module-dot);
    border-radius: 999px;
}

.cause-1 .gauge-fill[b-nlo2qeteyb] { width: 84%; }
.cause-2 .gauge-fill[b-nlo2qeteyb] { width: 54%; }
.cause-3 .gauge-fill[b-nlo2qeteyb] { width: 36%; }
.cause-4 .gauge-fill[b-nlo2qeteyb] { width: 26%; }

.disclaimer[b-nlo2qeteyb] { font-size: 0.7cqw; color: #545866; }
/* /Components/Sections/Mockups/HubMockup.razor.rz.scp.css */
.stage[b-bayksws0lc] {
    display: flex;
    align-items: center;
    gap: 1cqw;
}

/* --- Flux entrants et sortants ----------------------------------------- */

.feeds[b-bayksws0lc] {
    display: flex;
    flex-direction: column;
    gap: 0.9cqw;
}

.feed[b-bayksws0lc] {
    background: #ffffff;
    border: 0.08cqw solid #D9DBE2;
    border-radius: 0.7cqw;
    padding: 0.7cqw 1cqw;
    box-shadow: 0 0.4cqw 1.2cqw -0.4cqw rgba(35,37,47,0.2);
}

.feed-name[b-bayksws0lc] { font-weight: 700; font-size: 1.05cqw; }
.feed-detail[b-bayksws0lc] { font-size: 0.8cqw; color: #545866; }

.arrows[b-bayksws0lc] {
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    height: 70%;
}

.arrow[b-bayksws0lc] {
    display: block;
    width: 3.5cqw;
    height: 0.2cqw;
    background: var(--module-dot);
    position: relative;
}

/* Pointe en triangle, tournée vers le sens de lecture. */
.arrow-head[b-bayksws0lc] {
    position: absolute;
    inset-inline-end: -0.1cqw;
    top: -0.4cqw;
    border-inline-start: 0.7cqw solid var(--module-dot);
    border-top: 0.5cqw solid transparent;
    border-bottom: 0.5cqw solid transparent;
}

/* --- Référentiel ------------------------------------------------------- */

.hub[b-bayksws0lc] {
    width: 19cqw;
    background: var(--module-bg);
    border: 0.15cqw solid var(--module-dot);
    border-radius: 1.2cqw;
    padding: 1.2cqw;
    display: flex;
    flex-direction: column;
    gap: 0.6cqw;
    box-shadow: 0 1.5cqw 4cqw -1cqw rgba(35,37,47,0.3);
}

.hub-head[b-bayksws0lc] {
    display: flex;
    align-items: center;
    gap: 0.7cqw;
}

.hub-icon[b-bayksws0lc] {
    width: 2.6cqw;
    height: 2.6cqw;
    border-radius: 50%;
    background: var(--module-dot);
    display: flex;
    align-items: center;
    justify-content: center;
}

.hub-name[b-bayksws0lc] { font-weight: 700; font-size: 1.15cqw; }
.hub-version[b-bayksws0lc] { font-size: 0.8cqw; color: #545866; }

.check[b-bayksws0lc] {
    background: #ffffff;
    border-radius: 0.5cqw;
    padding: 0.5cqw 0.7cqw;
    display: flex;
    justify-content: space-between;
    gap: 0.6cqw;
    font-size: 0.8cqw;
}

.check-name[b-bayksws0lc] { font-weight: 600; }
.check-result[b-bayksws0lc] { color: #1D7540; font-weight: 700; white-space: nowrap; }
.check-result.warning[b-bayksws0lc] { color: #9A5508; }

.portal[b-bayksws0lc] {
    text-align: center;
    background: var(--module-dot);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.85cqw;
    border-radius: 999px;
    padding: 0.45cqw;
}
/* /Components/Sections/Mockups/JourneyMockup.razor.rz.scp.css */
.stage[b-e4lbsbiv5n] {
    display: flex;
    align-items: center;
    gap: 2.5cqw;
}

/* --- Résultats sur le téléphone ---------------------------------------- */

.results[b-e4lbsbiv5n] {
    padding: 0.8cqw;
    display: flex;
    flex-direction: column;
    gap: 0.6cqw;
    flex: 1;
}

.trip[b-e4lbsbiv5n] {
    background: #F4F4F7;
    border-radius: 0.6cqw;
    padding: 0.6cqw;
    font-size: 0.78cqw;
    display: flex;
    flex-direction: column;
    gap: 0.3cqw;
}

.disruption[b-e4lbsbiv5n] {
    background: #FCE8EF;
    border-radius: 0.5cqw;
    padding: 0.5cqw;
    font-size: 0.72cqw;
    color: #8C1F47;
    font-weight: 600;
}

.itinerary[b-e4lbsbiv5n] {
    border: 0.08cqw solid #E4E5EA;
    border-radius: 0.6cqw;
    padding: 0.6cqw;
    display: flex;
    flex-direction: column;
    gap: 0.35cqw;
}

.itinerary.best[b-e4lbsbiv5n] { border: 0.15cqw solid var(--module-dot); }

.itinerary-head[b-e4lbsbiv5n] {
    display: flex;
    justify-content: space-between;
    font-weight: 700;
    font-size: 0.85cqw;
}

.legs[b-e4lbsbiv5n] {
    display: flex;
    align-items: center;
    gap: 0.3cqw;
    font-size: 0.7cqw;
    color: #545866;
}

/* Ligne empruntée, à la couleur du réseau. */
.route[b-e4lbsbiv5n] {
    color: #ffffff;
    font-weight: 700;
    font-size: 0.72cqw;
    padding: 0.1cqw 0.45cqw;
    border-radius: 0.3cqw;
}

.route.green[b-e4lbsbiv5n] { background: #1D7540; }
.route.blue[b-e4lbsbiv5n] { background: #2F78C2; }
.route.grey[b-e4lbsbiv5n] { background: #555A66; }
.route.purple[b-e4lbsbiv5n] { background: #9149C4; }
.route.yellow[b-e4lbsbiv5n] { background: #C29B00; }
.route.pink[b-e4lbsbiv5n] { background: #D6336C; }

.tags[b-e4lbsbiv5n] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3cqw;
}

/* --- Widget de recherche ----------------------------------------------- */

.widget[b-e4lbsbiv5n] {
    width: 20cqw;
    background: #ffffff;
    border-radius: 1cqw;
    padding: 1.2cqw;
    box-shadow: 0 1.5cqw 4cqw -1cqw rgba(35,37,47,0.3);
    display: flex;
    flex-direction: column;
    gap: 0.7cqw;
}

.widget-title[b-e4lbsbiv5n] { font-weight: 700; font-size: 1.1cqw; }
.widget-sub[b-e4lbsbiv5n] { font-size: 0.82cqw; color: #545866; }

.form[b-e4lbsbiv5n] {
    display: flex;
    flex-direction: column;
    gap: 0.4cqw;
    margin-top: 0.4cqw;
}

.field[b-e4lbsbiv5n] {
    border: 0.08cqw solid #C9CBD3;
    border-radius: 0.5cqw;
    padding: 0.5cqw;
    font-size: 0.82cqw;
}

.options[b-e4lbsbiv5n] {
    display: flex;
    gap: 0.4cqw;
}

.search[b-e4lbsbiv5n] {
    background: var(--module-dot);
    color: #ffffff;
    text-align: center;
    font-weight: 700;
    font-size: 0.9cqw;
    padding: 0.55cqw;
    border-radius: 999px;
    margin-top: 0.3cqw;
}
/* /Components/Sections/Mockups/MockupFrame.razor.rz.scp.css */
.frame[b-jn07eofkp3] {
    container-type: inline-size;
    border-radius: 24px;
    overflow: hidden;
    border: 1px solid #E4E5EA;
    box-shadow: 0 24px 60px -30px rgba(35,37,47,0.35);
}

.canvas[b-jn07eofkp3] {
    aspect-ratio: 16 / 9;
    position: relative;
    overflow: hidden;
}

.bar[b-jn07eofkp3] {
    position: absolute;
    top: 0;
    inset-inline: 0;
    height: 0.4cqw;
    display: flex;
}

.bar span:first-child[b-jn07eofkp3] { flex: 7; background: #555A66; }
.bar span:last-child[b-jn07eofkp3] { flex: 3; background: var(--module-mark, var(--module-dot)); }

/* --- Argumentaire ------------------------------------------------------ */

.pitch[b-jn07eofkp3] {
    position: absolute;
    inset-inline-start: 5cqw;
    top: 6cqw;
    width: 34cqw;
    display: flex;
    flex-direction: column;
    gap: 1.6cqw;
}

.brand[b-jn07eofkp3] {
    display: flex;
    align-items: flex-start;
    gap: 1.2cqw;
    margin-bottom: 1.4cqw;
}

.logo[b-jn07eofkp3] {
    width: 21cqw;
    height: auto;
    display: block;
}

/* Le badge « .ai » de l'en-tête (SiteHeader), à l'échelle du cadre. */
.badge[b-jn07eofkp3] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 1.55cqw;
    line-height: 1.2;
    color: var(--qa-pink);
    border: 0.18cqw solid var(--qa-pink);
    border-radius: 0.6cqw;
    padding: 0.22cqw 0.65cqw;
    margin-top: 0.45cqw;
}

.title[b-jn07eofkp3] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 3.5cqw;
    line-height: 1.08;
    letter-spacing: -0.02em;
    color: #23252F;
}

.title[b-jn07eofkp3]  span { color: var(--module-mark, var(--module-dot)); }

.lead[b-jn07eofkp3] {
    font-size: 1.2cqw;
    line-height: 1.5;
    color: #545866;
}

.points[b-jn07eofkp3] {
    display: flex;
    flex-direction: column;
    gap: 1.3cqw;
    margin-top: 0.8cqw;
}

/* --- Scène ------------------------------------------------------------- */

.scene[b-jn07eofkp3] {
    position: absolute;
    inset-inline: 42cqw 3cqw;
    top: 4cqw;
    bottom: 3cqw;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 2cqw;
}

.column[b-jn07eofkp3] {
    display: flex;
    flex-direction: column;
    gap: 1.2cqw;
}

.caption[b-jn07eofkp3] {
    display: flex;
    align-items: center;
    gap: 0.6cqw;
    font-size: 1cqw;
    color: #545866;
    white-space: nowrap;
}

.caption-dot[b-jn07eofkp3] {
    width: 0.55cqw;
    height: 0.55cqw;
    border-radius: 50%;
    background: var(--module-dot);
}

.caption[b-jn07eofkp3]  strong { color: #23252F; font-weight: 600; }

/* Pastille, commune aux scènes : pleine (couleur du module) ou douce (fond du module, texte d'accent).
   Une pastille d'un autre module prend sa classe .qa-module-{ancre}. */
.scene[b-jn07eofkp3]  .pill {
    font-weight: 700;
    font-size: 0.8cqw;
    padding: 0.15cqw 0.6cqw;
    border-radius: 999px;
    white-space: nowrap;
}

.scene[b-jn07eofkp3]  .pill.solid { background: var(--module-dot); color: #ffffff; }
.scene[b-jn07eofkp3]  .pill.soft { background: var(--module-bg); color: var(--module-accent); }
/* /Components/Sections/Mockups/MockupPhone.razor.rz.scp.css */
.phone[b-w0ek5ntin5] {
    width: 15cqw;
    background: #1E2029;
    border-radius: 2.4cqw;
    padding: 0.7cqw;
    box-shadow: 0 1.5cqw 4cqw -1cqw rgba(35,37,47,0.45);
}

.phone.wide[b-w0ek5ntin5] { width: 15.5cqw; }

.screen[b-w0ek5ntin5] {
    background: #ffffff;
    border-radius: 1.8cqw;
    overflow: hidden;
    aspect-ratio: 9 / 18.5;
    display: flex;
    flex-direction: column;
}

.notch-bar[b-w0ek5ntin5] {
    height: 1.8cqw;
    display: flex;
    justify-content: center;
    align-items: center;
}

.notch[b-w0ek5ntin5] {
    width: 4cqw;
    height: 0.7cqw;
    border-radius: 999px;
    background: #1E2029;
}
/* /Components/Sections/Mockups/MockupPoint.razor.rz.scp.css */
.point[b-g4c8f73evu] {
    display: flex;
    align-items: center;
    gap: 1.3cqw;
}

.icon[b-g4c8f73evu] {
    width: 2.4cqw;
    height: 2.4cqw;
    border-radius: 0.6cqw;
    background: #ffffff;
    box-shadow: 0 0.1cqw 0.4cqw rgba(35,37,47,0.12);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
    color: var(--module-dot);
}

.text[b-g4c8f73evu] {
    font-size: 1.15cqw;
    line-height: 1.35;
    color: #3B3E4A;
}
/* /Components/Sections/Mockups/MockupWindow.razor.rz.scp.css */
.window[b-4howoi20jp] {
    width: 48cqw;
    background: #ffffff;
    border-radius: 1cqw;
    box-shadow: 0 1.5cqw 4cqw -1cqw rgba(35,37,47,0.35);
    overflow: hidden;
    border: 0.08cqw solid #D9DBE2;
}

.window.narrow[b-4howoi20jp] { width: 44cqw; }

.titlebar[b-4howoi20jp] {
    background: #23252F;
    padding: 0.7cqw 1cqw;
    display: flex;
    align-items: center;
    gap: 0.5cqw;
}

.light[b-4howoi20jp] {
    width: 0.6cqw;
    height: 0.6cqw;
    border-radius: 50%;
}

.light.red[b-4howoi20jp] { background: #F06A97; }
.light.yellow[b-4howoi20jp] { background: #E0B84A; }
.light.green[b-4howoi20jp] { background: #5DBB7E; }

.name[b-4howoi20jp] {
    margin-inline-start: 1cqw;
    color: #ffffff;
    font-size: 0.95cqw;
    font-weight: 600;
}
/* /Components/Sections/Mockups/OneMockup.razor.rz.scp.css */
.stage[b-uavc9escca] {
    display: flex;
    align-items: center;
    gap: 2cqw;
}

/* --- Écran verrouillé -------------------------------------------------- */

.lock-screen[b-uavc9escca] {
    flex: 1;
    background: #2B3A4A;
    background-image: linear-gradient(160deg, #3E5468, #1E2A36);
    padding: 0.8cqw;
    display: flex;
    flex-direction: column;
    gap: 0.7cqw;
}

.clock[b-uavc9escca] {
    text-align: center;
    color: #ffffff;
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 3.2cqw;
    margin: 0.6cqw 0 0.4cqw;
}

.notification[b-uavc9escca] {
    background: rgba(255,255,255,0.92);
    border-radius: 0.9cqw;
    padding: 0.8cqw;
    display: flex;
    flex-direction: column;
    gap: 0.2cqw;
}

.notification-head[b-uavc9escca] {
    display: flex;
    justify-content: space-between;
    font-size: 0.7cqw;
    color: #545866;
}

.app[b-uavc9escca] { font-weight: 700; color: var(--module-accent); }
.notification-title[b-uavc9escca] { font-weight: 700; font-size: 0.85cqw; color: #23252F; }
.notification-text[b-uavc9escca] { font-size: 0.78cqw; color: #3B3E4A; line-height: 1.35; }

/* --- Préférences ------------------------------------------------------- */

.preferences[b-uavc9escca] {
    width: 20cqw;
    background: #ffffff;
    border-radius: 1cqw;
    padding: 1.4cqw;
    box-shadow: 0 1.5cqw 4cqw -1cqw rgba(35,37,47,0.3);
    display: flex;
    flex-direction: column;
    gap: 0.5cqw;
}

.preferences-title[b-uavc9escca] { font-weight: 700; font-size: 1.15cqw; }
.preferences-sub[b-uavc9escca] { font-size: 0.85cqw; color: #545866; }

.subscriptions[b-uavc9escca] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.4cqw;
    margin: 0.5cqw 0;
}

.channel[b-uavc9escca] {
    display: flex;
    justify-content: space-between;
    align-items: center;
    font-size: 0.95cqw;
    padding: 0.45cqw 0;
}

/* Interrupteur : la pastille passe du côté de fin quand il est activé. */
.switch[b-uavc9escca] {
    width: 2.4cqw;
    height: 1.3cqw;
    border-radius: 999px;
    background: #C9CBD3;
    display: flex;
    justify-content: flex-start;
    padding: 0.15cqw;
    box-sizing: border-box;
}

.switch.on[b-uavc9escca] { background: var(--module-dot); justify-content: flex-end; }

.knob[b-uavc9escca] {
    width: 1cqw;
    height: 1cqw;
    border-radius: 50%;
    background: #ffffff;
}

.consent[b-uavc9escca] { font-size: 0.8cqw; color: #545866; margin-top: 0.5cqw; }
/* /Components/Sections/Mockups/ServiceMockup.razor.rz.scp.css */
.offer[b-4unrk2zecq]  .title { font-size: 3.3cqw; }
.offer[b-4unrk2zecq]  .window { width: 46cqw; }

.center[b-4unrk2zecq] {
    padding: 1.2cqw;
    display: flex;
    flex-direction: column;
    gap: 0.9cqw;
}

.status[b-4unrk2zecq] {
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.online[b-4unrk2zecq] {
    display: flex;
    align-items: center;
    gap: 0.5cqw;
    font-weight: 700;
    font-size: 1.05cqw;
}

.live[b-4unrk2zecq] {
    width: 0.6cqw;
    height: 0.6cqw;
    border-radius: 50%;
    background: #2E9E57;
}

.pill.level[b-4unrk2zecq] { background: var(--module-mark); color: #ffffff; }

/* --- Indicateurs ------------------------------------------------------- */

.stats[b-4unrk2zecq] {
    display: flex;
    gap: 0.7cqw;
}

.stat[b-4unrk2zecq] {
    flex: 1;
    background: #F4F4F7;
    border-radius: 0.6cqw;
    padding: 0.8cqw;
}

.stat-label[b-4unrk2zecq] { font-size: 0.78cqw; color: #545866; }

.stat-value[b-4unrk2zecq] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 1.6cqw;
    color: #23252F;
}

/* --- Événements pris en charge ----------------------------------------- */

.tasks[b-4unrk2zecq] {
    display: flex;
    flex-direction: column;
}

.task[b-4unrk2zecq] {
    display: flex;
    align-items: center;
    gap: 0.7cqw;
    padding: 0.55cqw 0;
    border-bottom: 0.08cqw solid #E4E5EA;
}

.operator[b-4unrk2zecq] {
    width: 1.9cqw;
    height: 1.9cqw;
    border-radius: 50%;
    background: var(--module-mark);
    color: #ffffff;
    font-weight: 700;
    font-size: 0.7cqw;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.task-text[b-4unrk2zecq] { flex: 1; font-size: 0.88cqw; font-weight: 600; }

/* Couleur d'accent du module de l'état ; sans module, gris. */
.task-status[b-4unrk2zecq] { font-size: 0.8cqw; font-weight: 700; color: #545866; }
.task-status[class*="qa-module-"][b-4unrk2zecq] { color: var(--module-accent); }

.note[b-4unrk2zecq] { font-size: 0.7cqw; color: #545866; }
/* /Components/Sections/Mockups/StaffMockup.razor.rz.scp.css */
.stage[b-z490yqmju3] {
    display: flex;
    align-items: center;
    gap: 2.5cqw;
}

.app-bar[b-z490yqmju3] {
    background: var(--module-dot);
    color: #ffffff;
    padding: 0.7cqw 0.9cqw;
    font-weight: 700;
    font-size: 0.95cqw;
}

.app-body[b-z490yqmju3] {
    padding: 0.8cqw;
    display: flex;
    flex-direction: column;
    gap: 0.6cqw;
    flex: 1;
}

/* --- Signalement ------------------------------------------------------- */

.photo[b-z490yqmju3] {
    background: var(--module-bg);
    border-radius: 0.6cqw;
    height: 7cqw;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    gap: 0.3cqw;
    color: var(--module-accent);
    font-size: 0.75cqw;
    font-weight: 700;
}

.place[b-z490yqmju3] {
    display: flex;
    align-items: center;
    gap: 0.4cqw;
    font-size: 0.8cqw;
}

.tags[b-z490yqmju3] {
    display: flex;
    flex-wrap: wrap;
    gap: 0.3cqw;
}

.note[b-z490yqmju3] {
    border: 0.08cqw solid #E4E5EA;
    border-radius: 0.5cqw;
    padding: 0.5cqw;
    font-size: 0.75cqw;
    color: #545866;
}

.send[b-z490yqmju3] {
    margin-top: auto;
    background: var(--module-dot);
    color: #ffffff;
    text-align: center;
    font-weight: 700;
    font-size: 0.85cqw;
    padding: 0.55cqw;
    border-radius: 999px;
}

/* --- Consignes --------------------------------------------------------- */

.message[b-z490yqmju3] {
    background: #F4F4F7;
    border-radius: 0.4cqw;
    padding: 0.6cqw;
}

/* Événement de Qommute.Alert : aux couleurs de ce module (classe .qa-module-alert). */
.message.event[b-z490yqmju3] {
    border-inline-start: 0.3cqw solid var(--module-dot);
    background: var(--module-bg);
}

.message-title[b-z490yqmju3] { font-weight: 700; font-size: 0.82cqw; }
.message-text[b-z490yqmju3] { font-size: 0.75cqw; color: #3B3E4A; }

.actions[b-z490yqmju3] {
    display: flex;
    gap: 0.4cqw;
    margin-top: auto;
}

.action[b-z490yqmju3] {
    flex: 1;
    border: 0.1cqw solid var(--module-dot);
    color: var(--module-accent);
    text-align: center;
    font-weight: 700;
    font-size: 0.75cqw;
    padding: 0.45cqw;
    border-radius: 999px;
}

.action.primary[b-z490yqmju3] { border: none; background: var(--module-dot); color: #ffffff; }
/* /Components/Sections/PageHero.razor.rz.scp.css */
.hero[b-rpfuvifaqi] {
    color: #ffffff;
}

.inner[b-rpfuvifaqi] {
    max-width: 1240px;
    margin: 0 auto;
    padding: 96px 32px 88px;
    display: flex;
    flex-direction: column;
    gap: 22px;
}

.eyebrow[b-rpfuvifaqi] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink-light);
}

h1[b-rpfuvifaqi] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(36px, 4.6vw, 60px);
    line-height: 1.08;
    letter-spacing: -0.02em;
    max-width: 920px;
}

p[b-rpfuvifaqi] {
    margin: 0;
    font-size: 20px;
    color: #E3E5EC;
    max-width: 740px;
}
/* /Components/Sections/SectionHeading.razor.rz.scp.css */
.eyebrow[b-oiacwd74k6] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

.eyebrow.dark[b-oiacwd74k6] {
    color: var(--qa-pink-light);
}

h2[b-oiacwd74k6] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: clamp(30px, 3.4vw, 44px);
    line-height: 1.15;
    letter-spacing: -0.01em;
    color: var(--qa-ink);
}

h2.dark[b-oiacwd74k6] {
    color: #ffffff;
}
/* /Components/Sections/SolutionModule.razor.rz.scp.css */
.module[b-eq13qdlh1p] {
    background: #ffffff;
    padding: 88px 32px;
    border-top: 1px solid var(--qa-border);
}

.module.muted[b-eq13qdlh1p] {
    background: #FAFAFC;
}

.stack[b-eq13qdlh1p] {
    max-width: 1240px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    gap: 40px;
}

.row[b-eq13qdlh1p] {
    display: flex;
    flex-wrap: wrap;
    gap: 32px;
}

/* --- Carte d'identité du module ------------------------------------------- */

.card[b-eq13qdlh1p] {
    flex: 1 1 340px;
    min-width: 0;
    max-width: 420px;
    background: var(--module-bg);
    border-radius: 24px;
    padding: 36px;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.icon[b-eq13qdlh1p] {
    width: 72px;
    height: 72px;
    border-radius: 50%;
    background: var(--module-dot);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.name[b-eq13qdlh1p] {
    font-family: var(--qa-font-heading);
    line-height: 1.1;
}

.prefix[b-eq13qdlh1p] {
    color: var(--qa-muted);
    font-weight: 500;
    font-size: 20px;
}

.brand[b-eq13qdlh1p] {
    color: var(--module-accent);
    font-weight: 700;
    font-size: 44px;
}

.summary[b-eq13qdlh1p] {
    margin: 0;
    font-size: 18px;
    color: #2F323D;
}

.ai[b-eq13qdlh1p] {
    background: #ffffff;
    border-radius: 14px;
    padding: 14px 16px;
    display: flex;
    gap: 12px;
    align-items: flex-start;
    border-inline-start: 4px solid var(--module-mark, var(--module-dot));
    color: var(--module-mark, var(--module-accent));
}

.ai-text[b-eq13qdlh1p] {
    display: flex;
    flex-direction: column;
    gap: 2px;
}

.ai-label[b-eq13qdlh1p] {
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 12px;
    letter-spacing: 0.14em;
    text-transform: uppercase;
    color: var(--module-mark, var(--module-accent));
}

.ai-body[b-eq13qdlh1p] {
    font-size: 15px;
    line-height: 1.45;
    color: #2F323D;
}

.users[b-eq13qdlh1p] {
    margin-top: auto;
    display: flex;
    flex-direction: column;
    gap: 6px;
    padding-top: 18px;
}

.users-label[b-eq13qdlh1p] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 12px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--module-accent);
}

.users-value[b-eq13qdlh1p] {
    font-size: 16px;
}

/* --- Fonctionnalités clés --------------------------------------------------- */

.features[b-eq13qdlh1p] {
    flex: 999 1 560px;
    min-width: 0;
    display: flex;
    flex-direction: column;
    gap: 18px;
}

.features-label[b-eq13qdlh1p] {
    font-family: var(--qa-font-heading);
    font-weight: 600;
    font-size: 13px;
    letter-spacing: 0.16em;
    text-transform: uppercase;
    color: var(--qa-pink);
}

/* min(300px, 100%) : une seule colonne sans débordement sur les écrans de 320 px. */
.features-grid[b-eq13qdlh1p] {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr));
    gap: 16px;
}

.feature[b-eq13qdlh1p] {
    background: #F4F4F7;
    border-radius: 16px;
    padding: 24px;
    display: flex;
    gap: 16px;
    align-items: flex-start;
}

.feature-number[b-eq13qdlh1p] {
    width: 34px;
    height: 34px;
    border-radius: 50%;
    background: var(--module-dot);
    color: #ffffff;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-shrink: 0;
}

.feature-text[b-eq13qdlh1p] {
    display: flex;
    flex-direction: column;
    gap: 6px;
}

.feature h4[b-eq13qdlh1p] {
    margin: 0;
    font-family: var(--qa-font-heading);
    font-weight: 700;
    font-size: 18px;
    line-height: 1.3;
}

.feature p[b-eq13qdlh1p] {
    margin: 0;
    font-size: 16px;
    color: var(--qa-muted);
}
/* /Components/Sections/Timeline.razor.rz.scp.css */
/* Frise chronologique (ql-*) : en serpentin sur grand écran, verticale sous 900 px. */

.ql-wrap[b-d2ytg5bags] { display: flex; flex-direction: column; gap: 0; background: #ffffff; border-radius: 24px; padding: 40px 64px 8px; }
.ql-row[b-d2ytg5bags] { position: relative; list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); height: 300px; }
.ql-row[b-d2ytg5bags]::before { content: ""; position: absolute; top: 20px; left: 12.5%; right: 12.5%; height: 10px; border-radius: 5px; background: var(--qa-pink); }
.ql-r1[b-d2ytg5bags]::after, .ql-r2[b-d2ytg5bags]::after { content: ""; position: absolute; top: 20px; width: calc(12.5% + 44px); height: 310px; box-sizing: border-box; border: 10px solid var(--qa-pink); }
.ql-r1[b-d2ytg5bags]::after { left: 87.5%; border-left: none; border-radius: 0 160px 160px 0; }
.ql-r2[b-d2ytg5bags]::after { right: 87.5%; border-right: none; border-radius: 160px 0 0 160px; }
.ql-stop[b-d2ytg5bags] { position: relative; grid-row: 1; padding: 60px 16px 0; text-align: center; display: flex; flex-direction: column; gap: 6px; align-items: center; }
.ql-dot[b-d2ytg5bags] { position: absolute; z-index: 2; top: 12px; left: 50%; margin-left: -13px; width: 26px; height: 26px; box-sizing: border-box; border-radius: 50%; background: #ffffff; border: 6px solid var(--qa-pink); }
.ql-end .ql-dot[b-d2ytg5bags] { top: 3px; margin-left: -22px; width: 44px; height: 44px; border: 6px solid #ffffff; background: var(--qa-pink); box-shadow: 0 0 0 4px var(--qa-pink); }
.ql-r3[b-d2ytg5bags]::after { content: ""; position: absolute; top: 20px; left: 87.5%; width: calc(12.5% + 44px); height: 0; border-top: 10px dotted var(--qa-pink); }
.ql-c1[b-d2ytg5bags] { grid-column: 1; }
.ql-c2[b-d2ytg5bags] { grid-column: 2; }
.ql-c3[b-d2ytg5bags] { grid-column: 3; }
.ql-c4[b-d2ytg5bags] { grid-column: 4; }

@media (max-width: 1199px) {
    .ql-row[b-d2ytg5bags] { height: 360px; }
    .ql-r1[b-d2ytg5bags]::after, .ql-r2[b-d2ytg5bags]::after { height: 370px; }
}

@media (max-width: 899px) {
    .ql-wrap[b-d2ytg5bags] { padding: 32px 20px 8px; }
    .ql-row[b-d2ytg5bags] { display: flex; flex-direction: column; height: auto; }
    .ql-row[b-d2ytg5bags]::before { left: 21px; right: auto; top: 0; bottom: 0; width: 10px; height: auto; border-radius: 0; }
    .ql-r1[b-d2ytg5bags]::before { top: 20px; }
    .ql-r3[b-d2ytg5bags]::before { bottom: 0; height: auto; background: linear-gradient(var(--qa-pink) 70%, rgba(201,42,98,0)); }
    .ql-r1[b-d2ytg5bags]::after, .ql-r2[b-d2ytg5bags]::after, .ql-r3[b-d2ytg5bags]::after { display: none; }
    .ql-stop[b-d2ytg5bags] { text-align: left; align-items: flex-start; padding: 0 0 32px 64px; }
    .ql-dot[b-d2ytg5bags] { top: 4px; left: 26px; margin-left: -13px; }
    .ql-end .ql-dot[b-d2ytg5bags] { top: 0; margin-left: -22px; }
}

/* Droite à gauche : la frise est inversée. */

[dir="rtl"] .ql-r1[b-d2ytg5bags]::after { left: auto; right: 87.5%; border-left: 10px solid var(--qa-pink); border-right: none; border-radius: 160px 0 0 160px; }
[dir="rtl"] .ql-r2[b-d2ytg5bags]::after { right: auto; left: 87.5%; border-right: 10px solid var(--qa-pink); border-left: none; border-radius: 0 160px 160px 0; }
[dir="rtl"] .ql-r3[b-d2ytg5bags]::after { left: auto; right: 87.5%; }

@media (max-width: 899px) {
    [dir="rtl"] .ql-row[b-d2ytg5bags]::before { left: auto; right: 21px; }
    [dir="rtl"] .ql-stop[b-d2ytg5bags] { padding: 0 64px 32px 0; }
    [dir="rtl"] .ql-dot[b-d2ytg5bags] { left: auto; right: 26px; margin-left: 0; margin-right: -13px; }
    [dir="rtl"] .ql-end .ql-dot[b-d2ytg5bags] { margin-right: -22px; }
}

/* Contenu des arrêts. */

.date[b-d2ytg5bags] { font-family: var(--qa-font-heading); font-weight: 700; font-size: 14px; letter-spacing: 0.08em; text-transform: uppercase; color: var(--qa-pink); }
h3[b-d2ytg5bags] { margin: 0; font-family: var(--qa-font-heading); font-weight: 700; font-size: 18px; line-height: 1.25; color: var(--qa-ink); }
p[b-d2ytg5bags] { margin: 0; font-size: 15px; line-height: 1.5; color: var(--qa-muted); }
.badge[b-d2ytg5bags] { font-family: var(--qa-font-heading); font-weight: 700; font-size: 11px; letter-spacing: 0.14em; text-transform: uppercase; color: #ffffff; background: var(--qa-pink); padding: 3px 10px; border-radius: 999px; }
