/* ================================================================
   M&C — v4 (29/09/2026) : compositions propres à chaque page + blocs « humains »
   Même langage que l'accueil validé : Manrope, navy #0e2440 / or #c9a24a · #e8c887 · #b8862b, bleuté #f6f8fb,
   pastilles, boutons pilule ↗, rayons 22-26 px. Chargée partout sauf sur l'accueil (après blocs.css).
   Interactions : assets/js/mc-v4.js (tout reste lisible sans JavaScript ; animations coupées si « réduire les animations »).
   ================================================================ */

/* ---------- utilitaires ---------- */
.mc-center { text-align:center; }
.mc-k.mc-center { display:block; }
.mc-center-note { text-align:center; margin-left:auto; margin-right:auto; }
.mc-sticky-h { position:sticky; top:110px; }
.sect > .wrap > .mc-bigq.mc-mt, .sect > .wrap > .mc-card.mc-mt { margin-top:clamp(30px,3.6vw,52px); }
.mc-rv { opacity:0; transform:translateY(18px); transition:opacity .8s cubic-bezier(.2,.7,.2,1), transform .8s cubic-bezier(.2,.7,.2,1); }
.mc-rv.is-in { opacity:1; transform:none; }

/* ---------- en-tête du site sur les héros clairs ---------- */
.mc-hx.is-light #mc-head > a { color:#0e2440 !important; }
.mc-hx.is-light #mc-head > a > span { background:#0e2440 !important; border-color:#0e2440 !important; color:#fff; }
.mc-hx.is-light #mc-head > nav > a.nv { color:rgba(14,36,64,0.72) !important; }
.mc-hx.is-light #mc-head > nav > a.nv:hover { color:#0e2440 !important; }
.mc-hx.is-light #mc-head > nav > a.btn-w { background:#0e2440; color:#fff; }
.mc-hx.is-light #mc-head > nav > a.btn-w span.a { background:#c9a24a; color:#0e2440; }
.mc-hx.is-light #mc-head .mc-menu > summary { background:#0e2440; border-color:#0e2440; color:#fff; }

