/* =========================================================
   CAPTAIR & DIMAVENT — V14 « apaisé »
   Couche finale chargée sur tout le site (body.v14).
   Principes :
   - bandeaux sombres (menu, titres de page, appels forts, pied de page) ;
   - contenu à lire sur fond clair, cartes blanches, ombres douces ;
   - une seule police (Archivo), des tailles fixes par palier d'écran ;
   - le vert du logo réservé aux boutons et aux repères ;
   - un même appel « Nous consulter » partout.
   ========================================================= */

body.v14 {
	--z-bg: #F6F6F2;
	--z-bg-2: #EEF0EA;
	--z-card: #FFFFFF;
	--z-text: #1B2124;
	--z-muted: #4F595D;
	--z-dim: #6A7377;
	--z-line: rgba(27, 33, 36, .10);
	--z-line-2: rgba(27, 33, 36, .18);
	--z-green: #8CB600;
	--z-green-text: #5A7400;
	--z-shadow: 0 1px 2px rgba(27, 33, 36, .04), 0 18px 40px -28px rgba(27, 33, 36, .30);
	--z-dark: #22272A;
}

/* ---------- Une seule police ---------- */
body.v14,
body.v14.home,
body.v14 .be-x,
body.v14 .co-x,
body.v14 .ct-x,
body.v14 .es-x {
	font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
}
body.v14 { -webkit-hyphens: none; hyphens: none; }

/* ---------- Tailles fixes : titres de page ---------- */
body.v14 .site-main h1:not(.sales-kicker),
body.v14 .sales-hero .sales-hero__title {
	font-size: 68px !important;
	line-height: 1.02 !important;
	letter-spacing: -.035em !important;
}
body.v14 .site-main h2:not(.h3):not(.site-footer__title):not(.cxsel-envoi__titre) {
	font-size: 46px !important;
	line-height: 1.08 !important;
	letter-spacing: -.03em !important;
}
body.v14 .dust-feature__content h3 { font-size: 56px !important; line-height: 1 !important; }
body.v14 :is(.dust-product__content, .be-solution-text, .be-selector-copy, .cov-solution) h3 {
	font-size: 32px !important;
	line-height: 1.12 !important;
	letter-spacing: -.02em !important;
}
body.v14 :is(.lead, .be-hero-intro, .be-copy, .home-env__text, .dust-intro__body p, .ct-hero-copy) {
	font-size: 18px !important;
	line-height: 1.7 !important;
}
@media (max-width: 1099px) {
	body.v14 .site-main h1:not(.sales-kicker),
	body.v14 .sales-hero .sales-hero__title { font-size: 54px !important; }
	body.v14 .site-main h2:not(.h3):not(.site-footer__title):not(.cxsel-envoi__titre) { font-size: 38px !important; }
	body.v14 .dust-feature__content h3 { font-size: 46px !important; }
	body.v14 :is(.dust-product__content, .be-solution-text, .be-selector-copy, .cov-solution) h3 { font-size: 28px !important; }
}
@media (max-width: 680px) {
	body.v14 .site-main h1:not(.sales-kicker),
	body.v14 .sales-hero .sales-hero__title { font-size: 40px !important; line-height: 1.06 !important; }
	body.v14 .site-main h2:not(.h3):not(.site-footer__title):not(.cxsel-envoi__titre) { font-size: 30px !important; line-height: 1.12 !important; }
	body.v14 .dust-feature__content h3 { font-size: 38px !important; }
	body.v14 :is(.dust-product__content, .be-solution-text, .be-selector-copy, .cov-solution) h3 { font-size: 24px !important; }
	body.v14 :is(.lead, .be-hero-intro, .be-copy, .home-env__text, .dust-intro__body p, .ct-hero-copy) { font-size: 16px !important; }
}

/* ---------- Boutons : texte foncé sur vert, partout ---------- */
body.v14 :is(.be-btn:not(.be-btn--ghost), .ct-submit, .co-btn:not(.co-btn--ghost), .es-btn:not(.es-btn--ghost)) {
	color: #14191B !important;
}
body.v14 .site-header .btn--primary { letter-spacing: .02em; text-transform: none; font-size: 15px; }

