:root {
    --mw-blue: #06245c;
    --mw-blue2: #0b58c7;
    --mw-green: #16820e;
    --mw-green2: #2f9b15;
    --mw-orange: #f47b0b;
    --mw-purple: #6d35c9;
    --mw-line: #d7e3f4;
    --mw-text: #061b49;
    --mw-muted: #50627e;
    --mw-shadow: 0 12px 30px rgba(4, 26, 68, .10);
    --mw-radius: 18px;
}

/* ==========================================================
   MAIEUTIK WORLD - ACCUEIL V2 COMPACT
   Version forcée pour se rapprocher de la maquette fournie.
   Ce fichier remplace complètement maieutik-home-svg-compatible.css
   ========================================================== */

body .mw-home,
body .mw-home-svg-compatible {
    font-family: Arial, Helvetica, sans-serif !important;
    color: var(--mw-text) !important;
    background: linear-gradient(180deg, #ffffff 0%, #f6fbff 58%, #ffffff 100%) !important;
    line-height: 1.35 !important;
    font-size: 13px !important;
    width: 100% !important;
    overflow-x: hidden !important;
}

body .mw-home *,
body .mw-home-svg-compatible * {
    box-sizing: border-box !important;
}

body .mw-home svg,
body .mw-home-svg-compatible svg {
    width: 1em !important;
    height: 1em !important;
    display: inline-block !important;
}

/* Le vrai menu vient de nav.html.twig. On neutralise tout menu interne si présent. */
body .mw-home .mw-nav,
body .mw-home-svg-compatible .mw-nav {
    display: none !important;
}

/* =========================
   HERO
   ========================= */

body .mw-home .mw-hero,
body .mw-home-svg-compatible .mw-hero {
    display: grid !important;
    grid-template-columns: 530px 350px 330px !important;
    gap: 20px !important;
    align-items: start !important;
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding: 18px 18px 18px !important;
    min-height: auto !important;
}

body .mw-home .mw-hero-copy,
body .mw-home-svg-compatible .mw-hero-copy {
    position: relative !important;
    z-index: 2 !important;
}

/* Titre volontairement forcé avec !important parce que l'ancien CSS le rendait énorme. */
body .mw-home .mw-hero-copy h1,
body .mw-home-svg-compatible .mw-hero-copy h1,
body .mw-home .mw-hero h1,
body .mw-home-svg-compatible .mw-hero h1 {
    font-size: 31px !important;
    line-height: 1.05 !important;
    letter-spacing: -0.4px !important;
    font-weight: 900 !important;
    color: var(--mw-blue) !important;
    margin: 0 0 18px !important;
    max-width: 520px !important;
    text-align: left !important;
}

body .mw-home .mw-hero-copy h1 span,
body .mw-home-svg-compatible .mw-hero-copy h1 span {
    color: var(--mw-green) !important;
    font-style: italic !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

body .mw-home .mw-hook,
body .mw-home-svg-compatible .mw-hook {
    font-size: 18px !important;
    line-height: 1.25 !important;
    font-weight: 800 !important;
    color: var(--mw-blue) !important;
    margin: 0 0 12px !important;
    max-width: 520px !important;
    text-align: left !important;
}

body .mw-home .mw-lead,
body .mw-home-svg-compatible .mw-lead {
    font-size: 13px !important;
    line-height: 1.5 !important;
    color: #17315f !important;
    max-width: 520px !important;
    margin: 0 0 16px !important;
    text-align: left !important;
}

/* Tags */
body .mw-home .mw-tags,
body .mw-home-svg-compatible .mw-tags {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 8px !important;
    margin: 16px 0 18px !important;
}

body .mw-home .mw-tags span,
body .mw-home-svg-compatible .mw-tags span {
    display: inline-flex !important;
    align-items: center !important;
    gap: 7px !important;
    min-height: 34px !important;
    padding: 7px 11px !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 15px !important;
    background: #fff !important;
    box-shadow: 0 8px 18px rgba(4, 26, 68, .06) !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    color: var(--mw-blue) !important;
    white-space: nowrap !important;
}

body .mw-home .mw-tags svg,
body .mw-home-svg-compatible .mw-tags svg {
    color: var(--mw-green) !important;
    font-size: 16px !important;
}

/* Bloc décision */
body .mw-home .mw-decision-box,
body .mw-home-svg-compatible .mw-decision-box {
    display: flex !important;
    align-items: center !important;
    gap: 14px !important;
    max-width: 520px !important;
    padding: 14px 16px !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 18px !important;
    background: rgba(255, 255, 255, .92) !important;
    box-shadow: var(--mw-shadow) !important;
}

body .mw-home .mw-round-icon,
body .mw-home-svg-compatible .mw-round-icon {
    display: inline-grid !important;
    place-items: center !important;
    width: 50px !important;
    height: 50px !important;
    min-width: 50px !important;
    border-radius: 50% !important;
    background: var(--mw-blue) !important;
    color: #fff !important;
    font-size: 25px !important;
}

body .mw-home .mw-decision-box h2,
body .mw-home-svg-compatible .mw-decision-box h2 {
    margin: 0 0 5px !important;
    color: var(--mw-blue) !important;
    font-size: 18px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
    text-align: left !important;
}

body .mw-home .mw-decision-box p,
body .mw-home-svg-compatible .mw-decision-box p {
    margin: 0 !important;
    font-size: 12px !important;
    line-height: 1.38 !important;
    color: #183461 !important;
    font-weight: 600 !important;
    text-align: left !important;
}

/* Proof row */
body .mw-home .mw-proof-row,
body .mw-home-svg-compatible .mw-proof-row {
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 8px !important;
    margin-top: 16px !important;
    max-width: 520px !important;
}

body .mw-home .mw-proof-row div,
body .mw-home-svg-compatible .mw-proof-row div {
    display: grid !important;
    grid-template-columns: 28px 1fr !important;
    column-gap: 8px !important;
    background: #fff !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 14px !important;
    padding: 12px !important;
    min-height: 112px !important;
}

body .mw-home .mw-small-icon,
body .mw-home-svg-compatible .mw-small-icon {
    display: inline-grid !important;
    place-items: center !important;
    grid-row: 1 / 3 !important;
    font-size: 24px !important;
    color: var(--mw-blue2) !important;
}

body .mw-home .mw-proof-row strong,
body .mw-home-svg-compatible .mw-proof-row strong {
    display: block !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
    text-transform: uppercase !important;
    color: var(--mw-blue) !important;
}

body .mw-home .mw-proof-row small,
body .mw-home-svg-compatible .mw-proof-row small {
    display: block !important;
    grid-column: 2 !important;
    color: #395174 !important;
    font-size: 10px !important;
    line-height: 1.25 !important;
}

/* Image femme */
body .mw-home .mw-hero-visual,
body .mw-home-svg-compatible .mw-hero-visual {
    margin: 0 !important;
    display: flex !important;
    align-items: flex-end !important;
    justify-content: center !important;
    min-height: 500px !important;
    overflow: visible !important;
    background: transparent !important;
}

body .mw-home .mw-hero-visual img,
body .mw-home-svg-compatible .mw-hero-visual img {
    width: auto !important;
    max-width: 100% !important;
    max-height: 560px !important;
    object-fit: contain !important;
    object-position: bottom center !important;
    filter: drop-shadow(0 14px 26px rgba(4, 26, 68, .18)) !important;
    background: transparent !important;
}

/* Carte offre */
body .mw-home .mw-offer-card,
body .mw-home-svg-compatible .mw-offer-card {
    width: 100% !important;
    max-width: 330px !important;
    background: #fff !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 24px !important;
    box-shadow: var(--mw-shadow) !important;
    padding: 22px 22px 18px !important;
    position: relative !important;
    text-align: left !important;
}

body .mw-home .mw-offer-label,
body .mw-home-svg-compatible .mw-offer-label {
    position: absolute !important;
    top: -14px !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    background: var(--mw-green) !important;
    color: #fff !important;
    text-transform: uppercase !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    padding: 8px 22px !important;
    border-radius: 18px !important;
    white-space: nowrap !important;
}

body .mw-home .mw-gift,
body .mw-home-svg-compatible .mw-gift {
    display: grid !important;
    place-items: center !important;
    width: 64px !important;
    height: 64px !important;
    border-radius: 50% !important;
    background: #eef9eb !important;
    color: var(--mw-green) !important;
    font-size: 34px !important;
    margin: 8px auto 12px !important;
}

body .mw-home .mw-offer-card h2,
body .mw-home-svg-compatible .mw-offer-card h2 {
    text-align: center !important;
    font-size: 23px !important;
    line-height: 1.12 !important;
    margin: 0 !important;
    color: var(--mw-blue) !important;
    text-transform: uppercase !important;
    font-weight: 500 !important;
}

body .mw-home .mw-value,
body .mw-home-svg-compatible .mw-value {
    text-align: center !important;
    font-size: 17px !important;
    line-height: 1.25 !important;
    color: var(--mw-green) !important;
    font-weight: 900 !important;
    margin: 10px 0 14px !important;
}

body .mw-home .mw-offer-card ul,
body .mw-home-svg-compatible .mw-offer-card ul {
    list-style: none !important;
    padding: 12px 0 !important;
    margin: 12px 0 !important;
    border-top: 1px solid var(--mw-line) !important;
    border-bottom: 1px solid var(--mw-line) !important;
}

body .mw-home .mw-offer-card li,
body .mw-home-svg-compatible .mw-offer-card li {
    position: relative !important;
    padding-left: 22px !important;
    margin: 8px 0 !important;
    font-weight: 700 !important;
    font-size: 11px !important;
    line-height: 1.32 !important;
    text-align: left !important;
}

body .mw-home .mw-offer-card li:before,
body .mw-home-svg-compatible .mw-offer-card li:before,
body .mw-home .mw-checks span:before,
body .mw-home-svg-compatible .mw-checks span:before {
    content: "✓" !important;
    position: absolute !important;
    left: 0 !important;
    color: var(--mw-green) !important;
    font-weight: 900 !important;
}

body .mw-home .mw-offer-note,
body .mw-home-svg-compatible .mw-offer-note {
    text-align: center !important;
    font-weight: 800 !important;
    font-size: 12px !important;
    line-height: 1.32 !important;
    margin: 12px 0 !important;
}

body .mw-home .mw-cta,
body .mw-home-svg-compatible .mw-cta {
    display: flex !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 10px !important;
    min-height: 50px !important;
    padding: 12px 14px !important;
    color: #fff !important;
    background: linear-gradient(180deg, #21920d, #08710b) !important;
    border-radius: 12px !important;
    text-decoration: none !important;
    text-transform: uppercase !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    line-height: 1.25 !important;
    letter-spacing: .2px !important;
    box-shadow: 0 10px 20px rgba(15, 116, 12, .22) !important;
}

body .mw-home .mw-secure,
body .mw-home-svg-compatible .mw-secure {
    display: flex !important;
    align-items: center !important;
    gap: 8px !important;
    background: #eef9eb !important;
    color: #285c25 !important;
    border-radius: 10px !important;
    padding: 9px 11px !important;
    font-size: 10px !important;
    line-height: 1.28 !important;
    margin: 12px 0 0 !important;
    text-align: center !important;
}

/* =========================
   APPLICATIONS
   ========================= */

body .mw-home .mw-section,
body .mw-home-svg-compatible .mw-section {
    max-width: 1260px !important;
    margin: 0 auto !important;
    padding: 22px 18px !important;
}

body .mw-home .mw-section > h2,
body .mw-home-svg-compatible .mw-section > h2,
body .mw-home .mw-how h2,
body .mw-home-svg-compatible .mw-how h2,
body .mw-home .mw-spectrum h2,
body .mw-home-svg-compatible .mw-spectrum h2 {
    text-align: center !important;
    text-transform: uppercase !important;
    font-size: 20px !important;
    line-height: 1.18 !important;
    color: var(--mw-blue) !important;
    margin: 0 0 20px !important;
    font-weight: 500 !important;
}

body .mw-home .mw-app-grid,
body .mw-home-svg-compatible .mw-app-grid {
    display: grid !important;
    grid-template-columns: repeat(5, 1fr) !important;
    gap: 12px !important;
}

body .mw-home .mw-card,
body .mw-home-svg-compatible .mw-card {
    background: #fff !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 16px !important;
    padding: 18px 13px !important;
    text-align: center !important;
    box-shadow: 0 8px 18px rgba(4, 26, 68, .05) !important;
    min-height: 205px !important;
}

body .mw-home .mw-card-icon,
body .mw-home-svg-compatible .mw-card-icon {
    display: inline-grid !important;
    place-items: center !important;
    width: 54px !important;
    height: 54px !important;
    border-radius: 50% !important;
    margin: 0 auto 10px !important;
    background: #eef9eb !important;
    color: var(--mw-green) !important;
    font-size: 30px !important;
}

body .mw-home .mw-card h3,
body .mw-home-svg-compatible .mw-card h3 {
    font-size: 12px !important;
    line-height: 1.15 !important;
    text-transform: uppercase !important;
    color: var(--mw-blue) !important;
    min-height: 34px !important;
    margin: 0 0 10px !important;
    font-weight: 700 !important;
}

body .mw-home .mw-card p,
body .mw-home-svg-compatible .mw-card p {
    font-size: 11px !important;
    line-height: 1.38 !important;
    color: #254067 !important;
    margin: 0 !important;
    text-align: center !important;
}

/* =========================
   HOW + SPECTRUM
   ========================= */

body .mw-home .mw-how-spectrum,
body .mw-home-svg-compatible .mw-how-spectrum {
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    gap: 16px !important;
    align-items: stretch !important;
}

body .mw-home .mw-how,
body .mw-home-svg-compatible .mw-how,
body .mw-home .mw-spectrum,
body .mw-home-svg-compatible .mw-spectrum {
    background: #fff !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 20px !important;
    padding: 22px 18px !important;
    box-shadow: 0 8px 18px rgba(4, 26, 68, .05) !important;
}

body .mw-home .mw-steps,
body .mw-home-svg-compatible .mw-steps {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 12px !important;
}

body .mw-home .mw-step,
body .mw-home-svg-compatible .mw-step {
    text-align: center !important;
    position: relative !important;
}

body .mw-home .mw-step:not(:last-child):after,
body .mw-home-svg-compatible .mw-step:not(:last-child):after {
    content: "→" !important;
    position: absolute !important;
    right: -12px !important;
    top: 46px !important;
    color: #5f7ba8 !important;
    font-size: 22px !important;
}

body .mw-home .mw-step-num,
body .mw-home-svg-compatible .mw-step-num {
    display: inline-grid !important;
    place-items: center !important;
    width: 25px !important;
    height: 25px !important;
    border-radius: 50% !important;
    background: var(--mw-green) !important;
    color: #fff !important;
    font-weight: 900 !important;
    font-size: 12px !important;
    margin-bottom: 7px !important;
}

body .mw-home .mw-step-icon,
body .mw-home-svg-compatible .mw-step-icon {
    display: grid !important;
    place-items: center !important;
    margin: 0 auto 8px !important;
    width: 52px !important;
    height: 52px !important;
    border-radius: 50% !important;
    background: #eef5ff !important;
    color: var(--mw-blue2) !important;
    font-size: 28px !important;
}

body .mw-home .mw-step h3,
body .mw-home-svg-compatible .mw-step h3 {
    font-size: 12px !important;
    line-height: 1.15 !important;
    color: var(--mw-blue) !important;
    margin: 7px 0 !important;
    font-weight: 500 !important;
}

body .mw-home .mw-step p,
body .mw-home-svg-compatible .mw-step p {
    font-size: 11px !important;
    line-height: 1.32 !important;
    color: #395174 !important;
    margin: 0 !important;
}

body .mw-home .mw-spectrum p,
body .mw-home-svg-compatible .mw-spectrum p {
    text-align: center !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

body .mw-home .mw-spectrum-wrap,
body .mw-home-svg-compatible .mw-spectrum-wrap {
    display: grid !important;
    place-items: center !important;
}

body .mw-home .mw-spectrum-circle,
body .mw-home-svg-compatible .mw-spectrum-circle {
    width: min(340px, 78vw) !important;
    aspect-ratio: 1 !important;
    border-radius: 50% !important;
    display: grid !important;
    grid-template-columns: 1fr 1fr !important;
    grid-template-rows: 1fr 1fr !important;
    overflow: hidden !important;
    position: relative !important;
    box-shadow: inset 0 0 0 6px #fff, 0 16px 28px rgba(4, 26, 68, .15) !important;
}

body .mw-home .mw-quadrant,
body .mw-home-svg-compatible .mw-quadrant {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    text-align: center !important;
    color: #fff !important;
    padding: 18px 14px !important;
}

body .mw-home .mw-quadrant span,
body .mw-home-svg-compatible .mw-quadrant span {
    font-size: 26px !important;
}

body .mw-home .mw-quadrant strong,
body .mw-home-svg-compatible .mw-quadrant strong {
    text-transform: uppercase !important;
    font-size: 15px !important;
    line-height: 1.1 !important;
}

body .mw-home .mw-quadrant small,
body .mw-home-svg-compatible .mw-quadrant small {
    font-weight: 700 !important;
    font-size: 10px !important;
    line-height: 1.18 !important;
    max-width: 120px !important;
}

body .mw-home .mw-think,
body .mw-home-svg-compatible .mw-think {
    background: radial-gradient(circle at 70% 70%, #28a7ff, #064cc6 78%) !important;
}

body .mw-home .mw-influence,
body .mw-home-svg-compatible .mw-influence {
    background: radial-gradient(circle at 30% 70%, #a86bff, #4d219d 78%) !important;
}

body .mw-home .mw-act,
body .mw-home-svg-compatible .mw-act {
    background: radial-gradient(circle at 70% 30%, #7bd51b, #0d7c13 78%) !important;
}

body .mw-home .mw-motivate,
body .mw-home-svg-compatible .mw-motivate {
    background: radial-gradient(circle at 30% 30%, #ffbe32, #f06b00 78%) !important;
}

body .mw-home .mw-spectrum-center,
body .mw-home-svg-compatible .mw-spectrum-center {
    position: absolute !important;
    inset: 50% !important;
    transform: translate(-50%, -50%) !important;
    width: 66px !important;
    height: 66px !important;
    border-radius: 50% !important;
    background: #fff !important;
    display: grid !important;
    place-items: center !important;
    box-shadow: 0 0 18px rgba(255, 255, 255, .8) !important;
}

body .mw-home .mw-spectrum-center img,
body .mw-home-svg-compatible .mw-spectrum-center img {
    max-width: 54px !important;
    max-height: 40px !important;
}

body .mw-home .mw-spectrum-base,
body .mw-home-svg-compatible .mw-spectrum-base {
    width: 240px !important;
    height: 26px !important;
    background: radial-gradient(ellipse at center, #8897a6, #56616e 70%, transparent 72%) !important;
    border-radius: 50% !important;
    margin-top: -12px !important;
    opacity: .75 !important;
}

body .mw-home .mw-spectrum-proof,
body .mw-home-svg-compatible .mw-spectrum-proof {
    font-weight: 800 !important;
    color: var(--mw-blue) !important;
    font-size: 12px !important;
}

/* =========================
   FINAL CTA
   ========================= */

body .mw-home .mw-final-cta,
body .mw-home-svg-compatible .mw-final-cta {
    max-width: 1260px !important;
    margin: 20px auto 0 !important;
    background: linear-gradient(90deg, #061b49, #073376) !important;
    color: #fff !important;
    border-radius: 20px 20px 0 0 !important;
    padding: 22px 28px !important;
    display: grid !important;
    grid-template-columns: 70px 1fr 310px !important;
    gap: 22px !important;
    align-items: center !important;
}

body .mw-home .mw-final-brain,
body .mw-home-svg-compatible .mw-final-brain {
    font-size: 56px !important;
    color: #58b8ff !important;
}

body .mw-home .mw-final-cta h2,
body .mw-home-svg-compatible .mw-final-cta h2 {
    margin: 0 0 8px !important;
    font-size: 24px !important;
    line-height: 1.15 !important;
    font-weight: 500 !important;
}

body .mw-home .mw-final-cta p,
body .mw-home-svg-compatible .mw-final-cta p {
    margin: 0 !important;
    color: #e8f3ff !important;
    font-size: 12px !important;
    line-height: 1.35 !important;
}

body .mw-home .mw-checks,
body .mw-home-svg-compatible .mw-checks {
    display: flex !important;
    flex-wrap: wrap !important;
    gap: 10px 16px !important;
    margin-top: 12px !important;
}

body .mw-home .mw-checks span,
body .mw-home-svg-compatible .mw-checks span {
    position: relative !important;
    padding-left: 20px !important;
    font-weight: 800 !important;
    font-size: 12px !important;
}

/* =========================
   RESPONSIVE
   ========================= */

@media (max-width: 1180px) {
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr 320px !important;
        max-width: 1000px !important;
    }

    body .mw-home .mw-hero-visual,
    body .mw-home-svg-compatible .mw-hero-visual {
        grid-column: 1 / -1 !important;
        min-height: auto !important;
    }

    body .mw-home .mw-hero-visual img,
    body .mw-home-svg-compatible .mw-hero-visual img {
        max-height: 460px !important;
    }

    body .mw-home .mw-app-grid,
    body .mw-home-svg-compatible .mw-app-grid {
        grid-template-columns: repeat(2, 1fr) !important;
    }

    body .mw-home .mw-how-spectrum,
    body .mw-home-svg-compatible .mw-how-spectrum {
        grid-template-columns: 1fr !important;
    }

    body .mw-home .mw-final-cta,
    body .mw-home-svg-compatible .mw-final-cta {
        grid-template-columns: 1fr !important;
        text-align: center !important;
    }

    body .mw-home .mw-final-brain,
    body .mw-home-svg-compatible .mw-final-brain {
        margin: auto !important;
    }
}

@media (max-width: 760px) {
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr !important;
        padding: 20px 14px !important;
    }

    body .mw-home .mw-hero-copy h1,
    body .mw-home-svg-compatible .mw-hero-copy h1 {
        font-size: 28px !important;
    }

    body .mw-home .mw-hook,
    body .mw-home-svg-compatible .mw-hook {
        font-size: 17px !important;
    }

    body .mw-home .mw-offer-card,
    body .mw-home-svg-compatible .mw-offer-card {
        max-width: 100% !important;
    }

    body .mw-home .mw-proof-row,
    body .mw-home-svg-compatible .mw-proof-row,
    body .mw-home .mw-app-grid,
    body .mw-home-svg-compatible .mw-app-grid,
    body .mw-home .mw-steps,
    body .mw-home-svg-compatible .mw-steps {
        grid-template-columns: 1fr !important;
    }

    body .mw-home .mw-step:after,
    body .mw-home-svg-compatible .mw-step:after {
        display: none !important;
    }

    body .mw-home .mw-section,
    body .mw-home-svg-compatible .mw-section {
        padding: 20px 14px !important;
    }
}



/* ==========================================================
   CORRECTION FINALE ACCUEIL V2 - hors menu
   Objectif : se rapprocher du visuel original envoyé.
   ========================================================== */

/* On laisse le menu existant du site indépendant. */
body .mw-home .mw-nav,
body .mw-home-svg-compatible .mw-nav {
    display: none !important;
}

/* Largeur globale proche de la maquette, sans centrer trop étroit. */
body .mw-home .mw-hero,
body .mw-home-svg-compatible .mw-hero {
    max-width: 1420px !important;
    width: calc(100% - 48px) !important;
    margin: 0 auto !important;
    padding: 16px 0 10px !important;
    display: grid !important;
    grid-template-columns: 520px 390px 285px !important;
    gap: 26px !important;
    align-items: start !important;
}

/* Colonne gauche plus compacte. */
body .mw-home .mw-hero-copy h1,
body .mw-home-svg-compatible .mw-hero-copy h1,
body .mw-home .mw-hero h1,
body .mw-home-svg-compatible .mw-hero h1 {
    font-size: 30px !important;
    line-height: 1.02 !important;
    letter-spacing: -0.35px !important;
    margin: 0 0 14px !important;
    max-width: 520px !important;
    font-weight: 900 !important;
}

body .mw-home .mw-hero-copy h1 span,
body .mw-home-svg-compatible .mw-hero-copy h1 span {
    color: var(--mw-green) !important;
    font-style: italic !important;
}

body .mw-home .mw-hook,
body .mw-home-svg-compatible .mw-hook {
    font-size: 18px !important;
    line-height: 1.22 !important;
    margin: 0 0 10px !important;
    max-width: 520px !important;
    font-weight: 900 !important;
}

body .mw-home .mw-lead,
body .mw-home-svg-compatible .mw-lead {
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    margin: 0 0 14px !important;
    max-width: 520px !important;
}

/* Boutons thématiques plus petits, comme la maquette. */
body .mw-home .mw-tags,
body .mw-home-svg-compatible .mw-tags {
    gap: 8px !important;
    margin: 14px 0 16px !important;
}

body .mw-home .mw-tags span,
body .mw-home-svg-compatible .mw-tags span {
    min-height: 31px !important;
    padding: 6px 10px !important;
    border-radius: 14px !important;
    font-size: 11.5px !important;
}

body .mw-home .mw-tags svg,
body .mw-home-svg-compatible .mw-tags svg {
    font-size: 15px !important;
}

/* Bloc décision et preuves. */
body .mw-home .mw-decision-box,
body .mw-home-svg-compatible .mw-decision-box {
    max-width: 520px !important;
    padding: 13px 15px !important;
    gap: 13px !important;
    border-radius: 17px !important;
}

body .mw-home .mw-round-icon,
body .mw-home-svg-compatible .mw-round-icon {
    width: 48px !important;
    height: 48px !important;
    min-width: 48px !important;
    font-size: 24px !important;
}

body .mw-home .mw-decision-box h2,
body .mw-home-svg-compatible .mw-decision-box h2 {
    font-size: 17px !important;
    line-height: 1.12 !important;
    margin: 0 0 5px !important;
}

body .mw-home .mw-decision-box p,
body .mw-home-svg-compatible .mw-decision-box p {
    font-size: 11.5px !important;
    line-height: 1.32 !important;
}

body .mw-home .mw-proof-row,
body .mw-home-svg-compatible .mw-proof-row {
    max-width: 520px !important;
    gap: 8px !important;
    margin-top: 14px !important;
}

body .mw-home .mw-proof-row div,
body .mw-home-svg-compatible .mw-proof-row div {
    min-height: 98px !important;
    padding: 11px !important;
    grid-template-columns: 25px 1fr !important;
    column-gap: 7px !important;
}

body .mw-home .mw-proof-row strong,
body .mw-home-svg-compatible .mw-proof-row strong {
    font-size: 10.5px !important;
}

body .mw-home .mw-proof-row small,
body .mw-home-svg-compatible .mw-proof-row small {
    font-size: 9.5px !important;
    line-height: 1.22 !important;
}

body .mw-home .mw-small-icon,
body .mw-home-svg-compatible .mw-small-icon {
    font-size: 22px !important;
}

/* Image femme : plus haute et plus intégrée au haut de page. */
body .mw-home .mw-hero-visual,
body .mw-home-svg-compatible .mw-hero-visual {
    min-height: 505px !important;
    align-items: flex-start !important;
    justify-content: center !important;
    padding-top: 18px !important;
}

body .mw-home .mw-hero-visual img,
body .mw-home-svg-compatible .mw-hero-visual img {
    max-height: 525px !important;
    width: auto !important;
    max-width: 100% !important;
}

/* Carte offre : ajout de la preuve sociale et dimensions proches de la maquette. */
body .mw-home .mw-offer-card,
body .mw-home-svg-compatible .mw-offer-card {
    max-width: 330px !important;
    padding: 21px 21px 15px !important;
    border-radius: 23px !important;
}

body .mw-home .mw-offer-label,
body .mw-home-svg-compatible .mw-offer-label {
    top: -13px !important;
    font-size: 12px !important;
    padding: 8px 22px !important;
}

body .mw-home .mw-gift,
body .mw-home-svg-compatible .mw-gift {
    width: 58px !important;
    height: 58px !important;
    font-size: 31px !important;
    margin: 8px auto 10px !important;
}

body .mw-home .mw-offer-card h2,
body .mw-home-svg-compatible .mw-offer-card h2 {
    font-size: 21px !important;
    line-height: 1.12 !important;
}

body .mw-home .mw-value,
body .mw-home-svg-compatible .mw-value {
    font-size: 16px !important;
    margin: 9px 0 12px !important;
}

body .mw-home .mw-offer-card ul,
body .mw-home-svg-compatible .mw-offer-card ul {
    padding: 10px 0 !important;
    margin: 10px 0 !important;
}

body .mw-home .mw-offer-card li,
body .mw-home-svg-compatible .mw-offer-card li {
    font-size: 10.5px !important;
    margin: 7px 0 !important;
    line-height: 1.25 !important;
}

body .mw-home .mw-offer-note,
body .mw-home-svg-compatible .mw-offer-note {
    font-size: 11px !important;
    line-height: 1.25 !important;
    margin: 10px 0 !important;
}

body .mw-home .mw-cta,
body .mw-home-svg-compatible .mw-cta {
    min-height: 46px !important;
    padding: 10px 12px !important;
    font-size: 11px !important;
    line-height: 1.2 !important;
}

/* Preuve sociale dans la carte offre. */
body .mw-home .mw-offer-social,
body .mw-home-svg-compatible .mw-offer-social {
    margin: 12px 0 8px !important;
    text-align: center !important;
}

body .mw-home .mw-avatar-row,
body .mw-home-svg-compatible .mw-avatar-row {
    display: flex !important;
    justify-content: center !important;
    gap: 5px !important;
    margin: 0 0 5px !important;
}

body .mw-home .mw-avatar,
body .mw-home-svg-compatible .mw-avatar {
    display: block !important;
    width: 28px !important;
    height: 28px !important;
    border-radius: 50% !important;
    border: 2px solid #fff !important;
    box-shadow: 0 3px 8px rgba(4, 26, 68, .16) !important;
    background-size: cover !important;
    background-position: center !important;
}

body .mw-home .mw-avatar-1,
body .mw-home-svg-compatible .mw-avatar-1 {
    background: radial-gradient(circle at 50% 35%, #ffd5c4 0 22%, #6d3b2f 23% 36%, #f1b08f 37% 58%, #27416f 59% 100%) !important;
}
body .mw-home .mw-avatar-2,
body .mw-home-svg-compatible .mw-avatar-2 {
    background: radial-gradient(circle at 50% 35%, #f0c79d 0 22%, #222 23% 35%, #d99a70 36% 58%, #0f4f77 59% 100%) !important;
}
body .mw-home .mw-avatar-3,
body .mw-home-svg-compatible .mw-avatar-3 {
    background: radial-gradient(circle at 50% 35%, #ffd4ba 0 22%, #9a4d32 23% 36%, #eeb08d 37% 58%, #24754e 59% 100%) !important;
}
body .mw-home .mw-avatar-4,
body .mw-home-svg-compatible .mw-avatar-4 {
    background: radial-gradient(circle at 50% 35%, #f3c49a 0 22%, #2d1c16 23% 36%, #cf8b63 37% 58%, #1d335f 59% 100%) !important;
}
body .mw-home .mw-avatar-5,
body .mw-home-svg-compatible .mw-avatar-5 {
    background: radial-gradient(circle at 50% 35%, #ffd7c0 0 22%, #6a3524 23% 36%, #f0ad89 37% 58%, #7b2a4e 59% 100%) !important;
}

body .mw-home .mw-stars,
body .mw-home-svg-compatible .mw-stars {
    display: flex !important;
    justify-content: center !important;
    gap: 2px !important;
    color: var(--mw-green) !important;
    font-size: 13px !important;
    margin-bottom: 3px !important;
}

body .mw-home .mw-offer-social p,
body .mw-home-svg-compatible .mw-offer-social p {
    font-size: 10px !important;
    line-height: 1.22 !important;
    color: var(--mw-blue) !important;
    margin: 0 !important;
    font-weight: 700 !important;
}

body .mw-home .mw-secure,
body .mw-home-svg-compatible .mw-secure {
    font-size: 9.5px !important;
    line-height: 1.22 !important;
    padding: 8px 10px !important;
    margin-top: 8px !important;
}

/* Sections bas de page : plus compactes et moins hautes. */
body .mw-home .mw-section,
body .mw-home-svg-compatible .mw-section {
    max-width: 1420px !important;
    width: calc(100% - 48px) !important;
    padding: 18px 0 !important;
}

body .mw-home .mw-section > h2,
body .mw-home-svg-compatible .mw-section > h2,
body .mw-home .mw-how h2,
body .mw-home-svg-compatible .mw-how h2,
body .mw-home .mw-spectrum h2,
body .mw-home-svg-compatible .mw-spectrum h2 {
    font-size: 18px !important;
    margin: 0 0 18px !important;
}

body .mw-home .mw-app-grid,
body .mw-home-svg-compatible .mw-app-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 10px !important;
}

body .mw-home .mw-card,
body .mw-home-svg-compatible .mw-card {
    min-height: 160px !important;
    padding: 14px 11px !important;
    border-radius: 15px !important;
}

body .mw-home .mw-card-icon,
body .mw-home-svg-compatible .mw-card-icon {
    width: 48px !important;
    height: 48px !important;
    font-size: 27px !important;
    margin-bottom: 8px !important;
}

body .mw-home .mw-card h3,
body .mw-home-svg-compatible .mw-card h3 {
    font-size: 11px !important;
    min-height: 28px !important;
    margin-bottom: 8px !important;
}

body .mw-home .mw-card p,
body .mw-home-svg-compatible .mw-card p {
    font-size: 10px !important;
    line-height: 1.3 !important;
}

body .mw-home .mw-how-spectrum,
body .mw-home-svg-compatible .mw-how-spectrum {
    grid-template-columns: 1fr 1fr !important;
    gap: 14px !important;
}

body .mw-home .mw-how,
body .mw-home-svg-compatible .mw-how,
body .mw-home .mw-spectrum,
body .mw-home-svg-compatible .mw-spectrum {
    min-height: 340px !important;
    padding: 18px 16px !important;
    border-radius: 18px !important;
}

body .mw-home .mw-step-num,
body .mw-home-svg-compatible .mw-step-num {
    width: 23px !important;
    height: 23px !important;
    font-size: 11px !important;
}

body .mw-home .mw-step-icon,
body .mw-home-svg-compatible .mw-step-icon {
    width: 46px !important;
    height: 46px !important;
    font-size: 25px !important;
}

body .mw-home .mw-step h3,
body .mw-home-svg-compatible .mw-step h3 {
    font-size: 11px !important;
}

body .mw-home .mw-step p,
body .mw-home-svg-compatible .mw-step p {
    font-size: 10px !important;
}

body .mw-home .mw-spectrum-circle,
body .mw-home-svg-compatible .mw-spectrum-circle {
    width: min(300px, 78vw) !important;
}

body .mw-home .mw-quadrant strong,
body .mw-home-svg-compatible .mw-quadrant strong {
    font-size: 13px !important;
}

body .mw-home .mw-quadrant small,
body .mw-home-svg-compatible .mw-quadrant small {
    font-size: 8.8px !important;
}

body .mw-home .mw-spectrum-center,
body .mw-home-svg-compatible .mw-spectrum-center {
    width: 58px !important;
    height: 58px !important;
}

body .mw-home .mw-spectrum-center img,
body .mw-home-svg-compatible .mw-spectrum-center img {
    max-width: 48px !important;
}

body .mw-home .mw-spectrum-proof,
body .mw-home-svg-compatible .mw-spectrum-proof {
    font-size: 10.5px !important;
}

/* Bandeau final + badges. */
body .mw-home .mw-final-cta,
body .mw-home-svg-compatible .mw-final-cta {
    max-width: 1420px !important;
    width: calc(100% - 48px) !important;
    margin: 16px auto 0 !important;
    padding: 18px 24px !important;
    grid-template-columns: 125px 1fr 300px !important;
    border-radius: 18px 18px 0 0 !important;
}

body .mw-home .mw-final-brain,
body .mw-home-svg-compatible .mw-final-brain {
    font-size: 48px !important;
}

body .mw-home .mw-final-cta h2,
body .mw-home-svg-compatible .mw-final-cta h2 {
    font-size: 22px !important;
}

body .mw-home .mw-final-cta p,
body .mw-home-svg-compatible .mw-final-cta p,
body .mw-home .mw-checks span,
body .mw-home-svg-compatible .mw-checks span {
    font-size: 11px !important;
}

body .mw-home .mw-bottom-badges,
body .mw-home-svg-compatible .mw-bottom-badges {
    max-width: 1420px !important;
    width: calc(100% - 48px) !important;
    margin: 0 auto !important;
    padding: 10px 0 16px !important;
    display: grid !important;
    grid-template-columns: repeat(3, 1fr) !important;
    gap: 10px !important;
}

body .mw-home .mw-bottom-badges div,
body .mw-home-svg-compatible .mw-bottom-badges div {
    display: flex !important;
    align-items: center !important;
    gap: 10px !important;
    background: #fff !important;
    border: 1px solid var(--mw-line) !important;
    border-radius: 14px !important;
    padding: 10px 12px !important;
    font-size: 11px !important;
    color: var(--mw-blue) !important;
}

/* Responsive. */
@media (max-width: 1180px) {
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr 320px !important;
        width: calc(100% - 32px) !important;
        max-width: 1000px !important;
    }

    body .mw-home .mw-hero-visual,
    body .mw-home-svg-compatible .mw-hero-visual {
        grid-column: 1 / -1 !important;
        min-height: auto !important;
    }

    body .mw-home .mw-section,
    body .mw-home-svg-compatible .mw-section,
    body .mw-home .mw-final-cta,
    body .mw-home-svg-compatible .mw-final-cta,
    body .mw-home .mw-bottom-badges,
    body .mw-home-svg-compatible .mw-bottom-badges {
        width: calc(100% - 32px) !important;
    }
}

@media (max-width: 760px) {
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr !important;
        width: calc(100% - 24px) !important;
    }

    body .mw-home .mw-app-grid,
    body .mw-home-svg-compatible .mw-app-grid,
    body .mw-home .mw-how-spectrum,
    body .mw-home-svg-compatible .mw-how-spectrum,
    body .mw-home .mw-bottom-badges,
    body .mw-home-svg-compatible .mw-bottom-badges {
        grid-template-columns: 1fr !important;
    }

    body .mw-home .mw-final-cta,
    body .mw-home-svg-compatible .mw-final-cta {
        grid-template-columns: 1fr !important;
    }
}



/* ==========================================================
   ACCUEIL V2 - HERO EN 2 COLONNES
   Objectif :
   - La femme n'est plus une 3e colonne.
   - Elle devient un visuel absolu dans la grande zone de gauche.
   - Les blocs texte / décision / preuves peuvent chevaucher l'image.
   - Le menu reste indépendant et n'est pas modifié.
   ========================================================== */

body .mw-home .mw-hero-two-cols,
body .mw-home-svg-compatible .mw-hero-two-cols,
body .mw-home .mw-hero,
body .mw-home-svg-compatible .mw-hero {
    max-width: 1480px !important;
    width: calc(100% - 32px) !important;
    margin: 0 auto !important;
    padding: 14px 0 8px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 330px !important;
    gap: 18px !important;
    align-items: start !important;
    position: relative !important;
}

/* Grande zone gauche qui contient texte + femme en absolu. */
body .mw-home .mw-hero-main,
body .mw-home-svg-compatible .mw-hero-main {
    position: relative !important;
    min-height: 585px !important;
    overflow: visible !important;
    isolation: isolate !important;
}

/* La femme devient un fond contrôlable en position absolue. */
body .mw-home .mw-hero-woman,
body .mw-home-svg-compatible .mw-hero-woman {
    position: absolute !important;
    top: 0 !important;
    right: 18px !important;
    bottom: 0 !important;
    width: 470px !important;
    height: 640px !important;
    background-image: url('/images/home/woman-brain-hero.png') !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: contain !important;
    z-index: 1 !important;
    pointer-events: none !important;
    filter: drop-shadow(0 16px 30px rgba(4, 26, 68, .16)) !important;
}

/* Le contenu passe au-dessus de la femme. */
body .mw-home .mw-hero-copy,
body .mw-home-svg-compatible .mw-hero-copy {
    position: relative !important;
    z-index: 3 !important;
    width: 620px !important;
    max-width: 62% !important;
    padding-top: 0 !important;
}

/* Titre plus proche de l'original. */
body .mw-home .mw-hero-copy h1,
body .mw-home-svg-compatible .mw-hero-copy h1,
body .mw-home .mw-hero h1,
body .mw-home-svg-compatible .mw-hero h1 {
    max-width: 520px !important;
    font-size: 30px !important;
    line-height: 1.02 !important;
    letter-spacing: -0.35px !important;
    font-weight: 900 !important;
    margin: 0 0 12px !important;
    color: var(--mw-blue) !important;
    text-align: left !important;
}

body .mw-home .mw-hero-copy h1 span,
body .mw-home-svg-compatible .mw-hero-copy h1 span {
    color: var(--mw-green) !important;
    font-style: italic !important;
    font-size: inherit !important;
    line-height: inherit !important;
}

body .mw-home .mw-hook,
body .mw-home-svg-compatible .mw-hook {
    max-width: 520px !important;
    font-size: 18px !important;
    line-height: 1.22 !important;
    margin: 0 0 10px !important;
    font-weight: 900 !important;
    text-align: left !important;
}

body .mw-home .mw-lead,
body .mw-home-svg-compatible .mw-lead {
    max-width: 520px !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    margin: 0 0 14px !important;
    text-align: left !important;
}

/* Tags compacts. */
body .mw-home .mw-tags,
body .mw-home-svg-compatible .mw-tags {
    gap: 8px !important;
    margin: 14px 0 16px !important;
}

body .mw-home .mw-tags span,
body .mw-home-svg-compatible .mw-tags span {
    min-height: 31px !important;
    padding: 6px 10px !important;
    border-radius: 14px !important;
    font-size: 11.5px !important;
    background: rgba(255,255,255,.94) !important;
    position: relative !important;
    z-index: 4 !important;
}

/* Bloc décision et preuves : ils peuvent s'étendre devant la femme. */
body .mw-home .mw-decision-box,
body .mw-home-svg-compatible .mw-decision-box {
    position: relative !important;
    z-index: 5 !important;
    width: 560px !important;
    max-width: 560px !important;
    margin-right: -70px !important;
    padding: 13px 15px !important;
    gap: 13px !important;
    border-radius: 17px !important;
    background: rgba(255,255,255,.94) !important;
    backdrop-filter: blur(1px) !important;
}

body .mw-home .mw-proof-row,
body .mw-home-svg-compatible .mw-proof-row {
    position: relative !important;
    z-index: 5 !important;
    width: 560px !important;
    max-width: 560px !important;
    margin-top: 14px !important;
    margin-right: -70px !important;
    gap: 8px !important;
}

body .mw-home .mw-proof-row div,
body .mw-home-svg-compatible .mw-proof-row div {
    min-height: 96px !important;
}

/* On n'utilise plus l'ancien <figure>. */
body .mw-home .mw-hero-visual,
body .mw-home-svg-compatible .mw-hero-visual {
    display: none !important;
}

/* Carte offre à droite, gardée compacte. */
body .mw-home .mw-offer-card,
body .mw-home-svg-compatible .mw-offer-card {
    position: relative !important;
    z-index: 6 !important;
    max-width: 330px !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
    padding: 21px 21px 15px !important;
    border-radius: 23px !important;
}

/* Avatars : conserver l'allure de personnes, non de cibles. */
body .mw-home .mw-avatar-row,
body .mw-home-svg-compatible .mw-avatar-row {
    display: flex !important;
    justify-content: center !important;
    gap: 5px !important;
    margin: 10px 0 5px !important;
}

body .mw-home .mw-avatar,
body .mw-home-svg-compatible .mw-avatar {
    position: relative !important;
    display: block !important;
    width: 31px !important;
    height: 31px !important;
    border-radius: 50% !important;
    border: 2px solid #fff !important;
    box-shadow: 0 4px 9px rgba(4, 26, 68, .22) !important;
    overflow: hidden !important;
    background: #e9f3ff !important;
}

body .mw-home .mw-avatar::before,
body .mw-home-svg-compatible .mw-avatar::before {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    top: 7px !important;
    transform: translateX(-50%) !important;
    width: 11px !important;
    height: 11px !important;
    border-radius: 50% !important;
    background: #f1c3a0 !important;
    z-index: 2 !important;
}

body .mw-home .mw-avatar::after,
body .mw-home-svg-compatible .mw-avatar::after {
    content: "" !important;
    position: absolute !important;
    left: 50% !important;
    bottom: -3px !important;
    transform: translateX(-50%) !important;
    width: 24px !important;
    height: 15px !important;
    border-radius: 50% 50% 0 0 !important;
    background: #1c4f86 !important;
    z-index: 1 !important;
}

body .mw-home .mw-avatar-1::before,
body .mw-home-svg-compatible .mw-avatar-1::before {
    box-shadow: 0 -5px 0 2px #6a3a28 !important;
}
body .mw-home .mw-avatar-2::before,
body .mw-home-svg-compatible .mw-avatar-2::before {
    background: #d49a72 !important;
    box-shadow: 0 -5px 0 2px #1f1f1f !important;
}
body .mw-home .mw-avatar-3::before,
body .mw-home-svg-compatible .mw-avatar-3::before {
    box-shadow: 0 -5px 0 2px #8e4b2f !important;
}
body .mw-home .mw-avatar-4::before,
body .mw-home-svg-compatible .mw-avatar-4::before {
    background: #c88b68 !important;
    box-shadow: 0 -5px 0 2px #2c1b15 !important;
}
body .mw-home .mw-avatar-5::before,
body .mw-home-svg-compatible .mw-avatar-5::before {
    box-shadow: 0 -5px 0 2px #7a3722 !important;
}
body .mw-home .mw-avatar-1::after,
body .mw-home-svg-compatible .mw-avatar-1::after { background: #0a5797 !important; }
body .mw-home .mw-avatar-2::after,
body .mw-home-svg-compatible .mw-avatar-2::after { background: #24486f !important; }
body .mw-home .mw-avatar-3::after,
body .mw-home-svg-compatible .mw-avatar-3::after { background: #1f8b55 !important; }
body .mw-home .mw-avatar-4::after,
body .mw-home-svg-compatible .mw-avatar-4::after { background: #1d335f !important; }
body .mw-home .mw-avatar-5::after,
body .mw-home-svg-compatible .mw-avatar-5::after { background: #8a2c55 !important; }

/* Les sections suivantes doivent remonter, comme dans la maquette. */
body .mw-home .mw-section,
body .mw-home-svg-compatible .mw-section {
    padding-top: 12px !important;
}

/* Responsive : on retire la superposition sur les écrans plus petits. */
@media (max-width: 1180px) {
    body .mw-home .mw-hero-two-cols,
    body .mw-home-svg-compatible .mw-hero-two-cols,
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr 320px !important;
    }

    body .mw-home .mw-hero-main,
    body .mw-home-svg-compatible .mw-hero-main {
        min-height: auto !important;
    }

    body .mw-home .mw-hero-copy,
    body .mw-home-svg-compatible .mw-hero-copy {
        max-width: 100% !important;
        width: auto !important;
    }

    body .mw-home .mw-hero-woman,
    body .mw-home-svg-compatible .mw-hero-woman {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        width: 100% !important;
        height: 420px !important;
        margin-top: 10px !important;
        background-position: center top !important;
        background-size: contain !important;
    }

    body .mw-home .mw-decision-box,
    body .mw-home-svg-compatible .mw-decision-box,
    body .mw-home .mw-proof-row,
    body .mw-home-svg-compatible .mw-proof-row {
        margin-right: 0 !important;
        max-width: 100% !important;
        width: auto !important;
    }
}

@media (max-width: 760px) {
    body .mw-home .mw-hero-two-cols,
    body .mw-home-svg-compatible .mw-hero-two-cols,
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr !important;
    }

    body .mw-home .mw-offer-card,
    body .mw-home-svg-compatible .mw-offer-card {
        max-width: 100% !important;
    }
}



/* ==========================================================
   ACCUEIL V2 - HERO 2 COLONNES - CHEVAUCHEMENT V2
   Remplace la logique précédente du hero.
   Objectif : faire entrer la femme dans la zone du contenu
   pour que les cartes/blocs passent réellement devant elle.
   ========================================================== */

body .mw-home .mw-hero-two-cols,
body .mw-home-svg-compatible .mw-hero-two-cols,
body .mw-home .mw-hero,
body .mw-home-svg-compatible .mw-hero {
    max-width: 1480px !important;
    width: calc(100% - 32px) !important;
    margin: 0 auto !important;
    padding: 12px 0 4px !important;
    display: grid !important;
    grid-template-columns: minmax(0, 1fr) 500px !important;
    gap: 18px !important;
    align-items: start !important;
    position: relative !important;
}

/* Grande zone gauche */
body .mw-home .mw-hero-main,
body .mw-home-svg-compatible .mw-hero-main {
    position: relative !important;
    min-height: 600px !important;
    height: 600px !important;
    overflow: visible !important;
    isolation: isolate !important;
}

/*
   La correction importante est ici :
   avant, right était trop petit, donc la femme restait complètement à droite.
   Maintenant on la ramène vers la gauche dans la zone de contenu.
*/
body .mw-home .mw-hero-woman,
body .mw-home-svg-compatible .mw-hero-woman {
    position: absolute !important;
    top: 8px !important;
    right: 245px !important;
    width: 510px !important;
    height: 655px !important;
    background-image: url('/images/home/woman-brain-hero.png') !important;
    background-repeat: no-repeat !important;
    background-position: center top !important;
    background-size: contain !important;
    z-index: 1 !important;
    pointer-events: none !important;
    filter: drop-shadow(0 16px 30px rgba(4, 26, 68, .16)) !important;
}

/* Le texte reste au-dessus de l'image. */
body .mw-home .mw-hero-copy,
body .mw-home-svg-compatible .mw-hero-copy {
    position: relative !important;
    z-index: 4 !important;
    width: 650px !important;
    max-width: 650px !important;
    padding-top: 0 !important;
}

/* Titre : compact, mais sans descendre trop bas. */
body .mw-home .mw-hero-copy h1,
body .mw-home-svg-compatible .mw-hero-copy h1,
body .mw-home .mw-hero h1,
body .mw-home-svg-compatible .mw-hero h1 {
    max-width: 560px !important;
    font-size: 30px !important;
    line-height: 1.02 !important;
    letter-spacing: -0.35px !important;
    font-weight: 900 !important;
    margin: 0 0 12px !important;
    color: var(--mw-blue) !important;
    text-align: left !important;
}

body .mw-home .mw-hook,
body .mw-home-svg-compatible .mw-hook {
    max-width: 545px !important;
    font-size: 18px !important;
    line-height: 1.22 !important;
    margin: 0 0 10px !important;
    font-weight: 900 !important;
    text-align: left !important;
}

body .mw-home .mw-lead,
body .mw-home-svg-compatible .mw-lead {
    max-width: 545px !important;
    font-size: 12.5px !important;
    line-height: 1.45 !important;
    margin: 0 0 14px !important;
    text-align: left !important;
}

/* Les boutons peuvent légèrement passer sur l'image. */
body .mw-home .mw-tags,
body .mw-home-svg-compatible .mw-tags {
    max-width: 910px !important;
    gap: 8px !important;
    margin: 14px 0 16px !important;
    position: relative !important;
    z-index: 6 !important;
}

body .mw-home .mw-tags span,
body .mw-home-svg-compatible .mw-tags span {
    background: rgba(255, 255, 255, .96) !important;
    backdrop-filter: blur(1px) !important;
}

/* Le bloc décision est volontairement plus large et passe devant la femme. */
body .mw-home .mw-decision-box,
body .mw-home-svg-compatible .mw-decision-box {
    position: relative !important;
    z-index: 7 !important;
    width: 650px !important;
    max-width: 650px !important;
    margin-right: 0 !important;
    padding: 13px 15px !important;
    gap: 13px !important;
    border-radius: 17px !important;
    background: rgba(255,255,255,.95) !important;
    backdrop-filter: blur(1px) !important;
}

/* Les preuves aussi passent devant le bas de la femme. */
body .mw-home .mw-proof-row,
body .mw-home-svg-compatible .mw-proof-row {
    position: relative !important;
    z-index: 7 !important;
    width: 650px !important;
    max-width: 650px !important;
    margin-top: 14px !important;
    margin-right: 0 !important;
    gap: 8px !important;
}

body .mw-home .mw-proof-row div,
body .mw-home-svg-compatible .mw-proof-row div {
    min-height: 96px !important;
    background: rgba(255,255,255,.95) !important;
    backdrop-filter: blur(1px) !important;
}

/* L'ancienne figure ne doit jamais revenir. */
body .mw-home .mw-hero-visual,
body .mw-home-svg-compatible .mw-hero-visual {
    display: none !important;
}

/* Carte offre à droite. */
body .mw-home .mw-offer-card,
body .mw-home-svg-compatible .mw-offer-card {
    position: relative !important;
    z-index: 8 !important;
    max-width: 490px !important;
    width: 100% !important;
    margin: 8px 0 0 !important;
}

/* La section suivante remonte un peu, puisque le hero est maintenant contrôlé. */
body .mw-home .mw-section,
body .mw-home-svg-compatible .mw-section {
    padding-top: 8px !important;
}

/* Responsive */
@media (max-width: 1280px) {
    body .mw-home .mw-hero-woman,
    body .mw-home-svg-compatible .mw-hero-woman {
        right: 180px !important;
        width: 480px !important;
        height: 625px !important;
    }

    body .mw-home .mw-hero-copy,
    body .mw-home-svg-compatible .mw-hero-copy,
    body .mw-home .mw-decision-box,
    body .mw-home-svg-compatible .mw-decision-box,
    body .mw-home .mw-proof-row,
    body .mw-home-svg-compatible .mw-proof-row {
        width: 610px !important;
        max-width: 610px !important;
    }
}

@media (max-width: 1180px) {
    body .mw-home .mw-hero-two-cols,
    body .mw-home-svg-compatible .mw-hero-two-cols,
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr 320px !important;
    }

    body .mw-home .mw-hero-main,
    body .mw-home-svg-compatible .mw-hero-main {
        height: auto !important;
        min-height: auto !important;
    }

    body .mw-home .mw-hero-copy,
    body .mw-home-svg-compatible .mw-hero-copy,
    body .mw-home .mw-decision-box,
    body .mw-home-svg-compatible .mw-decision-box,
    body .mw-home .mw-proof-row,
    body .mw-home-svg-compatible .mw-proof-row {
        width: auto !important;
        max-width: 100% !important;
    }

    body .mw-home .mw-hero-woman,
    body .mw-home-svg-compatible .mw-hero-woman {
        position: relative !important;
        top: auto !important;
        right: auto !important;
        width: 100% !important;
        height: 420px !important;
        margin-top: 10px !important;
        background-position: center top !important;
        background-size: contain !important;
    }
}

@media (max-width: 760px) {
    body .mw-home .mw-hero-two-cols,
    body .mw-home-svg-compatible .mw-hero-two-cols,
    body .mw-home .mw-hero,
    body .mw-home-svg-compatible .mw-hero {
        grid-template-columns: 1fr !important;
    }
}



/* ==========================================================
   ACCUEIL V2 - AJUSTEMENT FINAL DU HERO 2 COLONNES
   Objectif :
   - conserver le chevauchement réussi;
   - éviter que la femme coupe le titre de la section suivante;
   - déplacer légèrement la femme vers la droite;
   - réduire subtilement sa hauteur;
   - redonner de l'air avant la section Applications.
   ========================================================== */

body .mw-home .mw-hero-main,
body .mw-home-svg-compatible .mw-hero-main {
    min-height: 590px !important;
    height: 590px !important;
}

/* Femme légèrement moins haute et un peu plus à droite */
body .mw-home .mw-hero-woman,
body .mw-home-svg-compatible .mw-hero-woman {
    top: -60px !important;
    right: -120px !important;
    width: 490px !important;
    height: 625px !important;
    background-size: contain !important;
    background-position: center top !important;
}

/* Le texte et les blocs gardent le chevauchement, mais sans trop écraser la femme */
body .mw-home .mw-hero-copy,
body .mw-home-svg-compatible .mw-hero-copy {
    width: 940px !important;
    max-width: 940px !important;
}

body .mw-home .mw-decision-box,
body .mw-home-svg-compatible .mw-decision-box {
    width: 620px !important;
    max-width: 620px !important;
}

body .mw-home .mw-proof-row,
body .mw-home-svg-compatible .mw-proof-row {
    width: 620px !important;
    max-width: 620px !important;
}

/* On évite que la section suivante commence dans la femme */
body .mw-home .mw-section,
body .mw-home-svg-compatible .mw-section {
    padding-top: 26px !important;
}

/* Le titre de la section suivante doit être entièrement visible */
body .mw-home .mw-section > h2,
body .mw-home-svg-compatible .mw-section > h2 {
    position: relative !important;
    z-index: 9 !important;
    margin-top: 0 !important;
}

/* La première section Applications doit commencer sous le hero */
body .mw-home .mw-hero-two-cols + .mw-section,
body .mw-home-svg-compatible .mw-hero-two-cols + .mw-section,
body .mw-home .mw-hero + .mw-section,
body .mw-home-svg-compatible .mw-hero + .mw-section {
    padding-top: 0px !important;
}

/* Carte offre : on la garde stable, sans descendre */
body .mw-home .mw-offer-card,
body .mw-home-svg-compatible .mw-offer-card {
    margin-top: 8px !important;
}

/* Ajustement responsive */
@media (max-width: 1280px) {
    body .mw-home .mw-hero-main,
    body .mw-home-svg-compatible .mw-hero-main {
        min-height: 630px !important;
        height: 630px !important;
    }

    body .mw-home .mw-hero-woman,
    body .mw-home-svg-compatible .mw-hero-woman {
        right: 160px !important;
        width: 465px !important;
        height: 600px !important;
    }

    body .mw-home .mw-hero-copy,
    body .mw-home-svg-compatible .mw-hero-copy,
    body .mw-home .mw-decision-box,
    body .mw-home-svg-compatible .mw-decision-box,
    body .mw-home .mw-proof-row,
    body .mw-home-svg-compatible .mw-proof-row {
        width: 600px !important;
        max-width: 600px !important;
    }
}

@media (max-width: 1180px) {
    body .mw-home .mw-hero-main,
    body .mw-home-svg-compatible .mw-hero-main {
        height: auto !important;
        min-height: auto !important;
    }

    body .mw-home .mw-hero-woman,
    body .mw-home-svg-compatible .mw-hero-woman {
        right: auto !important;
        width: 100% !important;
        height: 420px !important;
    }

    body .mw-home .mw-hero-copy,
    body .mw-home-svg-compatible .mw-hero-copy,
    body .mw-home .mw-decision-box,
    body .mw-home-svg-compatible .mw-decision-box,
    body .mw-home .mw-proof-row,
    body .mw-home-svg-compatible .mw-proof-row {
        width: auto !important;
        max-width: 100% !important;
    }
}

body .mw-home .mw-avatar-row,
body .mw-home-svg-compatible .mw-avatar-row {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 6px !important;
    margin: 10px 0 5px !important;
}

body .mw-home img.mw-avatar,
body .mw-home-svg-compatible img.mw-avatar {
    display: block !important;
    width: 32px !important;
    height: 32px !important;
    min-width: 32px !important;
    border-radius: 50% !important;
    object-fit: cover !important;
    object-position: center !important;
    border: 2px solid #ffffff !important;
    box-shadow: 0 4px 10px rgba(4, 26, 68, .22) !important;
    background: #ffffff !important;
}

/* Désactive les anciens faux visages CSS si une vieille règle reste active */
body .mw-home img.mw-avatar::before,
body .mw-home img.mw-avatar::after,
body .mw-home-svg-compatible img.mw-avatar::before,
body .mw-home-svg-compatible img.mw-avatar::after {
    display: none !important;
    content: none !important;
}

body .mw-home .mw-stars,
body .mw-home-svg-compatible .mw-stars {
    display: flex !important;
    justify-content: center !important;
    align-items: center !important;
    gap: 3px !important;
    margin: 4px 0 5px !important;
    font-size: 13px !important;
}

body .mw-home .mw-star-full,
body .mw-home-svg-compatible .mw-star-full {
    color: #16820e !important;
}

body .mw-home .mw-star-empty,
body .mw-home-svg-compatible .mw-star-empty {
    color: #9aa1ad !important;
}

/* ==========================================================
   COMPOSITION SPECTRUM AVEC IMAGES TRANSPARENTES
   ========================================================== */

.mw-spectrum-composition {
    width: 100%;
    display: grid;
    grid-template-columns: minmax(125px, 0.8fr) minmax(250px, 1.55fr) minmax(125px, 0.8fr);
    gap: 12px;
    align-items: center;
    justify-content: center;
    margin: 18px auto 8px;
}

/* Colonne centrale */

.mw-spectrum-main {
    display: flex;
    align-items: center;
    justify-content: center;
    min-width: 0;
    position: relative;
    z-index: 2;
}

.mw-spectrum-main-image {
    display: block;
    width: 100%;
    max-width: 320px;
    height: auto;
    object-fit: contain;
    filter: drop-shadow(0 14px 18px rgba(6, 30, 99, 0.16));
}

/* Colonnes latérales */

.mw-spectrum-side {
    height: 100%;
    min-height: 310px;
    display: flex;
    flex-direction: column;
    justify-content: space-around;
    gap: 24px;
}

.mw-spectrum-side-left {
    align-items: flex-end;
    text-align: left;
}

.mw-spectrum-side-right {
    align-items: flex-start;
    text-align: left;
}

/* Chaque dimension */

.mw-spectrum-item {
    width: 100%;
    max-width: 175px;
    color: #061e63;
}

.mw-spectrum-item-head {
    display: flex;
    align-items: center;
    width: 100%;
    margin-bottom: 8px;
}

.mw-spectrum-side-left .mw-spectrum-item-head {
    justify-content: flex-end;
}

.mw-spectrum-side-right .mw-spectrum-item-head {
    justify-content: flex-start;
}

.mw-spectrum-item-icon {
    width: 58px;
    height: 58px;
    flex: 0 0 58px;
    object-fit: contain;
    display: block;
}

.mw-spectrum-link-line {
    height: 2px;
    flex: 1;
    min-width: 22px;
    max-width: 74px;
    margin: 0 8px;
    position: relative;
}

/* Petit point au bout du trait */

.mw-spectrum-side-left .mw-spectrum-link-line::before,
.mw-spectrum-side-right .mw-spectrum-link-line::after {
    content: "";
    position: absolute;
    top: 50%;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    transform: translateY(-50%);
}

.mw-spectrum-side-left .mw-spectrum-link-line::before {
    left: 0;
}

.mw-spectrum-side-right .mw-spectrum-link-line::after {
    right: 0;
}

/* Textes */

.mw-spectrum-item-text {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.mw-spectrum-item-text strong {
    display: block;
    font-size: 15px;
    line-height: 1.1;
    font-weight: 900;
    text-transform: uppercase;
}

.mw-spectrum-item-text small {
    display: block;
    font-size: 11.5px;
    line-height: 1.35;
    color: #53617a;
}

/* Couleurs par dimension */

.mw-spectrum-item-think strong {
    color: #075eea;
}

.mw-spectrum-item-think .mw-spectrum-link-line {
    background: #75a8ff;
}

.mw-spectrum-item-think .mw-spectrum-link-line::before {
    background: #075eea;
}

.mw-spectrum-item-influence strong {
    color: #16820d;
}

.mw-spectrum-item-influence .mw-spectrum-link-line {
    background: #8acb83;
}

.mw-spectrum-item-influence .mw-spectrum-link-line::after {
    background: #16820d;
}

.mw-spectrum-item-act strong {
    color: #ff7a00;
}

.mw-spectrum-item-act .mw-spectrum-link-line {
    background: #ffb067;
}

.mw-spectrum-item-act .mw-spectrum-link-line::before {
    background: #ff7a00;
}

.mw-spectrum-item-motivate strong {
    color: #e60072;
}

.mw-spectrum-item-motivate .mw-spectrum-link-line {
    background: #f491bd;
}

.mw-spectrum-item-motivate .mw-spectrum-link-line::after {
    background: #e60072;
}

/* Ajustements fins des positions */

.mw-spectrum-item-think {
    transform: translateY(-8px);
}

.mw-spectrum-item-influence {
    transform: translateY(-8px);
}

.mw-spectrum-item-act {
    transform: translateY(8px);
}

.mw-spectrum-item-motivate {
    transform: translateY(8px);
}

/* Tablette */

@media (max-width: 900px) {
    .mw-spectrum-composition {
        grid-template-columns: 1fr;
        gap: 18px;
    }

    .mw-spectrum-main {
        grid-row: 1;
    }

    .mw-spectrum-side {
        min-height: auto;
        display: grid;
        grid-template-columns: 1fr 1fr;
        gap: 18px;
    }

    .mw-spectrum-side-left {
        grid-row: 2;
    }

    .mw-spectrum-side-right {
        grid-row: 3;
    }

    .mw-spectrum-item {
        max-width: none;
        transform: none;
    }

    .mw-spectrum-item-head {
        justify-content: center !important;
    }

    .mw-spectrum-link-line {
        display: none;
    }

    .mw-spectrum-item-text {
        text-align: center;
    }
}

/* Mobile */

@media (max-width: 560px) {
    .mw-spectrum-side {
        grid-template-columns: 1fr;
    }

    .mw-spectrum-main-image {
        max-width: 280px;
    }

    .mw-spectrum-item-icon {
        width: 52px;
        height: 52px;
        flex-basis: 52px;
    }
}