/* ---------- héros v4 : socle commun ---------- */
.mc-hx .mc-hx-w { position:relative; z-index:1; }
.mc-hx .mc-hx-t .pill, .mc-hx .mc-hx-t .pill-l { margin-bottom:clamp(20px,2.4vw,28px); }
.mc-hx .mc-hx-t .h1 { max-width:15ch; margin-bottom:clamp(20px,2.2vw,26px); }
.mc-hx .mc-hx-t .h1.mc-h1-long { max-width:19ch; }
.mc-hx .mc-hx-t .lead { max-width:50ch; margin-bottom:clamp(26px,3vw,38px); }
.mc-hx .mc-hx-t .lead:last-child { margin-bottom:0; }
.mc-hx.is-light, .mc-hx.is-light .h1 { color:#0e2440; }
.mc-hx.is-light .h1 { color:#0e2440; }
.mc-hx.is-light .lead { color:rgba(14,36,64,0.62); }
.mc-hx.is-light .mc-or { color:#b8862b; }
.mc-hx.is-light::after, .mc-hx.is-split::after, .mc-hx.is-typo::after, .mc-hx.is-figures::after { display:none; }

/* héros « texte + image en colonnes » (Dirigeants, Partenaires, situations) */
.mc-hx.is-split { min-height:min(100svh, 940px); background:#0e2440; background-image:radial-gradient(circle at 12% 88%, rgba(201,162,74,0.16), transparent 42%); }
.mc-hx.is-split.is-light { background:#f6f8fb; background-image:radial-gradient(circle at 90% 10%, rgba(201,162,74,0.14), transparent 40%); }
.mc-hx.is-split .mc-hero-in { align-items:center; padding-top:clamp(10px,2vw,30px); }
.mc-hx.is-split .mc-hx-w { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(0,0.95fr); gap:clamp(28px,4.4vw,72px); align-items:center; }
.mc-hx.is-split.is-rev .mc-hx-w { grid-template-columns:minmax(0,0.95fr) minmax(0,1.05fr); }
.mc-hx.is-split .h1 { font-size:clamp(38px,4.8vw,70px); }
.mc-hx-m { position:relative; }
.mc-hx-img { margin:0; border-radius:26px; overflow:hidden; aspect-ratio:4/5; max-height:min(68svh, 640px); width:100%; background:#122b48; box-shadow:0 40px 90px rgba(0,0,0,0.28); }
.mc-hx.is-light .mc-hx-img { box-shadow:0 40px 90px rgba(14,36,64,0.16); }
.mc-hx-img img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(0.9); }
.mc-hx-chip { position:absolute; left:clamp(-28px,-2vw,-14px); bottom:clamp(22px,3vw,40px); display:inline-flex; align-items:center; gap:10px; padding:14px 20px; border-radius:999px; background:#fff; color:#0e2440; font-size:14px; font-weight:600; box-shadow:0 20px 50px rgba(0,0,0,0.22); }
.mc-hx-chip::before { content:""; width:9px; height:9px; border-radius:999px; background:#c9a24a; box-shadow:0 0 0 5px rgba(201,162,74,0.2); }

/* héros « image pleine largeur avec encart » (Particuliers, situations) */
.mc-hx.is-encart::after { background:linear-gradient(180deg, rgba(14,36,64,0.66) 0%, rgba(14,36,64,0.18) 34%, rgba(14,36,64,0.10) 60%, rgba(14,36,64,0.45) 100%); }
.mc-hx.is-encart .mc-hero-in { align-items:flex-end; }
.mc-hx-card { max-width:640px; background:#fff; color:#0e2440; border-radius:26px; padding:clamp(26px,3.4vw,48px); box-shadow:0 40px 100px rgba(14,36,64,0.35); }
.mc-hx-card .pill { margin-bottom:22px; }
.mc-hx-card .h1 { color:#0e2440; font-size:clamp(34px,4.2vw,60px); max-width:none; margin-bottom:20px; }
.mc-hx-card .h1 .mc-or { color:#b8862b; }
.mc-hx-card .lead { color:rgba(14,36,64,0.62); margin-bottom:28px; max-width:none; }
.mc-hx.is-encart.is-center .mc-hx-w { display:flex; justify-content:center; }
.mc-hx.is-encart.is-center .mc-hx-card { text-align:center; }
.mc-hx.is-encart.is-center .mc-hx-card .wp-block-buttons { justify-content:center; }
.mc-hx.is-encart.is-right .mc-hx-w { display:flex; justify-content:flex-end; }

/* héros typographiques (Qui sommes-nous, Philosophie, FAQ, Situations, Mentions) */
.mc-hx.is-typo { min-height:auto; background:#f6f8fb; }
.mc-hx.is-typo .mc-hero-in { padding:clamp(56px,8vw,120px) 0 clamp(56px,7vw,100px); align-items:center; }
.mc-hx.is-typo.is-short .mc-hero-in { padding:clamp(40px,6vw,80px) 0 clamp(40px,5vw,70px); }
.mc-hx.is-typo.is-navy { background:#0e2440; background-image:radial-gradient(circle at 50% 120%, rgba(201,162,74,0.22), transparent 55%); color:#fff; min-height:min(100svh, 900px); }
.mc-hx.is-typo.is-navy .mc-hero-in { padding-bottom:clamp(70px,9vw,140px); }
.mc-hx.mc-hx-center .mc-hx-t { text-align:center; }
.mc-hx.mc-hx-center .mc-hx-t .h1, .mc-hx.mc-hx-center .mc-hx-t .lead { margin-left:auto; margin-right:auto; }
.mc-hx.mc-hx-center .mc-hx-t .wp-block-buttons { justify-content:center; }
.mc-hx .h1.mc-h1-xl { font-size:clamp(54px,10.5vw,158px); line-height:0.98; letter-spacing:-0.045em; max-width:12ch; }
.mc-hx-qsn .mc-hx-w { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,0.75fr); gap:clamp(30px,5vw,80px); align-items:center; }
.mc-hx-duo { position:relative; height:clamp(360px,40vw,560px); }
.mc-hx-duo > .mc-slot { position:absolute; width:62%; aspect-ratio:4/5; border-radius:26px; box-shadow:0 30px 70px rgba(14,36,64,0.16); }
.mc-hx-duo > .mc-hx-p1 { left:0; top:0; }
.mc-hx-duo > .mc-hx-p2 { right:0; bottom:0; border:6px solid #f6f8fb; }
.mc-hx-cats { display:flex; flex-wrap:wrap; gap:12px; margin-top:clamp(28px,3vw,40px); }
.mc-hx-cat a { display:inline-flex; align-items:center; gap:12px; padding:12px 14px 12px 18px; border-radius:999px; background:#fff; border:1px solid rgba(14,36,64,0.1); font-size:15px; font-weight:600; transition:background .25s, color .25s; }
.mc-hx-cat a strong { color:#b8862b; font-size:13px; }
.mc-hx-cat a em { font-style:normal; display:inline-flex; align-items:center; justify-content:center; min-width:28px; height:28px; padding:0 8px; border-radius:999px; background:#f6f8fb; font-size:12.5px; color:rgba(14,36,64,0.6); }
.mc-hx-cat a:hover { background:#0e2440; color:#fff; }
.mc-hx-doors { display:grid; grid-template-columns:1fr 1fr; gap:clamp(14px,1.6vw,22px); margin-top:clamp(34px,4vw,56px); }
.mc-hx-door { position:relative; isolation:isolate; border-radius:24px; overflow:hidden; min-height:clamp(220px,22vw,300px); display:flex; flex-direction:column; justify-content:flex-end; padding:clamp(22px,2.6vw,34px); color:#fff; }
.mc-hx-door-img { position:absolute; inset:0; margin:0; z-index:-2; }
.mc-hx-door-img img { width:100%; height:100%; object-fit:cover; display:block; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.mc-hx-door::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(14,36,64,0.05) 20%, rgba(14,36,64,0.88) 100%); }
.mc-hx-door-k { order:-1; font-size:12.5px; font-weight:500; color:#e8c887; margin-bottom:8px; }
.mc-hx-door-t { font-size:clamp(22px,2.4vw,32px); font-weight:600; letter-spacing:-0.02em; line-height:1.15; padding-right:56px; }
.mc-hx-door-t a::after { content:""; position:absolute; inset:0; z-index:1; }
.mc-hx-door::before { content:"↓"; position:absolute; right:clamp(20px,2.4vw,30px); bottom:clamp(20px,2.4vw,30px); z-index:1; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:999px; background:#fff; color:#0e2440; }
.mc-hx-door:hover .mc-hx-door-img img { transform:scale(1.04); }
.mc-hx-strip { margin-top:clamp(34px,4vw,56px); }
.mc-hx-strip-img { margin:0; border-radius:26px; overflow:hidden; aspect-ratio:21/7; }
.mc-hx-strip-img img { width:100%; height:100%; object-fit:cover; display:block; object-position:center 35%; filter:saturate(0.9); }
.mc-hx-roundw .mc-hx-w { display:grid; grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr); gap:clamp(30px,5vw,80px); align-items:center; }
.mc-hx-round { position:relative; }
.mc-hx-round::before { content:""; position:absolute; inset:-18px; border-radius:999px; border:1px dashed rgba(184,134,43,0.55); }
.mc-hx-round-img { margin:0; aspect-ratio:1/1; border-radius:999px; overflow:hidden; }
.mc-hx-round-img img { width:100%; height:100%; object-fit:cover; display:block; }

/* héros avec chiffres (Méthode, Résultats, Honoraires) */
.mc-hx.is-figures { min-height:min(100svh, 920px); background:#0e2440; background-image:radial-gradient(circle at 85% 20%, rgba(201,162,74,0.18), transparent 40%); }
.mc-hx.is-figures.is-light { background:#f6f8fb; background-image:radial-gradient(circle at 85% 20%, rgba(201,162,74,0.16), transparent 40%); }
.mc-hx.is-figures .mc-hero-in { align-items:center; }
.mc-hx.is-figures .mc-hx-w { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr); gap:clamp(30px,5vw,80px); align-items:center; }
.mc-hx.is-figures .h1 { font-size:clamp(38px,4.8vw,70px); }
.mc-hf-4 { display:grid; grid-template-columns:1fr 1fr; gap:14px; }
.mc-hf-i { border-radius:22px; padding:clamp(20px,2.2vw,28px); background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.12); min-height:clamp(130px,12vw,170px); display:flex; flex-direction:column; justify-content:space-between; }
.mc-hf-i:nth-child(4) { background:#c9a24a; border-color:#c9a24a; color:#0e2440; }
.mc-hf-n { font-size:clamp(34px,3.6vw,52px); font-weight:600; letter-spacing:-0.04em; color:#e8c887; line-height:1; }
.mc-hf-i:nth-child(4) .mc-hf-n { color:#0e2440; }
.mc-hf-t { font-size:clamp(17px,1.5vw,21px); font-weight:600; letter-spacing:-0.015em; }
.mc-hf-cases { display:flex; flex-direction:column; gap:14px; }
.mc-fig { background:#fff; border-radius:22px; padding:clamp(20px,2.2vw,28px); box-shadow:0 20px 50px rgba(14,36,64,0.08); }
.mc-fig:nth-child(2) { margin-left:clamp(0px,3vw,48px); background:#0e2440; color:#fff; }
.mc-fig-v { font-size:clamp(32px,3.4vw,48px); font-weight:700; letter-spacing:-0.035em; line-height:1.05; }
.mc-fig-l { margin-top:8px; font-size:12.5px; font-weight:600; color:#b8862b; }
.mc-fig:nth-child(2) .mc-fig-l { color:#e8c887; }
.mc-fig-s { margin-top:4px; font-size:14.5px; line-height:1.5; color:rgba(14,36,64,0.62); }
.mc-fig:nth-child(2) .mc-fig-s { color:rgba(255,255,255,0.7); }
.mc-hp { background:#0e2440; color:#fff; border-radius:26px; padding:clamp(24px,3vw,40px); box-shadow:0 40px 90px rgba(14,36,64,0.22); }
.mc-hp > .mc-k { color:#e8c887; margin-bottom:10px; }
.mc-hp-i { display:grid; grid-template-columns:1fr auto; grid-template-rows:auto auto; column-gap:18px; align-items:baseline; padding:16px 0; border-top:1px solid rgba(255,255,255,0.12); }
.mc-hp-l { grid-row:1 / span 2; font-size:16px; font-weight:600; }
.mc-hp-m { text-align:right; font-size:clamp(26px,2.6vw,34px); font-weight:700; letter-spacing:-0.03em; line-height:1.1; }
.mc-hp-u { text-align:right; font-size:13px; color:rgba(255,255,255,0.55); }

/* héros « photo + bande » (Interventions) et « canaux » (Contact) */
.mc-hx.is-spectrum .mc-hero-in, .mc-hx.is-channels .mc-hero-in { align-items:flex-end; }
.mc-sp { display:grid; grid-template-columns:repeat(3,1fr); gap:0; margin-top:clamp(36px,5vw,70px); border-top:1px solid rgba(255,255,255,0.22); }
.mc-sp-i a { position:relative; display:flex; flex-direction:column; gap:6px; padding:22px 56px 6px 0; font-size:clamp(16px,1.4vw,20px); font-weight:600; letter-spacing:-0.01em; color:#fff; }
.mc-sp-i a strong { font-size:13px; font-weight:600; color:#e8c887; }
.mc-sp-i a::before { content:""; position:absolute; top:-1px; left:0; width:0; height:2px; background:#c9a24a; transition:width .5s cubic-bezier(.2,.7,.2,1); }
.mc-sp-i a:hover::before, .mc-sp-i a:focus-visible::before { width:100%; }
.mc-sp-i a::after { content:"↓"; position:absolute; right:18px; top:24px; font-size:14px; color:rgba(255,255,255,0.6); }
.mc-chs { display:grid; grid-template-columns:repeat(3,1fr); gap:clamp(12px,1.4vw,18px); margin-top:clamp(34px,4vw,56px); }
.mc-ch { position:relative; border-radius:22px; padding:clamp(22px,2.4vw,30px); background:rgba(255,255,255,0.1); border:1px solid rgba(255,255,255,0.22); backdrop-filter:blur(10px); color:#fff; transition:background .3s, color .3s, transform .3s; }
.mc-ch:hover, .mc-ch:focus-within { background:#fff; color:#0e2440; transform:translateY(-3px); }
.mc-ch-i { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:999px; background:#c9a24a; color:#0e2440; font-size:18px; font-weight:700; margin-bottom:22px; }
.mc-ch .mc-k { color:#e8c887; margin-bottom:6px; }
.mc-ch:hover .mc-k, .mc-ch:focus-within .mc-k { color:#b8862b; }
.mc-ch .h3 { margin-bottom:10px; }
.mc-ch .h3 a::after { content:""; position:absolute; inset:0; border-radius:22px; }
.mc-ch > p:not([class]) { font-size:14.5px; line-height:1.6; color:rgba(255,255,255,0.72); }
.mc-ch:hover > p:not([class]), .mc-ch:focus-within > p:not([class]) { color:rgba(14,36,64,0.62); }

/* ---------- portraits à fournir (même hachure que l'accueil) ---------- */
.mc-slot { position:relative; display:flex; align-items:center; justify-content:center; background:repeating-linear-gradient(135deg, #e4edf6 0 18px, #edf2f8 18px 36px); border-radius:22px; overflow:hidden; }
.mc-slot-l { padding:10px 18px; border-radius:14px; background:rgba(255,255,255,0.92); border:1px dashed rgba(14,36,64,0.28); font-size:13px; line-height:1.5; color:rgba(14,36,64,0.6); text-align:center; }
.mc-slot-l strong { color:#0e2440; font-weight:600; }

/* ---------- équipe en carrousel (Qui sommes-nous) ---------- */
.mc-team { display:grid; gap:clamp(16px,2vw,24px); }
.mc-tm { display:grid; grid-template-columns:minmax(0,0.85fr) minmax(0,1.15fr); gap:clamp(22px,3vw,48px); align-items:stretch; background:#0e2440; color:#fff; border-radius:28px; padding:clamp(14px,1.6vw,20px); }
.mc-tm-ph { min-height:clamp(340px,36vw,520px); border-radius:20px; }
.mc-tm-t { padding:clamp(14px,2.4vw,36px) clamp(8px,2vw,28px) clamp(14px,2vw,28px) 0; display:flex; flex-direction:column; }
.mc-tm-t .mc-k { color:#e8c887; margin-bottom:10px; }
.mc-tm-n { color:#fff; font-size:clamp(30px,3.6vw,52px); margin-bottom:18px; }
.mc-tm-b.lead { color:rgba(255,255,255,0.74); }
.mc-tm-q { margin-top:clamp(20px,2.4vw,30px); padding:clamp(18px,2vw,24px); border-radius:18px; border:1px dashed rgba(232,200,135,0.55); background:rgba(255,255,255,0.04); }
.mc-tm-qk { font-size:12.5px; font-weight:600; color:#e8c887; margin-bottom:8px; }
.mc-tm-qt { font-size:clamp(16px,1.4vw,19px); line-height:1.55; font-weight:500; color:rgba(255,255,255,0.62); font-style:italic; }
.mc-tm .mc-tags { margin-top:auto; padding-top:clamp(20px,2.4vw,30px); }
.mc-tm .mc-tags li { background:rgba(255,255,255,0.08); color:rgba(255,255,255,0.78); }
.mc-team.is-js { grid-template-columns:minmax(0,1fr) clamp(180px,17vw,240px); align-items:stretch; }
.mc-team.is-js > .mc-tm { grid-column:1; grid-row:1; }
.mc-team.is-js > .mc-tm:not(.is-on) { display:none; }
.mc-team.is-js > .mc-tm.is-on { animation:mcTm .6s cubic-bezier(.2,.7,.2,1); }
@keyframes mcTm { from { opacity:0; transform:translateX(18px); } to { opacity:1; transform:none; } }
.mc-team-side { grid-column:2; grid-row:1; display:flex; flex-direction:column; gap:14px; }
.mc-team-arrows { display:flex; gap:10px; justify-content:flex-end; }
.mc-team-arrows button { width:46px; height:46px; border-radius:999px; border:1px solid rgba(14,36,64,0.18); background:#fff; color:#0e2440; font-size:17px; cursor:pointer; transition:background .25s, color .25s; }
.mc-team-arrows button:hover { background:#0e2440; color:#fff; }
.mc-team-thumbs { display:flex; flex-direction:column; gap:14px; flex:1; }
.mc-team-thumb { flex:1; display:flex; flex-direction:column; gap:10px; padding:0; border:0; background:none; text-align:left; cursor:pointer; color:#0e2440; font:inherit; }
.mc-team-thumb .mc-slot { flex:1; min-height:200px; width:100%; transition:transform .4s cubic-bezier(.2,.7,.2,1); }
.mc-team-thumb .mc-slot-l { font-size:11.5px; padding:8px 10px; }
.mc-team-thumb:hover .mc-slot { transform:translateY(-3px); }
.mc-team-thumb[aria-pressed="true"] { display:none; }
.mc-team-thumb b { font-size:15px; font-weight:600; }
.mc-team-thumb small { font-size:12.5px; color:#b8862b; font-weight:500; }
.mc-duo-force { margin-top:clamp(16px,2vw,24px); display:grid !important; grid-template-columns:auto 1fr; column-gap:24px; align-items:start; }
.mc-duo-force > .ico { grid-row:1 / span 2; margin:0; }
.mc-duo-force > .h3 { margin-bottom:8px; }

/* ---------- manifeste qui s'écrit au défilement (Philosophie) ---------- */
.mc-sect-sw { padding:0 !important; }
.mc-sw { padding:clamp(80px,10vw,150px) 0; }
.mc-sw > .mc-k { margin-bottom:24px; }
.mc-sw-t { font-size:clamp(34px,5.6vw,84px); font-weight:500; line-height:1.08; letter-spacing:-0.035em; color:#0e2440; max-width:20ch; }
.mc-sw.is-js { height:190vh; padding:0; }
.mc-sw.is-js > .mc-sw-in { position:sticky; top:0; height:100vh; height:100svh; display:flex; flex-direction:column; justify-content:center; }
.mc-sw-t .w { color:rgba(14,36,64,0.13); transition:color .35s ease; }
.mc-sw-t .w.on { color:#0e2440; }
.mc-sw-t .w.is-or.on { color:#b8862b; }
.mc-sw-bar { margin-top:34px; height:2px; width:min(420px,60%); background:rgba(14,36,64,0.1); border-radius:2px; overflow:hidden; }
.mc-sw-bar i { display:block; height:100%; width:0; background:#c9a24a; }

/* texte qui s'éclaire au fil de la lecture (Philosophie) */
.mc-man-split { grid-template-columns:minmax(0,0.7fr) minmax(0,1.3fr); }
.mc-man-h { position:sticky; top:110px; }
.mc-man-h .pill { margin-bottom:20px; }
.mc-man { display:flex; flex-direction:column; gap:clamp(22px,2.6vw,36px); }
.mc-man-p { font-size:clamp(21px,2.3vw,32px); line-height:1.4; font-weight:500; letter-spacing:-0.02em; color:#0e2440; }
.mc-man.is-js .mc-man-p { color:rgba(14,36,64,0.2); transition:color .6s ease; }
.mc-man.is-js .mc-man-p.is-lit { color:#0e2440; }

/* ---------- grille chiffres + photos (bento) ---------- */
.mc-bento { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); grid-auto-rows:minmax(clamp(170px,15vw,220px),auto); grid-auto-flow:dense; gap:clamp(12px,1.4vw,18px); }
.mc-bt { position:relative; border-radius:22px; padding:clamp(20px,2.2vw,28px); background:#f6f8fb; display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden; }
.is-style-mc-bleute .mc-bt { background:#fff; }
.mc-bt.c2 { grid-column:span 2; }
.mc-bt.r2 { grid-row:span 2; }
.mc-bt.r3 { grid-row:span 3; }
.mc-bt-v { font-size:clamp(32px,3.4vw,50px); font-weight:700; letter-spacing:-0.04em; line-height:1.05; }
.mc-bt.is-long .mc-bt-v { font-size:clamp(24px,2.4vw,36px); }
.mc-bt-l { margin-top:10px; font-size:14.5px; line-height:1.5; color:rgba(14,36,64,0.62); max-width:32ch; }
.mc-bt-s { margin-top:10px; font-size:12px; color:rgba(14,36,64,0.45); }
.mc-bt.is-navy, .is-style-mc-bleute .mc-bt.is-navy { background:#0e2440; color:#fff; }
.mc-bt.is-navy .mc-bt-v { color:#e8c887; }
.mc-bt.is-navy .mc-bt-l { color:rgba(255,255,255,0.72); }
.mc-bt.is-navy .mc-bt-s { color:rgba(255,255,255,0.45); }
.mc-bt.is-photo { padding:0; min-height:200px; }
.mc-bt-img { position:absolute; inset:0; margin:0; }
.mc-bt-img img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(0.9); transition:transform 1s cubic-bezier(.2,.7,.2,1); }
.mc-bt.is-photo:hover .mc-bt-img img { transform:scale(1.04); }
.mc-bt-c { position:relative; margin:auto 16px 16px; align-self:flex-start; padding:8px 14px; border-radius:999px; background:rgba(255,255,255,0.9); font-size:12.5px; font-weight:600; }
.mc-bt.is-todo { background:repeating-linear-gradient(135deg, #f6f8fb 0 16px, #eef3f9 16px 32px); border:1px dashed rgba(14,36,64,0.25); }
.is-style-mc-bleute .mc-bt.is-todo { background:repeating-linear-gradient(135deg, #fff 0 16px, #f3f6fa 16px 32px); }
.mc-bt.is-todo .mc-bt-v { font-size:clamp(18px,1.6vw,22px); letter-spacing:-0.01em; color:#b8862b; }
.mc-bt.is-todo .mc-bt-l { color:#0e2440; font-weight:600; }
.mc-bt.is-head { background:none; padding:0 clamp(10px,2vw,30px) 0 0; justify-content:center; }
.mc-bt.is-head .pill { align-self:flex-start; margin-bottom:20px; }
.mc-bt-h { font-size:clamp(30px,3.6vw,52px); }
.mc-bt.is-text { background:#c9a24a; color:#0e2440; justify-content:center; }
.mc-bt.is-text > p { font-size:clamp(15px,1.2vw,17px); line-height:1.7; font-weight:500; color:rgba(14,36,64,0.86); }
.mc-bt.is-text > .h3:empty { display:none; }

/* ---------- cartes avec photo ---------- */
.mc-pc { position:relative; border-radius:22px; overflow:hidden; background:#f6f8fb; display:flex; flex-direction:column; }
.is-style-mc-bleute .mc-pc { background:#fff; }
.mc-pc-img { margin:0; aspect-ratio:4/3; overflow:hidden; background:#e4edf6; }
.mc-pc-img img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(0.9); transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.mc-pc-t { padding:clamp(20px,2.2vw,28px); display:flex; flex-direction:column; flex:1; }
.mc-pc-t > .mc-k { margin-bottom:8px; }
.mc-pc-t > .h3 { margin-bottom:10px; }
.mc-pc-t > p:not([class]) { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.mc-pc-t > .mc-chk { margin-top:16px; }
.mc-pc.is-link .h3 a::after { content:""; position:absolute; inset:0; z-index:1; }
.mc-pc.is-link::before { content:"↗"; position:absolute; top:16px; right:16px; z-index:2; display:flex; align-items:center; justify-content:center; width:44px; height:44px; border-radius:999px; background:#fff; color:#0e2440; font-size:16px; transition:background .25s; }
.mc-pc.is-link:hover::before { background:#c9a24a; }
.mc-pc.is-link:hover .mc-pc-img img { transform:scale(1.05); }
.mc-pc-more { margin-top:auto; padding-top:14px; font-size:14px; font-weight:600; color:#b8862b; }
.mc-pcs-sm .mc-pc-img { aspect-ratio:16/9; }
.mc-pcs-sit .mc-pc-img { aspect-ratio:1/1; }
.mc-pcs.g5 { grid-template-columns:repeat(5,minmax(0,1fr)); }
.mc-pcs.g5 .mc-pc-t { padding:18px; }
@media (max-width:1000px) { .mc-pcs.g5 { grid-template-columns:repeat(3,minmax(0,1fr)); } }
@media (max-width:760px) { .mc-pcs.g5 { grid-template-columns:1fr 1fr; } }
.mc-pcs-sit .h3 { font-size:clamp(18px,1.5vw,21px); }
.mc-piliers .mc-pc-img { aspect-ratio:16/8; }

/* ---------- témoignages (emplacements « Exemple — à remplacer ») ---------- */
.mc-to { border-radius:22px; overflow:hidden; background:#fff; display:flex; flex-direction:column; box-shadow:0 2px 14px rgba(14,36,64,0.05); }
.is-style-mc-bleute .mc-to { background:#fff; }
.sect:not(.is-style-mc-bleute) .mc-to { background:#f6f8fb; box-shadow:none; }
.mc-to-ph { position:relative; }
.mc-to-img { margin:0; aspect-ratio:16/10; overflow:hidden; }
.mc-to-img img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(0.85); }
.mc-to-badge { position:absolute; left:14px; top:14px; padding:7px 13px; border-radius:999px; background:#c9a24a; color:#0e2440; font-size:12px; font-weight:700; }
.mc-to-t { padding:clamp(20px,2.2vw,28px); display:flex; flex-direction:column; flex:1; }
.mc-to-mark { font-size:54px; line-height:0.6; color:#c9a24a; font-weight:700; height:26px; }
.mc-to-q { font-size:clamp(16px,1.35vw,19px); line-height:1.55; font-weight:500; color:rgba(14,36,64,0.5); font-style:italic; margin-bottom:22px; }
.mc-to-who { margin-top:auto; padding-top:16px; border-top:1px solid rgba(14,36,64,0.1); }
.mc-to-n { font-size:15px; font-weight:700; }
.mc-to-j { font-size:13.5px; color:#b8862b; font-weight:500; }
.mc-to-note { text-align:center; margin-left:auto; margin-right:auto; }

/* ---------- bloc final avec visage : « Parlez à Michaël » ---------- */
.mc-cta-in.is-face { text-align:left; }
.mc-ctf { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(30px,5vw,80px); align-items:center; }
.mc-ctf-l > .pill-l { margin-bottom:22px; }
.mc-ctf-l > .h2 { max-width:16ch; margin:0 0 20px; }
.mc-ctf-l > .lead { color:rgba(255,255,255,0.78); max-width:46ch; margin:0 0 clamp(26px,3vw,36px); }
.mc-ctf-l > .wp-block-buttons { justify-content:flex-start; margin-bottom:clamp(26px,3vw,40px); }
.mc-ctf-l > .mc-cta-info { justify-content:flex-start; flex-direction:column; gap:10px; }
.mc-ctf > .mc-form-card { margin:0; max-width:none; }
.mc-face { display:flex; width:fit-content; max-width:100%; align-items:center; gap:16px; padding:8px 26px 8px 8px; margin-bottom:26px; border-radius:999px; background:rgba(255,255,255,0.08); border:1px solid rgba(255,255,255,0.18); backdrop-filter:blur(8px); }
.mc-face-ph { width:88px; height:88px; border-radius:999px; flex:none; }
.mc-face-ph .mc-slot-l { padding:4px 6px; border-radius:8px; font-size:9px; line-height:1.25; }
.mc-face-ph figure, .mc-face figure.wp-block-image { margin:0; }
.mc-face .wp-block-image img { width:88px; height:88px; border-radius:999px; object-fit:cover; display:block; }
.mc-face-k { font-size:12.5px; font-weight:600; color:#e8c887; }
.mc-face-n { font-size:19px; font-weight:600; letter-spacing:-0.015em; color:#fff; }
.mc-face-r { font-size:13.5px; color:rgba(255,255,255,0.6); }

/* ---------- auto-diagnostic (Dirigeants) ---------- */
.mc-diag-split { align-items:start; }
.mc-diag-w { position:sticky; top:96px; }
.mc-diag { background:#fff; border-radius:26px; padding:clamp(24px,3vw,40px); box-shadow:0 30px 80px rgba(14,36,64,0.12); border:1px solid rgba(14,36,64,0.06); }
.mc-diag-i { font-size:clamp(20px,1.9vw,26px); font-weight:600; letter-spacing:-0.02em; margin-bottom:18px; }
.mc-diag-prog { display:grid; grid-template-columns:repeat(4,1fr); gap:6px; margin-bottom:24px; }
.mc-diag-prog i { height:4px; border-radius:4px; background:rgba(14,36,64,0.1); transition:background .4s; }
.mc-diag-prog i.on { background:#c9a24a; }
.mc-diag-c { font-size:12.5px; font-weight:600; color:#b8862b; margin-bottom:8px; }
.mc-diag-q > .h3 { margin-bottom:20px; }
.mc-diag-o { gap:10px; }
.mc-diag-o .wp-block-button__link { padding:11px 18px; font-size:14.5px; }
.mc-diag-o .wp-block-button__link[aria-pressed="true"] { background:#0e2440; color:#fff; border-color:#0e2440; }
.mc-diag:not(.is-js) .mc-diag-q:not(.is-first), .mc-diag:not(.is-js) .mc-diag-r, .mc-diag:not(.is-js) .mc-diag-re { display:none; }
.mc-diag.is-js .mc-diag-q:not(.is-on), .mc-diag.is-js .mc-diag-r:not(.is-on) { display:none; }
.mc-diag.is-js .mc-diag-q.is-on, .mc-diag.is-js .mc-diag-r.is-on { animation:mcTm .5s cubic-bezier(.2,.7,.2,1); }
.mc-diag-r > .mc-k { margin-bottom:6px; }
.mc-diag-rt { margin-bottom:16px; }
.mc-diag-ms { display:flex; flex-direction:column; gap:10px; margin-bottom:22px; }
.mc-diag-m { display:none; position:relative; padding:14px 16px 14px 42px; border-radius:16px; background:#f6f8fb; font-size:15px; line-height:1.6; }
.mc-diag-m::before { content:"✓"; position:absolute; left:16px; top:14px; color:#b8862b; font-weight:700; }
.mc-diag-m.is-on { display:block; }
.mc-diag-re { margin-top:14px; }
.mc-diag-re button { background:none; border:0; padding:0; font:inherit; font-size:14px; font-weight:600; color:#b8862b; text-decoration:underline; text-underline-offset:4px; cursor:pointer; }
.mc-diag-note { margin-top:20px; font-size:12.5px; line-height:1.6; color:rgba(14,36,64,0.5); }
.mc-diag-back { display:inline-block; margin-top:16px; background:none; border:0; padding:0; font:inherit; font-size:13.5px; font-weight:600; color:rgba(14,36,64,0.55); cursor:pointer; }
.mc-diag-back:hover { color:#0e2440; }

/* lignes à filet (situations, valeurs) */
.mc-rows4 { display:flex; flex-direction:column; margin-top:clamp(20px,2.4vw,30px); }
.mc-row { display:grid; grid-template-columns:56px minmax(0,1fr) minmax(0,1.4fr); gap:10px 24px; align-items:baseline; padding:clamp(16px,1.8vw,22px) 0; border-top:1px solid rgba(14,36,64,0.14); }
.mc-row:last-child { border-bottom:1px solid rgba(14,36,64,0.14); }
.mc-row-n { font-size:13px; font-weight:700; color:#b8862b; }
.h3.mc-row-t { font-size:clamp(17px,1.5vw,20px); }
.mc-row-x { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.mc-rows4.is-compact .mc-row { grid-template-columns:44px minmax(0,1fr); }
.mc-rows4.is-compact .mc-row-x { grid-column:2; }
.mc-rows4.is-big { margin-top:0; }
.mc-rows4.is-big .h3.mc-row-t { font-size:clamp(22px,2.4vw,32px); font-weight:500; letter-spacing:-0.025em; }
.mc-rows4.is-big .mc-row { grid-template-columns:64px minmax(0,1fr); padding:clamp(22px,2.6vw,34px) 0; }
.mc-rows4.is-big .mc-row-x { grid-column:2; font-size:16px; }
.mc-rows4.is-big .mc-row-n { font-size:15px; }
.mc-vals { grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr); }

/* grandes citations */
.mc-bigq { max-width:1000px; margin-left:auto; margin-right:auto; text-align:center; }
.mc-bigq-t { font-size:clamp(24px,3vw,42px); font-weight:500; line-height:1.25; letter-spacing:-0.025em; }
.mc-bigq-t::before { content:"“"; display:block; font-size:1.8em; line-height:0.7; color:#c9a24a; margin-bottom:8px; }
.mc-bigq-a { margin-top:18px; font-size:14px; font-weight:600; color:#b8862b; }
.mc-bigq.is-dark .mc-bigq-t { color:#fff; }
.mc-bigq.is-dark .mc-bigq-a { color:#e8c887; }
.mc-bigq-xl .mc-bigq-t { font-size:clamp(28px,4.2vw,60px); }
.mc-bigq-k { margin-top:14px; }

/* ---------- schéma « M&C relie tout cela » (Dirigeants) ---------- */
.mc-net { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); grid-template-rows:auto auto auto; gap:14px; position:relative; }
.mc-net::before { content:""; position:absolute; left:16.66%; right:16.66%; top:16%; bottom:16%; border:1px dashed rgba(184,134,43,0.6); border-radius:30px; z-index:0; }
.mc-net-n, .mc-net-c { position:relative; z-index:1; border-radius:20px; padding:18px; }
.mc-net-n { background:#fff; border:1px solid rgba(14,36,64,0.12); box-shadow:0 10px 30px rgba(14,36,64,0.06); }
.mc-net-n.is-1 { grid-column:2; grid-row:1; }
.mc-net-n.is-2 { grid-column:1; grid-row:2; }
.mc-net-n.is-3 { grid-column:3; grid-row:2; }
.mc-net-n.is-4 { grid-column:2; grid-row:3; }
.mc-net-c { grid-column:2; grid-row:2; background:#0e2440; color:#fff; text-align:center; display:flex; flex-direction:column; justify-content:center; box-shadow:0 20px 50px rgba(14,36,64,0.3); }
.mc-net-t { font-size:15px; font-weight:700; margin-bottom:6px; }
.mc-net-x { font-size:13.5px; line-height:1.55; color:rgba(14,36,64,0.62); }
.mc-net-ct { font-size:16px; font-weight:700; color:#e8c887; margin-bottom:6px; }
.mc-net-cx { font-size:13.5px; line-height:1.55; color:rgba(255,255,255,0.78); }

/* ---------- frise horizontale (Dirigeants, Méthode, situations, Contact) ---------- */
.mc-frise { margin-top:clamp(30px,3.6vw,52px); }
.mc-frise > .mc-k { margin-bottom:24px; }
.mc-frise-l { position:relative; display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,210px),1fr)); gap:clamp(18px,2.4vw,36px); }
.mc-frise-l::before, .mc-frise-l::after { content:""; position:absolute; left:22px; right:22px; top:22px; height:2px; border-radius:2px; }
.mc-frise-l::before { background:rgba(14,36,64,0.12); }
.mc-frise-l::after { background:#c9a24a; right:auto; width:calc((100% - 44px) * var(--pw, 1)); }
.is-style-mc-navy .mc-frise-l::before { background:rgba(255,255,255,0.14); }
.mc-frise-i { position:relative; z-index:1; }
.mc-frise-n { display:flex; align-items:center; justify-content:center; width:46px; height:46px; border-radius:999px; background:#0e2440; color:#fff; font-size:14px; font-weight:700; margin-bottom:22px; box-shadow:0 0 0 6px #fff; transition:background .4s, color .4s; }
.is-style-mc-bleute .mc-frise-n { box-shadow:0 0 0 6px #f6f8fb; }
.is-style-mc-navy .mc-frise-n { background:#c9a24a; color:#0e2440; box-shadow:0 0 0 6px #0e2440; }
.mc-frise-i .mc-k { margin-bottom:6px; }
.mc-frise-i .h3 { margin-bottom:10px; }
.mc-frise-i > p:not([class]) { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.is-style-mc-navy .mc-frise-i > p:not([class]) { color:rgba(255,255,255,0.65); }
.mc-p1 { margin-bottom:0; }
.mc-p1 > .lead { padding-top:clamp(0px,4vw,60px); }

/* ---------- escalier (Dirigeants, Méthode) ---------- */
.mc-st { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:clamp(12px,1.4vw,18px); align-items:end; }
.mc-st-i { border-radius:22px; padding:clamp(20px,2.2vw,28px); background:#fff; border-top:3px solid #c9a24a; }
.sect:not(.is-style-mc-bleute) .mc-st-i { background:#f6f8fb; }
.mc-st-i:nth-child(1) { min-height:clamp(220px,20vw,260px); }
.mc-st-i:nth-child(2) { min-height:clamp(260px,24vw,320px); }
.mc-st-i:nth-child(3) { min-height:clamp(300px,28vw,380px); }
.mc-st-i:nth-child(4) { min-height:clamp(340px,32vw,440px); background:#0e2440 !important; color:#fff; }
.mc-st-n { font-size:clamp(34px,3.4vw,50px); font-weight:600; letter-spacing:-0.04em; color:#b8862b; line-height:1; margin-bottom:clamp(40px,5vw,80px); }
.mc-st-i:nth-child(4) .mc-st-n { color:#e8c887; }
.mc-st-i .h3 { margin-bottom:10px; }
.mc-st-i > p:not([class]) { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.62); }
.mc-st-i:nth-child(4) > p:not([class]) { color:rgba(255,255,255,0.72); }

/* ---------- conversation (Particuliers) ---------- */
.mc-chat-col { padding-top:clamp(0px,2vw,24px); }
.mc-chat { display:flex; flex-direction:column; gap:14px; }
.mc-chat-b { max-width:86%; padding:18px 22px; border-radius:24px; }
.mc-chat-b.is-me { background:#f6f8fb; border-bottom-left-radius:6px; }
.mc-chat-b.is-mc { margin-left:auto; background:#0e2440; color:#fff; border-bottom-right-radius:6px; }
.mc-chat-b > .mc-chat-w { font-size:12px; font-weight:700; letter-spacing:0.02em; color:#b8862b; margin-bottom:6px; padding:0; }
.mc-chat-b.is-mc > .mc-chat-w { color:#e8c887; }
.mc-chat-b > .h3 { font-size:clamp(17px,1.5vw,20px); margin-bottom:6px; }
.mc-chat-b > p:not([class]) { font-size:15px; line-height:1.65; color:rgba(14,36,64,0.66); }
.mc-chat-b.is-mc > p:not([class]) { color:rgba(255,255,255,0.74); }
.mc-chat-b.is-js { opacity:0; transform:translateY(14px) scale(.98); transition:opacity .6s, transform .6s cubic-bezier(.2,.7,.2,1); }
.mc-chat-b.is-js.is-in { opacity:1; transform:none; }
.mc-warm { position:relative; isolation:isolate; margin-top:clamp(26px,3vw,40px); border-radius:22px; overflow:hidden; min-height:clamp(240px,24vw,320px); display:flex; flex-direction:column; justify-content:flex-end; color:#fff; }
.mc-warm-img { position:absolute; inset:0; margin:0; z-index:-2; }
.mc-warm-img img { width:100%; height:100%; object-fit:cover; display:block; }
.mc-warm::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(14,36,64,0) 30%, rgba(14,36,64,0.88) 100%); }
.mc-warm-c { padding:clamp(20px,2.4vw,30px); }
.mc-warm-c .h3 { color:#fff; font-size:clamp(20px,2.2vw,28px); max-width:22ch; }

/* « Vous reconnaissez-vous ? » : cartes photo qui s'ouvrent (Particuliers) */
.mc-pks { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,1.6vw,22px); }
.mc-pk { position:relative; isolation:isolate; border-radius:22px; overflow:hidden; background:#fff; display:flex; flex-direction:column; }
.mc-pk-img { margin:0; aspect-ratio:4/3; overflow:hidden; background:#e4edf6; }
.mc-pk-img img { width:100%; height:100%; object-fit:cover; display:block; filter:saturate(0.9); transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.mc-pk-t { padding:clamp(20px,2.2vw,28px); }
.mc-pk-n { font-size:13px; font-weight:700; color:#b8862b; margin-bottom:8px; }
.mc-pk-t > .h3 { margin-bottom:10px; }
.mc-pk-x { font-size:15px; line-height:1.7; color:rgba(14,36,64,0.66); margin-bottom:18px; }
.mc-pk-b { gap:10px; }
.mc-pk-b .wp-block-button__link { font-size:14px; }
.mc-pk-close { display:none; }
.mc-pks.is-js .mc-pk { min-height:clamp(320px,28vw,400px); color:#fff; background:#0e2440; }
.mc-pks.is-js .mc-pk-img { position:absolute; inset:0; aspect-ratio:auto; z-index:-2; }
.mc-pks.is-js .mc-pk::after { content:""; position:absolute; inset:0; z-index:-1; background:linear-gradient(180deg, rgba(14,36,64,0) 35%, rgba(14,36,64,0.9) 100%); pointer-events:none; }
.mc-pks.is-js .mc-pk-t { position:absolute; left:0; right:0; bottom:0; z-index:2; padding:clamp(20px,2.2vw,26px) 80px clamp(20px,2.2vw,26px) clamp(20px,2.2vw,26px); }
.mc-pks.is-js .mc-pk-n { color:#e8c887; }
.mc-pks.is-js .mc-pk-t > .h3 { color:#fff; margin:0; }
.mc-pks.is-js .mc-pk-x, .mc-pks.is-js .mc-pk-b { display:none; }
.mc-pk-tg { position:absolute; inset:0; z-index:3; border:0; background:none; cursor:pointer; padding:0; border-radius:22px; }
.mc-pk-tg span { position:absolute; right:20px; bottom:22px; width:46px; height:46px; border-radius:999px; background:#fff; color:#0e2440; font-size:0; display:flex; align-items:center; justify-content:center; transition:background .25s, transform .3s; }
.mc-pk-tg span::before { content:"+"; font-size:24px; font-weight:400; line-height:1; }
.mc-pk-tg:hover span { background:#c9a24a; transform:rotate(90deg); }
.mc-pks.is-js .mc-pk:hover .mc-pk-img img { transform:scale(1.05); }
.mc-pk.is-open .mc-pk-tg { display:none; }
.mc-pks.is-js .mc-pk.is-open .mc-pk-t { top:0; z-index:4; background:#fff; color:#0e2440; padding-right:clamp(20px,2.2vw,26px); display:flex; flex-direction:column; overflow:auto; animation:mcTm .45s cubic-bezier(.2,.7,.2,1); }
.mc-pks.is-js .mc-pk.is-open .mc-pk-n { color:#b8862b; }
.mc-pks.is-js .mc-pk.is-open .mc-pk-t > .h3 { color:#0e2440; margin:0 40px 10px 0; }
.mc-pks.is-js .mc-pk.is-open .mc-pk-x { display:block; }
.mc-pks.is-js .mc-pk.is-open .mc-pk-b { display:flex; margin-top:auto; }
.mc-pk.is-open .mc-pk-close { display:flex; align-items:center; justify-content:center; position:absolute; top:14px; right:14px; width:38px; height:38px; border-radius:999px; border:1px solid rgba(14,36,64,0.18); background:#fff; color:#0e2440; font-size:20px; cursor:pointer; }
@media (max-width:1000px) { .mc-pks { grid-template-columns:1fr 1fr; } }
@media (max-width:560px) { .mc-pks { grid-template-columns:1fr; } .mc-pks.is-js .mc-pk { min-height:300px; } }

/* sans action / avec M&C (Particuliers) */
.mc-tt { border-radius:24px; border:1px solid rgba(255,255,255,0.12); overflow:hidden; }
.mc-tt-h, .mc-tt-r { display:grid; grid-template-columns:minmax(0,1.2fr) minmax(0,1fr) minmax(0,1fr); gap:18px; padding:18px clamp(18px,2.4vw,30px); }
.mc-tt-h { background:rgba(255,255,255,0.05); }
.mc-tt-h .mc-k { margin:0; }
.mc-tt-h .mc-k:nth-child(2) { color:rgba(255,255,255,0.45); }
.mc-tt-r { border-top:1px solid rgba(255,255,255,0.1); align-items:center; }
.mc-tt-s { font-size:clamp(17px,1.5vw,20px); font-weight:600; letter-spacing:-0.015em; }
.mc-tt-b .mc-k, .mc-tt-g .mc-k { display:none; }
.mc-then-bad { position:relative; padding-left:22px; }
.mc-then-bad::before { content:"✕"; position:absolute; left:0; color:rgba(255,255,255,0.35); }
.mc-then-good { position:relative; padding-left:22px; }
.mc-then-good::before { content:"✓"; position:absolute; left:0; color:#e8c887; }

/* ---------- piliers en défilement collant (Méthode) ---------- */
.mc-stk { display:grid; grid-template-columns:minmax(0,0.36fr) minmax(0,1fr); gap:clamp(30px,5vw,80px); align-items:start; }
.mc-stk-l { position:sticky; top:110px; }
.mc-stk-nav { display:flex; flex-direction:column; border-left:2px solid rgba(14,36,64,0.1); }
.mc-stk-a a { display:flex; gap:14px; align-items:baseline; padding:14px 0 14px 22px; margin-left:-2px; border-left:2px solid transparent; font-size:clamp(17px,1.5vw,21px); font-weight:600; letter-spacing:-0.015em; color:rgba(14,36,64,0.4); transition:color .3s, border-color .3s; }
.mc-stk-a a strong { font-size:13px; color:inherit; }
.mc-stk-a a:hover, .mc-stk-a.is-on a { color:#0e2440; border-left-color:#c9a24a; }
.mc-stk-a.is-on a strong { color:#b8862b; }
.mc-stk-r { display:flex; flex-direction:column; gap:clamp(40px,6vw,90px); }
.mc-stk-p { scroll-margin-top:110px; }
.mc-stk-n { font-size:12.5px; font-weight:600; color:#b8862b; margin-bottom:10px; }
.h2.mc-stk-h { font-size:clamp(34px,4.6vw,64px); margin-bottom:16px; }
.mc-stk-p > .lead { max-width:52ch; margin-bottom:26px; }
.mc-stk-img { aspect-ratio:16/9; }

/* ---------- barre de temps : le rendez-vous de 45 minutes (Méthode) ---------- */
.mc-tb { display:flex; gap:clamp(8px,1vw,14px); }
.mc-tb-s { flex:10 1 0; min-width:0; border-radius:22px; padding:clamp(20px,2.2vw,28px); background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); position:relative; overflow:hidden; }
.mc-tb-s.is-w25 { flex-grow:25; background:rgba(201,162,74,0.14); border-color:rgba(232,200,135,0.35); }
.mc-tb-s::before { content:""; display:block; height:6px; border-radius:6px; background:#c9a24a; margin-bottom:18px; }
.mc-tb-d { font-size:clamp(26px,2.6vw,36px); font-weight:700; letter-spacing:-0.03em; color:#e8c887; margin-bottom:6px; }
.mc-tb-s .h3 { margin-bottom:8px; }
.mc-tb-s > p:not([class]) { font-size:14.5px; line-height:1.65; color:rgba(255,255,255,0.68); }

/* bandeau Formule 1 (Méthode) */
.mc-f1 { grid-template-columns:minmax(0,0.8fr) minmax(0,1.2fr); }
.mc-f1-t .mc-k { margin-bottom:18px; }
.mc-f1-t .mc-bigq-t { font-size:clamp(24px,3vw,42px); font-weight:500; line-height:1.25; letter-spacing:-0.025em; }
.mc-blocs-v4 .mc-bloc { transition:background .3s, color .3s, transform .3s; }
.mc-blocs-v4 .mc-bloc:hover { background:#0e2440; color:#fff; transform:translateY(-3px); }
.mc-blocs-v4 .mc-bloc:hover .mc-k { color:#e8c887; }

/* ---------- tableau des formules (Honoraires) ---------- */
.mc-tbl { margin:0; }
.mc-tbl table { width:100%; border-collapse:separate; border-spacing:0; border-radius:22px; overflow:hidden; border:1px solid rgba(14,36,64,0.1); font-size:15px; }
.mc-tbl th { background:#0e2440; color:#fff; text-align:left; font-weight:600; font-size:13px; padding:16px 22px; }
.mc-tbl td { padding:20px 22px; border-top:1px solid rgba(14,36,64,0.08); line-height:1.6; color:rgba(14,36,64,0.72); vertical-align:top; }
.mc-tbl tbody tr:nth-child(even) td { background:#f6f8fb; }
.mc-tbl td strong { color:#0e2440; font-weight:700; }
.mc-tbl td:nth-child(3) strong { font-size:22px; letter-spacing:-0.02em; white-space:nowrap; }
.mc-tbl td:nth-child(4) { white-space:nowrap; }

/* ---------- simulateur d'honoraire de résultat (Honoraires) ---------- */
.mc-simu { display:grid; grid-template-columns:minmax(0,1.1fr) minmax(0,0.9fr); gap:clamp(14px,2vw,24px); }
.mc-simu-l, .mc-simu-r2 { border-radius:26px; padding:clamp(24px,3vw,40px); }
.mc-simu-l { background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.12); }
.mc-simu-l > .h3 { margin-bottom:22px; }
.mc-simu-rates { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.mc-simu-r { border-radius:18px; padding:18px; border:1px solid rgba(255,255,255,0.16); text-align:left; background:none; color:#fff; font:inherit; }
.mc-simu-r[aria-pressed] { cursor:pointer; transition:background .3s, border-color .3s; }
.mc-simu-r[aria-pressed="true"] { background:#c9a24a; border-color:#c9a24a; color:#0e2440; }
.mc-simu-rv { display:block; font-size:clamp(28px,3vw,40px); font-weight:700; letter-spacing:-0.03em; line-height:1.1; }
.mc-simu-rl { display:block; margin-top:6px; font-size:14px; line-height:1.5; color:rgba(255,255,255,0.7); }
.mc-simu-r[aria-pressed="true"] .mc-simu-rl { color:rgba(14,36,64,0.78); }
.mc-simu-ui:empty { display:none; }
.mc-simu-ui { margin-top:26px; }
.mc-simu-ui label { display:flex; justify-content:space-between; gap:12px; font-size:14px; font-weight:600; color:rgba(255,255,255,0.8); margin-bottom:12px; }
.mc-simu-ui output { font-size:20px; font-weight:700; color:#fff; }
.mc-simu-ui input[type=range] { width:100%; accent-color:#c9a24a; height:28px; cursor:pointer; }
.mc-simu-ui .mc-simu-scale { display:flex; justify-content:space-between; font-size:12px; color:rgba(255,255,255,0.45); margin-top:4px; }
.mc-simu-r2 { background:#fff; color:#0e2440; display:flex; flex-direction:column; }
.mc-simu-r2 .mc-k { color:#b8862b; margin-bottom:6px; }
.mc-simu-out { font-size:clamp(44px,5.2vw,76px); font-weight:700; letter-spacing:-0.045em; line-height:1; margin-bottom:18px; }
.mc-simu-calc { font-size:15px; line-height:1.6; color:#0e2440; font-weight:500; margin-bottom:14px; }
.mc-simu-ex, .mc-simu-no { font-size:14.5px; line-height:1.65; color:rgba(14,36,64,0.62); }
.mc-simu-no { margin-top:8px; }
.mc-simu-note { margin-top:auto; padding-top:20px; font-size:12.5px; line-height:1.6; color:rgba(14,36,64,0.5); }

/* ---------- cas avant / après + filtres (Résultats, situations) ---------- */
.mc-flt { display:none; }
.mc-flt.is-js { display:flex; flex-wrap:wrap; align-items:center; gap:14px 28px; margin-bottom:clamp(22px,2.6vw,34px); padding:14px 18px; border-radius:999px; background:#fff; box-shadow:0 10px 30px rgba(14,36,64,0.06); }
.mc-flt-g { display:flex; flex-wrap:wrap; align-items:center; gap:8px; }
.mc-flt-n { font-size:12.5px; font-weight:600; color:#b8862b; margin-right:4px; }
.mc-flt button { padding:9px 16px; border-radius:999px; border:1px solid rgba(14,36,64,0.16); background:#fff; color:#0e2440; font:inherit; font-size:14px; font-weight:500; cursor:pointer; transition:background .25s, color .25s; }
.mc-flt button:hover { border-color:#0e2440; }
.mc-flt button[aria-pressed="true"] { background:#0e2440; color:#fff; border-color:#0e2440; }
.mc-flt-count { margin-left:auto; font-size:13.5px; color:rgba(14,36,64,0.55); }
.mc-abs-h { margin:clamp(40px,5vw,70px) 0 clamp(20px,2.4vw,30px); }
.mc-abs-h .pill { margin-bottom:14px; }
.mc-abs-t { font-size:clamp(24px,2.8vw,38px); font-weight:500; letter-spacing:-0.025em; line-height:1.15; }
.mc-abs-h.is-empty { display:none; }
.mc-ab { background:#fff; border-radius:24px; padding:clamp(22px,2.6vw,34px); display:flex; flex-direction:column; }
.sect:not(.is-style-mc-bleute) .mc-ab { background:#f6f8fb; }
.mc-ab.is-hidden { display:none; }
.mc-ab-h { display:flex; justify-content:space-between; align-items:baseline; gap:14px; flex-wrap:wrap; margin-bottom:10px; }
.mc-ab-h .mc-k { margin:0; }
.mc-ab-fig { font-size:clamp(28px,2.8vw,40px); font-weight:700; letter-spacing:-0.035em; }
.mc-ab > .h3 { margin-bottom:22px; }
.mc-ab-g { position:relative; display:flex; flex-direction:column; gap:14px; padding-left:26px; margin-bottom:20px; }
.mc-ab-g::before { content:""; position:absolute; left:6px; top:8px; bottom:8px; width:2px; background:linear-gradient(180deg, rgba(14,36,64,0.15), #c9a24a); }
.mc-ab-g > div { position:relative; }
.mc-ab-g > div::before { content:""; position:absolute; left:-25px; top:6px; width:12px; height:12px; border-radius:999px; background:#fff; border:2px solid rgba(14,36,64,0.3); }
.mc-ab-a::before { background:#c9a24a !important; border-color:#c9a24a !important; }
.mc-ab-k { font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:0.08em; color:rgba(14,36,64,0.45); margin-bottom:4px; }
.mc-ab-a .mc-ab-k { color:#b8862b; }
.mc-ab-g p:not([class]) { font-size:15px; line-height:1.65; color:rgba(14,36,64,0.7); }
.mc-ab-a p:not([class]) { color:#0e2440; font-weight:600; }
.mc-ab > .mc-tags { margin-top:auto; }
.mc-ab-one { max-width:860px; margin:18px auto 0; }

/* ---------- frise datée (Qui sommes-nous) ---------- */
.mc-tl-split { grid-template-columns:minmax(0,0.9fr) minmax(0,1.1fr); }
.mc-tl-intro { position:sticky; top:110px; }
.mc-tl-intro > .pill { margin-bottom:20px; }
.mc-tl-intro > .h2 { margin-bottom:18px; }
.mc-tl-intro > .lead + .lead { margin-top:14px; }
.mc-tl { position:relative; padding-left:34px; }
.mc-tl::before { content:""; position:absolute; left:7px; top:10px; bottom:10px; width:2px; background:linear-gradient(180deg, rgba(14,36,64,0.14), #c9a24a); }
.mc-tl-i { position:relative; padding:0 0 clamp(24px,3vw,40px); }
.mc-tl-i::before { content:""; position:absolute; left:-33px; top:12px; width:16px; height:16px; border-radius:999px; background:#fff; border:3px solid #c9a24a; }
.mc-tl-i:last-child::before { background:#0e2440; border-color:#0e2440; }
.mc-tl-y { font-size:clamp(30px,3.4vw,48px); font-weight:600; letter-spacing:-0.04em; line-height:1; color:#b8862b; margin-bottom:10px; }
.mc-tl-c { background:#fff; border-radius:20px; padding:clamp(18px,2vw,24px); }
.mc-tl-c .h3 { font-size:clamp(17px,1.5vw,20px); margin-bottom:6px; }
.mc-tl-c > p { font-size:15px; line-height:1.65; color:rgba(14,36,64,0.62); }
.mc-tl-i:last-child .mc-tl-c { background:#0e2440; color:#fff; }
.mc-tl-i:last-child .mc-tl-c > p { color:rgba(255,255,255,0.7); }

/* ---------- FAQ : catégories + recherche instantanée ---------- */
.mc-fq { max-width:1040px; margin:0 auto; }
.mc-fq-bar:empty { display:none; }
.mc-fq-bar { position:sticky; top:74px; z-index:5; display:flex; flex-wrap:wrap; align-items:center; gap:12px; padding:12px; margin-bottom:clamp(26px,3vw,40px); border-radius:999px; background:rgba(255,255,255,0.94); backdrop-filter:blur(12px); box-shadow:0 14px 40px rgba(14,36,64,0.1); border:1px solid rgba(14,36,64,0.06); }
.mc-fq-search { position:relative; flex:1 1 260px; }
.mc-fq-search input { width:100%; height:48px; padding:0 18px 0 46px; border-radius:999px; border:1px solid rgba(14,36,64,0.14); background:#f6f8fb; font-size:15.5px; color:#0e2440; }
.mc-fq-search input:focus { outline:3px solid #c9a24a; outline-offset:1px; background:#fff; }
.mc-fq-search::before { content:"⌕"; position:absolute; left:17px; top:50%; transform:translateY(-52%); font-size:20px; color:#b8862b; pointer-events:none; }
.mc-fq-tabs { display:flex; flex-wrap:wrap; gap:6px; }
.mc-fq-tabs button { padding:11px 16px; border-radius:999px; border:0; background:none; color:rgba(14,36,64,0.7); font:inherit; font-size:14px; font-weight:600; cursor:pointer; }
.mc-fq-tabs button[aria-pressed="true"] { background:#0e2440; color:#fff; }
.mc-fq-g { scroll-margin-top:150px; }
.mc-fq-g + .mc-fq-g { margin-top:clamp(40px,5vw,70px); }
.mc-fq-g.is-hidden { display:none; }
.mc-fq-h { display:grid; grid-template-columns:auto 1fr auto; align-items:baseline; gap:18px; padding-bottom:18px; margin-bottom:14px; border-bottom:1px solid rgba(14,36,64,0.12); }
.mc-fq-n { font-size:13px; font-weight:700; color:#b8862b; }
.h3.mc-fq-t { font-size:clamp(24px,2.6vw,34px); font-weight:500; letter-spacing:-0.025em; }
.mc-fq-c { font-size:13px; color:rgba(14,36,64,0.5); }
.mc-fq-q.is-hidden { display:none; }
.mc-fq-q mark { background:rgba(201,162,74,0.35); color:inherit; border-radius:4px; padding:0 2px; }
.mc-fq-none { display:none; text-align:center; padding:40px 20px; border-radius:22px; background:#f6f8fb; font-size:16px; color:rgba(14,36,64,0.7); }
.mc-fq.is-empty .mc-fq-none { display:block; }

/* ---------- qui vous répond (Contact) ---------- */
.mc-who { display:flex; align-items:center; gap:clamp(18px,2.4vw,30px); padding:clamp(18px,2vw,26px); border-radius:24px; background:#f6f8fb; }
.mc-duo-mini { display:flex; flex:none; }
.mc-mini { width:96px; height:96px; border-radius:999px; border:4px solid #f6f8fb; }
.mc-mini + .mc-mini { margin-left:-22px; }
.mc-mini .mc-slot-l { font-size:9px; padding:3px 5px; border-radius:6px; line-height:1.25; }
.mc-who > .lead { font-size:clamp(15px,1.2vw,17px); }

/* ---------- signes d'alerte / si vous attendez (situations) ---------- */
.mc-al-split { grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr); }
.mc-als { display:flex; flex-direction:column; gap:12px; margin-top:clamp(22px,2.6vw,34px); }
.mc-al { display:grid; grid-template-columns:44px 1fr; gap:16px; align-items:start; padding:18px 20px; border-radius:20px; background:#fff; border-left:3px solid #c9a24a; }
.mc-al-i { display:flex; align-items:center; justify-content:center; width:34px; height:34px; border-radius:999px; background:#0e2440; color:#e8c887; font-size:12.5px; font-weight:700; }
.mc-al-x { font-size:clamp(16px,1.35vw,18.5px); line-height:1.55; font-weight:500; }
.mc-wts { display:grid; grid-template-columns:1fr 1fr; gap:clamp(14px,1.6vw,22px); }
.mc-wt { border-radius:24px; padding:clamp(24px,3vw,40px); }
.mc-wt.is-bad { background:#f6f8fb; }
.is-style-mc-bleute .mc-wt.is-bad { background:#fff; }
.mc-wt.is-good { background:#0e2440; color:#fff; }
.mc-wt-k { font-size:clamp(20px,2vw,26px); font-weight:600; letter-spacing:-0.02em; margin-bottom:20px; }
.mc-wt.is-bad .mc-wt-k { color:rgba(14,36,64,0.55); }
.mc-wt.is-good .mc-wt-k { color:#e8c887; }
.mc-wt .mc-chk li { font-size:16px; line-height:1.6; }
.mc-wt.is-bad .mc-chk li { color:rgba(14,36,64,0.72); }
.mc-wt.is-bad .mc-chk li::before { color:rgba(14,36,64,0.35); }
.mc-wt.is-good .mc-chk li { color:rgba(255,255,255,0.9); }
.mc-wt.is-good .mc-chk li::before { color:#e8c887; }
.mc-reflexes .mc-card > .ico { color:#b8862b; }

/* ---------- partenaires : paroles adressées + trois temps ---------- */
.mc-qc { position:relative; border-radius:22px; padding:clamp(26px,2.8vw,36px); background:#f6f8fb; }
.mc-qc::before { content:"“"; position:absolute; right:22px; top:6px; font-size:90px; line-height:1; color:rgba(201,162,74,0.35); font-weight:700; }
.mc-qc .mc-k { margin-bottom:16px; }
.mc-qc-t { font-size:clamp(16px,1.35vw,18.5px); line-height:1.6; font-weight:500; }
.mc-qcs .mc-qc:nth-child(2) { background:#0e2440; color:#fff; }
.mc-qcs .mc-qc:nth-child(2) .mc-k { color:#e8c887; }
.mc-rl { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:clamp(14px,2vw,28px); position:relative; }
.mc-rl::before { content:""; position:absolute; left:8%; right:8%; top:34px; height:2px; background:linear-gradient(90deg, rgba(232,200,135,0.2), #c9a24a); }
.mc-rl-i { position:relative; border-radius:22px; padding:clamp(22px,2.4vw,30px); background:rgba(255,255,255,0.05); border:1px solid rgba(255,255,255,0.1); }
.mc-rl-i:last-child { background:#c9a24a; border-color:#c9a24a; color:#0e2440; }
.mc-rl-n { display:flex; align-items:center; justify-content:center; width:48px; height:48px; margin-top:-2px; border-radius:999px; background:#c9a24a; color:#0e2440; font-size:18px; font-weight:700; margin-bottom:20px; box-shadow:0 0 0 8px #0e2440; }
.mc-rl-i:last-child .mc-rl-n { background:#0e2440; color:#e8c887; box-shadow:0 0 0 8px #c9a24a; }
.mc-rl-i .mc-k { margin-bottom:6px; }
.mc-rl-i:last-child .mc-k { color:#0e2440; }
.mc-rl-i .h3 { margin-bottom:10px; }
.mc-rl-i > p:not([class]) { font-size:15px; line-height:1.7; color:rgba(255,255,255,0.68); }
.mc-rl-i:last-child > p:not([class]) { color:rgba(14,36,64,0.78); }

/* ---------- onglets (Interventions) ---------- */
.mc-tabs-nav { display:flex; flex-wrap:wrap; gap:8px; padding:8px; border-radius:999px; background:#f6f8fb; margin:0 auto clamp(30px,4vw,56px); width:max-content; max-width:100%; }
.mc-tabs-nav button { padding:13px 22px; border-radius:999px; border:0; background:none; color:rgba(14,36,64,0.7); font:inherit; font-size:15px; font-weight:600; cursor:pointer; transition:background .25s, color .25s; }
.mc-tabs-nav button[aria-selected="true"] { background:#0e2440; color:#fff; }
.mc-tabs-nav button b { color:#b8862b; margin-right:8px; font-size:13px; }
.mc-tabs-nav button[aria-selected="true"] b { color:#e8c887; }
.mc-tabs.is-js .mc-tab-p[hidden] { display:none; }
.mc-tabs.is-js .mc-tab-l { display:none; }
.mc-tabs:not(.is-js) .mc-tab-p + .mc-tab-p { margin-top:clamp(56px,7vw,100px); }
.mc-tab-l { font-size:12.5px; font-weight:600; color:#b8862b; margin-bottom:18px; }
.mc-tab-p { scroll-margin-top:100px; }
.mc-tab-p .h2 { margin-bottom:16px; }
.mc-tab-p .lead { margin-bottom:24px; }
.mc-tab-cards { grid-template-columns:repeat(3,minmax(0,1fr)); }
.mc-tab-cards .mc-card { padding:20px; }
.mc-tab-cards .mc-card > .h3 { font-size:18px; }
.mc-tab-cards .mc-card > p:not([class]) { font-size:14px; }
.mc-tabs.is-js .mc-tab-p:not([hidden]) { animation:mcTm .5s cubic-bezier(.2,.7,.2,1); }

/* ---------- mentions légales ---------- */
.mc-dl { max-width:1040px; margin:0 auto; }
.mc-dl-r { display:grid; grid-template-columns:minmax(0,0.36fr) minmax(0,1fr); gap:14px 40px; padding:clamp(20px,2.2vw,28px) 0; border-top:1px solid rgba(14,36,64,0.12); }
.mc-dl-r:last-child { border-bottom:1px solid rgba(14,36,64,0.12); }
.mc-dl-t { font-size:16px; font-weight:700; }
.mc-dl-d { font-size:15.5px; line-height:1.75; color:rgba(14,36,64,0.66); }

/* ---------- journal (magazine) ---------- */
.mc-mag-une { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,0.75fr); border-radius:26px; overflow:hidden; background:#0e2440; color:#fff; }
.mc-mag-une .mc-mag-img { min-height:clamp(300px,32vw,460px); }
.mc-mag-img { position:relative; margin:0; overflow:hidden; background:#e4edf6; }
.mc-mag-img img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; display:block; transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.mc-mag-une .mc-mag-t { padding:clamp(26px,3.4vw,48px); display:flex; flex-direction:column; justify-content:flex-end; }
.mc-mag-t .mc-k { margin-bottom:10px; }
.mc-mag-une .mc-k { color:#e8c887; }
.mc-mag-une .h2 { font-size:clamp(26px,3vw,42px); margin-bottom:16px; }
.mc-mag-une .h2 a::after, .mc-mag-c .h3 a::after { content:""; position:absolute; inset:0; z-index:1; }
.mc-mag-une, .mc-mag-c { position:relative; }
.mc-mag-une p.mc-mag-x { color:rgba(255,255,255,0.72); font-size:15.5px; line-height:1.7; margin-bottom:22px; }
.mc-mag-by { display:flex; align-items:center; gap:12px; font-size:13.5px; }
.mc-mag-av { display:flex; align-items:center; justify-content:center; width:40px; height:40px; border-radius:999px; background:#c9a24a; color:#0e2440; font-size:11px; font-weight:700; flex:none; }
.mc-mag-by b { display:block; font-weight:600; }
.mc-mag-by span { color:rgba(14,36,64,0.55); }
.mc-mag-une .mc-mag-by span { color:rgba(255,255,255,0.6); }
.mc-mag-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); }
.mc-mag-grid.is-n2 { grid-template-columns:repeat(2,minmax(0,1fr)); }
.mc-mag-grid.is-n1 { grid-template-columns:minmax(0,1fr); }
.mc-mag-grid { gap:clamp(14px,1.6vw,22px); margin-top:clamp(14px,1.6vw,22px); }
.mc-mag-c { border-radius:22px; overflow:hidden; background:#f6f8fb; display:flex; flex-direction:column; }
.mc-mag-c .mc-mag-img { aspect-ratio:16/10; }
.mc-mag-c .mc-mag-t { padding:clamp(20px,2.2vw,26px); display:flex; flex-direction:column; flex:1; }
.mc-mag-c .h3 + .mc-mag-by { margin-top:14px; }
.mc-mag-c .h3 { margin-bottom:10px; font-size:clamp(18px,1.6vw,22px); }
.mc-mag-c p.mc-mag-x { font-size:14.5px; line-height:1.65; color:rgba(14,36,64,0.62); margin-bottom:18px; }
.mc-mag-c .mc-mag-by { margin-top:auto; }
.mc-mag-une:hover .mc-mag-img img, .mc-mag-c:hover .mc-mag-img img { transform:scale(1.04); }
.mc-mag-soon { position:absolute; top:16px; left:16px; z-index:2; padding:7px 13px; border-radius:999px; background:#fff; color:#0e2440; font-size:12px; font-weight:700; }
.mc-mag-note { margin-top:18px; font-size:13px; color:rgba(14,36,64,0.5); text-align:center; }
.mc-mag-topics { display:flex; flex-wrap:wrap; gap:10px; justify-content:center; margin-top:clamp(26px,3vw,40px); }
.mc-mag-topics a { padding:9px 16px; border-radius:999px; background:#f6f8fb; font-size:14px; font-weight:500; }
.mc-mag-topics a:hover { background:#0e2440; color:#fff; }

/* ---------- mobile ---------- */
@media (max-width:1000px) {
  .mc-bento { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mc-st { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .mc-st-i:nth-child(n) { min-height:auto; }
  .mc-st-n { margin-bottom:28px; }
  .mc-chs { grid-template-columns:1fr; }
  .mc-mag-grid { grid-template-columns:1fr 1fr; }
  .mc-tab-cards { grid-template-columns:1fr; }
  .mc-hx-cats { gap:8px; }
}
@media (max-width:880px) {
  .mc-hx.is-split .mc-hx-w, .mc-hx.is-split.is-rev .mc-hx-w, .mc-hx.is-figures .mc-hx-w, .mc-hx-qsn .mc-hx-w, .mc-hx-roundw .mc-hx-w { grid-template-columns:1fr; }
  .mc-hx.is-split .mc-hero-in { padding-top:10px; }
  .mc-hx-img { aspect-ratio:4/3; max-height:none; }
  .mc-hx.is-split.is-rev .mc-hx-m { order:2; }
  .mc-hx-chip { left:14px; bottom:14px; font-size:13px; padding:11px 16px; }
  .mc-hx-duo { height:clamp(300px,80vw,420px); max-width:520px; }
  .mc-hx-round { max-width:260px; }
  .mc-stk { grid-template-columns:1fr; }
  .mc-stk-l { display:none; }
  .mc-team.is-js { grid-template-columns:1fr; }
  .mc-team-side { grid-column:1; grid-row:2; flex-direction:row-reverse; align-items:center; }
  .mc-team-thumbs { flex-direction:row; }
  .mc-team-thumb { flex-direction:row; align-items:center; }
  .mc-team-thumb .mc-slot { flex:none; width:64px; height:64px; min-height:0; border-radius:999px; }
  .mc-team-thumb .mc-slot-l { display:none; }
  .mc-tm { grid-template-columns:1fr; }
  .mc-tm-ph { min-height:clamp(260px,70vw,380px); }
  .mc-tm-t { padding:4px 8px 12px; }
  .mc-tl-split, .mc-man-split, .mc-vals, .mc-f1, .mc-al-split { grid-template-columns:1fr; }
  .mc-tl-intro, .mc-man-h, .mc-sticky-h, .mc-diag-w { position:static; }
  .mc-ctf { grid-template-columns:1fr; }
  .mc-simu { grid-template-columns:1fr; }
  .mc-mag-une { grid-template-columns:1fr; }
}
@media (max-width:760px) {
  .mc-bento { grid-template-columns:1fr 1fr; grid-auto-rows:auto; }
  .mc-bt { min-height:150px; }
  .mc-bt.is-head, .mc-bt.c2 { grid-column:1 / -1; }
  .mc-bt.r2, .mc-bt.r3 { grid-row:span 1; min-height:220px; }
  .mc-bt.is-photo { min-height:190px; }
  .mc-bt-v { font-size:30px; }
  .mc-row { grid-template-columns:40px minmax(0,1fr); }
  .mc-row-x { grid-column:2; }
  .mc-net { grid-template-columns:1fr 1fr; }
  .mc-net::before { display:none; }
  .mc-net-c { grid-column:1 / -1; grid-row:1; }
  .mc-net-n.is-1, .mc-net-n.is-2, .mc-net-n.is-3, .mc-net-n.is-4 { grid-column:auto; grid-row:auto; }
  .mc-frise-l { grid-template-columns:1fr; gap:22px; padding-left:0; }
  .mc-frise-l::before, .mc-frise-l::after { left:22px; right:auto; top:22px; bottom:22px; width:2px; height:auto; }
  .mc-frise-l::after { height:calc((100% - 44px) * var(--pw, 1)); width:2px; }
  .mc-frise-i { display:grid; grid-template-columns:46px 1fr; column-gap:18px; }
  .mc-frise-i > * { grid-column:2; }
  .mc-frise-i > .mc-frise-n { grid-column:1; grid-row:1 / span 3; margin:0; }
  .mc-st { grid-template-columns:1fr; }
  .mc-tb { flex-direction:column; }
  .mc-tt-h { display:none; }
  .mc-tt-r { grid-template-columns:1fr; gap:10px; }
  .mc-tt-b .mc-k, .mc-tt-g .mc-k { display:block; margin-bottom:2px; }
  .mc-tbl thead { display:none; }
  .mc-tbl table, .mc-tbl tbody, .mc-tbl tr, .mc-tbl td { display:block; width:100%; }
  .mc-tbl tr { border-top:1px solid rgba(14,36,64,0.1); padding:10px 0; }
  .mc-tbl tbody tr:nth-child(even) td { background:none; }
  .mc-tbl td { border:0; padding:6px 18px; }
  .mc-tbl td:nth-child(1) strong { font-size:18px; }
  .mc-tbl td:nth-child(3), .mc-tbl td:nth-child(4) { display:inline-block; width:auto; padding-right:0; }
  .mc-simu-rates { grid-template-columns:1fr; }
  .mc-wts { grid-template-columns:1fr; }
  .mc-rl { grid-template-columns:1fr; }
  .mc-rl::before { display:none; }
  .mc-sp { grid-template-columns:1fr; }
  .mc-sp-i a { padding:14px 40px 12px 0; border-bottom:1px solid rgba(255,255,255,0.14); }
  .mc-sp-i a::after { top:16px; right:6px; }
  .mc-hx-doors { grid-template-columns:1fr; }
  .mc-hx-strip-img { aspect-ratio:16/9; }
  .mc-dl-r { grid-template-columns:1fr; }
  .mc-mag-grid { grid-template-columns:1fr; }
  .mc-fq-bar { border-radius:24px; top:70px; }
  .mc-fq-tabs { overflow-x:auto; flex-wrap:nowrap; width:100%; }
  .mc-fq-tabs button { white-space:nowrap; }
  .mc-flt.is-js { border-radius:24px; }
  .mc-flt-count { margin-left:0; width:100%; }
  .mc-who { flex-direction:column; align-items:flex-start; }
  .mc-hx-card { padding:24px 22px; border-radius:22px; }
  .mc-face { padding-right:18px; }
  .mc-tabs-nav { width:100%; border-radius:24px; }
  .mc-tabs-nav button { flex:1 1 auto; padding:11px 14px; font-size:14px; }
  .mc-hf-4 { grid-template-columns:1fr 1fr; }
  .mc-fig:nth-child(2) { margin-left:0; }
  .mc-hx-chip { position:static; margin-top:14px; }
  .mc-chat-b { max-width:100%; }
  .mc-sw-t { font-size:clamp(30px,9vw,44px); }
  .mc-hx .h1.mc-h1-xl { font-size:clamp(48px,14vw,72px); }
}


/* héros v4 supplémentaires (situations, Partenaires) */
.mc-hx-chip.is-r { left:auto; right:clamp(-28px,-2vw,-14px); }
.mc-hx-m.is-duo { padding:0 0 clamp(30px,4vw,56px); }
.mc-hx-m.is-duo .mc-hx-img { width:80%; max-height:min(60svh,560px); }
.mc-hx-img2 { position:absolute; right:0; bottom:0; width:46%; aspect-ratio:1/1; margin:0; border-radius:22px; overflow:hidden; border:6px solid #f6f8fb; box-shadow:0 30px 70px rgba(14,36,64,0.2); }
.mc-hx-img2 img { width:100%; height:100%; object-fit:cover; display:block; }
.mc-hx.is-band { min-height:auto; background:#f6f8fb; color:#0e2440; }
.mc-hx.is-band::after { display:none; }
.mc-hx-band { position:absolute; left:0; right:0; top:0; height:min(58vh,560px); overflow:hidden; z-index:0; border-radius:0 0 34px 34px; }
.mc-hx-band::after { content:""; position:absolute; inset:0; background:linear-gradient(180deg, rgba(14,36,64,0.74) 0%, rgba(14,36,64,0.12) 45%, rgba(14,36,64,0.2) 100%); }
.mc-hx-band-img { margin:0; height:100%; }
.mc-hx-band-img img { width:100%; height:100%; object-fit:cover; display:block; object-position:center 40%; }
.mc-hx.is-band .mc-hero-in { margin-top:calc(min(58vh,560px) - 100px); padding:clamp(44px,5vw,76px) 0 clamp(50px,6vw,90px); }
.mc-hx.is-band .mc-hx-w { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,0.85fr); gap:clamp(24px,4vw,70px); align-items:end; }
.mc-hx.is-band .h1 { color:#0e2440; font-size:clamp(38px,4.8vw,70px); max-width:none; margin:0; }
.mc-hx.is-band .h1 .mc-or { color:#b8862b; }
.mc-hx.is-band .mc-hx-bl .pill { margin-bottom:22px; }
.mc-hx.is-band .lead { color:rgba(14,36,64,0.62); margin-bottom:26px; }
.mc-hx-net { position:relative; padding-bottom:clamp(20px,3vw,40px); }
.mc-hx-netimg { margin:0; border-radius:26px; overflow:hidden; aspect-ratio:16/10; box-shadow:0 30px 70px rgba(14,36,64,0.16); }
.mc-hx-netimg img { width:100%; height:100%; object-fit:cover; display:block; }
.mc-net.is-hero { position:relative; z-index:1; margin:calc(-1 * clamp(70px,8vw,120px)) clamp(10px,2vw,30px) 0; }
.mc-net.is-hero .mc-net-n { display:flex; align-items:center; justify-content:center; text-align:center; min-height:64px; }
.mc-net.is-hero .mc-net-t { margin:0; font-size:14px; }
.mc-net.is-hero .mc-net-n.is-1 { grid-column:1; grid-row:1; align-self:end; }
.mc-net.is-hero .mc-net-n.is-2 { grid-column:3; grid-row:1; align-self:end; }
.mc-net.is-hero .mc-net-n.is-3 { grid-column:2; grid-row:2; }
.mc-net.is-hero .mc-net-c { grid-column:2; grid-row:1; }
.mc-net.is-hero::before { left:16%; right:16%; top:30%; bottom:30%; }
@media (max-width:880px) {
  .mc-hx.is-band .mc-hx-w { grid-template-columns:1fr; }
  .mc-hx.is-band .mc-hero-in { margin-top:calc(min(40vh,340px) - 90px); }
  .mc-hx-band { height:min(40vh,340px); border-radius:0 0 24px 24px; }
  .mc-hx-m.is-duo .mc-hx-img { width:84%; }
}
@media (max-width:760px) {
  .mc-net.is-hero { grid-template-columns:1fr 1fr 1fr; margin-top:-40px; }
  .mc-net.is-hero .mc-net-c { grid-column:1 / -1; grid-row:1; }
  .mc-net.is-hero .mc-net-n.is-1, .mc-net.is-hero .mc-net-n.is-2, .mc-net.is-hero .mc-net-n.is-3 { grid-row:2; grid-column:auto; padding:10px 6px; }
  .mc-net.is-hero .mc-net-t { font-size:12px; }
  .mc-hx-chip.is-r { right:14px; left:auto; }
}

/* ---------- réduire les animations ---------- */
@media (prefers-reduced-motion: reduce) {
  .mc-rv, .mc-chat-b.is-js { opacity:1 !important; transform:none !important; transition:none !important; }
  .mc-team.is-js > .mc-tm.is-on, .mc-diag.is-js .mc-diag-q.is-on, .mc-tabs.is-js .mc-tab-p:not([hidden]) { animation:none; }
  .mc-sw.is-js { height:auto; padding:clamp(80px,10vw,150px) 0; }
  .mc-sw.is-js > .mc-sw-in { position:static; height:auto; }
  .mc-sw-t .w { color:#0e2440 !important; transition:none; }
  .mc-man.is-js .mc-man-p { color:#0e2440; transition:none; }
  .mc-pc-img img, .mc-bt-img img, .mc-mag-img img, .mc-hx-door-img img { transition:none; }
}
@media (max-width:760px) { .mc-pcs-sit.grid { grid-template-columns:1fr 1fr; } .mc-pcs-sit .mc-pc-t { padding:14px; } .mc-pcs-sit .h3 { font-size:16px; } .mc-pcs-sit .mc-pc-t > p:not([class]) { font-size:13.5px; } .mc-pcs-sit .mc-pc.is-link::before { width:34px; height:34px; top:10px; right:10px; } }