/* ---------- Moins d'effets lumineux ---------- */
body.v14 :is(.cta__glow, .page-head__glow) { opacity: .35; }

/* =========================================================
   ZONES CLAIRES
   ========================================================= */

/* Pages à sections génériques (outils, gaine, pièces, solutions) */
body.v14 .site-main {
	background: var(--z-bg);
}
body.v14 .site-main > :is(.tabs, .section, .sol-catalog) {
	--bg: var(--z-bg);
	--bg-alt: var(--z-bg-2);
	--surface: var(--z-card);
	--surface-2: #F4F6F1;
	--line: var(--z-line);
	--line-2: var(--z-line-2);
	--text: var(--z-text);
	--muted: var(--z-muted);
	--dim: var(--z-dim);
	--green-deep: var(--z-green-text);
	--green-glow: rgba(140, 182, 0, .25);
	background: var(--bg);
	color: var(--text);
	color-scheme: light;
}
body.v14 .site-main > .section--alt,
body.v14 .site-main > .sol-catalog { background: var(--z-bg-2); }
body.v14 .site-main > .section :is(h1, h2, h3, h4, legend, .display, strong, b),
body.v14 .site-main > .sol-catalog :is(h2, strong) { color: var(--z-text); }
body.v14 .site-main > .section :is(p, li, .lead) { color: var(--z-muted); }
body.v14 .site-main > :is(.section, .sol-catalog) :is(.eyebrow, .wizard__count) { color: var(--z-green-text); }
body.v14 .site-main > .section a:not(.btn) { color: var(--z-text); }

