/* Variante A « Rapport » : constats numérotés en rangées texte | carrés, panneaux à filets, flux qui se trace. */
.sx-a .sx-hero{min-height:min(78svh,720px)}
.sx-a .sx-hero-copy{margin-left:max(24px,calc(50% - var(--sx-wide)/2))}
.sx-a-head{width:min(var(--sx-wide),calc(100% - 48px));margin-inline:auto;padding:72px 0 8px}
.sx-a-head h2{max-width:14ch;margin-bottom:12px}.sx-a-head>p{color:var(--sx-muted);max-width:52ch;margin:0}
.sx-a-constats{width:min(var(--sx-wide),calc(100% - 48px));margin:32px auto 0}
.sx-a-constat{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:20px 64px;align-items:center;padding:36px 0;border-top:1px solid var(--sx-line)}
.sx-a-constat:last-of-type{border-bottom:1px solid var(--sx-line)}
.sx-a-constat h3{font-size:clamp(24px,2.3vw,34px);margin-bottom:12px}
.sx-a-constat>div>p{color:var(--sx-muted);font-size:16px;margin:0}
.sx-a-constat .sx-eyebrow{margin-bottom:12px}
.sx-waffle-row{display:grid;grid-template-columns:minmax(110px,150px) minmax(0,1fr);gap:18px;align-items:center;padding:9px 0}
.sx-waffle-row>b{font:500 14px/1.3 'Source Serif 4',Georgia,serif}
.sx-waffle-row>b small{display:block;font:12px/1.4 Inter,system-ui,sans-serif;color:var(--sx-muted);margin-top:2px}
.sx-waffle{display:grid;grid-template-columns:repeat(20,minmax(0,1fr));gap:3px}
.sx-waffle span{aspect-ratio:1;background:var(--sx-pale);transform:scale(.72);transition:background .55s var(--sx-ease),transform .55s var(--sx-ease);transition-delay:calc(var(--i)*10ms)}
.is-lit .sx-waffle span{transform:none}.is-lit .sx-waffle span.lit{background:var(--sx-purple)}
.is-lit .sx-waffle-row[data-color=orange] span.lit{background:var(--sx-orange)}
.sx-bar{display:none}
.sx-waffle-caption{font-size:13px;color:var(--sx-muted);margin:10px 0 0;max-width:58ch}
.sx-a-note{width:min(var(--sx-wide),calc(100% - 48px));margin:12px auto 0;font-size:12px;color:var(--sx-muted)}
/* Contraintes : quatre panneaux côte à côte, filet supérieur. */
.sx-a-tryptic{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(0,1fr);border-top:1px solid var(--sx-ink);border-bottom:1px solid var(--sx-line);margin-top:28px}
.sx-a-tryptic article{padding:26px 24px 30px 0;border-right:1px solid var(--sx-line);margin-right:24px}
.sx-a-tryptic article:last-child{border-right:0;margin-right:0;padding-right:0}
.sx-a-tryptic span{display:block;font:500 12px 'JetBrains Mono',ui-monospace,monospace;color:var(--sx-orange);margin-bottom:20px}
.sx-a-tryptic h3{font-size:21px;margin-bottom:10px}.sx-a-tryptic p{font-size:15px;color:var(--sx-muted);margin:0}
/* Flux : cinq étapes reliées par un trait qui se dessine. */
.sx-flux{--p:0;margin-top:28px;padding:28px 32px 24px;border:1px solid var(--sx-line);border-radius:8px;background:var(--sx-soft)}
.sx-flux svg{display:block;width:100%;height:auto;overflow:visible}
.sx-flux path{fill:none;stroke:var(--sx-purple);stroke-width:2;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--p))}
.sx-flux rect{fill:var(--sx-purple);opacity:clamp(0,calc((var(--p) - var(--k)*.2)*5),1);transform:scale(clamp(.4,calc(.4 + (var(--p) - var(--k)*.2)*3),1));transform-box:fill-box;transform-origin:center}
.sx-flux rect.end{fill:var(--sx-orange)}
.sx-flux-labels{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;margin-top:10px}
.sx-flux-labels span{font:500 13px/1.4 Inter,system-ui,sans-serif;text-align:center;color:#584669;opacity:clamp(0,calc((var(--p) - var(--k)*.2)*5),1)}
.sx-flux-labels span:first-child{text-align:left}.sx-flux-labels span:last-child{text-align:right;color:var(--sx-orange)}
/* Offres sur deux colonnes, dans la largeur de lecture élargie. */
.sx-a-offres{width:min(var(--sx-wide),calc(100% - 48px));margin:0 auto;display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr);gap:24px 64px;padding:72px 0}
.sx-a-offres h2{margin-bottom:12px}.sx-a-offres>div>p{color:var(--sx-muted);margin:0}
.sx-a-offres .sx-list{display:grid;grid-template-columns:1fr 1fr;gap:0 40px;border-top:0}
.sx-a-offres .sx-list li{border-top:1px solid var(--sx-line);border-bottom:0;padding:18px 0}
.sx-a-offres .sx-list h3{font-size:19px}
.sx-a #references .sx-col,.sx-a #faq .sx-col{padding-top:64px}
@media(max-width:800px){
 .sx-a .sx-hero-copy{margin-left:auto}.sx-a-head{padding-top:48px}
 .sx-a-constat{grid-template-columns:1fr;gap:18px;padding:28px 0}.sx-waffle-row{grid-template-columns:1fr;gap:8px;padding:8px 0}
 .sx-a-tryptic{grid-auto-flow:row}.sx-a-tryptic article{border-right:0;margin-right:0;padding-right:0;border-bottom:1px solid var(--sx-line)}.sx-a-tryptic article:last-child{border-bottom:0}
 .sx-flux{padding:20px 16px 16px}.sx-flux-labels span{font-size:11px}
 .sx-a-offres{grid-template-columns:1fr;padding:48px 0}.sx-a-offres .sx-list{grid-template-columns:1fr}
}
@media(prefers-reduced-motion:reduce){.sx-waffle span{transition:none;transform:none}.sx-flux{--p:1!important}}

/* Seul ajustement visuel demandé : centrer les titres de la variante A. */
.sx-a .sx-hero-copy{margin-inline:auto}
.sx-a .sx-hero h1{text-align:center}
.sx-a .sx-a-head h2{margin-inline:auto;text-align:center}
.sx-a .sx-a-offres h2,.sx-a .sx-faq h2{text-align:center}

.sx-sector-final .sx-switch{display:none!important}

/* Heros secteurs : blocs centrés, deux lignes explicites sans texte tronqué. */
.sx-sector-final.sx-a .sx-hero{min-height:0;padding-block:clamp(56px,7vw,96px)}
.sx-sector-final.sx-a .sx-hero-copy{width:min(1092px,calc(100% - 40px));margin-inline:auto;text-align:center}
.sx-sector-final .sx-hero h1{font-size:clamp(25px,5.2vw,72px);line-height:1.14;max-width:none;margin-inline:auto}
.sx-sector-final .sx-hero-line{display:block;white-space:nowrap}
.sx-sector-final .sx-hero .sx-lead{font-size:clamp(15px,1.6vw,21px);line-height:1.65;max-width:none;margin:26px auto 30px}
.sx-sector-final .sx-hero .sx-eyebrow{font-size:clamp(9px,.95vw,12px);letter-spacing:.06em;margin-inline:auto}
.sx-sector-final .sx-hero-foot{font-size:12px;max-width:none;margin:22px auto 0}