body.v14 .site-main > .tabs {
	background: rgba(246, 246, 242, .94);
	border-bottom: 1px solid var(--z-line);
	box-shadow: 0 10px 30px -24px rgba(27, 33, 36, .35);
}
body.v14 .site-main > .tabs a { color: var(--z-muted); }
body.v14 .site-main > .tabs a:hover,
body.v14 .site-main > .tabs a.is-active { color: var(--z-text); background: #FFFFFF; border-color: var(--z-line-2); }

body.v14 .site-main > .section .panel,
body.v14 .site-main > .sol-catalog .sol-catalog__grid a {
	background: var(--z-card);
	border: 1px solid var(--z-line);
	box-shadow: var(--z-shadow);
}
body.v14 .site-main > .section :is(input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="url"], input[type="password"], input[type="date"], select, textarea) {
	background-color: #FFFFFF;
	color: var(--z-text);
	border: 1px solid var(--z-line-2);
	box-shadow: none;
	color-scheme: light;
}
body.v14 .site-main > .section :is(input, select, textarea):focus {
	border-color: var(--z-green);
	box-shadow: 0 0 0 3px rgba(140, 182, 0, .18);
}
body.v14 .site-main > .section select option { background: #FFFFFF; color: var(--z-text); }
body.v14 .site-main > .section ::placeholder { color: #8A928C; }
body.v14 .site-main > .section .field label { color: var(--z-muted); }
body.v14 .site-main > .section .option span { background: #F4F6F1; color: var(--z-text); }
body.v14 .site-main > .section :is(input[type="radio"], input[type="checkbox"]) {
	background-color: #FFFFFF;
	accent-color: var(--z-green);
	color-scheme: light;
}
body.v14 .site-main > .section input[type="file"] {
	background-color: #F4F6F1;
	color: var(--z-muted);
	border: 1px dashed var(--z-line-2);
	color-scheme: light;
}
body.v14 .site-main > .section input[type="file"]::file-selector-button {
	background: #FFFFFF; color: var(--z-text); border: 1px solid var(--z-line-2);
}
body.v14 .site-main > .section .calc__out { background: rgba(140, 182, 0, .08); border-color: rgba(99, 127, 0, .28); }
body.v14 .site-main > .section :is(.calc__out strong, .result__family) { color: var(--z-green-text); }
body.v14 .site-main > .section .notice--ok { color: #3F5300; background: rgba(140, 182, 0, .12); }
body.v14 .site-main > .section .notice--err { color: #A3271D; background: rgba(226, 84, 70, .08); }
body.v14 .site-main > .section .wizard__progress { background: var(--z-line); }
body.v14 .site-main > .section :is(.btn--ghost, .btn--line) { color: var(--z-text); border-color: var(--z-line-2); }
body.v14 .site-main > .section table { background: #FFFFFF; }
body.v14 .site-main > .section :is(th, td) { border-color: var(--z-line); color: var(--z-text); }
body.v14 .site-main > .section thead th { background: #E9EEDD; }
body.v14 .site-main > .section .cxec { background: #FFFFFF; }
body.v14 .site-main > .section .cxec-bandeau { color: var(--z-muted); }

/* ---------- Pré-diagnostic (extension CAPTAIR Sélecteur) ---------- */
body.v14 #cxsel {
	--bg: #FFFFFF; --bg2: #F7F8F5; --su: #FFFFFF; --su2: #F4F6F1;
	--li: rgba(27, 33, 36, .10); --li2: rgba(27, 33, 36, .19);
	--tx: #1B2124; --mu: #4F595D; --di: #6A7377; --vg: rgba(140, 182, 0, .10);
	color: var(--tx);
}
body.v14 #cxsel .cxsel-bloc { box-shadow: var(--z-shadow); }
body.v14 #cxsel .cxsel-bloc.is-ok { border-color: rgba(99, 127, 0, .40); }
body.v14 #cxsel :is(.cxsel-num, .cxsel-res__eti, .cxsel-res__modele small, .cxsel-res__sous) { color: var(--z-green-text) !important; }
body.v14 #cxsel .cxsel-res { background: #FFFFFF; border-color: var(--li2); box-shadow: 0 30px 70px -40px rgba(27, 33, 36, .40); scrollbar-color: #C9CEC8 transparent; }
body.v14 #cxsel .cxsel-res__img { background: #F1F3EE; }
body.v14 #cxsel .cxsel-filtre { background: #F7F8F5; }
body.v14 #cxsel .cxsel-champ select option { background: #FFFFFF; color: #1B2124; }
body.v14 #cxsel .cxsel-champ select { background-image: linear-gradient(45deg, transparent 50%, #6A7377 50%), linear-gradient(135deg, #6A7377 50%, transparent 50%); }
body.v14 #cxsel .cxsel-champ :is(input, select, textarea):hover { border-color: rgba(27, 33, 36, .32); }
body.v14 #cxsel .cxsel-champ :is(input, textarea)::placeholder { color: #8A928C; }
body.v14 #cxsel .cxsel-btn--ligne:hover { background: rgba(27, 33, 36, .04); border-color: rgba(27, 33, 36, .35); }
body.v14 #cxsel .cxsel-opts li { background: rgba(140, 182, 0, .10); border-color: rgba(99, 127, 0, .35); color: #2F3B00; }
body.v14 #cxsel .cxsel-notes li::before { color: #A97C00; }
body.v14 #cxsel .cxsel-erreur { color: #A3271D; background: rgba(224, 96, 90, .08); }
body.v14 #cxsel .cxsel-poste__suppr:hover { color: #A3271D; }
body.v14 #cxsel .cxsel-prog { background: rgba(27, 33, 36, .10); }
body.v14 #cxsel .cxsel-rgpd input { color-scheme: light; }

/* ---------- Accueil ---------- */
body.v14 .sales-apps {
	background: var(--z-bg-2);
	border-top: 0;
}
body.v14 .sales-apps .sales-kicker,
body.v14 .sales-machines .sales-kicker { color: var(--z-green-text); }
body.v14 .sales-apps .sales-head--dark h2 { color: var(--z-text); }
body.v14 .sales-apps .sales-head h2 em,
body.v14 .sales-machines h2 em { color: var(--z-green-text); }
body.v14 .sales-apps .sales-head > a { color: var(--z-text); }
body.v14 .sales-apps .sales-app-card { border-color: transparent; box-shadow: var(--z-shadow); }
body.v14 .sales-machines { background: var(--z-bg); }
body.v14 .sales-machines small { color: var(--z-green-text); }
body.v14 .home-env {
	background: #FFFFFF;
	color: var(--z-text);
}
body.v14 .home-env__kicker { color: var(--z-green-text); }
body.v14 .home-env__title { color: var(--z-text); }
body.v14 .home-env__text { color: var(--z-muted); }
body.v14 .home-env__sector { border-color: transparent; box-shadow: var(--z-shadow); }

/* ---------- Solutions : vue d'ensemble ---------- */
body.v14 .sol-overview { background: var(--z-bg); }

/* ---------- Pages Dépoussiérage, Huile, Soudage, Filtres ---------- */
body.v14 .dust-page .dust-label { color: var(--z-green-text); }
body.v14 .dust-page :is(.dust-ranges, .dust-end) .dust-label { color: #B9DB62; }
body.v14 .dust-page :is(.dust-intro, .dust-compare, .dust-decision) em,
body.v14 .vent-split__intro em { color: var(--z-green-text); }
body.v14 .capt-card__tag,
body.v14 .vent-families span,
body.v14 .vent-options span { color: var(--z-green-text); }

/* ---------- Bureau d'études ---------- */
body.v14 .be-x :is(.be-manifesto, .be-custom, .be-selector, .be-supply) {
	--bg: var(--z-bg);
	--bg-2: var(--z-bg-2);
	--bg-3: var(--z-bg-2);
	--bg-4: #E3E7DF;
	--deep: var(--z-bg-2);
	--text: var(--z-text);
	--muted: var(--z-muted);
	--line: var(--z-line);
	--green-2: var(--z-green-text);
	--green-soft: rgba(140, 182, 0, .12);
	--shadow: 0 30px 70px -40px rgba(27, 33, 36, .30);
	color: var(--z-text);
	color-scheme: light;
}
body.v14 .be-x .be-manifesto { background: var(--z-bg); }
body.v14 .be-x .be-custom { background: #FFFFFF; }
body.v14 .be-x .be-selector { background: var(--z-bg-2); }
body.v14 .be-x .be-supply { background: var(--z-bg); }
body.v14 .be-x :is(.be-manifesto, .be-custom, .be-selector, .be-supply) :is(h2, h3, h4, strong) { color: var(--z-text); }
body.v14 .be-custom-note { background: var(--z-bg-2); color: var(--z-text); }
body.v14 .be-custom::before { border-color: rgba(99, 127, 0, .18); }
body.v14 .be-selector-shell { background: #FFFFFF; border-color: var(--z-line); box-shadow: var(--z-shadow); }
body.v14 .be-selector-tab { color: var(--z-muted); }
body.v14 .be-selector-tab.is-active { color: var(--z-green-text); }
body.v14 .be-result-pill { background: rgba(140, 182, 0, .10); border-color: rgba(99, 127, 0, .30); color: var(--z-text); }
body.v14 .be-x .be-selector .be-selector-link,
body.v14 .be-selector-link { color: var(--z-green-text); }
body.v14 .be-x :is(.be-manifesto, .be-custom, .be-selector, .be-supply) .be-btn--ghost { border-color: var(--z-line-2); color: var(--z-text) !important; }
body.v14 .be-x :is(.be-manifesto, .be-custom, .be-selector, .be-supply) .be-btn--ghost:hover { background: rgba(27, 33, 36, .04); border-color: rgba(27, 33, 36, .35); }

/* ---------- L'entreprise ---------- */
body.v14 .co-x :is(.co-identity, .co-history, .co-duo, .co-culture) {
	--co-bg: var(--z-bg);
	--co-bg-2: var(--z-bg-2);
	--co-bg-3: var(--z-bg-2);
	--co-deep: var(--z-bg-2);
	--co-text: var(--z-text);
	--co-muted: var(--z-muted);
	--co-line: var(--z-line);
	--co-green-2: var(--z-green-text);
	--co-green-soft: rgba(140, 182, 0, .12);
	--co-shadow: 0 30px 70px -40px rgba(27, 33, 36, .30);
	color: var(--z-text);
}
body.v14 .co-x .co-identity { background: var(--z-bg); }
body.v14 .co-x .co-history { background: #FFFFFF; }
body.v14 .co-x .co-duo { background: var(--z-bg); }
body.v14 .co-x .co-culture { background: var(--z-bg-2); }
body.v14 .co-x :is(.co-identity, .co-history, .co-duo, .co-culture) :is(h2, h3, h4, strong) { color: var(--z-text); }
body.v14 .co-history::before { color: rgba(27, 33, 36, .04); }
body.v14 .co-duo-photo { border-color: transparent; box-shadow: var(--z-shadow); }
body.v14 .co-culture-item { background: #FFFFFF; box-shadow: var(--z-shadow); }

/* ---------- Contact ---------- */
body.v14 .ct-x {
	--ct-bg: var(--z-bg);
	--ct-bg-2: var(--z-bg-2);
	--ct-deep: var(--z-bg-2);
	--ct-card: #FFFFFF;
	--ct-text: var(--z-text);
	--ct-muted: var(--z-muted);
	--ct-line: var(--z-line);
	--ct-green-2: var(--z-green-text);
	--ct-green-soft: rgba(140, 182, 0, .12);
	--ct-danger: #A3271D;
	background: var(--z-bg);
	color: var(--z-text);
	color-scheme: light;
}
body.v14 .ct-x :is(h1, h2, h3, legend) { color: var(--z-text); }
body.v14 .ct-hero { background: var(--z-bg-2); }
body.v14 .ct-hero-copy { color: var(--z-muted); }
body.v14 .ct-contact-row :is(strong, a) { color: var(--z-text); }
body.v14 .ct-hints { background: #FFFFFF; box-shadow: var(--z-shadow); }
body.v14 .ct-form-card { background: #FFFFFF; border: 1px solid var(--z-line); box-shadow: 0 30px 70px -40px rgba(27, 33, 36, .35); }
body.v14 .ct-alert--success { color: #3F5300; background: rgba(140, 182, 0, .12); }
body.v14 .ct-alert--error { color: #A3271D; background: rgba(224, 96, 90, .08); }
body.v14 :is(.ct-field label, .ct-field legend, .ct-spec label, .ct-tech-group > span) { color: var(--z-text); }
body.v14 :is(.ct-field input, .ct-field textarea, .ct-spec input, .ct-field select) {
	background: #FFFFFF; color: var(--z-text); border: 1px solid var(--z-line-2);
}
body.v14 :is(.ct-field input, .ct-field textarea, .ct-spec input):focus { background: #FFFFFF; border-color: var(--z-green); box-shadow: 0 0 0 3px rgba(140, 182, 0, .18); }
body.v14 :is(.ct-field input, .ct-field textarea)::placeholder { color: #8A928C; }
body.v14 .ct-needs-grid { background: var(--z-line); border-color: var(--z-line); }
body.v14 .ct-need,
body.v14 .ct-need:not(:last-child) { background: #FFFFFF; }
body.v14 .ct-need span { color: var(--z-text); }
body.v14 .ct-need span:hover { background: #F4F6F1; color: var(--z-text); }
body.v14 .ct-need input:checked + span { background: rgba(140, 182, 0, .14); color: #2F3B00; }
body.v14 .ct-dynamic { background: #F7F9F2; border-color: rgba(99, 127, 0, .25); }
body.v14 :is(.ct-capture-option span, .ct-tech-choice span) { background: #FFFFFF; border-color: var(--z-line-2); color: var(--z-text); }
body.v14 :is(.ct-capture-option, .ct-tech-choice) input:checked + span { background: rgba(140, 182, 0, .14); color: #2F3B00; }
body.v14 .ct-tech-choice span:hover { color: var(--z-text); }
body.v14 :is(.ct-spec-help, .ct-file small, .ct-privacy) { color: var(--z-dim); }
body.v14 .ct-file { background: #F7F8F5; border-color: var(--z-line-2); }
body.v14 .ct-x input[type="file"] { color: var(--z-muted); color-scheme: light; }
body.v14 .ct-x :is(input[type="checkbox"], input[type="radio"]) { accent-color: var(--z-green); color-scheme: light; }

/* =========================================================
   BLOC « NOUS CONSULTER »
   ========================================================= */
body.v14 .consult {
	background: var(--z-bg);
	color: var(--z-text);
	padding: 112px 0 96px;
	border-top: 1px solid var(--z-line);
}
body.v14 .consult--suite { padding-top: 88px; }
body.v14 .consult__grid {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1.05fr);
	gap: 72px;
	align-items: start;
}
body.v14 .consult__eyebrow {
	display: inline-flex; align-items: center; gap: 12px;
	margin: 0 0 18px;
	color: var(--z-green-text);
	font-size: 13px; font-weight: 700; letter-spacing: .14em; text-transform: uppercase;
}
body.v14 .consult__eyebrow::before { content: ""; width: 28px; height: 2px; background: var(--z-green); }
body.v14 .consult h2 { margin: 0 0 20px; color: var(--z-text); }
body.v14 .consult__lead { margin: 0 0 32px; max-width: 34em; color: var(--z-muted); font-size: 18px; line-height: 1.7; }
body.v14 .consult__actions { display: flex; flex-wrap: wrap; align-items: center; gap: 14px 22px; }
body.v14 .consult__actions .btn--primary { color: #14191B; }
body.v14 .consult__tel {
	display: inline-flex; align-items: center; gap: 10px;
	color: var(--z-text); font-size: 18px; font-weight: 650; text-decoration: none;
}
body.v14 .consult__tel svg { width: 20px; height: 20px; stroke: var(--z-green-text); fill: none; stroke-width: 1.8; }
body.v14 .consult__tel:hover { color: var(--z-green-text); }
body.v14 .consult__note {
	display: flex; align-items: center; gap: 10px;
	margin: 22px 0 0; color: var(--z-muted); font-size: 15px;
}
body.v14 .consult__note::before { content: ""; width: 8px; height: 8px; border-radius: 50%; background: var(--z-green); box-shadow: 0 0 0 4px rgba(140, 182, 0, .18); }
body.v14 .consult__card {
	padding: 12px 32px;
	background: #FFFFFF; border: 1px solid var(--z-line); border-radius: 18px;
	box-shadow: var(--z-shadow);
}
body.v14 .consult__steps { list-style: none; margin: 0; padding: 0; }
body.v14 .consult__steps-title { margin: 0; padding: 22px 0 6px; color: var(--z-dim); font-size: 13px; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
body.v14 .consult__steps li {
	display: grid; grid-template-columns: 44px minmax(0, 1fr); gap: 18px;
	padding: 22px 0;
}
body.v14 .consult__steps li + li { border-top: 1px solid var(--z-line); }
body.v14 .consult__steps li > span {
	display: grid; place-items: center; width: 44px; height: 44px; border-radius: 50%;
	background: rgba(140, 182, 0, .14); color: #3F5300; font-size: 17px; font-weight: 700;
}
body.v14 .consult__steps h3 { margin: 2px 0 6px; color: var(--z-text); font-size: 19px; line-height: 1.3; letter-spacing: -.01em; }
body.v14 .consult__steps p { margin: 0; color: var(--z-muted); font-size: 16px; line-height: 1.6; }
body.v14 .consult__trust {
	list-style: none; margin: 64px 0 0; padding: 28px 0 0;
	display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 24px;
	border-top: 1px solid var(--z-line);
}
body.v14 .consult__trust li { display: flex; flex-direction: column; gap: 4px; }
body.v14 .consult__trust b { color: var(--z-text); font-size: 17px; font-weight: 700; }
body.v14 .consult__trust span { color: var(--z-muted); font-size: 15px; line-height: 1.5; }
body.v14 .consult--suite .consult__grid { grid-template-columns: minmax(0, .8fr) minmax(0, 1.2fr); }

@media (max-width: 1099px) {
	body.v14 .consult__grid,
	body.v14 .consult--suite .consult__grid { grid-template-columns: 1fr; gap: 40px; }
	body.v14 .consult__trust { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 680px) {
	body.v14 .consult { padding: 72px 0 64px; }
	body.v14 .consult__lead { font-size: 16px; }
	body.v14 .consult__actions .btn { width: 100%; justify-content: center; }
	body.v14 .consult__card { padding: 6px 20px; border-radius: 14px; }
	body.v14 .consult__steps li { grid-template-columns: 36px minmax(0, 1fr); gap: 14px; padding: 18px 0; }
	body.v14 .consult__steps li > span { width: 36px; height: 36px; font-size: 15px; }
	body.v14 .consult__steps h3 { font-size: 17px; }
	body.v14 .consult__steps p { font-size: 15px; }
	body.v14 .consult__trust { margin-top: 44px; gap: 20px 16px; }
	body.v14 .consult__trust b { font-size: 16px; }
	body.v14 .consult__trust span { font-size: 14px; }
}

/* ---------- Contact : « Après l'envoi » ---------- */
body.v14 .ct-suite { margin-top: 28px; padding: 24px 26px; border-radius: 14px; background: #FFFFFF; box-shadow: var(--z-shadow); }
body.v14 .ct-suite h3 { margin: 0 0 14px; color: var(--z-text); font-size: 17px; }
body.v14 .ct-suite ol { margin: 0; padding: 0; list-style: none; counter-reset: s; display: grid; gap: 12px; }
body.v14 .ct-suite li { counter-increment: s; display: grid; grid-template-columns: 28px minmax(0, 1fr); gap: 12px; color: var(--z-muted); font-size: 15px; line-height: 1.55; }
body.v14 .ct-suite li::before {
	content: counter(s); display: grid; place-items: center; width: 28px; height: 28px; border-radius: 50%;
	background: rgba(140, 182, 0, .14); color: #3F5300; font-size: 14px; font-weight: 700;
}

/* ---------- Correctifs de contraste ---------- */
body.v14 .sol-catalog .sales-kicker,
body.v14 .sol-catalog h2 em,
body.v14 .sol-overview .sales-kicker,
body.v14 .sol-overview h2 em { color: var(--z-green-text); }
body.v14 .sol-overview .sales-head--dark h2 { color: var(--z-text); }
body.v14 .sol-overview .sales-head > a { color: var(--z-text); }
body.v14 .dust-principles span,
body.v14 .dust-product__top span { color: var(--z-green-text); }
body.v14 .vent-product--more .dust-label { color: #B9DB62; }
body.v14 .vent-product--more p { color: #C9D1CC; }

/* ---------- Titre d'accueil : moins de lignes ---------- */
body.v14 .sales-hero .sales-hero__title { max-width: 13ch !important; }

/* ---------- Boutons : une seule forme sur tout le site ---------- */
body.v14 :is(.be-btn, .ct-submit, .es-btn, .dust-btn) {
	border-radius: 999px !important;
	text-transform: none !important;
	letter-spacing: 0 !important;
	font-size: 16px !important;
	font-weight: 650 !important;
}

/* ---------- Mobile : grilles sur deux colonnes, moins de défilement ---------- */
@media (max-width: 680px) {
	body.v14 .sales-app-grid,
	body.v14 .sales-app-grid--cms,
	body.v14 .sales-machine-grid,
	body.v14 .home-env__list { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; gap: 10px !important; }
	body.v14 .sales-app-card { min-height: 0 !important; height: 210px !important; }
	body.v14 .sales-app-card__body p { display: none; }
	body.v14 .sales-app-card__body h3 { font-size: 17px !important; }
	body.v14 .home-env__sector { min-height: 0 !important; height: 120px !important; }
	body.v14 .home-env__sector :is(h3, span, strong) { font-size: 15px !important; }
	body.v14 .sales-machine-grid :is(h3, strong) { font-size: 16px !important; }
}

/* ---------- En-tête : bouton visible sur tablette, sans halo ---------- */
body.v14 .site-header .btn--primary { box-shadow: none; }
body.v14 .site-header__cta { display: none; }
@media (min-width: 681px) and (max-width: 1279px) {
	body.v14 .site-header__cta { display: inline-flex; margin-left: auto; margin-right: 14px; }
	body.v14 .site-header .nav-toggle { margin-left: 0; }
}

/* ---------- Accueil : le grand titre garde son impact ---------- */
body.v14 .sales-hero .sales-hero__title { font-size: 84px !important; line-height: 1 !important; }
@media (max-width: 1099px) { body.v14 .sales-hero .sales-hero__title { font-size: 62px !important; } }
@media (max-width: 680px) { body.v14 .sales-hero .sales-hero__title { font-size: 42px !important; line-height: 1.04 !important; } }
