/* ===== IBCSC — couche « allegee » : claire, echelle reduite (commune aux variantes) ===== */
:root, :root body {
  --bg: var(--L-ground); --bg-deep: var(--L-band); --surface: var(--L-panel); --surface-2: var(--L-panel-2);
  --text: var(--L-ink); --muted: var(--L-muted); --line: var(--L-line); --line-strong: var(--L-line-strong);
  --cyan: var(--L-accent); --cyan-soft: var(--L-accent); --cyan-deep: var(--L-accent);
  --paper: var(--L-ground); --paper-2: var(--L-band); --ink: var(--L-ink); --ink-muted: var(--L-muted); --light-line: var(--L-line);
  --shadow-card: 0 1px 2px rgba(12, 36, 52, .05), 0 10px 26px rgba(12, 36, 52, .07);
  --shadow-pop: 0 2px 4px rgba(12, 36, 52, .06), 0 18px 40px rgba(12, 36, 52, .12);
  --space-l: 32px; --space-xl: 48px; --header-h: 72px;
}
html { color-scheme: light; }
body { background: var(--L-ground) !important; color: var(--L-ink); }
body::before { opacity: .55; background-image: linear-gradient(var(--L-grid) 1px, transparent 1px), linear-gradient(90deg, var(--L-grid) 1px, transparent 1px) !important; }
::selection { background: var(--L-accent-bright); color: #fff; }

/* ---------- Tons : bandes autrefois sombres ---------- */
.site-header { background: color-mix(in srgb, var(--L-header) 92%, transparent) !important; border-bottom: 1px solid var(--L-line) !important; backdrop-filter: saturate(1.4) blur(10px); box-shadow: none !important; }
.site-header, .site-header a, .site-header button, .site-header span, .site-header strong, .site-header small { color: var(--L-ink); }
.site-header .brand small, .site-header .brand span { color: var(--L-muted); }
.nav-menu, .lang-menu { background: #fff !important; background-image: none !important; border: 1px solid var(--L-line) !important; box-shadow: var(--shadow-pop) !important; }
.nav-menu a, .nav-menu span, .nav-menu p, .nav-menu strong, .lang-menu a { color: var(--L-ink) !important; }
.nav-menu small, .nav-menu p { color: var(--L-muted) !important; }
.menu-toggle span, .menu-toggle i { background: var(--L-ink) !important; }

:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .partnership-cta, section.section.home-editorial, section.section.home-hygiene, section.section.cooperation, section.section.why, section.section.domains) {
  background: var(--L-band) !important; background-image: none !important; color: var(--L-ink);
}
:is(.don-inner, .home-diagnostic-card, .diagnostic-launch-panel, .home-techblog-latest, .home-ai-network, .home-job-choice, .home-job-live, .home-job-launch-state, .board-empty) {
  background: var(--L-panel) !important; background-image: none !important; color: var(--L-ink) !important;
  border: 1px solid var(--L-line) !important; box-shadow: var(--shadow-card) !important;
}
:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .partnership-cta, .home-editorial, .home-hygiene, .cooperation, .don-inner, .home-diagnostic, .home-diagnostic-card, .diagnostic-launch-panel, .home-techblog-latest, .home-ai-network, .home-job-choice, .home-job-live, .home-job-launch-state, .board-empty, .home-training, .home-ai-lab, .home-offers)
  :is(h1, h2, h3, h4, strong, dt, dd, b, label, legend, figcaption, th, td):not(:is(.button, .home-techblog-action, .home-ai-cta, .don-submit, .button-estimate, .cmp-button) *) { color: var(--L-ink) !important; }
:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .partnership-cta, .home-editorial, .home-hygiene, .cooperation, .don-inner, .home-diagnostic, .home-diagnostic-card, .diagnostic-launch-panel, .home-techblog-latest, .home-ai-network, .home-job-choice, .home-job-live, .home-job-launch-state, .board-empty, .home-training, .home-ai-lab, .home-offers)
  :is(p, li, small, time, span:not([class*="badge"]):not([class*="chip"]), em):not(:is(.button, .home-techblog-action, .home-ai-cta, .don-submit, .button-estimate, .cmp-button) *) { color: var(--L-muted) !important; }
:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .partnership-cta, .home-editorial, .home-hygiene, .cooperation, .don-inner, .home-diagnostic, .home-diagnostic-card, .diagnostic-launch-panel, .home-techblog-latest, .home-ai-network, .home-job-choice, .home-job-live, .home-job-launch-state, .board-empty, .home-training, .home-ai-lab)
  :is([class*="kicker"], [class*="eyebrow"], [class*="label"], [class*="index"], [class*="number"]) { color: var(--L-accent) !important; }
:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .partnership-cta, .home-editorial, .home-hygiene, .cooperation, .don-inner, .home-diagnostic-card, .home-job-live, .home-ai-lab) a:not(.button) { color: var(--L-ink) !important; }
:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .partnership-cta, .home-editorial, .home-hygiene, .cooperation) :is(article, li, .publication-row, [class*="card"]) { border-color: var(--L-line) !important; }
:is(.home-hygiene, .home-editorial, .cooperation, .home-job-gateway, .home-techblog-promo, .home-diagnostic-card, .don-inner, .principles) :is(article, [class*="card"], [class*="item"]):not(a) { background-color: transparent; }

/* Images decoratives sombres : voiles eclaircis */
.home-training-shade { background: linear-gradient(90deg, color-mix(in srgb, var(--L-panel) 96%, transparent) 0%, color-mix(in srgb, var(--L-panel) 88%, transparent) 46%, color-mix(in srgb, var(--L-panel) 12%, transparent) 100%) !important; }
.home-techblog-shade { background: linear-gradient(90deg, var(--L-band) 0%, color-mix(in srgb, var(--L-band) 90%, transparent) 50%, color-mix(in srgb, var(--L-band) 30%, transparent) 100%) !important; }
.home-diagnostic-art, .home-ai-lab-art { opacity: .35; filter: saturate(.6); }
.home-ai-network-visual { filter: invert(1) hue-rotate(180deg) saturate(.8); opacity: .8; }
.home-training :is(h2, h3, p, span, a, strong, small) { text-shadow: none !important; }

/* Champs */
:is(.don-inner, .home-diagnostic-card, .diagnostic-launch-panel, .home-job-gateway, .home-estimate) :is(input, select, textarea) {
  background: #fff !important; color: var(--L-ink) !important; border: 1px solid var(--L-line-strong) !important;
}
:is(input, select, textarea)::placeholder { color: color-mix(in srgb, var(--L-muted) 80%, transparent) !important; }
.don-pill span { border-color: var(--L-line-strong) !important; color: var(--L-ink) !important; }
.don-pill input:checked + span { background: var(--L-accent) !important; border-color: var(--L-accent) !important; color: #fff !important; }
.don-form { background: var(--L-panel-2) !important; border-color: var(--L-line) !important; }
.don-text, .don-note, .don-amounts legend { color: var(--L-muted) !important; }
.don-copy h2 { color: var(--L-ink) !important; }
.don-uses li { color: var(--L-ink) !important; border-color: var(--L-line) !important; }
.don-inner::before { opacity: .25; }
.don-logos img[alt="Mollie"] { filter: invert(1) brightness(.2); }

/* Boutons */
.button, a.button { background: var(--L-btn) !important; color: var(--L-btn-ink) !important; border-color: var(--L-btn) !important; }
.button:hover { filter: brightness(1.06); }
.button-secondary, a.button.button-secondary { background: transparent !important; color: var(--L-ink) !important; border: 1px solid var(--L-line-strong) !important; }
.nav-cta, .header-support, a[class*="support"] { background: var(--L-cta) !important; color: var(--L-cta-ink) !important; }
.text-link { color: var(--L-accent) !important; }

/* Pied de page */
.site-footer { background: var(--L-footer) !important; background-image: none !important; border-top: 1px solid var(--L-line); }
.site-footer, .site-footer :is(a, p, li, span, small, strong, h2, h3, h4, dt, dd) { color: var(--L-muted) !important; }
.site-footer :is(h2, h3, h4, strong) { color: var(--L-ink) !important; }
.site-footer img[alt="Mollie"], .site-footer .brand img { filter: invert(1) brightness(.25); }
.site-footer::before, .site-footer::after { opacity: .15; }

/* ---------- Echelle typographique reduite ---------- */
main h1, .hero h1 { font-size: clamp(2rem, 2.7vw, 2.7rem) !important; line-height: 1.08 !important; letter-spacing: -.02em; }
.hero p { font-size: clamp(.98rem, 1.05vw, 1.08rem) !important; max-width: 60ch; }
main h2 { font-size: clamp(1.5rem, 2.05vw, 2.05rem) !important; line-height: 1.14 !important; letter-spacing: -.012em; text-wrap: balance; }
:is(.home-tech-news, .don-band, .home-author-articles, .home-expertise) h2 { font-size: clamp(1.25rem, 1.5vw, 1.55rem) !important; }
main h3 { font-size: clamp(1.02rem, 1.15vw, 1.2rem) !important; line-height: 1.25 !important; }
:is(.home-ai-feature, .home-training, .home-job-choice) h3 { font-size: clamp(1.1rem, 1.35vw, 1.4rem) !important; }
main :is(.home-techblog-promo, .home-diagnostic) [class*="stat"] strong, .home-techblog-stats strong { font-size: clamp(1.5rem, 2vw, 2rem) !important; }

/* ---------- Rythme vertical plus compact ---------- */
.page-home .hero, .hero { min-height: 0 !important; }
.hero-copy { padding-block: clamp(40px, 5vw, 64px) !important; }
main > section:not(.hero):not(.home-tech-news):not(.principles):not(.partnership-cta), main > .section { padding-block: clamp(40px, 5vw, 76px) !important; }
.home-tech-news { padding-block: 20px !important; }
.principles { padding-block: 22px !important; }
.partnership-cta { padding-block: 28px !important; }
.home-ai-feature, .home-ai-network { min-height: 0 !important; }
.home-ai-feature { aspect-ratio: auto !important; }
.home-job-gateway h2 + p, .home-ai-lab-head p { max-width: 62ch; }

/* ---------- Mouvement discret commun ---------- */
@media (prefers-reduced-motion: no-preference) {
  main :is(article, a[class*="card"], .home-ai-feature, .home-ai-network, .home-job-choice, .offer-card, .home-author-article, .don-inner) { transition: transform .35s var(--ease), box-shadow .35s var(--ease), border-color .35s; }
  main :is(article, a[class*="card"], .home-ai-feature, .home-ai-network, .home-job-choice, .offer-card, .home-author-article):hover { transform: translateY(-3px); box-shadow: var(--shadow-pop) !important; }
  .text-link, main a:not(.button):not([class*="card"]) { background-image: linear-gradient(currentColor, currentColor); background-size: 0% 1px; background-repeat: no-repeat; background-position: 0 100%; transition: background-size .35s var(--ease); }
  .text-link:hover, main a:not(.button):not([class*="card"]):hover { background-size: 100% 1px; }
}
.reveal { opacity: 1 !important; }
.scroll-progress { position: fixed; top: 0; left: 0; height: 2px; width: 100%; transform-origin: 0 50%; transform: scaleX(0); background: var(--L-accent-bright); z-index: 1000; pointer-events: none; }

/* ---------- Correctifs cibles ---------- */
.site-nav a, .site-nav button, .header-tools a, .header-tools button, .lang-switch button, .lang-switch a { color: var(--L-ink) !important; opacity: 1 !important; }
.site-nav a:hover, .site-nav a.is-active { color: var(--L-accent) !important; }
.site-nav a::after { background: var(--L-accent-bright) !important; }
.site-header .brand img, .site-header .brand svg { filter: none; }

/* Cartes photo du Lab : restent photographiques, plus compactes */
.home-ai-feature, .home-ai-network { min-height: clamp(260px, 21vw, 320px) !important; }
.home-ai-feature :is(strong, small, span, b) { color: #fff !important; }
.home-ai-feature .home-ai-feature-visual::after { opacity: .92; }
.home-ai-lab, .home-ai-lab::before, .home-ai-lab::after { background-color: transparent; }

/* Passerelle emploi : fond clair, photo en filigrane */
.page-home .home-job-gateway::before { background: linear-gradient(90deg, var(--L-band) 0%, color-mix(in srgb, var(--L-band) 94%, transparent) 50%, color-mix(in srgb, var(--L-band) 62%, transparent) 78%, color-mix(in srgb, var(--L-band) 86%, transparent) 100%) !important; }
.page-home .home-job-gateway::after { opacity: .35 !important; background-image: linear-gradient(var(--L-grid) 1px, transparent 1px), linear-gradient(90deg, var(--L-grid) 1px, transparent 1px) !important; }
.page-home .home-job-gateway-art { opacity: .55; filter: saturate(.7) brightness(1.08); }
.page-home .home-job-live, .page-home .home-job-live.is-prelaunch { min-height: 0 !important; backdrop-filter: blur(8px); background: color-mix(in srgb, var(--L-panel) 88%, transparent) !important; }
.page-home .home-job-live-map { background: linear-gradient(var(--L-grid) 1px, transparent 1px) 0 0/20px 20px, linear-gradient(90deg, var(--L-grid) 1px, transparent 1px) 0 0/20px 20px, var(--L-panel-2) !important; border-color: var(--L-line) !important; max-height: 220px !important; }
.page-home .home-job-live dd { font-size: clamp(1.6rem, 2.1vw, 2.2rem) !important; }
.page-home .home-job-live header b, .page-home .home-job-live dt { color: var(--L-muted) !important; }
.page-home .home-job-choice strong { font-size: clamp(1.1rem, 1.4vw, 1.4rem) !important; }
.page-home .home-job-choice b { color: var(--L-accent) !important; }
.page-home .home-job-gateway :is(input, select) { background: #fff !important; }
.page-home .home-job-gateway h3, .page-home .home-job-live h3, .page-home .home-job-live strong { font-size: clamp(1.15rem, 1.6vw, 1.6rem) !important; line-height: 1.15 !important; }

/* Don : montant choisi lisible */
.don-inner .don-form .don-pill input:checked + span { background: var(--L-accent) !important; color: #fff !important; }
.don-inner .don-submit, .don-inner .don-submit span { color: #0b2233 !important; }
.don-inner .don-kicker, .don-inner .don-kicker * { color: var(--L-accent) !important; }
.don-heart { fill: #f5a524; }
.don-shield { fill: color-mix(in srgb, var(--L-accent-bright) 12%, transparent); stroke: var(--L-accent); }
.don-orbit { stroke: color-mix(in srgb, var(--L-accent) 30%, transparent); }
.don-inner .don-uses li { color: var(--L-ink) !important; }
.site-nav .nav-group > summary, .site-nav .nav-group > summary span, .site-nav summary { color: var(--L-ink) !important; opacity: 1 !important; }
.site-nav .nav-group[open] > summary, .site-nav .nav-group > summary:hover { color: var(--L-accent) !important; }
.page-home .hero::after, .hero::after { background: none !important; }
:root, :root body { --obs-surface: var(--L-panel); --obs-surface-2: var(--L-panel-2); --obs-deep: var(--L-band); --obs-muted: var(--L-muted); --obs-line: var(--L-line); --obs-cyan-soft: var(--L-accent); --obs-line-strong: var(--L-line-strong); --obs-paper: var(--L-ground); --obs-paper-white: var(--L-panel); --obs-paper-2: var(--L-band); --obs-paper-ink: var(--L-ink); --obs-paper-muted: var(--L-muted); --obs-light-line: var(--L-line); }
.page-home .home-job-live a:not(.button) { background: var(--L-panel-2) !important; border: 1px solid var(--L-line) !important; }
.page-home .home-job-live a:not(.button) :is(span, strong, b, small, i) { color: var(--L-ink) !important; }
.page-home .home-job-gateway button:not(.button) { background: var(--L-panel) !important; color: var(--L-ink) !important; border: 1px solid var(--L-line) !important; }
.home-training :is(strong, [class*="title"]) { font-size: clamp(1.15rem, 1.5vw, 1.5rem) !important; line-height: 1.2 !important; }
.home-training-banner-professional .home-training-shade { background: linear-gradient(270deg, color-mix(in srgb, var(--L-panel) 96%, transparent) 0%, color-mix(in srgb, var(--L-panel) 88%, transparent) 46%, color-mix(in srgb, var(--L-panel) 12%, transparent) 100%) !important; }

/* ===== Variante 4 — « Unifiée & Contrastée » : Fond continu, Encadrement sombre, Accents profonds ===== */
:root, :root body {
  /* Palette unifiée : fond clair continu, encadrements sombres */
  --L-ground: #f5f4f0; /* Papier clair/chaud */
  --L-band: transparent; /* Les bandes deviennent transparentes ou très subtiles */
  --L-panel: #ffffff;
  --L-panel-2: #f9fafb;
  --L-header: rgba(255, 255, 255, 0.95);
  --L-footer: #0e2233; /* Deep navy ink */
  
  /* Textes et lignes */
  --L-ink: #0e2233;
  --L-muted: #475b6b;
  --L-line: #d1d8dd; /* Hairline subtile */
  --L-line-strong: #94a3b8;
  
  /* Accents contrastés */
  --L-accent: #075985; /* Petrol blue profond pour lisibilité AA+ */
  --L-accent-bright: #0ea5e9; /* Cyan brand */
  --L-btn: #0e2233; /* Bouton primaire sombre */
  --L-btn-ink: #ffffff;
  --L-cta: #f5a524; /* Ambre chaleureux */
  --L-cta-ink: #0e2233;
  
  /* Effets */
  --fx-red: #cd0402; /* Rouge signalétique */
  --fx-green: #15803D;
  --fx-ease: cubic-bezier(.16, 1, .3, 1);
  --fx-grain: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.1 0 0 0 0 0.12 0 0 0 0 0.14 0 0 0 .55 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

/* ---------- Typographie : Gilroy partout, jamais d'italique ---------- */
body, button, input, select, textarea, main :is(h1, h2, h3, h4, h5, h6, p, li, a, span, strong, small, dt, dd, label, em, i, b, blockquote, figcaption),
.site-header *, .site-footer *, .page-home .hero h1 {
  font-family: "Gilroy", "Avenir Next", "Segoe UI", Helvetica, Arial, sans-serif !important; font-style: normal !important;
}
main h2, .page-home .hero h1 { text-transform: none !important; font-weight: 700 !important; }
main h3 { font-weight: 650; }
main :is(h1, h2) em, main :is(h1, h2) i { font-style: normal !important; }

/* ---------- Rythme : compact, séparations subtiles ---------- */
main > section:not(.hero):not(.home-tech-news):not(.principles):not(.partnership-cta), main > .section { padding-block: clamp(30px, 3.4vw, 50px) !important; }
main > section:not(.hero) { border-bottom: 1px solid rgba(14, 34, 51, 0.04); }
main :is(.section-heading, .sticky-intro, .home-ai-lab-head, .home-training-heading, .why-lead) { margin-bottom: clamp(16px, 1.8vw, 26px) !important; }
main :is([class*="-grid"], [class*="-list"], [class*="-cards"], [class*="-banners"]) { gap: clamp(12px, 1.3vw, 20px) !important; }
.home-ai-lab-head { padding-bottom: 14px !important; }
.don-band { padding-block: clamp(16px, 2vw, 26px) !important; }
.home-tech-news { padding-block: 14px 18px !important; }

/* ---------- Fond continu unifié et texture photographique ---------- */
body {
  background: linear-gradient(to bottom, #f5f4f0 0%, #eaedf0 100%) !important;
  background-attachment: fixed !important;
}
body::after {
  content: ""; position: fixed; inset: -50%; z-index: 9999; pointer-events: none;
  background-image: var(--fx-grain); opacity: .04; mix-blend-mode: multiply;
  animation: fx-grain 1.2s steps(6) infinite;
}
@keyframes fx-grain { 0% { transform: translate(0, 0); } 20% { transform: translate(-3%, 2%); } 40% { transform: translate(2%, -3%); } 60% { transform: translate(-2%, -1%); } 80% { transform: translate(3%, 2%); } 100% { transform: translate(0, 0); } }

/* Suppression des anciens fonds circulaires et bandes dures */
:is(.home-estimate, .cooperation, .home-hygiene, .home-editorial, .home-job-gateway, .home-techblog-promo, .home-diagnostic, .home-offers, .domains, .why, .home-training, .home-ai-lab, .home-author-articles)::before,
:is(.home-estimate, .cooperation, .home-hygiene, .home-editorial, .home-job-gateway, .home-techblog-promo, .home-diagnostic, .home-offers, .domains, .why, .home-training, .home-ai-lab, .home-author-articles)::after {
  display: none !important;
}

/* Intégration douce des anciennes bandes (fondu transparent) */
:is(.home-estimate, .home-techblog-promo, .home-job-gateway, .principles, .cooperation, .home-editorial, .home-hygiene, .partnership-cta) {
  background: linear-gradient(180deg, transparent 0%, rgba(14, 34, 51, 0.02) 15%, rgba(14, 34, 51, 0.02) 85%, transparent 100%) !important;
  border: none !important;
  position: relative; isolation: isolate;
}
:is(.home-diagnostic, .home-offers, .domains, .why, .home-training, .home-ai-lab, .home-author-articles) {
  background: transparent !important;
  position: relative; isolation: isolate;
}

/* Cartes et panneaux distincts sur le fond continu */
:is(.don-inner, .home-diagnostic-card, .diagnostic-launch-panel, .home-techblog-latest, .home-ai-network, .home-job-choice, .home-job-live, .home-job-launch-state, .board-empty, article[class*="card"]) {
  background: var(--L-panel) !important;
  border: 1px solid var(--L-line) !important;
  box-shadow: 0 4px 12px rgba(14, 34, 51, 0.03), 0 1px 2px rgba(14, 34, 51, 0.02) !important;
}

/* ---------- Couleurs : Contrastes et Accents ---------- */
/* Liens et textes accentués sur fond clair (Petrol Blue) */
.text-link, main a:not(.button):not([class*="card"]) { color: var(--L-accent) !important; font-weight: 600; }
.text-link:hover, main a:not(.button):not([class*="card"]):hover { color: var(--L-accent-bright) !important; }

/* Chips, Badges et Kickers (Fond teinté, texte sombre) */
:is([class*="kicker"], [class*="eyebrow"], [class*="label"], [class*="badge"], [class*="chip"]) {
  background: rgba(7, 89, 133, 0.1) !important;
  color: var(--L-accent) !important;
  padding: 4px 10px !important;
  border-radius: 6px !important;
  font-weight: 650 !important;
  display: inline-block;
  border: 1px solid rgba(7, 89, 133, 0.15) !important;
}

/* Boutons contrastés */
main .button:not(.button-secondary), .site-header .button:not(.button-secondary), .don-submit { 
  background: var(--L-btn) !important; 
  color: var(--L-btn-ink) !important; 
  border-color: var(--L-btn) !important; 
}
main .button.button-secondary, .site-header .button.button-secondary { 
  background: transparent !important; 
  color: var(--L-btn) !important; 
  border: 1px solid var(--L-btn) !important; 
}

/* ---------- Pied de page sombre (Bookend) ---------- */
.site-footer {
  background: var(--L-footer) !important;
  border-top: none !important;
}
.site-footer, .site-footer p, .site-footer span, .site-footer li, .site-footer small {
  color: #9fb3bf !important;
}
.site-footer :is(h2, h3, h4, strong, dt, b) {
  color: #ffffff !important;
}
.site-footer a {
  color: #b9c9d2 !important;
  text-decoration: none;
}
.site-footer a:hover {
  color: var(--L-cta) !important; /* Ambre au survol */
}
/* Logos de paiement dans le footer */
.site-footer img[alt*="Mollie" i], .site-footer img[src*="mollie" i], .site-footer .brand img {
  filter: brightness(0) invert(1) !important;
}
.site-footer .don-logos img:not([alt*="Mollie" i]):not([src*="mollie" i]),
.site-footer .payment-logos img:not([alt*="Mollie" i]):not([src*="mollie" i]) {
  filter: none !important;
  background: rgba(255, 255, 255, 0.95);
  padding: 3px 5px;
  border-radius: 4px;
}

/* ---------- Hero sombre cinématographique (Bookend) ---------- */
.page-home .hero {
  background: radial-gradient(120% 90% at 72% 42%, #11293d 0%, #0e2233 45%, #08141f 100%) !important;
  border-bottom: 0 !important; overflow: hidden;
}
.page-home .hero::before { background: linear-gradient(90deg, rgba(8, 21, 33, .94) 0%, rgba(8, 21, 33, .72) 34%, rgba(8, 21, 33, 0) 58%) !important; z-index: 1 !important; }
.page-home .hero::after { content: "" !important; position: absolute; inset: 0; z-index: 1; height: auto !important; pointer-events: none;
  background: radial-gradient(140% 110% at 60% 40%, transparent 55%, rgba(4, 12, 20, .55) 100%), linear-gradient(to top, rgba(6, 16, 26, .45), transparent 22%) !important; }
.page-home .hero-art { opacity: .16 !important; filter: saturate(.6) blur(.6px) !important; animation: none !important; }
.hero-map-sweep, .hero-map-pulse { display: none !important; }
.fx-map { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; }
.page-home .hero .hero-inner { position: relative; z-index: 2; pointer-events: none; }
.page-home .hero :is(.hero-copy, .hero-observatory) { pointer-events: auto; }
.page-home .hero h1 { color: #ffffff !important; }
.page-home .hero p { color: #b9c9d2 !important; }
.page-home .hero .hero-eyebrow { color: var(--L-accent-bright) !important; background: transparent !important; border: none !important; padding: 0 !important; }
.page-home .hero .hero-status { color: #9fb3bf !important; }
.page-home .hero .text-link { color: var(--L-accent-bright) !important; }
.page-home .hero .button:not(.button-secondary) { background: var(--L-accent-bright) !important; color: #0b1c29 !important; border-color: var(--L-accent-bright) !important; }
.page-home .hero .button-secondary { background: rgba(255,255,255,.02) !important; color: #f3f7f9 !important; border-color: rgba(185, 201, 210, .55) !important; }
.page-home .hero-observatory { background: rgba(12, 30, 44, .7) !important; border: 1px solid rgba(120, 190, 220, .15) !important; backdrop-filter: blur(12px) saturate(1.2); box-shadow: 0 20px 50px rgba(0,0,0,.35); }
.page-home .hero-observatory :is(strong) { color: var(--L-accent-bright) !important; }
.page-home .hero-observatory :is(dt) { color: #8ea6b4 !important; }
.page-home .hero-observatory :is(dd) { color: #ffffff !important; }
.page-home .hero-status i { background: var(--fx-green) !important; box-shadow: 0 0 0 0 rgba(21, 128, 61, .6); animation: fx-live 2.4s infinite; }
@keyframes fx-live { 0% { box-shadow: 0 0 0 0 rgba(21, 128, 61, .55); } 70% { box-shadow: 0 0 0 9px rgba(21, 128, 61, 0); } 100% { box-shadow: 0 0 0 0 rgba(21, 128, 61, 0); } }

/* ---------- Marqueur rouge façon WEBURL ---------- */
.fx-mark { position: relative; display: inline; white-space: nowrap; }
.fx-mark > svg { position: absolute; pointer-events: none; overflow: visible; z-index: -1; }
.fx-mark.is-circle > svg { left: -9%; top: -26%; width: 118%; height: 152%; }
.fx-mark.is-under > svg { left: -2%; bottom: -.34em; width: 104%; height: .5em; }
.fx-mark.is-double > svg { left: -2%; bottom: -.42em; width: 104%; height: .62em; }
.fx-mark path { fill: none; stroke: var(--fx-red); stroke-width: 3.2; stroke-linecap: round; stroke-linejoin: round; opacity: .88; stroke-dasharray: 1 1; stroke-dashoffset: 1; vector-effect: non-scaling-stroke; filter: url(#fx-rough); }
.fx-mark.is-drawn path { transition: stroke-dashoffset 1.6s var(--fx-ease) .15s; stroke-dashoffset: 0; }
.fx-mark.is-drawn path + path { transition-delay: .75s; }
.fx-mark.is-under path, .fx-mark.is-double path { stroke-width: 2.6; }

/* ---------- Apparitions cinématographiques ---------- */
.fx-pre { opacity: .001; transform: translate3d(0, 18px, 0) scale(.985); filter: blur(7px); }
.fx-in { transition: opacity 1.1s var(--fx-ease), transform 1.2s var(--fx-ease), filter 1.1s var(--fx-ease); opacity: 1; transform: none; filter: none; }
.fx-img-wrap { overflow: hidden; }
.fx-kb { transform: scale(1.09); transition: transform 2.8s var(--fx-ease) !important; }
.fx-kb.fx-kb-in { transform: scale(1.001); }

/* Reflet spéculaire sur les cartes */
.fx-card { position: relative; transform-style: preserve-3d; will-change: transform; }
.fx-card .fx-glare { position: absolute; inset: 0; pointer-events: none; border-radius: inherit; opacity: 0; transition: opacity .5s var(--fx-ease);
  background: radial-gradient(420px circle at var(--gx, 50%) var(--gy, 50%), rgba(255, 255, 255, .4), transparent 40%); mix-blend-mode: soft-light; z-index: 3; }
.fx-card:hover .fx-glare { opacity: 1; }

/* Éclat sur les boutons */
main .button, .site-header .button, .don-submit { position: relative; overflow: hidden; isolation: isolate; }
main .button::after, .site-header .button::after, .don-submit::after { content: ""; position: absolute; inset: -2px; z-index: 1; pointer-events: none; transform: translateX(-120%) skewX(-20deg);
  background: linear-gradient(90deg, transparent 0, rgba(255, 255, 255, .25) 45%, transparent 90%); width: 60%; }
main .button:hover::after, .site-header .button:hover::after, .don-submit:hover::after { transform: translateX(260%) skewX(-20deg); transition: transform .9s var(--fx-ease); }

/* ---------- Compteurs : plaques sombres contrastées ---------- */
.fx-stat { display: inline-grid !important; grid-template-columns: auto; align-items: end; gap: 2px; padding: 12px 16px !important; min-width: 88px;
  background: var(--L-ink) !important; border: 1px solid rgba(255, 255, 255, 0.1) !important; border-radius: 10px;
  box-shadow: 0 8px 24px rgba(14, 34, 51, .15); position: relative; overflow: hidden; }
.fx-stat::before { content: ""; position: absolute; left: 0; top: 0; bottom: 0; width: 4px; background: var(--L-cta); }
.fx-stat .fx-num, .fx-stat strong, .fx-stat b { font-weight: 800 !important; font-size: clamp(1.6rem, 2.1vw, 2.1rem) !important; line-height: 1 !important; color: var(--L-cta) !important; font-variant-numeric: tabular-nums; letter-spacing: -.02em; }
.fx-stat span, .fx-stat small, .fx-stat p { color: #9fb3bf !important; }
.fx-odo { display: inline-flex; overflow: hidden; height: 1em; line-height: 1; vertical-align: bottom; }
.fx-odo > span { display: inline-flex; flex-direction: column; transition: transform 1.8s var(--fx-ease); }
.fx-odo > span > b { height: 1em; line-height: 1; font: inherit; color: inherit; }
.page-home .hero-observatory dd .fx-odo > span > b { color: #ffffff; }

/* Ligne sous les titres de section */
.fx-rule { display: block; height: 2px; width: 0; margin: 8px 0 0; background: linear-gradient(90deg, var(--L-accent), transparent); transition: width 1.4s var(--fx-ease) .2s; }
.fx-rule.is-on { width: 56px; }

/* En-tête compact au défilement */
.site-header { transition: box-shadow .4s var(--fx-ease), background .4s; }
.site-header.fx-scrolled { box-shadow: 0 8px 28px rgba(14, 34, 51, .06) !important; }

@media (prefers-reduced-motion: reduce) {
  body::after { animation: none; }
  .fx-pre { opacity: 1 !important; transform: none !important; filter: none !important; }
  .fx-mark path { stroke-dashoffset: 0 !important; transition: none !important; }
  .fx-kb { transform: none !important; }
}
@media (max-width: 820px) { .fx-map { opacity: .5; } }
/* CTA d'identité conservé */
.site-header .nav-cta, .site-header .button-support, .site-header a.button.button-support { background: #f5a524 !important; color: #0e2233 !important; border-color: #f5a524 !important; }

/* Voiles photo : fondus dans le fond continu (lisibilité du texte) */
.home-techblog-shade { background: linear-gradient(90deg, #f5f4f0 0%, rgba(245,244,240,.96) 42%, rgba(245,244,240,.55) 70%, rgba(245,244,240,.15) 100%) !important; }
.page-home .home-job-gateway::before { display: block !important; content: "" !important; position: absolute; inset: 0; z-index: -1; pointer-events: none;
  background: linear-gradient(90deg, #f5f4f0 0%, rgba(245,244,240,.97) 46%, rgba(245,244,240,.78) 72%, rgba(245,244,240,.96) 100%), linear-gradient(180deg, #f5f4f0 0%, transparent 14%, transparent 86%, #f5f4f0 100%) !important; }
.page-home .home-job-gateway-art { opacity: .45 !important; filter: saturate(.75) !important; }
/* Odomètre : la colonne hérite exactement de la taille du chiffre */
.fx-stat strong { font-size: clamp(1.7rem, 2.2vw, 2.2rem) !important; line-height: 1 !important; }
.fx-stat .fx-odo, .fx-stat .fx-odo > span, .fx-stat .fx-odo > span > b, .hero-observatory .fx-odo, .hero-observatory .fx-odo > span, .hero-observatory .fx-odo > span > b { font-size: inherit !important; line-height: 1 !important; height: 1em; }
.fx-stat .fx-odo > span, .hero-observatory .fx-odo > span { height: auto; }
.fx-stat :is(span:not(.fx-odo):not(.fx-odo *), small, em) { color: #a9bccb !important; }

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary) {
  appearance: none !important;
  display: inline-flex;
  align-items: center !important;
  justify-content: center !important;
  gap: 10px !important;
  height: 46px !important;
  padding-inline: 20px !important;
  border-radius: 10px !important;
  font-family: "Gilroy", sans-serif !important;
  font-weight: 600 !important;
  font-size: 14.5px !important;
  letter-spacing: .005em !important;
  text-transform: none !important;
  text-decoration: none !important;
  border: 1.5px solid transparent !important;
  cursor: pointer !important;
  transition: background 0.3s cubic-bezier(.16,1,.3,1), color 0.3s cubic-bezier(.16,1,.3,1), border-color 0.3s cubic-bezier(.16,1,.3,1), box-shadow 0.3s cubic-bezier(.16,1,.3,1) !important;
  position: relative !important;
  overflow: hidden !important;
}

:is(.button-small, .cmp-button) {
  height: 38px !important;
}

:is(.button, .home-techblog-action, .home-ai-cta, .cmp-button-primary, main button.button):not(.button-secondary):not(.button-support):not(.don-submit) {
  background: #0E2233 !important;
  color: #FFFFFF !important;
  border-color: #0E2233 !important;
}

:is(.button, .home-techblog-action, .home-ai-cta, .cmp-button-primary, main button.button):not(.button-secondary):not(.button-support):not(.don-submit):hover {
  background: #075985 !important;
  border-color: #075985 !important;
}

:is(.button-secondary, .cmp-button-secondary) {
  background: transparent !important;
  color: #0E2233 !important;
  border-color: #0E2233 !important;
}

:is(.button-secondary, .cmp-button-secondary):hover {
  background: rgba(14, 34, 51, 0.06) !important;
}

:is(.button-support, .don-submit, .nav-cta, .header-support) {
  background: #F5A524 !important;
  color: #0E2233 !important;
  border-color: #F5A524 !important;
}

:is(.button-support, .don-submit, .nav-cta, .header-support):hover {
  background: #FFB43F !important;
  border-color: #FFB43F !important;
  box-shadow: 0 4px 14px rgba(245, 165, 36, 0.3) !important;
}

:is(.page-home .hero, .site-footer) :is(.button, .cmp-button-primary):not(.button-secondary):not(.button-support) {
  background: #22B8EE !important;
  color: #06131D !important;
  border-color: #22B8EE !important;
}

:is(.page-home .hero, .site-footer) :is(.button, .cmp-button-primary):not(.button-secondary):not(.button-support):hover {
  background: #56CCF6 !important;
  border-color: #56CCF6 !important;
}

:is(.page-home .hero, .site-footer) :is(.button-secondary, .cmp-button-secondary) {
  background: transparent !important;
  color: #FFFFFF !important;
  border-color: rgba(255,255,255,0.55) !important;
}

:is(.page-home .hero, .site-footer) :is(.button-secondary, .cmp-button-secondary):hover {
  background: rgba(255,255,255,0.10) !important;
  border-color: #FFFFFF !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary):active {
  transform: translateY(1px) scale(0.985) !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary) :is(span[aria-hidden="true"], .arrow, i) {
  display: inline-block !important;
  transition: transform 0.3s cubic-bezier(.16,1,.3,1) !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary):hover :is(span[aria-hidden="true"], .arrow, i) {
  transform: translateX(4px) !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary):focus-visible {
  outline: 3px solid #F5A524 !important;
  outline-offset: 3px !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary):disabled,
:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary)[disabled] {
  opacity: 0.45 !important;
  pointer-events: none !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary)::after {
  content: "" !important;
  position: absolute !important;
  inset: -2px !important;
  z-index: 1 !important;
  pointer-events: none !important;
  transform: translateX(-120%) skewX(-20deg) !important;
  background: linear-gradient(90deg, transparent 0, rgba(255, 255, 255, 0.25) 45%, transparent 90%) !important;
  width: 60% !important;
  transition: none !important;
}

:is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary):hover::after {
  transform: translateX(260%) skewX(-20deg) !important;
  transition: transform 0.9s cubic-bezier(.16,1,.3,1) !important;
}

:is(.text-link, main p a, main li a:not([class]), .cmp-policy, .site-footer a:not(.brand)) {
  color: #075985 !important;
  font-weight: 600 !important;
  text-decoration: none !important;
  background: none !important;
  position: relative !important;
}

.page-home .hero :is(.text-link, main p a, main li a:not([class])) {
  color: #7FD3F5 !important;
}

.site-footer :is(.text-link, p a, li a:not([class]), .cmp-policy, a:not(.brand)) {
  color: #B9C7D2 !important;
}

.site-footer :is(.text-link, p a, li a:not([class]), .cmp-policy, a:not(.brand)):hover {
  color: #FFFFFF !important;
}

main p a:not(.button):not([class*="button"]) {
  text-decoration: underline !important;
  text-decoration-thickness: 1px !important;
  text-decoration-color: rgba(7, 89, 133, 0.3) !important;
  text-underline-offset: 3px !important;
}

.page-home .hero p a:not(.button):not([class*="button"]) {
  text-decoration-color: rgba(127, 211, 245, 0.3) !important;
}

.site-footer p a:not(.button):not([class*="button"]) {
  text-decoration-color: rgba(185, 199, 210, 0.3) !important;
}

:is(.text-link, main p a, main li a:not([class]), .cmp-policy, .site-footer a:not(.brand)) {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 10'%3E%3Cpath d='M0,8 Q25,2 50,6 T100,4' fill='none' stroke='%23CD0402' stroke-width='2' stroke-linecap='round' opacity='0.85' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") !important;
  background-size: 0% .42em !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  padding-bottom: 2px !important;
  transition: background-size 0.6s cubic-bezier(.16,1,.3,1) !important;
}

:is(.text-link, main p a, main li a:not([class]), .cmp-policy, .site-footer a:not(.brand)):hover {
  background-size: 100% .42em !important;
  text-decoration: none !important;
}

:is(.text-link, main p a, main li a:not([class]), .cmp-policy, .site-footer a:not(.brand)) :is(span, i, svg) {
  display: inline-block !important;
  transition: transform 0.3s cubic-bezier(.16,1,.3,1) !important;
}

:is(.text-link, main p a, main li a:not([class]), .cmp-policy, .site-footer a:not(.brand)):hover :is(span, i, svg) {
  transform: translateX(4px) !important;
}

:is(.text-link, main p a, main li a:not([class]))[target="_blank"]:hover :is(span, i, svg) {
  transform: translate(2px, -2px) !important;
}

:is(.home-tech-news a[href]:not(.home-tech-news-item), .home-author-articles-more, .diagnostic-tools-link, .home-editorial a[class*="more"], section a[href$="/offres"], :is(h2, h3, .section-heading) a:not(.button)) {
  display: inline-flex !important;
  align-items: center !important;
  gap: 8px !important;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: #075985 !important;
  text-decoration: none !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 10'%3E%3Cpath d='M0,8 Q25,2 50,6 T100,4' fill='none' stroke='%23CD0402' stroke-width='2' stroke-linecap='round' opacity='0.85' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") !important;
  background-size: 0% .42em !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  padding-bottom: 2px !important;
  transition: background-size 0.6s cubic-bezier(.16,1,.3,1) !important;
}

:is(.home-tech-news a[href]:not(.home-tech-news-item), .home-author-articles-more, .diagnostic-tools-link, .home-editorial a[class*="more"], section a[href$="/offres"], :is(h2, h3, .section-heading) a:not(.button)):hover {
  background-size: 100% .42em !important;
}

:is(.home-tech-news a[href]:not(.home-tech-news-item), .home-author-articles-more, .diagnostic-tools-link, .home-editorial a[class*="more"], section a[href$="/offres"], :is(h2, h3, .section-heading) a:not(.button)) :is(span, i, svg) {
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  border: 1.5px solid #075985 !important;
  color: #075985 !important;
  transition: background 0.4s cubic-bezier(.16,1,.3,1), color 0.4s cubic-bezier(.16,1,.3,1), transform 0.4s cubic-bezier(.16,1,.3,1) !important;
}

:is(.home-tech-news a[href]:not(.home-tech-news-item), .home-author-articles-more, .diagnostic-tools-link, .home-editorial a[class*="more"], section a[href$="/offres"], :is(h2, h3, .section-heading) a:not(.button)):hover :is(span, i, svg) {
  background: #075985 !important;
  color: #FFFFFF !important;
  transform: translateX(4px) !important;
}

:is(.site-nav a, .nav-group > summary, .nav-tools-direct, .header-account):not(.button) {
  font-size: 13px !important;
  font-weight: 560 !important;
  color: #0E2233 !important;
  text-decoration: none !important;
  position: relative !important;
  transition: color 0.3s cubic-bezier(.16,1,.3,1) !important;
}

:is(.site-nav a, .nav-group > summary, .nav-tools-direct, .header-account):not(.button)::after {
  content: "" !important;
  position: absolute !important;
  bottom: -4px !important;
  left: 0 !important;
  width: 100% !important;
  height: 2px !important;
  background: #075985 !important;
  transform: scaleX(0) !important;
  transform-origin: center !important;
  transition: transform 0.4s cubic-bezier(.16,1,.3,1) !important;
}

:is(.site-nav a, .nav-group > summary, .nav-tools-direct, .header-account):not(.button):hover,
:is(.site-nav a, .nav-group > summary, .nav-tools-direct, .header-account):not(.button).is-active,
.nav-group[open] > summary {
  color: #075985 !important;
}

:is(.site-nav a, .nav-group > summary, .nav-tools-direct, .header-account):not(.button):hover::after,
:is(.site-nav a, .nav-group > summary, .nav-tools-direct, .header-account):not(.button).is-active::after,
.nav-group[open] > summary::after {
  transform: scaleX(1) !important;
}

.nav-menu a {
  font-size: 14px !important;
  padding: 9px 12px !important;
  border-radius: 8px !important;
  color: #0E2233 !important;
}

.nav-menu a::after {
  display: none !important;
}

.nav-menu a:hover {
  background: #F1F5F8 !important;
  color: #075985 !important;
}

:is(.home-author-articles button, .home-job-gateway button, .to-top, .menu-toggle, .cmp-close) {
  width: 40px !important;
  height: 40px !important;
  border-radius: 10px !important;
  border: 1.5px solid rgba(14, 34, 51, 0.2) !important;
  background: transparent !important;
  color: #0E2233 !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  cursor: pointer !important;
  transition: background 0.3s cubic-bezier(.16,1,.3,1), color 0.3s cubic-bezier(.16,1,.3,1), border-color 0.3s cubic-bezier(.16,1,.3,1) !important;
}

:is(.home-author-articles button, .home-job-gateway button, .to-top, .menu-toggle, .cmp-close):hover {
  background: #0E2233 !important;
  color: #FFFFFF !important;
  border-color: #0E2233 !important;
}

.to-top {
  background: #0E2233 !important;
  color: #FFFFFF !important;
  border-color: #0E2233 !important;
  box-shadow: 0 4px 12px rgba(14, 34, 51, 0.15) !important;
}

.to-top:hover {
  background: #075985 !important;
  border-color: #075985 !important;
}

:is(.offer-card, .home-editorial-row, .home-tech-news-item, .home-ai-direction, .home-training-banner, .home-ai-feature, .home-ai-network, .home-job-choice, .home-ai-partner) {
  text-decoration: none !important;
}

:is(.offer-card, .home-editorial-row, .home-tech-news-item, .home-ai-direction, .home-training-banner, .home-ai-feature, .home-ai-network, .home-job-choice, .home-ai-partner) :is(h3, strong):first-of-type {
  display: inline !important;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' preserveAspectRatio='none' viewBox='0 0 100 10'%3E%3Cpath d='M0,8 Q25,2 50,6 T100,4' fill='none' stroke='%23CD0402' stroke-width='2' stroke-linecap='round' opacity='0.85' vector-effect='non-scaling-stroke'/%3E%3C/svg%3E") !important;
  background-size: 0% .42em !important;
  background-repeat: no-repeat !important;
  background-position: left bottom !important;
  transition: background-size 0.6s cubic-bezier(.16,1,.3,1) !important;
}

:is(.offer-card, .home-editorial-row, .home-tech-news-item, .home-ai-direction, .home-training-banner, .home-ai-feature, .home-ai-network, .home-job-choice, .home-ai-partner):hover :is(h3, strong):first-of-type {
  background-size: 100% .42em !important;
}

@media (prefers-reduced-motion: reduce) {
  :is(.button, .button-secondary, .button-small, .button-support, .button-estimate, .home-ai-cta, .home-techblog-action, .don-submit, main button.button, .cmp-button, .cmp-button-primary, .cmp-button-secondary)::after {
    display: none !important;
  }
  * {
    transition-duration: 0.01ms !important;
  }
}

/* ---- Correctifs après revue visuelle ---- */
/* Marqueur rouge : fin trait sous le texte, jamais par-dessus */
main a, .site-footer a { background-position: 0 100% !important; background-repeat: no-repeat !important; padding-bottom: .12em; }
/* Flèches toujours pleines et visibles */
:is(.button, .home-techblog-action, .home-ai-cta, .button-estimate, .don-submit) > span[aria-hidden="true"] { opacity: 1 !important; color: currentColor !important; display: inline-block !important; visibility: visible !important; }
/* Texte des boutons : contraste franc */
main :is(.button:not(.button-secondary), .home-techblog-action, .home-ai-cta, .button-estimate) { color: #ffffff !important; }
.page-home .hero .button:not(.button-secondary) { color: #06131d !important; }
.don-submit, .don-submit * { color: #0e2233 !important; font-weight: 700 !important; opacity: 1 !important; }
/* État désactivé lisible (bouton « Lancer le diagnostic » en attente d'un domaine) */
main button.button:disabled, main button.button[disabled] { opacity: 1 !important; background: #5d6f7d !important; border-color: #5d6f7d !important; color: #eef3f6 !important; cursor: not-allowed !important; box-shadow: none !important; }
/* « Explorer tous les outils » : même style que les autres liens « plus » */
.diagnostic-tools-link { text-transform: none !important; letter-spacing: 0 !important; font-size: 14px !important; font-weight: 600 !important; border: 0 !important; box-shadow: none !important; }
.diagnostic-tools-link::before { display: none !important; }
/* Lien d'urgence du hero : une seule soulignure (le marqueur) */
.hero .text-link { border: 0 !important; text-decoration: none !important; box-shadow: none !important; }
.hero .text-link::before { display: none !important; }
/* Retour en haut : icône blanche */
.to-top, .to-top * { color: #ffffff !important; }
.to-top svg { stroke: currentColor !important; }
/* Le contenu des boutons hérite toujours de la couleur du bouton (bat les règles de section de light.css) */
html body main section :is(.button, .home-techblog-action, .home-ai-cta, .button-estimate, .don-submit) :is(span, b, i, strong, small, em) { color: inherit !important; opacity: 1 !important; }
html body main section :is(.button, .home-techblog-action, .home-ai-cta, .button-estimate):not(.button-secondary) { color: #ffffff !important; }
html body main section.hero .button:not(.button-secondary) { color: #06131d !important; }
html body main .don-band .don-submit { color: #0e2233 !important; }
.home-techblog-action b { display: inline-block !important; transition: transform .4s cubic-bezier(.16,1,.3,1); }
.home-techblog-action:hover b { transform: translateX(4px); }
.diagnostic-tools-link { display: inline-flex !important; width: auto !important; max-width: max-content !important; align-self: flex-start; }

/* ---- Revue d'alignement ---- */
/* Les boutons réservés au menu mobile restent masqués sur ordinateur */
@media (min-width: 1081px) { .site-nav .nav-cta, .site-nav .nav-account { display: none !important; } }
/* En-tête : CTA compact, rien ne déborde */
.site-header .button-support { height: 40px !important; padding-inline: 16px !important; font-size: 14px !important; white-space: nowrap; }
.site-header .header-inner { min-width: 0; }
/* Hero : espace régulier entre les boutons et le lien d'urgence */
.page-home .hero .hero-actions { margin-bottom: 18px !important; gap: 12px !important; }
.page-home .hero .text-link { margin-top: 2px; }
/* Titres de la veille : interlignage serré */
.home-tech-news-item :is(strong, b, h3, .home-tech-news-copy > span:last-child) { line-height: 1.3 !important; }
.home-tech-news-item .home-tech-news-copy { line-height: 1.3 !important; }
/* Étiquettes (kickers) : pastille à la taille du texte, jamais sur toute la largeur */
main :is([class*="kicker"], [class*="eyebrow"]):not(.hero-eyebrow) { width: fit-content !important; max-width: 100%; }
/* Carrousel : une seule bordure (sur les boutons) */
.carousel-controls { border: 0 !important; gap: 8px !important; background: transparent !important; }
/* Retour en haut : pastille pleine */
.to-top { background: #0e2233 !important; color: #ffffff !important; border: 0 !important; border-radius: 10px !important; box-shadow: 0 10px 24px rgba(14,34,51,.22) !important; }

/* Pied de page : une colonne = une liste verticale de liens */
.site-footer div > a:not(.brand):not(.footer-linkedin):not(.footer-facebook):not(.button) { display: block !important; width: fit-content; margin: 0 0 7px !important; line-height: 1.35 !important; }
.site-footer dd, .site-footer dd * { color: #c9d6de !important; }
.site-footer dt { color: #8fa3b1 !important; }
/* Bouton du menu mobile : masqué sur ordinateur */
@media (min-width: 1081px) { .site-header .menu-toggle { display: none !important; } }
/* Recherche d'offres : le bouton garde sa largeur naturelle sur une ligne */
.page-home .home-job-search { grid-template-columns: minmax(0, 1.6fr) minmax(0, 1fr) auto !important; }
.page-home .home-job-search button { white-space: nowrap !important; width: auto !important; min-width: max-content !important; height: 100% !important; min-height: 52px; border-radius: 0 !important; padding-inline: 18px !important; }

/* techblog stat plates: dark ground, light digits */
html body main .home-techblog-stats .fx-stat strong,
html body main .home-techblog-stats .fx-stat strong *{color:#f5f4f0!important}
html body main .home-techblog-stats .fx-stat :is(span,small):not(strong *){color:#9fb3c4!important}

/* odometer: one digit window, no neighbours peeking */
.fx-odo{display:inline-flex!important;height:1.25em!important;line-height:1.25!important;overflow:hidden!important;vertical-align:top}
.fx-odo>span{display:flex!important;flex-direction:column}
.fx-odo b{display:block!important;height:1.25em!important;line-height:1.25!important;font-weight:inherit}
.home-techblog-stats{display:flex!important;gap:16px!important}
.home-techblog-stats .fx-stat{min-width:112px;box-sizing:border-box}

/* domains grid: same rule on both columns */
.page-home section li.reveal{border-left:0!important}

/* to-top: always a solid navy chip */
html body button.to-top{background:#0e2233!important;background-color:#0e2233!important}
html body button.to-top svg{color:#fff!important;stroke:#fff!important}

/* footer: brand column aligned to one left edge, no duplicated social text */
.site-footer .footer-social{display:none!important}
.site-footer .footer-owl-cluster{display:flex!important;flex-direction:column;align-items:flex-start!important;gap:18px}
.site-footer .footer-owl{margin:0!important}
.site-footer .footer-social-brands{display:flex!important;justify-content:flex-start!important;gap:22px;margin:0!important;padding:0!important}
.site-footer .footer-brand{margin-left:0!important}

.site-footer .footer-owl{width:auto!important;text-align:left!important}
.site-footer .footer-owl img{width:120px!important;height:auto!important;margin:0!important;display:block}
.site-footer .footer-owl-cluster{margin-top:28px!important}
/* job search: fields without inner boxes */
.home-job-search input{border:0!important;background:transparent!important;padding:4px 0!important;box-shadow:none!important;outline-offset:3px;width:100%}
.home-job-gateway a[href*="login"], .home-job-gateway a[href*="connexion"]{align-items:center!important}
.fx-mark.is-circle > svg{left:-14%!important;width:128%!important;top:-24%!important;height:150%!important}
html body main .fx-stat .fx-odo b, html body main .fx-odo > span > b{height:1.25em!important;line-height:1.25em!important;flex:0 0 1.25em!important}
html body main .fx-stat .fx-odo{height:1.25em!important}
html body main .fx-odo > span{height:auto!important}
html body .page-home .hero-observatory dd, html body .hero-observatory dd *{line-height:1.12!important}

/* Citizen Lab cards 01/02: bright photo + sticky-note captions */
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network){position:relative!important;overflow:hidden!important;border-radius:16px!important;background:#e9e4da!important;border:0!important;box-shadow:0 18px 44px rgba(14,34,51,.14)!important;min-height:clamp(280px,22vw,340px)!important;isolation:isolate}
html body main .home-ai-stage :is(.home-ai-feature-visual,.home-ai-network-visual){position:absolute!important;inset:0!important;filter:none!important;opacity:1!important;background:none!important;z-index:0}
html body main .home-ai-stage :is(.home-ai-feature-visual,.home-ai-network-visual)::before,
html body main .home-ai-stage :is(.home-ai-feature-visual,.home-ai-network-visual)::after,
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network)::before,
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network)::after{display:none!important}
html body main .home-ai-stage .home-ai-network-visual :is(svg,i){display:none!important}
html body main .home-ai-stage :is(.home-ai-feature-visual,.home-ai-network-visual) img{position:absolute;inset:0;width:100%!important;height:100%!important;object-fit:cover;filter:saturate(1.08) contrast(1.02)!important;transform:scale(1.001);transition:transform 1.2s cubic-bezier(.2,.8,.2,1)!important}
html body main .home-ai-stage .home-ai-feature-visual img{object-position:60% 40%}
html body main .home-ai-stage .home-ai-network-visual img{object-position:62% 45%}
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network):hover img{transform:scale(1.05)!important}
/* soft light vignette at the bottom only, keeps the photo bright */
html body main .home-ai-stage :is(.home-ai-feature-visual,.home-ai-network-visual)>b.fx-glow{position:absolute;inset:auto 0 0 0;height:45%;background:linear-gradient(to top,rgba(14,34,51,.28),transparent);z-index:1;pointer-events:none}

/* the note */
html body main .home-ai-stage :is(.home-ai-feature-copy,.home-ai-network-copy){position:absolute!important;left:22px!important;bottom:22px!important;top:auto!important;right:auto!important;z-index:2;display:flex!important;flex-direction:column;gap:6px;width:auto!important;max-width:min(62%,380px)!important;padding:16px 20px 18px!important;margin:0!important;border-radius:4px 4px 14px 4px!important;background:var(--note)!important;box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 14px 28px rgba(14,34,51,.22),0 2px 6px rgba(14,34,51,.12)!important;transform:rotate(var(--tilt));transform-origin:30% 0;transition:transform .5s cubic-bezier(.2,.8,.2,1),box-shadow .5s!important}
html body main .home-ai-stage .home-ai-network-copy{max-width:min(78%,340px)!important}
html body main .home-ai-stage .home-ai-feature{--note:#ffd23f;--ink:#10212e;--sub:#3b3413;--tilt:-1.6deg}
html body main .home-ai-stage .home-ai-network{--note:#ff6b57;--ink:#ffffff;--sub:#fff1ec;--tilt:1.4deg}
/* tape strip */
html body main .home-ai-stage :is(.home-ai-feature-copy,.home-ai-network-copy)::before{content:""!important;display:block!important;position:absolute;top:-11px;left:50%;width:74px;height:22px;margin-left:-37px;background:rgba(255,255,255,.55);backdrop-filter:blur(2px);box-shadow:0 1px 2px rgba(0,0,0,.08);transform:rotate(-3deg);border-radius:2px}
html body main .home-ai-stage :is(.home-ai-feature-copy,.home-ai-network-copy) .home-ai-card-index{display:inline-block!important;width:fit-content;font-size:.72rem!important;letter-spacing:.14em;font-weight:700;color:var(--ink)!important;opacity:.7;padding:0!important;margin:0!important;position:static!important}
html body main .home-ai-stage :is(.home-ai-feature-copy,.home-ai-network-copy) strong{display:block;color:var(--ink)!important;font-size:clamp(1.25rem,1.6vw,1.6rem)!important;line-height:1.1!important;text-transform:none!important;letter-spacing:-.01em!important;font-weight:800!important;margin:0!important;text-shadow:none!important}
html body main .home-ai-stage :is(.home-ai-feature-copy,.home-ai-network-copy) small{display:block;color:var(--sub)!important;font-size:.9rem!important;line-height:1.4!important;margin:0!important;opacity:.92}
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network):hover :is(.home-ai-feature-copy,.home-ai-network-copy){transform:rotate(0deg) translateY(-4px);box-shadow:0 1px 0 rgba(255,255,255,.35) inset,0 22px 40px rgba(14,34,51,.26),0 2px 6px rgba(14,34,51,.12)!important}
/* sticking-on animation when the card enters the viewport */
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network).fx-note-pre :is(.home-ai-feature-copy,.home-ai-network-copy){transform:rotate(calc(var(--tilt)*4)) translateY(18px) scale(1.06);opacity:0}
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network).fx-note-in :is(.home-ai-feature-copy,.home-ai-network-copy){transition:transform .9s cubic-bezier(.2,1.3,.4,1),opacity .4s!important}
/* arrow: white round button on the photo */
html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network) .home-ai-card-arrow{position:absolute!important;top:18px!important;right:18px!important;left:auto!important;bottom:auto!important;z-index:2;width:44px!important;height:44px!important;display:grid!important;place-items:center;border-radius:50%!important;background:#fff!important;color:#10212e!important;border:0!important;box-shadow:0 8px 20px rgba(14,34,51,.2)!important;font-size:18px!important;transition:transform .4s cubic-bezier(.2,.8,.2,1),background .3s!important}
html body main .home-ai-stage .home-ai-feature:hover .home-ai-card-arrow{background:#ffd23f!important;transform:rotate(45deg)}
html body main .home-ai-stage .home-ai-network:hover .home-ai-card-arrow{background:#ff6b57!important;color:#fff!important;transform:rotate(45deg)}
@media (max-width:640px){html body main .home-ai-stage :is(.home-ai-feature-copy,.home-ai-network-copy){left:14px!important;bottom:14px!important;max-width:calc(100% - 28px)!important}}
@media (prefers-reduced-motion:reduce){html body main .home-ai-stage :is(.home-ai-feature,.home-ai-network).fx-note-pre :is(.home-ai-feature-copy,.home-ai-network-copy){transform:rotate(var(--tilt));opacity:1}}
html body main .home-ai-stage .home-ai-network-copy{max-width:min(46%,260px)!important;padding:14px 16px 16px!important}
html body main .home-ai-stage .home-ai-network-copy strong{font-size:clamp(1.15rem,1.35vw,1.4rem)!important}
html body main .home-ai-stage .home-ai-network-copy small{font-size:.84rem!important}
html body main .home-ai-stage .home-ai-network-visual img{object-position:70% 42%}
@media (max-width:640px){html body main .home-ai-stage .home-ai-network-copy{max-width:calc(100% - 28px)!important}}

/* ---- Principles: four coloured value tiles ---- */
html body main .principles{padding-block:clamp(36px,4vw,56px)!important;border:0!important;background:transparent!important}
html body main .principles .principles-inner{display:grid!important;grid-template-columns:minmax(200px,.8fr) 3.2fr!important;gap:clamp(20px,3vw,40px)!important;align-items:center!important}
html body main .principles h2{margin:0!important}
html body main .principles h2::after{display:none!important}
html body main .principles ol{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important;margin:0!important;padding:0!important;list-style:none!important;border:0!important}
html body main .principles li{--c:#0f9f9a;--bg:#dcf3f0;position:relative;display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:10px!important;min-height:0!important;padding:18px 18px 20px!important;margin:0!important;border:0!important;border-radius:16px!important;background:var(--bg)!important;color:#10212e!important;font-weight:700!important;font-size:1.02rem!important;line-height:1.25!important;overflow:hidden;transition:transform .45s cubic-bezier(.2,.8,.2,1),box-shadow .45s!important}
html body main .principles li:nth-child(2){--c:#e08a00;--bg:#fff0cf}
html body main .principles li:nth-child(3){--c:#e8513e;--bg:#ffe3dc}
html body main .principles li:nth-child(4){--c:#6a55d6;--bg:#e9e5ff}
html body main .principles li::before{display:none!important}
html body main .principles li::after{content:"";position:absolute;right:-30px;bottom:-30px;width:110px;height:110px;border-radius:50%;background:var(--c);opacity:.12;transition:transform .6s cubic-bezier(.2,.8,.2,1)}
html body main .principles li:hover{transform:translateY(-4px);box-shadow:0 16px 30px rgba(14,34,51,.12)}
html body main .principles li:hover::after{transform:scale(1.5)}
html body main .principles li>span{display:flex!important;align-items:center;justify-content:space-between;width:100%;color:var(--c)!important;font-size:.8rem!important;font-weight:800!important;letter-spacing:.12em!important;margin:0!important}
html body main .principles li .pr-ico{display:grid;place-items:center;width:40px;height:40px;border-radius:12px;background:#fff;color:var(--c);box-shadow:0 4px 10px rgba(14,34,51,.08)}
html body main .principles li .pr-ico svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
@media (max-width:1080px){html body main .principles .principles-inner{grid-template-columns:1fr!important}html body main .principles ol{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ---- Cooperation: photo + mint programme card ---- */
html body main .cooperation{padding-block:clamp(32px,4vw,56px)!important}
html body main .cooperation .editorial-split{display:grid!important;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)!important;gap:clamp(20px,3vw,40px)!important;align-items:stretch!important}
html body main .cooperation .editorial-split>div:first-child{display:flex!important;flex-direction:column;gap:14px;border:0!important;padding:0!important}
html body main .cooperation .coop-photo{position:relative;flex:1;min-height:260px;border-radius:18px;overflow:hidden;box-shadow:0 18px 40px rgba(14,34,51,.14)}
html body main .cooperation .coop-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:55% 45%;transition:transform 1.4s cubic-bezier(.2,.8,.2,1)}
html body main .cooperation .editorial-split:hover .coop-photo img{transform:scale(1.04)}
html body main .cooperation .coopit-home-teaser{position:relative;display:flex!important;flex-direction:column;justify-content:center;gap:18px;padding:clamp(24px,3vw,40px)!important;margin:0!important;border:0!important;border-radius:18px!important;background:linear-gradient(145deg,#d9f4ec 0%,#e8f7f1 55%,#fff4d9 100%)!important;overflow:hidden}
html body main .cooperation .coopit-home-teaser::before{content:"";position:absolute;right:-60px;top:-60px;width:220px;height:220px;border-radius:50%;background:radial-gradient(circle,#ffd23f 0 34%,transparent 35%),radial-gradient(circle,rgba(15,159,154,.18) 0 60%,transparent 61%);opacity:.9;pointer-events:none;display:block!important;border:0!important}
html body main .cooperation .coopit-home-label{position:relative;width:fit-content!important;padding:7px 12px!important;border:0!important;border-radius:999px!important;background:#0f9f9a!important;color:#fff!important;font-size:.72rem!important;letter-spacing:.12em!important;font-weight:800!important}
html body main .cooperation .statement{position:relative;margin:0!important;padding:0!important;border:0!important;color:#10212e!important;font-size:clamp(1.25rem,1.7vw,1.6rem)!important;line-height:1.35!important;font-weight:600!important;max-width:30ch}
html body main .cooperation .statement::before{display:none!important}
html body main .cooperation .coopit-home-actions{position:relative;display:flex!important;flex-wrap:wrap;align-items:center;gap:12px 18px}
html body main .cooperation .coopit-home-actions .text-link{display:inline-flex!important;align-items:center;gap:10px;padding:12px 20px!important;border-radius:12px!important;background:#10212e!important;color:#fff!important;background-image:none!important;text-decoration:none!important;font-weight:700}
html body main .cooperation .coopit-home-actions .text-link *{color:#fff!important}
html body main .cooperation .coopit-home-actions .text-link:hover{background:#0f9f9a!important}
html body main .cooperation .coopit-home-actions small{display:inline-flex;gap:8px;flex-wrap:wrap;color:#10212e!important;font-size:.78rem!important;letter-spacing:.06em;text-transform:none!important}
html body main .cooperation .coopit-home-actions small b{padding:6px 10px;border-radius:999px;background:#fff;box-shadow:0 2px 6px rgba(14,34,51,.08);font-weight:700;color:#10212e!important}
@media (max-width:900px){html body main .cooperation .editorial-split{grid-template-columns:1fr!important}}

/* ---- Editorial head: index sits with the title, left aligned ---- */
html body main .home-editorial-head{display:grid!important;grid-template-columns:auto 1fr!important;align-items:baseline!important;column-gap:18px!important;justify-items:start!important;text-align:left!important;margin-bottom:28px!important}
html body main .home-editorial-head>div{margin:0!important;padding:0!important;max-width:760px}
html body main .home-editorial-head .section-index{align-self:start!important;margin:10px 0 0!important;position:static!important}
/* specificity boost over light.css muted-text rule */
html body main .principles.principles.principles.principles.principles ol li{color:#10212e!important}
html body main .principles.principles.principles.principles.principles ol li>span{color:var(--c)!important}
html body main .principles.principles.principles.principles.principles ol li .pr-ico{color:var(--c)!important}
html body main .principles h2{border:0!important;padding:0!important}
html body main .principles :is(.fx-rule,.principles-inner::before,.principles-inner::after){display:none!important}
html body main .principles .principles-inner::before,html body main .principles .principles-inner::after,html body main .principles h2::before{display:none!important}
html body main .cooperation.cooperation.cooperation .coopit-home-label{color:#fff!important}
html body main .cooperation.cooperation.cooperation .statement{color:#10212e!important}
html body main .cooperation.cooperation.cooperation .coopit-home-actions small b{color:#10212e!important}

/* ---- Estimate: warm ticket card ---- */
html body main .home-estimate{padding-block:clamp(28px,3vw,44px)!important;background:transparent!important;border:0!important}
html body main .home-estimate .home-estimate-inner{display:grid!important;grid-template-columns:minmax(0,1.7fr) minmax(260px,.9fr)!important;gap:clamp(20px,3vw,36px)!important;align-items:center!important;padding:clamp(24px,3vw,38px)!important;border-radius:22px!important;background:linear-gradient(120deg,#fff3d6 0%,#ffe6d2 55%,#ffdcd2 100%)!important;border:0!important;box-shadow:0 18px 40px rgba(170,90,30,.12)!important;position:relative;overflow:hidden}
html body main .home-estimate .home-estimate-inner::after{content:"";position:absolute;left:-70px;bottom:-90px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(255,138,61,.22),transparent 70%);pointer-events:none}
html body main .home-estimate .home-estimate-copy{display:flex;flex-direction:column;gap:12px;position:relative;z-index:1}
html body main .home-estimate .home-estimate-copy>*{margin:0!important}
html body main .home-estimate.home-estimate.home-estimate .home-estimate-kicker{width:fit-content;padding:6px 12px!important;border:0!important;border-radius:999px!important;background:#ff8a3d!important;color:#fff!important;font-size:.7rem!important;letter-spacing:.12em!important;font-weight:800!important}
html body main .home-estimate h2{font-size:clamp(1.5rem,2.1vw,2rem)!important;line-height:1.15!important}
html body main .home-estimate h2 .fx-rule, html body main .home-estimate .fx-rule{display:none!important}
html body main .home-estimate.home-estimate.home-estimate .home-estimate-copy>p{color:#4a3b2c!important;max-width:60ch;font-size:.98rem!important;line-height:1.55!important}
html body main .home-estimate .home-estimate-points{display:flex!important;flex-wrap:wrap;gap:8px!important;padding:0!important;list-style:none!important;margin-top:4px!important}
html body main .home-estimate.home-estimate.home-estimate.home-estimate.home-estimate .home-estimate-points li{display:inline-flex!important;align-items:center;gap:8px;padding:7px 12px 7px 8px!important;margin:0!important;border-radius:999px!important;background:rgba(255,255,255,.75)!important;color:#10212e!important;font-size:.82rem!important;font-weight:600;border:0!important}
html body main .home-estimate .home-estimate-points li::before{content:""!important;display:block!important;flex:0 0 20px;width:20px;height:20px;border-radius:50%;background:#16a37f url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 20 20'%3E%3Cpath d='M5.5 10.5l3 3 6-7' fill='none' stroke='white' stroke-width='2.2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E") center/100% no-repeat!important;position:static!important;margin:0!important;border:0!important}
html body main .home-estimate .home-estimate-points li:nth-child(2)::before{background-color:#ff8a3d!important}
html body main .home-estimate .home-estimate-points li:nth-child(3)::before{background-color:#2f7fe0!important}
/* ticket */
html body main .home-estimate .home-estimate-action{position:relative;z-index:1;display:flex!important;flex-direction:column;align-items:stretch;gap:12px;padding:22px 22px 18px!important;margin:0!important;border-radius:16px;background:#fff;box-shadow:0 12px 28px rgba(120,60,20,.14);transform:rotate(1.2deg);transition:transform .5s cubic-bezier(.2,.8,.2,1)}
html body main .home-estimate .home-estimate-inner:hover .home-estimate-action{transform:rotate(0) translateY(-3px)}
html body main .home-estimate .home-estimate-action::before{content:"€ · estimation";display:block;font-size:.68rem;letter-spacing:.16em;text-transform:uppercase;font-weight:800;color:#ff8a3d;padding-bottom:10px;border-bottom:2px dashed #f1d9c6}
html body main .home-estimate .home-estimate-action::after{content:"";position:absolute;left:-9px;right:-9px;top:34px;height:18px;background:radial-gradient(circle at 9px 9px,#ffe6d2 8px,transparent 8.5px) left/18px 18px no-repeat,radial-gradient(circle at 9px 9px,#ffe6d2 8px,transparent 8.5px) right/18px 18px no-repeat;pointer-events:none}
html body main .home-estimate .button-estimate{justify-content:center!important;width:100%!important;margin:0!important}
html body main .home-estimate.home-estimate.home-estimate .home-estimate-note{margin:0!important;color:#6b5a4a!important;font-size:.78rem!important;line-height:1.45!important;text-align:center}
@media (max-width:900px){html body main .home-estimate .home-estimate-inner{grid-template-columns:1fr!important}html body main .home-estimate .home-estimate-action{transform:none}}

/* ---- Diagnostic: sky card + coloured checks ---- */
html body main .home-diagnostic{padding-block:clamp(20px,2.4vw,36px)!important;border:0!important}
html body main .home-diagnostic .home-diagnostic-card{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)!important;border:0!important;border-radius:22px!important;background:#fff!important;box-shadow:0 18px 40px rgba(14,34,51,.1)!important}
html body main .home-diagnostic .home-diagnostic-card::before{display:none!important}
html body main .home-diagnostic .diagnostic-promo-copy{justify-content:center!important;gap:12px;padding:clamp(24px,3vw,40px)!important;border:0!important;background:linear-gradient(150deg,#dff0ff 0%,#e3f6ef 100%)!important;position:relative;overflow:hidden}
html body main .home-diagnostic .diagnostic-promo-copy::after{content:"";position:absolute;right:-50px;bottom:-50px;width:180px;height:180px;border-radius:50%;border:26px solid rgba(47,127,224,.10);pointer-events:none}
html body main .home-diagnostic .diagnostic-promo-copy>*{margin:0!important;position:relative;z-index:1}
html body main .home-diagnostic.home-diagnostic.home-diagnostic .diagnostic-kicker{width:fit-content!important;max-width:100%;padding:6px 12px!important;border:0!important;border-radius:999px!important;background:#1f64bd!important;color:#fff!important;font-size:.68rem!important;letter-spacing:.12em!important;white-space:nowrap;line-height:1.3!important;font-weight:800!important}
html body main .home-diagnostic .diagnostic-promo-copy h2{font-size:clamp(1.7rem,2.4vw,2.3rem)!important;line-height:1.1!important}
html body main .home-diagnostic .diagnostic-promo-copy .fx-rule{display:none!important}
html body main .home-diagnostic.home-diagnostic.home-diagnostic .diagnostic-promo-copy>p{color:#355064!important;font-size:.95rem!important;max-width:36ch}
html body main .home-diagnostic .diagnostic-launch-panel{padding:clamp(22px,2.6vw,34px)!important;display:flex;flex-direction:column;gap:16px}
html body main .home-diagnostic .diagnostic-launch-panel>*{margin:0!important}
html body main .home-diagnostic .diagnostic-panel-head{display:flex!important;align-items:center;gap:14px;padding:0!important;border:0!important}
html body main .home-diagnostic .diagnostic-panel-head svg{width:44px!important;height:44px!important;padding:9px;border-radius:12px;background:#e6f0fc;stroke:#2f7fe0!important;fill:none!important;flex:0 0 auto}
html body main .home-diagnostic .diagnostic-panel-head h3{font-size:1.05rem!important;letter-spacing:.02em!important;text-transform:none!important;margin:0 0 2px!important}
html body main .home-diagnostic .diagnostic-panel-head p{margin:0!important;font-size:.86rem!important}
html body main .home-diagnostic .diagnostic-domain-form{display:grid!important;grid-template-columns:1fr auto!important;gap:10px!important;padding:6px!important;border-radius:14px;background:#f1f5f8;border:0!important}
html body main .home-diagnostic .diagnostic-domain-form input{height:48px!important;border:0!important;border-radius:10px!important;background:#fff!important;padding:0 16px!important;font-size:1rem!important;box-shadow:inset 0 0 0 1px #dbe4ea!important}
html body main .home-diagnostic .diagnostic-domain-form input:focus{box-shadow:inset 0 0 0 2px #2f7fe0!important;outline:0}
html body main .home-diagnostic .diagnostic-domain-form .button{height:48px!important;min-height:48px!important;margin:0!important}
html body main .home-diagnostic .diagnostic-capabilities{display:flex!important;flex-wrap:wrap;gap:8px!important;padding:0!important;border:0!important}
html body main .home-diagnostic .diagnostic-capabilities>div{--c:#2f7fe0;--bg:#e6f0fc;display:inline-flex!important;align-items:center;gap:8px;padding:7px 14px 7px 8px!important;border:0!important;border-radius:999px;background:var(--bg)!important;flex:0 0 auto!important}
html body main .home-diagnostic .diagnostic-capabilities>div:nth-child(2){--c:#16a37f;--bg:#dcf3ea}
html body main .home-diagnostic .diagnostic-capabilities>div:nth-child(3){--c:#e08a00;--bg:#fff0cf}
html body main .home-diagnostic .diagnostic-capabilities svg{width:26px!important;height:26px!important;padding:4px;border-radius:50%;background:#fff;stroke:var(--c)!important;fill:none!important;stroke-width:2.6}
html body main .home-diagnostic.home-diagnostic.home-diagnostic.home-diagnostic .diagnostic-capabilities span{color:#10212e!important;font-size:.8rem!important;font-weight:700!important;letter-spacing:.02em!important;text-transform:none!important}
html body main .home-diagnostic.home-diagnostic.home-diagnostic .diagnostic-passive-note{display:flex;align-items:center;gap:8px;color:#16a37f!important;font-size:.82rem!important;font-weight:700}
html body main .home-diagnostic .diagnostic-passive-note span{width:8px;height:8px;border-radius:50%;background:#16a37f!important;box-shadow:0 0 0 4px rgba(22,163,127,.15)}
html body main .home-diagnostic.home-diagnostic.home-diagnostic .diagnostic-processing-note{color:#6b7c88!important;font-size:.74rem!important;line-height:1.5!important;padding:0!important}
@media (max-width:900px){html body main .home-diagnostic .home-diagnostic-card{grid-template-columns:1fr!important}html body main .home-diagnostic .diagnostic-domain-form{grid-template-columns:1fr!important}}
html body main .home-estimate .home-estimate-inner{width:min(1330px,calc(100% - 32px))!important;max-width:none!important;margin-inline:auto!important;box-sizing:border-box!important}
html body main .home-estimate{padding-block:clamp(24px,2.6vw,36px) 12px!important}
html body main .home-diagnostic{padding-block:12px clamp(24px,2.6vw,36px)!important}
html body main .home-estimate.home-estimate.home-estimate .home-estimate-note{max-width:none!important}
html body main section.home-estimate.home-estimate.home-estimate.home-estimate{padding-top:clamp(24px,2.6vw,36px)!important;padding-bottom:10px!important}
html body main section.home-diagnostic.home-diagnostic.home-diagnostic.home-diagnostic{padding-top:10px!important;padding-bottom:clamp(24px,2.6vw,36px)!important}

/* generated: dark theme -> light remap for inner pages */
html body:not(.page-home) .site-nav a{color:#10212e !important}
html body:not(.page-home) .lang-switch summary{background:rgba(255,255,255,.72) !important;color:#10212e !important}
html body:not(.page-home) .lang-switch[open] summary{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .button-secondary{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .mission-band{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .why{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .statement{color:#475b6b !important}
html body:not(.page-home) .partnership-cta{background:#ffffff !important}
html body:not(.page-home) .page-hero p{color:#475b6b !important}
html body:not(.page-home) .content-callout p{color:#475b6b !important}
html body:not(.page-home) .content-section p{color:#475b6b !important}
html body:not(.page-home) .content-section li{color:#10212e !important}
html body:not(.page-home) .form-intro > p{color:#475b6b !important}
html body:not(.page-home) .form-panel{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .field label{color:#475b6b !important}
html body:not(.page-home) .field input,html body:not(.page-home) .field select,html body:not(.page-home) .field textarea{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .field-error{color:#a35f00 !important}
html body:not(.page-home) .check{color:#475b6b !important}
html body:not(.page-home) .contact-details dd{color:#475b6b !important}
html body:not(.page-home) .footer-main > div > a:not(.brand){color:#475b6b !important}
html body:not(.page-home) .footer-bank{color:#475b6b !important}
html body:not(.page-home) .footer-main .footer-social-brands > .footer-facebook{color:#10212e !important}
html body:not(.page-home) .form-privacy-notice{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .form-cookie-gate{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .form-panel-gated{background:#ffffff !important}
html body:not(.page-home) .auth-panel{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .article-body p{color:#475b6b !important}
html body:not(.page-home) .home-ai-lab{background:#ffffff !important}
html body:not(.page-home) .home-ai-lab::after{background:none !important}
html body:not(.page-home) .home-ai-lab-head p{color:#475b6b !important}
html body:not(.page-home) .home-ai-card{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .ai-lab-hero::after{background:none !important}
html body:not(.page-home) .ai-lab-status{color:#3f7d10 !important}
html body:not(.page-home) .ai-lab-subtitle{color:#475b6b !important}
html body:not(.page-home) .ai-lab-statement{color:#475b6b !important}
html body:not(.page-home) .ai-lab-checklist li{color:#10212e !important}
html body:not(.page-home) .ai-lab-objectives{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .ai-audience{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .ai-lab-axes{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .ai-space-callout{background:#ffffff !important}
html body:not(.page-home) .ai-space-callout::after{background:none !important}
html body:not(.page-home) .ai-space-grid > div:first-child > p{color:#475b6b !important}
html body:not(.page-home) .ai-space-disclaimer{background:#ffffff !important;color:#10212e !important}
html body:not(.page-home) .ai-technical-panel{background:#ffffff !important}
html body:not(.page-home) .ai-technical-table span{color:#475b6b !important}
html body:not(.page-home) .ai-lab-workshops{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .ai-principle-list li{color:#475b6b !important}
html body:not(.page-home) .lab-partners-overview{background:#ffffff !important}
html body:not(.page-home) .lab-partner-note{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .lab-partner-note p{color:#475b6b !important}
html body:not(.page-home) .lab-need-card{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .lab-partner-process{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .lab-partner-prepare{background:#ffffff !important}
html body:not(.page-home) .lab-partner-prepare::after{background:none !important}
html body:not(.page-home) .lab-prepare-grid p{color:#475b6b !important}
html body:not(.page-home) .lab-prepare-panel{background:#ffffff !important}
html body:not(.page-home) .lab-prepare-panel li{color:#475b6b !important}
html body:not(.page-home) .lab-principles-grid li{color:#475b6b !important}
html body:not(.page-home) .strategic-publications{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .strategic-publication-card{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .strategic-article-body p{color:#475b6b !important}
html body:not(.page-home) .admin-table td{color:#475b6b !important}
html body:not(.page-home) .admin-language{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .admin-savebar{background:#ffffff !important}
html body:not(.page-home) .board-filters{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .board-card-meta{color:#475b6b !important}
html body:not(.page-home) .board-empty{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .board-list .board-card{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .board-card-image{background:#ffffff !important;color:#075985 !important}
html body:not(.page-home) .home-board{background:#ffffff !important}
html body:not(.page-home) .home-board::after{background:none !important}
html body:not(.page-home) .home-carousel-viewport::after{background:none !important}
html body:not(.page-home) .home-carousel-track .board-card{background:#ffffff !important}
html body:not(.page-home) .listing-content>p{color:#475b6b !important}
html body:not(.page-home) .listing-sidebar dl{background:rgba(255,255,255,.72) !important}
@media (max-width: 1080px){html body:not(.page-home) .site-nav{box-shadow:0 12px 30px rgba(14,34,51,.10) !important}}
@media (max-width: 680px){html body:not(.page-home) .ai-lab-hero::after{background:none !important}}
@media (max-width: 680px){html body:not(.page-home) .home-board::after{background:none !important}}
html body:not(.page-home) .board-results .button-secondary{color:#10212e !important}
html body:not(.page-home) .board-results .button-secondary:hover{color:#10212e !important}
html body:not(.page-home) .board-results .pagination a.is-active{color:#10212e !important}
html body:not(.page-home) .home-articles{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .article-carousel-card{background:#ffffff !important}
html body:not(.page-home) .home-hygiene{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .hygiene-signal em{color:#475b6b !important}
html body:not(.page-home) .hygiene-rule{color:#a35f00 !important}
html body:not(.page-home) .guide-toc{background:#ffffff !important}
html body:not(.page-home) .guide-lead{color:#475b6b !important}
html body:not(.page-home) .guide-rules li p{color:#475b6b !important}
html body:not(.page-home) .guide-list li{color:#475b6b !important}
html body:not(.page-home) .guide-routine p{color:#475b6b !important}
html body:not(.page-home) .guide-ai-note{color:#475b6b !important}
html body:not(.page-home) .guide-box{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .guide-panel{background:#ffffff !important}
html body:not(.page-home) .home-offers{background:#ffffff !important}
html body:not(.page-home) .offer-card{background:#ffffff !important}
html body:not(.page-home) .offer-points li{color:#475b6b !important}
html body:not(.page-home) .offers-cards{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .offers-note{background:#ffffff !important;color:#10212e !important}
html body:not(.page-home) .strip-links a{color:#475b6b !important}
html body:not(.page-home) .application-message{background:rgba(255,255,255,.72) !important;color:#475b6b !important}
html body:not(.page-home) .submission-detail p{color:#475b6b !important}
html body:not(.page-home) .button-danger:hover{color:#10212e !important}
html body:not(.page-home) .home-editorial-head p{color:#475b6b !important}
html body:not(.page-home) .article-editorial-note dd{color:#475b6b !important}
html body:not(.page-home) .commercial-category-card,html body:not(.page-home) .service-card,html body:not(.page-home) .commercial-price-row{background:#ffffff !important}
html body:not(.page-home) .service-card > p{color:#475b6b !important}
html body:not(.page-home) .service-meta dd{color:#475b6b !important}
html body:not(.page-home) .price-disclaimer p{color:#475b6b !important}
html body:not(.page-home) .commercial-form-section{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .pricing-filter{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .pricing-filter button{color:#10212e !important}
html body:not(.page-home) .pricing-anchor-nav{background:#ffffff !important}
html body:not(.page-home) .pricing-anchor-nav a{color:#475b6b !important}
html body:not(.page-home) .commercial-condition{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .commercial-principles div{background:#ffffff !important;color:#475b6b !important}
html body:not(.page-home) .form-panel-gated{background:#ffffff !important}
html body:not(.page-home) .brand span{color:#475b6b !important}
html body:not(.page-home) .site-nav a{color:#475b6b !important}
html body:not(.page-home) .mission-band{background:#ffffff !important}
html body:not(.page-home) .home-news-heading p{color:#475b6b !important}
html body:not(.page-home) .home-news-heading .text-link{color:#10212e !important}
html body:not(.page-home) .belgian-rule i:nth-child(1){background:#ffffff !important}
html body:not(.page-home) .home-news-lead{border-right:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .home-news-item{border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .home-news-cover{border:1px solid rgba(14,34,51,.12) !important;background:#ffffff !important}
html body:not(.page-home) .home-news-meta{color:#475b6b !important}
html body:not(.page-home) .home-news-copy > p:not(.home-news-meta){color:#475b6b !important}
html body:not(.page-home) .articles-lead-cover,html body:not(.page-home) .articles-row-cover{background:#ffffff !important}
html body:not(.page-home) .article-prose p,html body:not(.page-home) .article-prose li{color:#475b6b !important}
html body:not(.page-home) .article-callout{color:#475b6b !important}
@media (max-width: 1040px){html body:not(.page-home) .home-news-secondary{border-top:1px solid rgba(14,34,51,.12) !important}}
@media (max-width: 1040px){html body:not(.page-home) .home-news-item{border-right:1px solid rgba(14,34,51,.12) !important}}
@media (max-width: 720px){html body:not(.page-home) .home-news-item{border-bottom:1px solid rgba(14,34,51,.12) !important}}
html body:not(.page-home) .account-page .account-quicklinks a{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .account-page .account-quicklinks a:hover{color:#10212e !important}
body{color:#10212e !important}
html body:not(.page-home) .brand strong{color:#10212e !important}
html body:not(.page-home) .brand span{color:#475b6b !important}
html body:not(.page-home) .nav-group summary{color:#475b6b !important}
html body:not(.page-home) .header-account{color:#475b6b !important}
html body:not(.page-home) .button-secondary{color:#10212e !important;border-color:rgba(14,34,51,.12) !important}
html body:not(.page-home) .home-ai-feature{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .home-ai-feature-visual::after{background:none !important}
html body:not(.page-home) .home-ai-card-index{color:#075985 !important}
html body:not(.page-home) .home-ai-feature-copy small,html body:not(.page-home) .home-ai-network-copy small{color:#10212e !important}
html body:not(.page-home) .home-ai-card-arrow{border:1px solid rgba(14,34,51,.12) !important;color:#10212e !important}
html body:not(.page-home) .home-ai-network{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .home-ai-network::after{background:none !important}
html body:not(.page-home) .home-ai-network-lines{stroke:#075985 !important}
html body:not(.page-home) .home-ai-network-nodes{stroke:#075985 !important}
html body:not(.page-home) .home-ai-network-nodes circle:nth-child(3n+1){fill:#075985 !important}
html body:not(.page-home) .home-ai-direction:hover{border-color:rgba(14,34,51,.14) !important;color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .home-ai-direction:hover strong{color:#475b6b !important}
html body:not(.page-home) .home-ai-direction:hover small{color:#10212e !important}
html body:not(.page-home) .home-ai-direction:hover .home-ai-card-index,html body:not(.page-home) .home-ai-direction:hover .home-ai-direction-arrow{color:#075985 !important}
html body:not(.page-home) .home-ai-direction:hover svg{stroke:#075985 !important}
html body:not(.page-home) .page-hero,html body:not(.page-home) .commercial-hero,html body:not(.page-home) .board-hero,html body:not(.page-home) .ai-lab-hero{color:#10212e !important}
html body:not(.page-home) .page-hero p{color:#475b6b !important}
html body:not(.page-home) .breadcrumbs{color:#475b6b !important}
html body:not(.page-home) .guide-body .guide-box-alert .guide-list li::before{background:none !important}
html body:not(.page-home) .guide-body .guide-list li::before{background:none !important}
html body:not(.page-home) .commercial-categories,html body:not(.page-home) .pricing-controls,html body:not(.page-home) .pricing-subscriptions,html body:not(.page-home) .pricing-category,html body:not(.page-home) .commercial-related,html body:not(.page-home) .process-rail,html body:not(.page-home) .ai-lab-objectives,html body:not(.page-home) .ai-lab-axes,html body:not(.page-home) .ai-lab-workshops{color:#10212e !important}
html body:not(.page-home) .commercial-category-card,html body:not(.page-home) .service-card,html body:not(.page-home) .commercial-price-row{background:#ffffff !important}
html body:not(.page-home) .board-search{background:#ffffff !important}
html body:not(.page-home) .board-tabs{color:#10212e !important;background:#ffffff !important}
html body:not(.page-home) .auth-shell > header h1{color:#10212e !important}
html body:not(.page-home) .auth-shell > header p{color:#475b6b !important}
html body:not(.page-home) .account-keys li form .button-danger:hover{color:#10212e !important;background:#ffffff !important}
html body:not(.page-home) .footer-main a{color:#475b6b !important}
html body:not(.page-home) .cookie-notice{background:#ffffff !important}
@media (max-width: 1120px){html body:not(.page-home) .site-nav{background:#ffffff !important}}
html body:not(.page-home) .home-estimate{background:#ffffff !important;border-block:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .home-estimate-kicker{color:#b93a28 !important}
html body:not(.page-home) .home-estimate-copy p{color:#475b6b !important}
html body:not(.page-home) .home-estimate-points li{color:#475b6b !important}
html body:not(.page-home) .estimation-error{color:#a35f00 !important}
html body:not(.page-home) .estimation-disclaimer{color:#a35f00 !important}
html body:not(.page-home) .estimation-disclaimer strong{color:#a35f00 !important}
html body:not(.page-home) .institutional-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .cpx-hero{background:#ffffff !important}
html body:not(.page-home) .cpx-hero-copy > p:not(.cpx-hero-note){color:#475b6b !important}
html body:not(.page-home) .cpx-hero-note{color:#475b6b !important}
html body:not(.page-home) .cpx-route-base,html body:not(.page-home) .cpx-output-base{stroke:#075985 !important}
html body:not(.page-home) .cpx-input rect{stroke:#075985 !important}
html body:not(.page-home) .cpx-hub path{stroke:#475b6b !important}
html body:not(.page-home) .cpx-switchboard li{color:#475b6b !important}
html body:not(.page-home) .cpx-signal-strip{background:#ffffff !important}
html body:not(.page-home) .cpx-signal-strip span{color:#475b6b !important}
html body:not(.page-home) .cpx-audiences{background:#ffffff !important}
html body:not(.page-home) .cpx-audiences .cpx-section-head p{color:#475b6b !important}
html body:not(.page-home) .cpx-audience-table p{color:#475b6b !important}
html body:not(.page-home) .cpx-exchange{background:#ffffff !important}
html body:not(.page-home) .cpx-exchange-head p{color:#475b6b !important}
html body:not(.page-home) .cpx-exchange-column li{color:#475b6b !important}
html body:not(.page-home) .cpx-exchange-map figcaption p{color:#475b6b !important}
html body:not(.page-home) .cpx-process{background:#ffffff !important}
html body:not(.page-home) .cpx-process-head p{color:#475b6b !important}
html body:not(.page-home) .cpx-process-track p{color:#475b6b !important}
html body:not(.page-home) .cpx-process-note{color:#475b6b !important}
html body:not(.page-home) .cpx-chooser{background:#ffffff !important}
html body:not(.page-home) .cpx-chooser-head p{color:#475b6b !important}
html body:not(.page-home) .cpx-choice-list a > span{color:#475b6b !important}
html body:not(.page-home) .cpx-final{background:#ffffff !important}
html body:not(.page-home) .cpx-final p{color:#475b6b !important}
@media (max-width: 590px){html body:not(.page-home) .cpx-hero-actions .button-secondary{background:#ffffff !important}}
html body:not(.page-home) .coopit-hero{background:#ffffff !important}
html body:not(.page-home) .coopit-hero-copy h1::after{background:none !important}
html body:not(.page-home) .coopit-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .coopit-hero-visual::before{background:none !important}
html body:not(.page-home) .coopit-hero-visual figcaption{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .coopit-trust-rail > span{color:#475b6b !important}
html body:not(.page-home) .coopit-plain-stage-2{color:#10212e !important;background:#ffffff !important}
html body:not(.page-home) .coopit-plain-stage-2 > span{color:#3f7d10 !important}
html body:not(.page-home) .coopit-plain-stage-2 h3{color:#10212e !important}
html body:not(.page-home) .coopit-plain-stage-2 li{color:#475b6b !important;border-color:rgba(14,34,51,.12) !important}
html body:not(.page-home) .coopit-plain-map figcaption{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .coopit-plain-map figcaption strong{color:#3f7d10 !important}
html body:not(.page-home) .coopit-plain-map figcaption a{color:#10212e !important}
html body:not(.page-home) .coopit-flow-foundation{color:#10212e !important;background:#ffffff !important}
html body:not(.page-home) .coopit-flow-foundation h3{color:#10212e !important}
html body:not(.page-home) .coopit-flow-foundation p{color:#475b6b !important}
html body:not(.page-home) .coopit-flow-followup{border:1px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .coopit-case{border:1px solid rgba(14,34,51,.14) !important;color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .coopit-case-head h3{color:#10212e !important}
html body:not(.page-home) .coopit-case-head > p{color:#475b6b !important}
html body:not(.page-home) .coopit-case-profile{background:#ffffff !important}
html body:not(.page-home) .coopit-case-profile span{color:#3f7d10 !important}
html body:not(.page-home) .coopit-case-profile h4{color:#10212e !important}
html body:not(.page-home) .coopit-case-profile li{color:#475b6b !important}
html body:not(.page-home) .coopit-case-timeline li > span{color:#3f7d10 !important}
html body:not(.page-home) .coopit-case-timeline h4{color:#10212e !important}
html body:not(.page-home) .coopit-case-timeline p{color:#475b6b !important}
html body:not(.page-home) .coopit-plans{background:#ffffff !important}
html body:not(.page-home) .coopit-plan-label{color:#075985 !important}
html body:not(.page-home) .coopit-plan li{color:#475b6b !important}
html body:not(.page-home) .coopit-feature-dark{background:#ffffff !important}
html body:not(.page-home) .coopit-feature-dark .coopit-feature-grid{background:#ffffff !important}
html body:not(.page-home) .coopit-feature-dark .coopit-feature-copy li{color:#475b6b !important}
html body:not(.page-home) .coopit-final-cta{background:#ffffff !important}
@media (max-width: 1080px){html body:not(.page-home) .coopit-hero-visual::before{background:none !important}}
html body:not(.page-home) .dnsbl-hero{background:#ffffff !important}
html body:not(.page-home) .dnsbl-hero-copy > p:not(.dnsbl-beta-note){color:#475b6b !important}
html body:not(.page-home) .dnsbl-zone-card{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .dnsbl-result{background:#ffffff !important}
html body:not(.page-home) .dnsbl-result-summary p{color:#475b6b !important}
html body:not(.page-home) .dnsbl-result-facts dd{color:#475b6b !important}
html body:not(.page-home) .dnsbl-result-sources li{color:#475b6b !important}
html body:not(.page-home) .dnsbl-config-panel pre{color:#075985 !important;background:#ffffff !important}
html body:not(.page-home) .don-inner{color:#075985 !important;background:#ffffff !important}
html body:not(.page-home) .don-orbit{stroke:#075985 !important}
html body:not(.page-home) .don-orbit-2{stroke:#075985 !important}
html body:not(.page-home) .don-sat{fill:#075985 !important}
html body:not(.page-home) .don-sat-2{fill:#a35f00 !important}
html body:not(.page-home) .don-shield{fill:#075985 !important;stroke:#075985 !important}
html body:not(.page-home) .don-heart{fill:#a35f00 !important}
html body:not(.page-home) .don-kicker{color:#075985 !important}
html body:not(.page-home) .don-flag i:nth-child(1){background:#ffffff !important}
html body:not(.page-home) .don-copy h2{color:#10212e !important}
html body:not(.page-home) .don-text{color:#475b6b !important}
html body:not(.page-home) .don-uses li{color:#075985 !important}
html body:not(.page-home) .don-form{border:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .don-amounts legend{color:#475b6b !important}
html body:not(.page-home) .don-pill span{color:#075985 !important}
html body:not(.page-home) .don-custom input{border:1px solid rgba(14,34,51,.12) !important;background:rgba(255,255,255,.72) !important;color:#10212e !important}
html body:not(.page-home) .don-form.is-custom .don-pill input:checked + span{color:#075985 !important}
html body:not(.page-home) .don-note{color:#475b6b !important}
html body:not(.page-home) .don-error{color:#a35f00 !important}
html body:not(.page-home) .don-month{color:#0f7a5c !important}
html body:not(.page-home) .don-thanks-mark{background:#ffffff !important}
html body:not(.page-home) .donations-hero-intro{color:#475b6b !important}
html body:not(.page-home) .donations-hero-media::after{background:none !important}
html body:not(.page-home) .donations-hero-media figcaption,html body:not(.page-home) .donations-story figcaption{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .donations-story-network p{color:#475b6b !important}
html body:not(.page-home) .donations-flow header p{color:#475b6b !important}
html body:not(.page-home) .donations-flow-figure p{color:#475b6b !important}
html body:not(.page-home) .donations-governance header > p{color:#475b6b !important}
html body:not(.page-home) .donations-governance li p{color:#475b6b !important}
html body:not(.page-home) .donations-bank-details{border-top:1px solid rgba(14,34,51,.14) !important}
@media print{html body:not(.page-home) .donations-bank{border:2px solid rgba(14,34,51,.14) !important}}
html body:not(.page-home) .eth-hero{background:#ffffff !important}
html body:not(.page-home) .eth-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .eth-version{color:#475b6b !important}
html body:not(.page-home) .eth-ring{stroke:#075985 !important}
html body:not(.page-home) .eth-ring-inner{stroke:#3f7d10 !important}
html body:not(.page-home) .eth-cross{stroke:#075985 !important}
html body:not(.page-home) .eth-node circle:first-child{stroke:#075985 !important}
html body:not(.page-home) .eth-compass li{color:#475b6b !important}
html body:not(.page-home) .eth-signal-strip{background:#ffffff !important}
html body:not(.page-home) .eth-signal-strip span{color:#475b6b !important}
html body:not(.page-home) .eth-principles{background:#ffffff !important}
html body:not(.page-home) .eth-principles .eth-section-head p,html body:not(.page-home) .eth-domain-cyber p,html body:not(.page-home) .eth-domain-partners .eth-section-head p,html body:not(.page-home) .eth-conflicts .eth-section-head p,html body:not(.page-home) .eth-reporting p,html body:not(.page-home) .eth-framework p{color:#475b6b !important}
html body:not(.page-home) .eth-principles-list p{color:#475b6b !important}
html body:not(.page-home) .eth-domain-cyber{background:#ffffff !important}
html body:not(.page-home) .eth-domain-rules li{color:#475b6b !important}
html body:not(.page-home) .eth-domain-partners{background:#ffffff !important}
html body:not(.page-home) .eth-partner-table p{color:#475b6b !important}
html body:not(.page-home) .eth-conflicts{background:#ffffff !important}
html body:not(.page-home) .eth-conflict-flow p{color:#475b6b !important}
html body:not(.page-home) .eth-reporting{background:#ffffff !important}
html body:not(.page-home) .eth-email > span:first-child{color:#475b6b !important}
html body:not(.page-home) .eth-response-times dt{color:#475b6b !important}
html body:not(.page-home) .eth-framework{background:#ffffff !important}
html body:not(.page-home) .eth-final{background:#ffffff !important}
html body:not(.page-home) .eth-final p{color:#475b6b !important}
html body:not(.page-home) .missions-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .orbit-ring{stroke:#075985 !important}
html body:not(.page-home) .orbit-ring-c{stroke:#3f7d10 !important}
html body:not(.page-home) .orbit-route{stroke:#075985 !important}
html body:not(.page-home) .missions-orbit-legend span{color:#475b6b !important}
html body:not(.page-home) .missions-axis-copy p{color:#475b6b !important}
html body:not(.page-home) .missions-axis li{color:#475b6b !important}
html body:not(.page-home) .news-related{border-top:2px solid rgba(14,34,51,.14) !important}
@media(max-width:900px){html body:not(.page-home) .news-rail{border-top:2px solid rgba(14,34,51,.14) !important}}
html body:not(.page-home) .partners-hero{background:#ffffff !important}
html body:not(.page-home) .partners-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .partners-hero-copy small{color:#475b6b !important}
html body:not(.page-home) .exchange-orbit{stroke:#075985 !important}
html body:not(.page-home) .exchange-core circle{stroke:#075985 !important}
html body:not(.page-home) .exchange-core path{stroke:#3f7d10 !important}
html body:not(.page-home) .exchange-node circle:first-child{stroke:#075985 !important}
html body:not(.page-home) .exchange-node circle:last-child{fill:#3f7d10 !important}
html body:not(.page-home) .partners-exchange-labels span{color:#075985 !important}
html body:not(.page-home) .partners-signal-strip{background:#ffffff !important}
html body:not(.page-home) .partners-signal-strip span{color:#475b6b !important}
html body:not(.page-home) .partner-model-body .button{color:#10212e !important}
html body:not(.page-home) .partner-model-body .button:hover{color:#10212e !important}
html body:not(.page-home) .partners-framework{background:#ffffff !important}
html body:not(.page-home) .partners-framework-note{color:#475b6b !important}
html body:not(.page-home) .publication-hub-hero{border-bottom:1px solid rgba(14,34,51,.12) !important;background:#ffffff !important}
html body:not(.page-home) .publication-hub-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .publication-hub-stats > div{border-top:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .publication-feature-cover{background:#ffffff !important}
html body:not(.page-home) .publication-filter-bar button[aria-pressed="true"]{color:#a35f00 !important;background:#ffffff !important}
html body:not(.page-home) .publication-card-cover{background:#ffffff !important}
html body:not(.page-home) .publication-method{border-block:1px solid rgba(14,34,51,.12) !important;background:#ffffff !important}
html body:not(.page-home) .publication-method-heading > p{color:#475b6b !important}
html body:not(.page-home) .publication-method-grid{border-left:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .publication-method-grid li{border-right:1px solid rgba(14,34,51,.12) !important;border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .publication-method-grid p{color:#475b6b !important}
html body:not(.page-home) .rd-hero{background:#ffffff !important}
html body:not(.page-home) .rd-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .rd-version{color:#475b6b !important}
html body:not(.page-home) .rd-route-line{stroke:#475b6b !important}
html body:not(.page-home) .rd-node circle:first-child{stroke:#075985 !important}
html body:not(.page-home) .rd-dossier path{stroke:#075985 !important}
html body:not(.page-home) .rd-hero-visual li{color:#475b6b !important}
html body:not(.page-home) .rd-signal-strip{background:#ffffff !important}
html body:not(.page-home) .rd-signal-strip span{color:#475b6b !important}
html body:not(.page-home) .rd-out-scope li::before{background:none !important}
html body:not(.page-home) .rd-rules{background:#ffffff !important}
html body:not(.page-home) .rd-rules-head > p{color:#475b6b !important}
html body:not(.page-home) .rd-rules-prohibited header{color:#a35f00 !important}
html body:not(.page-home) .rd-rules-grid li{color:#475b6b !important}
html body:not(.page-home) .rd-stop-rule{color:#475b6b !important}
html body:not(.page-home) .rd-quality{background:#ffffff !important}
html body:not(.page-home) .rd-quality-copy p{color:#475b6b !important}
html body:not(.page-home) .rd-quality-list li{color:#475b6b !important}
html body:not(.page-home) .rd-quality-list p{color:#475b6b !important}
html body:not(.page-home) .rd-faq{background:#ffffff !important}
html body:not(.page-home) .rd-faq-head p{color:#475b6b !important}
html body:not(.page-home) .rd-faq-list summary{color:#475b6b !important}
html body:not(.page-home) .rd-faq-list details p{color:#475b6b !important}
html body:not(.page-home) .rd-final{background:#ffffff !important}
html body:not(.page-home) .rd-final p{color:#475b6b !important}
html body:not(.page-home) .techblog-search button{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-search button:hover{background:#ffffff !important}
html body:not(.page-home) .techblog-tag-cloud a:hover,html body:not(.page-home) .techblog-tag-cloud a.is-active{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-code{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-figure-zoom{color:#475b6b !important;background:#ffffff !important;border:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .techblog-figure-zoom span{color:#075985 !important}
html body:not(.page-home) .techblog-lightbox{color:#475b6b !important;background:#ffffff !important;border:1px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .techblog-lightbox::backdrop{background:#ffffff !important}
html body:not(.page-home) .techblog-lightbox figcaption{color:#475b6b !important}
html body:not(.page-home) .techblog-lightbox-close{border:1px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .techblog-comments{border-top:2px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .techblog-comments-head > span{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-comment-avatar{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-comment-form-foot button{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-comment-form-foot button:hover{background:#ffffff !important}
html body:not(.page-home) .techblog-pagination .is-disabled{color:#475b6b !important}
html body:not(.page-home) .techblog-page-list .is-current{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-feed-link:hover{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .techblog-related{border-top:2px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .techblog-related a:hover{border-left-color:rgba(14,34,51,.14) !important}
html body:not(.page-home) .intel-hero{background:#ffffff !important}
html body:not(.page-home) .intel-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .intel-hero-copy small{color:#475b6b !important}
html body:not(.page-home) .radar-ring,html body:not(.page-home) .radar-cross,html body:not(.page-home) .radar-diagonal{stroke:#075985 !important}
html body:not(.page-home) .intel-radar-labels span{color:#475b6b !important}
html body:not(.page-home) .intel-signal-strip{background:#ffffff !important}
html body:not(.page-home) .intel-signal-strip span{color:#475b6b !important}
html body:not(.page-home) .intel-domain li{color:#475b6b !important}
html body:not(.page-home) .intel-confidence{background:#ffffff !important}
html body:not(.page-home) .intel-confidence-intro p{color:#475b6b !important}
html body:not(.page-home) .intel-confidence-list p{color:#475b6b !important}
html body:not(.page-home) .intel-channels{background:#ffffff !important}
html body:not(.page-home) .intel-channel-list p{color:#475b6b !important}
html body:not(.page-home) .intel-channels-note{color:#475b6b !important}
html body:not(.page-home) .page-tools{background:#ffffff !important}
html body:not(.page-home) .tools-page .button:hover{color:#10212e !important}
html body:not(.page-home) .tools-hero{color:#10212e !important}
html body:not(.page-home) .tools-hero-copy h1{color:#475b6b !important}
html body:not(.page-home) .tools-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .connection-panel{color:#10212e !important}
html body:not(.page-home) .connection-panel dl > div{border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .connection-panel dl > div:nth-child(odd){border-right:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .connection-panel dt{color:#475b6b !important}
html body:not(.page-home) .connection-panel dd{color:#475b6b !important}
html body:not(.page-home) .connection-disclosure{border-bottom:1px solid rgba(14,34,51,.12) !important;color:#475b6b !important}
html body:not(.page-home) .connection-actions button:hover{color:#10212e !important}
html body:not(.page-home) .tools-hero-summary span{color:#475b6b !important}
html body:not(.page-home) .tools-filter-row button:hover,html body:not(.page-home) .tools-filter-row button.is-active{color:#10212e !important}
html body:not(.page-home) .tool-tile[aria-pressed="true"]{color:#10212e !important}
html body:not(.page-home) .tool-tile[aria-pressed="true"] small{color:#475b6b !important}
html body:not(.page-home) .tools-workbench-section{color:#10212e !important}
html body:not(.page-home) .tools-workbench-section h2{color:#475b6b !important}
html body:not(.page-home) .tools-workbench-section > header > p{color:#475b6b !important}
html body:not(.page-home) .workbench-notes{border-top:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .workbench-idle{color:#075985 !important}
html body:not(.page-home) .workbench-idle span{color:#10212e !important}
html body:not(.page-home) .tool-field > span,html body:not(.page-home) .tool-options legend{color:#475b6b !important}
html body:not(.page-home) .tool-field input,html body:not(.page-home) .tool-field select,html body:not(.page-home) .tool-field textarea{border:1px solid rgba(14,34,51,.12) !important;color:#10212e !important}
html body:not(.page-home) .tool-options label{color:#475b6b !important}
html body:not(.page-home) .tool-result pre{color:#075985 !important}
html body:not(.page-home) .result-list > div{border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .result-list dt{color:#475b6b !important}
html body:not(.page-home) .result-list dd{color:#10212e !important}
html body:not(.page-home) .result-status{border:1px solid rgba(14,34,51,.12) !important;color:#475b6b !important}
html body:not(.page-home) .result-status.is-good{color:#3f7d10 !important}
html body:not(.page-home) .result-status.is-bad{color:#a35f00 !important}
html body:not(.page-home) .result-status.is-warning{color:#a35f00 !important}
html body:not(.page-home) .password-output code{color:#10212e !important}
html body:not(.page-home) .password-output button:hover{color:#10212e !important}
html body:not(.page-home) .tool-assessment-copy h3{color:#475b6b !important}
html body:not(.page-home) .tool-assessment-copy p{color:#475b6b !important}
html body:not(.page-home) .tool-score-ring::after{border:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .tool-score-ring strong{color:#475b6b !important}
html body:not(.page-home) .tool-score-ring span{color:#475b6b !important}
html body:not(.page-home) .tool-check::before,html body:not(.page-home) .tool-check-grid > article::before,html body:not(.page-home) .tool-check-grid > div::before,html body:not(.page-home) .tool-check-grid > li::before{color:#475b6b !important}
html body:not(.page-home) .tool-check.is-good::before,html body:not(.page-home) .tool-check-grid > .is-good::before{color:#0f7a5c !important}
html body:not(.page-home) .tool-check.is-warning::before,html body:not(.page-home) .tool-check-grid > .is-warning::before{color:#a35f00 !important}
html body:not(.page-home) .tool-check.is-bad::before,html body:not(.page-home) .tool-check-grid > .is-bad::before{color:#b93a28 !important}
html body:not(.page-home) .tool-check h3,html body:not(.page-home) .tool-check strong,html body:not(.page-home) .tool-check-grid > * > strong{color:#10212e !important}
html body:not(.page-home) .tool-check p,html body:not(.page-home) .tool-check small,html body:not(.page-home) .tool-check-grid > * > small{color:#475b6b !important}
html body:not(.page-home) .tool-record-group li,html body:not(.page-home) .tool-record-groups > * > ul > li{color:#475b6b !important}
html body:not(.page-home) .tool-route strong{color:#10212e !important}
html body:not(.page-home) .tool-route small{color:#475b6b !important}
html body:not(.page-home) .tool-cookie-table table,html body:not(.page-home) table.tool-cookie-table{color:#10212e !important}
html body:not(.page-home) .tool-cookie-table th,html body:not(.page-home) .tool-cookie-table td{border-right:1px solid rgba(14,34,51,.12) !important;border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .tool-social-card img,html body:not(.page-home) .tool-social-card-visual{color:#075985 !important}
html body:not(.page-home) .tool-social-card-copy strong{color:#10212e !important}
html body:not(.page-home) .tool-social-card-copy p{color:#475b6b !important}
html body:not(.page-home) .tools-advanced{color:#10212e !important}
html body:not(.page-home) .tools-advanced h2{color:#475b6b !important}
html body:not(.page-home) .tools-advanced p{color:#475b6b !important}
html body:not(.page-home) .tools-advanced-form input{color:#10212e !important}
html body:not(.page-home) .training-hero{background:#ffffff !important}
html body:not(.page-home) .training-hero-media::after{background:none !important}
html body:not(.page-home) .training-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .training-free-panel{background:#ffffff !important}
html body:not(.page-home) .training-free-panel p{color:#075985 !important}
html body:not(.page-home) .training-path-lead > p{color:#475b6b !important}
html body:not(.page-home) .training-path-facts dd{color:#075985 !important}
html body:not(.page-home) .training-modules li{color:#475b6b !important}
html body:not(.page-home) .training-project p{color:#475b6b !important}
html body:not(.page-home) .training-professional{background:#ffffff !important}
html body:not(.page-home) .training-professional-media::after{background:none !important}
html body:not(.page-home) .training-professional-copy{background:#ffffff !important}
html body:not(.page-home) .training-professional-copy > p{color:#475b6b !important}
html body:not(.page-home) .training-professional-copy li{color:#10212e !important}
html body:not(.page-home) .training-solidarity{background:#ffffff !important}
html body:not(.page-home) .training-solidarity p{color:#475b6b !important}
html body:not(.page-home) .training-partners-inner p{color:#475b6b !important}
html body:not(.page-home) .training-partners-inner li{color:#475b6b !important}
html body:not(.page-home) .home-training-shade{background:#ffffff !important}
html body:not(.page-home) .home-training-banner-professional .home-training-shade{background:#ffffff !important}
html body:not(.page-home) .home-training-copy > span{color:#475b6b !important}
@media (max-width: 620px){html body:not(.page-home) .training-hero-media::after{background:none !important}}
@media (max-width: 620px){html body:not(.page-home) .training-professional-media::after{background:none !important}}
@media (max-width: 620px){html body:not(.page-home) .home-training-shade,html body:not(.page-home) .home-training-banner-professional .home-training-shade{background:#ffffff !important}}
html body:not(.page-home) .edu-hero{background:#ffffff !important}
html body:not(.page-home) .edu-hero-copy > p{color:#475b6b !important}
html body:not(.page-home) .edu-hero-copy > small{color:#475b6b !important}
html body:not(.page-home) .edu-compass-ring{stroke:#075985 !important}
html body:not(.page-home) .edu-ring-b{stroke:#3f7d10 !important}
html body:not(.page-home) .edu-axis{stroke:#075985 !important}
html body:not(.page-home) .edu-node circle{stroke:#075985 !important}
html body:not(.page-home) .edu-node:nth-of-type(6) circle,html body:not(.page-home) .edu-node:nth-of-type(8) circle{stroke:#3f7d10 !important}
html body:not(.page-home) .edu-node path{stroke:#075985 !important}
html body:not(.page-home) .edu-core circle:first-child{stroke:#075985 !important}
html body:not(.page-home) .edu-core path{stroke:#075985 !important}
html body:not(.page-home) .edu-compass figcaption span{color:#475b6b !important}
html body:not(.page-home) .edu-principles{background:#ffffff !important}
html body:not(.page-home) .edu-principles span{color:#475b6b !important}
html body:not(.page-home) .edu-audience-list li{color:#475b6b !important}
html body:not(.page-home) .edu-audience-list dd{color:#475b6b !important}
html body:not(.page-home) .edu-technical{background:#ffffff !important}
html body:not(.page-home) .edu-technical-media::after{background:none !important}
html body:not(.page-home) .edu-technical-copy p{color:#475b6b !important}
html body:not(.page-home) .edu-track-index{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .edu-track-index p{color:#475b6b !important}
html body:not(.page-home) .edu-media-caption{color:#075985 !important}
html body:not(.page-home) .edu-professional{background:#ffffff !important}
html body:not(.page-home) .edu-professional-media::after{background:none !important}
html body:not(.page-home) .edu-professional-copy p{color:#475b6b !important}
html body:not(.page-home) .edu-professional-copy li{color:#475b6b !important}
html body:not(.page-home) .edu-solidarity{background:#ffffff !important}
html body:not(.page-home) .edu-solidarity p{color:#475b6b !important}
html body:not(.page-home) .edu-guardrails{background:#ffffff !important}
html body:not(.page-home) .edu-guardrails li{color:#475b6b !important}
html body:not(.page-home) .edu-final{background:#ffffff !important}
html body:not(.page-home) .edu-final p{color:#475b6b !important}
@media (max-width: 860px){html body:not(.page-home) .edu-technical-media::after{background:none !important}}
@media (max-width: 860px){html body:not(.page-home) .edu-professional-media::after{background:none !important}}
@media (max-width: 590px){html body:not(.page-home) .edu-hero-actions .button-secondary{background:#ffffff !important}}
html body:not(.page-home) .watch-lede{color:#475b6b !important}
html body:not(.page-home) .watch-method{color:#475b6b !important;background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .watch-updated time{color:#475b6b !important}
html body:not(.page-home) .watch-hero-side{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .watch-hero-side ul{color:#475b6b !important}
html body:not(.page-home) .watch-jump a{color:#475b6b !important}
html body:not(.page-home) .watch-metric::before{background:none !important}
html body:not(.page-home) .watch-metric-download{color:#10212e !important;border-color:rgba(14,34,51,.14) !important !important;background:#ffffff !important}
html body:not(.page-home) .watch-metric-download .watch-metric-label{color:#10212e !important}
html body:not(.page-home) .watch-zone-actions .watch-btn{color:#475b6b !important}
html body:not(.page-home) .watch-metric-download .watch-metric-note{color:#475b6b !important}
html body:not(.page-home) .watch-pipeline-card,html body:not(.page-home) .watch-download-card{background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .watch-pipeline-title h3,html body:not(.page-home) .watch-download-card h3{color:#10212e !important}
html body:not(.page-home) .watch-pipeline-stats dd{color:#475b6b !important}
html body:not(.page-home) .watch-pipeline-flow strong{color:#10212e !important}
html body:not(.page-home) .watch-autonomous-head h4{color:#475b6b !important}
html body:not(.page-home) .watch-autonomous-live{color:#475b6b !important}
html body:not(.page-home) .watch-autonomous > p{color:#475b6b !important}
html body:not(.page-home) .watch-autonomous-metrics div{background:#ffffff !important}
html body:not(.page-home) .watch-autonomous-metrics dd{color:#10212e !important}
html body:not(.page-home) .watch-autonomous-grades > span{color:#475b6b !important}
html body:not(.page-home) .watch-coverage-note{color:#475b6b !important}
html body:not(.page-home) .watch-download-card > p{color:#475b6b !important}
html body:not(.page-home) .watch-download-link{color:#10212e !important}
html body:not(.page-home) .watch-export-facts dd{color:#475b6b !important}
html body:not(.page-home) .watch-section-head h2{color:#10212e !important}
html body:not(.page-home) .watch-filter{color:#475b6b !important}
html body:not(.page-home) .watch-filter input{color:#10212e !important;background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .watch-key-item b{color:#10212e !important}
html body:not(.page-home) .watch-registry-row > strong{color:#10212e !important}
html body:not(.page-home) .watch-registry-state{color:#475b6b !important}
html body:not(.page-home) .watch-registry-grade{color:#10212e !important}
html body:not(.page-home) .watch-registry-pagination button{color:#10212e !important;background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .watch-registry-pagination span{color:#475b6b !important}
html body:not(.page-home) .watch-disclosure summary{color:#10212e !important;background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .watch-score b{color:#10212e !important}
html body:not(.page-home) .watch-score.is-yellow b{color:#a35f00 !important}
html body:not(.page-home) .watch-susp-meta b{color:#10212e !important}
html body:not(.page-home) .watch-btn{color:#10212e !important}
html body:not(.page-home) .watch-btn.is-quiet{color:#475b6b !important;background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .diagnostic-report{background:#ffffff !important}
html body:not(.page-home) .home-diagnostic-card{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-promo-copy{border-right:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-promo-copy h2,html body:not(.page-home) .diagnostic-report-copy h1{color:#10212e !important}
html body:not(.page-home) .diagnostic-promo-copy h2{color:#10212e !important}
html body:not(.page-home) .diagnostic-promo-copy > p{color:#475b6b !important}
html body:not(.page-home) .diagnostic-belgian-rule i:nth-child(1){background:#ffffff !important}
html body:not(.page-home) .diagnostic-launch-panel{background:#ffffff !important}
html body:not(.page-home) .diagnostic-panel-head p{color:#475b6b !important}
html body:not(.page-home) .diagnostic-domain-form{border-top:1px solid rgba(14,34,51,.12) !important;border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-domain-form input{color:#10212e !important;background:rgba(255,255,255,.72) !important}
html body:not(.page-home) .diagnostic-form-error{color:#a35f00 !important}
html body:not(.page-home) .diagnostic-capabilities{border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-capabilities > div{border-right:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-passive-note{color:#475b6b !important}
html body:not(.page-home) .diagnostic-processing-note{color:#475b6b !important}
html body:not(.page-home) .diagnostic-report-meta span:first-child{color:#475b6b !important}
html body:not(.page-home) .diagnostic-status-line{color:#475b6b !important}
html body:not(.page-home) .diagnostic-coverage[data-coverage-status="stabilized"]{color:#a35f00 !important}
html body:not(.page-home) .diagnostic-score strong{color:#10212e !important}
html body:not(.page-home) .diagnostic-score strong small{color:#475b6b !important}
html body:not(.page-home) .diagnostic-score[data-risk-level="moderate"] .diagnostic-score-value,html body:not(.page-home) .diagnostic-score[data-risk-level="moderate"] > div > span{color:#a35f00 !important;stroke:#a35f00 !important}
html body:not(.page-home) .diagnostic-score[data-risk-level="low"] .diagnostic-score-value,html body:not(.page-home) .diagnostic-score[data-risk-level="low"] > div > span{color:#0f7a5c !important;stroke:#0f7a5c !important}
html body:not(.page-home) .diagnostic-metrics > div{border-right:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-metrics dd{color:#10212e !important}
html body:not(.page-home) .diagnostic-report-body{border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-signal-list{border-top:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-signal{border-bottom:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-signal-detail{color:#475b6b !important}
html body:not(.page-home) .diagnostic-signal-facts b{color:#475b6b !important}
html body:not(.page-home) .diagnostic-signal-main strong{color:#10212e !important}
html body:not(.page-home) .diagnostic-severity{color:#475b6b !important}
html body:not(.page-home) .severity-high .diagnostic-severity,html body:not(.page-home) .severity-high .diagnostic-priority{color:#b93a28 !important}
html body:not(.page-home) .severity-medium .diagnostic-severity,html body:not(.page-home) .severity-medium .diagnostic-priority{color:#a35f00 !important}
html body:not(.page-home) .severity-low .diagnostic-severity,html body:not(.page-home) .severity-low .diagnostic-priority{color:#0f7a5c !important}
html body:not(.page-home) .diagnostic-confidence,html body:not(.page-home) .diagnostic-source,html body:not(.page-home) .diagnostic-priority{color:#475b6b !important}
html body:not(.page-home) .diagnostic-loading-row{color:#475b6b !important}
html body:not(.page-home) .diagnostic-locked p{color:#475b6b !important}
html body:not(.page-home) .diagnostic-disclaimer{color:#475b6b !important}
html body:not(.page-home) .diagnostic-actions ol{border-top:1px solid rgba(14,34,51,.12) !important}
html body:not(.page-home) .diagnostic-actions li{border-bottom:1px solid rgba(14,34,51,.12) !important;color:#475b6b !important}
html body:not(.page-home) .diagnostic-noscript{color:#a35f00 !important}
@media (max-width: 900px){html body:not(.page-home) .diagnostic-promo-copy{border-bottom:1px solid rgba(14,34,51,.12) !important}}
@media (max-width: 680px){html body:not(.page-home) .diagnostic-capabilities > div,html body:not(.page-home) .diagnostic-capabilities > div:first-child,html body:not(.page-home) .diagnostic-capabilities > div:last-child{border-bottom:1px solid rgba(14,34,51,.12) !important}}
@media (max-width: 680px){html body:not(.page-home) .diagnostic-metrics > div:nth-child(-n+2){border-bottom:1px solid rgba(14,34,51,.12) !important}}
html body:not(.page-home) .diagnostic-web-overview{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-overview-ring{background:#ffffff !important}
html body:not(.page-home) .diagnostic-overview-ring small{color:#475b6b !important}
html body:not(.page-home) .diagnostic-web-overview dl > div{border-left:1px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .diagnostic-web-overview dt{color:#475b6b !important}
html body:not(.page-home) .diagnostic-web-overview dd{color:#10212e !important}
html body:not(.page-home) .diagnostic-overview-bar{background:#ffffff !important}
html body:not(.page-home) .diagnostic-overview-distribution > p{color:#475b6b !important}
html body:not(.page-home) .diagnostic-group-heading{border-bottom:2px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .diagnostic-web-card.finding-fail > header > i{background:#ffffff !important}
html body:not(.page-home) .diagnostic-mini-meter.is-alert .diagnostic-mini-meter-track i{background:#ffffff !important}
html body:not(.page-home) .diagnostic-route li span{color:#10212e !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-social-preview{color:#075985 !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-social-preview p{color:#475b6b !important}
html body:not(.page-home) .diagnostic-social-preview small{color:#075985 !important}
html body:not(.page-home) .diagnostic-map-detail{color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-map-panel{border:1px solid rgba(14,34,51,.14) !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-map-toolbar{border-bottom:1px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .diagnostic-map-toolbar button{border:1px solid rgba(14,34,51,.14) !important;color:#475b6b !important;background:#ffffff !important}
html body:not(.page-home) .diagnostic-map-toolbar button:hover:not(:disabled){color:#10212e !important}
html body:not(.page-home) .diagnostic-map-detail svg{background:#ffffff !important}
html body:not(.page-home) .diagnostic-map-detail .map-grid{stroke:#075985 !important}
html body:not(.page-home) .diagnostic-map-detail .map-land{stroke:#075985 !important}
html body:not(.page-home) .diagnostic-map-detail .map-pulse{fill:#075985 !important;stroke:#075985 !important}
html body:not(.page-home) .diagnostic-map-detail .map-crosshair{fill:#075985 !important;stroke:#10212e !important}
html body:not(.page-home) .diagnostic-map-detail .map-pin{fill:#075985 !important;stroke:#10212e !important}
html body:not(.page-home) .diagnostic-map-facts p{border:1px solid rgba(14,34,51,.14) !important}
html body:not(.page-home) .diagnostic-map-facts small{color:#475b6b !important}
html body:not(.page-home) .diagnostic-map-facts strong{color:#075985 !important}
@media print{html body:not(.page-home) .diagnostic-report-hero{border-bottom:1.5pt solid rgba(14,34,51,.14) !important !important}}
/* ================= Inner pages: light, colourful system (matches home) ================= */
body:not(.page-home){--hc:#e2effb;--hc2:rgba(47,127,224,.16);--hk:#2f7fe0}
body:is(.page-cooperation,.page-cooperation-asbl-it,.page-cooperation-conditions,.page-cooperation-confidentiality,.page-cooperation-ethics,.page-cooperation-how-it-works,.page-cooperation-partnerships,.page-cooperation-social-rates,.page-partners,.page-donations){--hc:#dcf3ea;--hc2:rgba(15,159,154,.18);--hk:#0f9f9a}
body:is(.page-threat-intelligence,.page-barometre,.page-hygiene,.page-publications,.page-articles,.page-article,.page-report,.page-tools,.page-dnsbl){--hc:#ebe7ff;--hc2:rgba(106,85,214,.16);--hk:#6a55d6}
body:is(.page-services-catalog,.page-service-cybersecurity,.page-pricing,.page-estimation,.page-board,.page-listing,.page-contact){--hc:#ffe9d9;--hc2:rgba(255,138,61,.2);--hk:#e8702a}
body:is(.page-legal,.page-privacy,.page-terms,.page-cookies,.page-responsible-disclosure,.page-ethics){--hc:#efece4;--hc2:rgba(16,33,46,.07);--hk:#10212e}
body:is(.page-cyber-ai-lab,.page-cyber-ai-lab-partners,.page-programmes,.page-training,.page-techblog,.page-techblog-article,.page-events){--hc:#fff1cc;--hc2:rgba(255,194,61,.3);--hk:#c77c00}

/* hero band */
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]),
html body:not(.page-home) main > .news-reader-HOLD{position:relative!important;overflow:hidden!important;background:radial-gradient(circle at 88% 18%,var(--hc2) 0 170px,transparent 171px),radial-gradient(circle at 96% 92%,var(--hc2) 0 90px,transparent 91px),linear-gradient(135deg,var(--hc) 0%,#f5f4f0 78%)!important;color:#10212e!important;border:0!important;box-shadow:none!important;min-height:0!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]){padding-block:clamp(36px,4.5vw,64px)!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "])::before,
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "])::after{display:none!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(.page-grid,[class*="hero-art"]:not(:has(img))){display:none!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(h1,h2,h3,strong,dt,b){color:#10212e!important;text-shadow:none!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) h1{text-transform:none!important;letter-spacing:-.015em!important;font-size:clamp(2rem,3.4vw,3.1rem)!important;line-height:1.08!important;font-weight:800!important;max-width:22ch}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(p,li,dd,small,span:not([class*="kicker"]):not([class*="eyebrow"]):not([class*="label"]),time){color:#3e5262!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is([class*="kicker"],[class*="eyebrow"],[class*="label"]):not(label){display:inline-block!important;width:fit-content!important;padding:6px 12px!important;border:0!important;border-radius:999px!important;background:var(--hk)!important;color:#fff!important;font-size:.7rem!important;letter-spacing:.12em!important;font-weight:800!important;text-transform:uppercase}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is([class*="kicker"],[class*="eyebrow"],[class*="label"]) *{color:#fff!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) img{border-radius:18px;box-shadow:0 18px 40px rgba(14,34,51,.16)}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) a:not(.button):not([class*="button"]){color:#075985!important}
html body:not(.page-home) .breadcrumbs, html body:not(.page-home) .breadcrumbs *{color:#475b6b!important}

/* body sections & panels */
html body:not(.page-home) main :is(h1,h2,h3,h4){text-transform:none!important}
html body:not(.page-home) main :is(h2,h3,h4){color:#10212e}
html body:not(.page-home) main :is(input,select,textarea){background:#fff!important;color:#10212e!important;border:1px solid #d6dfe5!important;border-radius:10px!important}
html body:not(.page-home) main :is(input,select,textarea):focus{border-color:var(--hk)!important;box-shadow:0 0 0 3px var(--hc2)!important;outline:0!important}
html body:not(.page-home) main :is(input,textarea)::placeholder{color:#8a9aa6!important}
html body:not(.page-home) main label{color:#10212e!important}

/* leftover dark bands -> light tinted bands */
html body:not(.page-home) main :is(.process-rail,.pricing-controls,.pricing-subscriptions,.pricing-category,.commercial-categories,.commercial-related,.tools-advanced,.tools-workbench-section,.connection-panel){background:linear-gradient(180deg,#eef3f7,#f5f4f0)!important;background-image:linear-gradient(180deg,#eef3f7,#f5f4f0)!important;color:#10212e!important;border-color:rgba(14,34,51,.1)!important}
html body:not(.page-home) main :is(.process-rail,.pricing-controls,.pricing-subscriptions,.pricing-category,.commercial-categories,.commercial-related,.tools-advanced,.tools-workbench-section,.connection-panel)::before,
html body:not(.page-home) main :is(.process-rail,.pricing-controls,.pricing-subscriptions,.pricing-category,.commercial-categories,.commercial-related,.tools-advanced,.tools-workbench-section,.connection-panel)::after{display:none!important}
html body:not(.page-home) main :is(.process-rail,.pricing-controls,.pricing-subscriptions,.pricing-category,.commercial-categories,.commercial-related,.tools-advanced,.tools-workbench-section,.connection-panel) :is(h2,h3,h4,strong,b,dt,th){color:#10212e!important}
html body:not(.page-home) main :is(.process-rail,.pricing-controls,.pricing-subscriptions,.pricing-category,.commercial-categories,.commercial-related,.tools-advanced,.tools-workbench-section,.connection-panel) :is(p,li,dd,td,small,span:not([class*="badge"]):not([class*="chip"]):not([class*="tag"]),em,label){color:#475b6b!important}

/* ---- colour tokens for rhythm ---- */
body:not(.page-home) [data-cc="c1"]{--cc:#0f9f9a;--cb:#dcf3f0}
body:not(.page-home) [data-cc="c2"]{--cc:#e08a00;--cb:#fff0cf}
body:not(.page-home) [data-cc="c3"]{--cc:#e8513e;--cb:#ffe3dc}
body:not(.page-home) [data-cc="c4"]{--cc:#6a55d6;--cb:#e9e5ff}
body:not(.page-home) [data-cc="c5"]{--cc:#2f7fe0;--cb:#e2effb}

/* ---- rhythm: tighter vertical spacing ---- */
html body:not(.page-home) main > :is(section,div,article):not([class*="hero"]):not(.news-reader),
html body:not(.page-home) main > * > section:not([class*="hero"]){padding-top:clamp(28px,3.6vw,52px)!important;padding-bottom:clamp(28px,3.6vw,52px)!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]){padding-top:clamp(28px,3.4vw,52px)!important;padding-bottom:clamp(32px,4vw,60px)!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) .breadcrumbs{margin:0 0 18px!important}

/* hero circles: keep them at the edge, behind everything */
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]){background:radial-gradient(circle at 100% 0%,var(--hc2) 0 150px,transparent 151px),radial-gradient(circle at 100% 100%,var(--hc2) 0 70px,transparent 71px),linear-gradient(135deg,var(--hc) 0%,#f5f4f0 80%)!important}

/* hero facts (dl) -> coloured tiles */
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important;border:0!important;padding:0!important;margin:0!important;background:none!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl>div{--cc:#0f9f9a;--cb:#dcf3f0;padding:14px 16px!important;border:0!important;border-radius:14px!important;background:var(--cb)!important;margin:0!important;position:relative;overflow:hidden}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl>div:nth-child(4n+2){--cc:#e08a00;--cb:#fff0cf}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl>div:nth-child(4n+3){--cc:#e8513e;--cb:#ffe3dc}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl>div:nth-child(4n+4){--cc:#6a55d6;--cb:#e9e5ff}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl>div::before{display:none!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl dt{color:var(--cc)!important;font-size:.68rem!important;letter-spacing:.12em!important;font-weight:800!important;margin:0 0 4px!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) dl dd{color:#10212e!important;font-weight:700!important;font-size:.95rem!important;margin:0!important;line-height:1.3!important}

/* ---- kickers / section indexes -> soft pills ---- */
html body:not(.page-home) main :is(.section-index,.publication-section-index,.institutional-kicker,.commercial-kicker,.missions-kicker,.partners-kicker,.news-kicker,.edu-kicker,.eth-kicker,.cpx-kicker,.rd-kicker,.intel-kicker,.donations-kicker,.training-kicker,.training-section-label,.watch-section-label,.techblog-label,.board-card-kicker):not(:is([class$="hero"],[class*="hero "]) *){display:inline-flex!important;align-items:center;gap:6px;width:fit-content!important;padding:5px 11px!important;border:0!important;border-radius:999px!important;background:var(--hc)!important;color:var(--hk)!important;font-size:.7rem!important;font-weight:800!important;letter-spacing:.12em!important;text-transform:uppercase;line-height:1.3!important}
html body:not(.page-home) main :is(.section-index,.institutional-kicker,.commercial-kicker)::after{display:none!important}
html body:not(.page-home) main :is(.section-index,.institutional-kicker,.commercial-kicker)::before{content:""!important;display:block!important;width:6px;height:6px;border-radius:50%;background:currentColor!important;position:static!important;margin:0!important}

/* ---- numbered items -> coloured number chips ---- */
html body:not(.page-home) main .content-number{display:inline-grid!important;place-items:center;min-width:34px;height:34px;padding:0 8px!important;border-radius:10px!important;background:var(--cb,#e2effb)!important;color:var(--cc,#2f7fe0)!important;font-weight:800!important;font-size:.8rem!important;letter-spacing:.04em!important;border:0!important}
html body:not(.page-home) main [data-cc] > span:first-child:not([class]){color:var(--cc)!important}
html body:not(.page-home) main .tool-tile-number{color:var(--cc,#2f7fe0)!important}

/* process rail: white step cards with coloured numbers */
html body:not(.page-home) main .process-rail li{background:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 8px 22px rgba(14,34,51,.07)!important;padding:20px!important;margin:0!important}
html body:not(.page-home) main .process-rail ol{gap:14px!important;border:0!important}
html body:not(.page-home) main .process-rail li:nth-child(5n+1) > span:first-child{color:#0f9f9a!important}
html body:not(.page-home) main .process-rail li:nth-child(5n+2) > span:first-child{color:#e08a00!important}
html body:not(.page-home) main .process-rail li:nth-child(5n+3) > span:first-child{color:#e8513e!important}
html body:not(.page-home) main .process-rail li:nth-child(5n+4) > span:first-child{color:#6a55d6!important}
html body:not(.page-home) main .process-rail li:nth-child(5n+5) > span:first-child{color:#2f7fe0!important}
html body:not(.page-home) main .process-rail li > span:first-child{font-weight:800!important}

/* images inside content: soft rounded */
html body:not(.page-home) main :is(figure,picture) img, html body:not(.page-home) main article img{border-radius:14px}

/* ---- spacing: inner containers carried the big paddings ---- */
html body:not(.page-home) main > * > .container,
html body:not(.page-home) main > * > [class*="-grid"],
html body:not(.page-home) main > * > [class*="-inner"]{padding-top:clamp(0px,1.4vw,18px)!important;padding-bottom:clamp(0px,1.4vw,18px)!important;min-height:0!important}
html body:not(.page-home) main :is(article,div)[class$="-section"]{padding-top:clamp(20px,2.6vw,36px)!important;padding-bottom:clamp(20px,2.6vw,36px)!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) > *{min-height:0!important}

/* ---- marker keeps the heading colour ---- */
html body:not(.page-home) main h1 .fx-mark, html body:not(.page-home) main h1 .fx-mark *{color:inherit!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) h1 .fx-mark{color:#10212e!important}

/* ---- hero kicker: no stray dots, section-index as pill too ---- */
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is([class*="kicker"],[class*="eyebrow"],.section-index)::before,
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is([class*="kicker"],[class*="eyebrow"],.section-index)::after{display:none!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) .section-index{display:inline-block!important;width:fit-content!important;padding:6px 12px!important;border-radius:999px!important;background:var(--hk)!important;color:#fff!important;font-size:.7rem!important;letter-spacing:.12em!important;font-weight:800!important;margin-bottom:12px!important}

/* ---- step cards (process rail & similar) ---- */
html body:not(.page-home) main .process-rail .container{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:14px!important}
html body:not(.page-home) main .process-rail article{background:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 8px 22px rgba(14,34,51,.07)!important;padding:22px!important;margin:0!important;display:grid!important;grid-template-columns:auto 1fr;gap:14px;align-items:start}
html body:not(.page-home) main .process-rail article::before,html body:not(.page-home) main .process-rail article::after{display:none!important}
html body:not(.page-home) main.x, html body:not(.page-home) main article[data-cc] > span:first-child:not([class]),
html body:not(.page-home) main li[data-cc] > span:first-child:not([class]){display:inline-grid!important;place-items:center;min-width:44px;height:44px;border-radius:12px;background:var(--cb)!important;color:var(--cc)!important;font-weight:800!important;font-size:1.05rem!important}
html body:not(.page-home) main .process-rail h2{font-size:1.15rem!important;line-height:1.2!important}
@media (max-width:900px){html body:not(.page-home) main .process-rail .container{grid-template-columns:1fr!important}}

/* ---- hero polaroid ---- */
html body:not(.page-home) main .fx-polaroid{position:absolute;z-index:1;right:max(32px,calc((100vw - 1330px)/2 + 10px));top:50%;width:clamp(260px,27vw,390px);margin:0;padding:10px 10px 34px;background:#fff;border-radius:6px;box-shadow:0 22px 44px rgba(14,34,51,.18),0 2px 6px rgba(14,34,51,.08);transform:translateY(-50%) rotate(2.6deg);transition:transform .6s cubic-bezier(.2,.8,.2,1);animation:fxPolaroidIn 1s cubic-bezier(.2,1.2,.4,1) both .2s}
html body:not(.page-home) main .fx-polaroid img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px!important;box-shadow:none!important}
html body:not(.page-home) main .fx-polaroid::before{content:"";position:absolute;top:-12px;left:50%;width:86px;height:24px;margin-left:-43px;background:rgba(255,255,255,.62);box-shadow:0 1px 3px rgba(0,0,0,.1);transform:rotate(-4deg);backdrop-filter:blur(2px)}
html body:not(.page-home) main :is(section,header):hover > .fx-polaroid{transform:translateY(-52%) rotate(0deg)}
@keyframes fxPolaroidIn{from{opacity:0;transform:translateY(-44%) rotate(9deg) scale(1.05)}to{opacity:1;transform:translateY(-50%) rotate(2.6deg)}}
html body.has-polaroid:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) > .container{position:relative;z-index:2}
html body.has-polaroid:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(h1,p,.breadcrumbs,[class*="actions"]){max-width:min(680px,58vw)!important}
html body.has-polaroid:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]){min-height:clamp(340px,30vw,440px)!important;display:flex;flex-direction:column;justify-content:center}
@media (max-width:1000px){html body:not(.page-home) main .fx-polaroid{position:relative;right:auto;top:auto;transform:rotate(1.5deg);margin:22px auto 0;animation:none;width:min(360px,86%)}html body.has-polaroid:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(h1,p){max-width:none!important}}
@media (prefers-reduced-motion:reduce){html body:not(.page-home) main .fx-polaroid{animation:none}}
html body:not(.page-home) main h1 span.fx-mark.fx-mark.fx-mark{color:inherit!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) h1 span.fx-mark.fx-mark.fx-mark{color:#10212e!important}

/* ---- in-flow photo replacing abstract hero diagrams ---- */
html body:not(.page-home) main .fx-photo-slot{display:flex!important;align-items:center;justify-content:center;width:100%!important;height:auto!important;min-height:0!important;aspect-ratio:auto!important;background:none!important;border:0!important;box-shadow:none!important;padding:12px 0!important;transform:none!important;opacity:1!important}
html body:not(.page-home) main .fx-photo-slot::before,html body:not(.page-home) main .fx-photo-slot::after{display:none!important}
html body:not(.page-home) main .fx-polaroid-inline{position:relative;display:block;width:min(100%,470px);padding:10px 10px 34px;background:#fff;border-radius:6px;box-shadow:0 22px 44px rgba(14,34,51,.18),0 2px 6px rgba(14,34,51,.08);transform:rotate(2.2deg);transition:transform .6s cubic-bezier(.2,.8,.2,1);animation:fxPolaroidIn2 1s cubic-bezier(.2,1.2,.4,1) both .2s}
html body:not(.page-home) main .fx-polaroid-inline img{display:block;width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:3px!important;box-shadow:none!important}
html body:not(.page-home) main .fx-polaroid-inline::before{content:"";position:absolute;top:-12px;left:50%;width:86px;height:24px;margin-left:-43px;background:rgba(255,255,255,.62);box-shadow:0 1px 3px rgba(0,0,0,.1);transform:rotate(-4deg)}
html body:not(.page-home) main .fx-photo-slot:hover .fx-polaroid-inline{transform:rotate(0) translateY(-4px)}
@keyframes fxPolaroidIn2{from{opacity:0;transform:rotate(9deg) scale(1.05) translateY(20px)}to{opacity:1;transform:rotate(2.2deg)}}
@media (prefers-reduced-motion:reduce){html body:not(.page-home) main .fx-polaroid-inline{animation:none}}
/* hero media images: keep them in proportion */
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) figure:not(.fx-polaroid) img{max-height:440px;width:100%;object-fit:cover}
/* hero kicker text always white on its pill */
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) p:is([class*="kicker"],[class*="eyebrow"]).x, html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(p,span):is([class*="kicker"],[class*="eyebrow"],[class*="label"]):not(label):not(.x){color:#fff!important}
html body:not(.page-home) main .donations-hero-media{height:auto!important;align-self:center!important}
html body:not(.page-home) main .donations-hero-media img{height:auto!important;max-height:440px!important;aspect-ratio:16/10;object-fit:cover;border-radius:18px}
html body:not(.page-home) main .donations-kicker.donations-kicker.donations-kicker.donations-kicker{color:#fff!important}

html body:not(.page-home) main .donations-hero-media img{min-height:0!important}
html body:not(.page-home) main .donations-hero-copy{padding-top:0!important;padding-bottom:0!important}
html body:not(.page-home) main .donations-hero-grid{align-items:center!important}
html body:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]) :is(p,span):is([class*="kicker"],[class*="eyebrow"]){-webkit-text-fill-color:#fff!important;color:#fff!important}

/* ---- diagnostic report page ---- */
html body:not(.page-home) main .diagnostic-report{background:transparent!important;border:0!important}
html body:not(.page-home) main .diagnostic-report-art{display:none!important}
html body:not(.page-home) main .diagnostic-report h1, html body:not(.page-home) main .diagnostic-report h1 *{color:#10212e!important;-webkit-text-fill-color:#10212e!important}
html body:not(.page-home) main .diagnostic-report :is(section,header):is([class$="hero"],[class*="hero "]){border-radius:22px!important;box-shadow:0 18px 40px rgba(14,34,51,.08)!important}

/* ---- auth pages (login, register, reset...) ---- */
html body:not(.page-home) main .auth-page{background:radial-gradient(circle at 100% 0%,rgba(47,127,224,.16) 0 170px,transparent 171px),radial-gradient(circle at 0% 100%,rgba(255,138,61,.14) 0 120px,transparent 121px),linear-gradient(135deg,#e2effb 0%,#f5f4f0 75%)!important;background-image:radial-gradient(circle at 100% 0%,rgba(47,127,224,.16) 0 170px,transparent 171px),radial-gradient(circle at 0% 100%,rgba(255,138,61,.14) 0 120px,transparent 121px),linear-gradient(135deg,#e2effb 0%,#f5f4f0 75%)!important;color:#10212e!important;padding-block:clamp(36px,4.5vw,64px)!important}
html body:not(.page-home) main .auth-page::before,html body:not(.page-home) main .auth-page::after{display:none!important}
html body:not(.page-home) main .auth-page :is(h1,h2,h3,strong,label,legend){color:#10212e!important;-webkit-text-fill-color:#10212e!important}
html body:not(.page-home) main .auth-page :is(p,li,small,span:not([class*="index"])){color:#3e5262!important}
html body:not(.page-home) main .auth-page .auth-panel{background:#fff!important;background-image:none!important;border:0!important;border-radius:20px!important;box-shadow:0 22px 48px rgba(14,34,51,.12)!important}
html body:not(.page-home) main .auth-page .auth-panel::before,html body:not(.page-home) main .auth-page .auth-panel::after{display:none!important}

/* ---- audit fixes 2026-09-24 ---- */
/* footer: same readable links on every page */
html body .site-footer.site-footer :is(a,li,dd,p,span,small):not(.footer-linkedin):not(.footer-facebook){color:rgba(233,240,245,.82)!important;-webkit-text-fill-color:rgba(233,240,245,.82)!important}
html body .site-footer.site-footer :is(h2,h3,h4,dt,strong){color:#fff!important;-webkit-text-fill-color:#fff!important}
html body .site-footer.site-footer a:hover{color:#fff!important;-webkit-text-fill-color:#fff!important}
/* darker text shades for coloured chips (AA on their tints) */
body:not(.page-home) [data-cc="c1"]{--cc:#0a6f6b}
body:not(.page-home) [data-cc="c2"]{--cc:#8f5200}
body:not(.page-home) [data-cc="c3"]{--cc:#b8341f}
body:not(.page-home) [data-cc="c4"]{--cc:#4b3bb5}
body:not(.page-home) [data-cc="c5"]{--cc:#1b58b0}
html body main .principles li{--c:#0a6f6b}
html body main .principles li:nth-child(2){--c:#8f5200}
html body main .principles li:nth-child(3){--c:#b8341f}
html body main .principles li:nth-child(4){--c:#4b3bb5}
/* prices */
html body main .service-price, html body main .service-price *{color:#10212e!important;-webkit-text-fill-color:#10212e!important;font-weight:800}

/* ---- numbered rows (engagements, conditions, axes...): inner padding so hover cards never touch the chip ---- */
html body:not(.page-home) main article[data-cc]:not(.process-rail article){padding-left:22px!important;padding-right:22px!important;border-radius:16px!important;transition:background .3s,box-shadow .3s!important;align-items:start!important}
html body:not(.page-home) main article[data-cc]:not(.process-rail article):hover{background:#fff!important;box-shadow:0 12px 28px rgba(14,34,51,.08)!important}
html body:not(.page-home) main article[data-cc] > span:first-child:not([class]){margin-top:2px!important}
/* right-hand label in those rows -> soft pill in the row colour */
html body:not(.page-home) main article[data-cc] > strong:last-child{justify-self:end;align-self:start;width:fit-content!important;max-width:100%;padding:7px 12px!important;border-radius:10px!important;background:var(--cb)!important;color:var(--cc)!important;-webkit-text-fill-color:var(--cc)!important;font-size:.78rem!important;line-height:1.35!important;text-align:left}

/* ================= MOBILE (audit 2026-09-24) ================= */
@media (max-width:1080px){
  html body .site-header .menu-toggle{display:inline-flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:4px!important;width:44px!important;min-width:44px!important;height:44px!important;padding:0!important;border-radius:12px!important;background:#fff!important;border:1px solid rgba(14,34,51,.14)!important;box-shadow:none!important;flex:0 0 44px!important}
  html body .site-header .menu-toggle span{display:block!important;width:20px!important;height:2px!important;border-radius:2px!important;background:#10212e!important;margin:0!important;transform:none;position:static!important}
  html body .site-header .menu-toggle b{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important}
}
@media (max-width:560px){
  html body .site-header .button-support{padding:0 12px!important;min-height:40px!important;height:40px!important;font-size:.85rem!important}
  html body .site-header .button-support span{display:none!important}
  html body .site-header .header-account{padding:0 4px!important}
  html body .site-header .lang-toggle{padding:0 6px!important}
}
@media (max-width:760px){
  /* hero map: calmer behind the text on phones */
  html body.page-home .hero canvas{opacity:.55!important}
  /* job search: stacked fields */
  html body.page-home .home-job-search{grid-template-columns:1fr!important}
  html body.page-home .home-job-search > *{border-right:0!important;border-bottom:1px solid rgba(14,34,51,.1)!important}
  html body.page-home .home-job-search button,html body.page-home .home-job-search .button{width:100%!important;justify-content:center!important;min-width:0!important}
  /* job choice cards: text full width, link below */
  html body.page-home .home-job-choice{display:flex!important;flex-direction:column!important;gap:10px!important}
  html body.page-home .home-job-choice > *{max-width:none!important;width:auto!important;position:static!important}
  html body.page-home .home-job-choice p{max-width:none!important}
}

/* price lists: thin hairlines between rows, not thick grey bars */
html body:not(.page-home) main .commercial-price-list{gap:0!important;row-gap:0!important;background:#fff!important;border:1px solid rgba(14,34,51,.1)!important;border-radius:16px!important;overflow:hidden}
html body:not(.page-home) main .commercial-price-list > .commercial-price-row{border:0!important;border-bottom:1px solid rgba(14,34,51,.08)!important;border-radius:0!important;box-shadow:none!important;margin:0!important}
html body:not(.page-home) main .commercial-price-list > .commercial-price-row:last-child{border-bottom:0!important}
html body:not(.page-home) main .commercial-price-list > .commercial-price-row:hover{background:#f7fafc!important}
/* numbered chips never stretch */
html body:not(.page-home) main :is(article,li,div)[data-cc] > span:first-child:not([class]),html body:not(.page-home) main .content-number{width:fit-content!important;justify-self:start!important;align-self:start!important}
@media (max-width:1000px){
  html body:not(.page-home) main .fx-polaroid{position:relative!important;right:auto!important;top:auto!important;display:block!important;align-self:center!important;width:min(340px,84%)!important;margin:26px auto 4px!important;transform:rotate(1.5deg)!important;animation:none!important}
  html body.has-polaroid:not(.page-home) main :is(section,header):is([class$="hero"],[class*="hero "]){display:block!important;min-height:0!important}
  html body:not(.page-home) main article[data-cc] > strong:last-child{justify-self:start!important;margin-top:8px!important}
}
@media (max-width:1000px){
  html body:not(.page-home) main .fx-photo-slot{position:static!important;inset:auto!important;width:100%!important;max-width:none!important;margin:18px 0 0!important;transform:none!important;grid-column:1/-1!important;order:5}
  html body:not(.page-home) main [class*="signal-strip"] > .container,html body:not(.page-home) main [class*="-strip"] > .container,html body:not(.page-home) main .edu-hero-signal{padding-left:20px!important;padding-right:20px!important;box-sizing:border-box!important}
}

/* CoopIT page */
html body:not(.page-home) main .coopit-decoder-list{gap:14px!important;background:transparent!important;border:0!important}
html body:not(.page-home) main .coopit-decoder-list > div{background:#fff!important;border:0!important;border-radius:16px!important;box-shadow:0 8px 22px rgba(14,34,51,.07)!important}
html body:not(.page-home) main .coopit-case-result{background:#e8f8cf!important;border-radius:16px!important}
html body:not(.page-home) main .coopit-case-result *{color:#1f3d0c!important;-webkit-text-fill-color:#1f3d0c!important}
html body:not(.page-home) main .coopit-solidarity{background:#ffe07a!important}
html body:not(.page-home) main .coopit-solidarity :is(h2,h3,p,strong,small,span:not(.section-index),li){color:#2b2200!important;-webkit-text-fill-color:#2b2200!important}
html body:not(.page-home) main .coopit-hero-visual.fx-photo-slot{min-height:0!important;background:none!important;box-shadow:none!important}
/* footer on phones: two columns of links instead of one endless list */
@media (max-width:640px){
  html body .site-footer .footer-main{grid-template-columns:1fr 1fr!important;column-gap:18px!important;row-gap:26px!important}
  html body .site-footer .footer-main > .footer-identity{grid-column:1/-1!important}
  html body .site-footer.site-footer a:not(.brand):not(.footer-linkedin):not(.footer-facebook){margin-bottom:4px!important;font-size:.84rem!important}
}

/* photo bands on /formations: keep the photo, dark cinematic scrim, white text */
html body:not(.page-home) main :is(.edu-technical,.edu-professional){background:#0b1a26!important;min-height:0!important}
html body:not(.page-home) main :is(.edu-technical-media,.edu-professional-media)::after{display:block!important;content:""!important;background:linear-gradient(90deg,rgba(8,20,30,.9) 0%,rgba(8,20,30,.78) 38%,rgba(8,20,30,.35) 70%,rgba(8,20,30,.55) 100%)!important}
html body:not(.page-home) main :is(.edu-technical-inner,.edu-professional-inner){min-height:0!important;padding-top:clamp(48px,6vw,90px)!important;padding-bottom:clamp(48px,6vw,90px)!important}
html body:not(.page-home) main :is(.edu-technical,.edu-professional) :is(h2,h3,h4,strong,a:not(.button)){color:#fff!important;-webkit-text-fill-color:#fff!important}
html body:not(.page-home) main :is(.edu-technical,.edu-professional) :is(p,li,small,span:not([class*="index"]),dd,dt){color:#d7e3ea!important;-webkit-text-fill-color:#d7e3ea!important}
html body:not(.page-home) main :is(.edu-technical,.edu-professional) .edu-technical-copy > span{color:#b6f36b!important;-webkit-text-fill-color:#b6f36b!important}
html body:not(.page-home) main .edu-track-index{background:rgba(8,20,30,.72)!important;border:1px solid rgba(255,255,255,.12)!important;border-radius:16px!important;backdrop-filter:blur(6px)}
html body:not(.page-home) main .edu-track-index *{border-color:rgba(255,255,255,.12)!important}
html body:not(.page-home) main :is(.edu-technical,.edu-professional) :is(.button,[class*="note"],aside) :is(p,strong,span){-webkit-text-fill-color:initial!important}
html body:not(.page-home) main .edu-professional [class*="note"]{background:#fff!important;border-radius:14px!important}
html body:not(.page-home) main .edu-professional [class*="note"] :is(p,strong,span,small){color:#10212e!important;-webkit-text-fill-color:#10212e!important}
html body:not(.page-home) main .edu-track-index :is(strong,b,h3,h4,a > span:not(:first-child)){color:#fff!important;-webkit-text-fill-color:#fff!important}
html body:not(.page-home) main .edu-track-index a{color:#fff!important;-webkit-text-fill-color:#fff!important}
html body:not(.page-home) main .edu-track-index :is(small,p,em){color:#bcd0da!important;-webkit-text-fill-color:#bcd0da!important}
html body:not(.page-home) main .edu-track-index a > span:first-child{color:#b6f36b!important;-webkit-text-fill-color:#b6f36b!important}
/* barometre risk badges */
html body:not(.page-home) main .watch-score{background:#fde3df!important;border-radius:8px!important}
html body:not(.page-home) main .watch-score.is-red :is(b,em,span){color:#a3261a!important;-webkit-text-fill-color:#a3261a!important}
html body:not(.page-home) main .watch-susp-row.is-red{background:#fff6f4!important}
/* breadcrumbs readable */
html body:not(.page-home) main .breadcrumbs a{color:#075985!important;-webkit-text-fill-color:#075985!important}
html body:not(.page-home) main .donations-bank{background:#0b5f8a!important}
html body:not(.page-home) main .donations-bank :is(h2,dd,strong){color:#fff!important;-webkit-text-fill-color:#fff!important}
html body:not(.page-home) main .donations-bank :is(p,li,small){color:#dcecf5!important;-webkit-text-fill-color:#dcecf5!important}
html body:not(.page-home) main .donations-bank dt{color:#9fd3ea!important;-webkit-text-fill-color:#9fd3ea!important}
html body:not(.page-home) main .donations-bank-details,html body:not(.page-home) main .donations-bank-details div{border-color:rgba(255,255,255,.22)!important}
html body:not(.page-home) main .donations-bank .button{background:#fff!important;color:#0b3a52!important;-webkit-text-fill-color:#0b3a52!important}
html body:not(.page-home) main .donations-bank .button *{color:#0b3a52!important;-webkit-text-fill-color:#0b3a52!important}
/* one type family everywhere (no stray Barlow Condensed headings) */
html body:not(.page-home) main :is(h1,h2,h3,h4,h5){font-family:"Gilroy","Avenir Next","Segoe UI",Helvetica,Arial,sans-serif!important;letter-spacing:-.01em!important}
html body:not(.page-home) main :is(h2,h3):is([class*="diagnostic"],[class*="report"]) ,html body:not(.page-home) main .diagnostic-report :is(h2,h3){text-transform:none!important}
html body main .home-ai-stage .home-ai-network{--note:#d9432c!important}
html body main .home-ai-stage .home-ai-network:hover .home-ai-card-arrow{background:#d9432c!important}
html body main .home-techblog-stats .fx-stat :is(span,small):not(strong *){color:#c9d7e2!important}
html body:not(.page-home) main figcaption strong{color:#7a5200!important;-webkit-text-fill-color:#7a5200!important}

/* hero with a photo behind the text: cinematic scrim + white text */
html body:not(.page-home) main .fx-photo-hero{background:#0b1a26!important}
html body:not(.page-home) main .fx-photo-hero [class*="hero-media"]::after{content:""!important;display:block!important;position:absolute;inset:0;background:linear-gradient(90deg,rgba(8,20,30,.88) 0%,rgba(8,20,30,.72) 45%,rgba(8,20,30,.35) 100%)!important}
@media (max-width:760px){html body:not(.page-home) main .fx-photo-hero [class*="hero-media"]::after{background:rgba(8,20,30,.72)!important}}
html body:not(.page-home) main .fx-photo-hero :is(h1,h2,h3,strong,.breadcrumbs a,.breadcrumbs span){color:#fff!important;-webkit-text-fill-color:#fff!important}
html body:not(.page-home) main .fx-photo-hero h1 span.fx-mark.fx-mark.fx-mark{color:#fff!important}
html body:not(.page-home) main .fx-photo-hero :is(p,li,small,dd,dt,span:not([class*="kicker"]):not([class*="eyebrow"]):not([class*="label"])){color:#dbe7ee!important;-webkit-text-fill-color:#dbe7ee!important}
html body:not(.page-home) main .fx-photo-hero :is(aside,[class*="card"],[class*="panel"]) :is(h2,h3,strong,p,small,span,li){color:#10212e!important;-webkit-text-fill-color:#10212e!important}
html body:not(.page-home) main .fx-photo-hero [class*="hero-media"]{z-index:0}
html body:not(.page-home) main .fx-photo-hero > :not([class*="hero-media"]){position:relative;z-index:1}
/* grids that used a grey background + gap as divider lines */
html body main .fx-gapgrid{background:transparent!important;gap:12px!important}
html body main .fx-gapgrid > *{border-radius:14px!important}
html body:not(.page-home) main :is(section,header) .breadcrumbs.breadcrumbs a{color:#075985!important;-webkit-text-fill-color:#075985!important;opacity:1!important}
html body:not(.page-home) main .fx-photo-hero .breadcrumbs.breadcrumbs a{color:#fff!important;-webkit-text-fill-color:#fff!important}
/* Cyber & AI Lab: light warm call-out instead of dark blueprint */
html body:not(.page-home) main .ai-space-callout{background:linear-gradient(135deg,#fff3d1,#f5f4f0)!important}
html body:not(.page-home) main .ai-space-callout .ai-space-art,html body:not(.page-home) main .ai-space-callout::after,html body:not(.page-home) main .ai-space-callout::before{display:none!important}
html body:not(.page-home) main .ai-space-callout :is(h2,h3,strong,dt){color:#10212e!important;-webkit-text-fill-color:#10212e!important}
html body:not(.page-home) main .ai-space-callout :is(p,li,dd,small){color:#3e5262!important;-webkit-text-fill-color:#3e5262!important}
html body:not(.page-home) main .ai-lab-why,html body:not(.page-home) main .ai-lab-why::before,html body:not(.page-home) main .ai-lab-why::after{background:transparent!important;background-image:none!important}
html body .fx-mark.is-done path{stroke-dasharray:none!important;stroke-dashoffset:0!important;transition:none!important}
html body:not(.page-home) main .form-map.fx-photo-slot{margin-top:18px!important;padding:0!important}
html body:not(.page-home) main .fx-photo-slot{-webkit-mask-image:none!important;mask-image:none!important;opacity:1!important;filter:none!important}
html body:not(.page-home) main .fx-photo-hero .training-free-panel.training-free-panel :is(h2,h3,strong,p,small,span,li){color:#10212e!important;-webkit-text-fill-color:#10212e!important}
html body:not(.page-home) main .fx-photo-hero .training-free-panel.training-free-panel :is(p,small){color:#3e5262!important;-webkit-text-fill-color:#3e5262!important}
html body main .home-estimate.home-estimate.home-estimate .home-estimate-kicker{background:#c9561a!important}
html body main .home-techblog-stats.home-techblog-stats .fx-stat span:not(.fx-odo):not(.fx-odo *){color:#dfe8ef!important;-webkit-text-fill-color:#dfe8ef!important}


/* Consent "reopen" control is a text pill, not an icon button: keep it out of the 40x40 icon rule. */
.cmp-reopen {
  width: auto !important;
  height: 40px;
  padding: 0 16px !important;
  border-radius: 999px !important;
  border: 1.5px solid rgba(14, 34, 51, 0.2) !important;
  background: #FFFFFF !important;
  color: #0E2233 !important;
  box-shadow: 0 6px 18px rgba(14, 34, 51, 0.12);
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
  cursor: pointer;
  transition: background 0.3s cubic-bezier(.16,1,.3,1), color 0.3s cubic-bezier(.16,1,.3,1), border-color 0.3s cubic-bezier(.16,1,.3,1);
}
.cmp-reopen:hover {
  background: #0E2233 !important;
  color: #FFFFFF !important;
  border-color: #0E2233 !important;
}

/* Menu mobile de l'accueil : il restait sur le fond sombre de l'ancien theme
   alors que ses liens sont passes en encre foncee (noir sur noir). */
@media (max-width: 1120px) {
    html body.page-home .site-nav { background: #ffffff !important; box-shadow: 0 12px 30px rgba(14, 34, 51, .10) !important; }
    html body.page-home .site-nav a, html body.page-home .site-nav summary, html body.page-home .site-nav .nav-group > summary span { color: #10212e !important; }
    html body.page-home .site-nav a, html body.page-home .site-nav .nav-group { border-color: #e3e9ee !important; }
    html body.page-home .site-nav .nav-account { color: #10212e !important; border-color: #c9d4dc !important; }
}

/* Outils, « Votre connexion » : sur telephone et tablette, le libelle passe
   au-dessus de la valeur (la valeur n'avait plus que ~40 px et se cassait
   lettre par lettre). */
@media (max-width: 1080px) {
    html body .connection-panel dl > div,
    html body .connection-panel dl > div:last-child {
        grid-template-columns: minmax(0, 1fr) !important;
        align-content: center;
        gap: 6px !important;
        padding: 14px 16px !important;
        min-height: 0 !important;
    }
    html body .connection-panel dt { font-size: .68rem !important; }
    html body .connection-panel dd { font-size: 1rem !important; line-height: 1.3 !important; overflow-wrap: anywhere; word-break: normal; color: #10212e !important; }
}
@media (max-width: 1080px) {
    html body .connection-panel dl { gap: 10px !important; padding: 4px 16px 12px !important; }
    html body .connection-panel dl > div:last-child { grid-column: 1 / -1 !important; }
}
@media (max-width: 1080px) {
    html body main section.connection-panel > dl { padding: 4px 16px 12px !important; }
}
@media (max-width: 1080px) {
    html body:not(.page-home) main section.connection-panel > dl { padding: 4px 16px 12px !important; }
}

/* ── Espace membre (/account), 2026 ─────────────────────────
   Carte d'identite en tete, navigation laterale collante (espaces
   du membre + sections de reglages), contenu en cartes blanches. */
html body:not(.page-home) main .auth-page.account-2026 { padding-top: 34px !important; padding-bottom: 80px !important; background: #f5f4f0 !important; background-image: none !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags li, html body:not(.page-home) main .auth-page.account-2026 .acc-top p { color: inherit; }
.account-2026 .account-shell { max-width: 1180px; }
.account-2026 .acc-top { display: grid; grid-template-columns: auto 1fr auto; gap: 22px; align-items: center; margin: 0 0 26px; padding: 26px 28px; border: 1px solid #e3e9ee; border-radius: 22px; background: #fff; box-shadow: 0 1px 2px rgba(14, 34, 51, .04), 0 18px 40px rgba(14, 34, 51, .06); }
.account-2026 .acc-avatar { position: relative; display: grid; place-items: center; width: 76px; height: 76px; border-radius: 22px; background: #03101b; color: #f4f7f9; font: 800 32px/1 "Gilroy", system-ui, sans-serif; }
.account-2026 .acc-avatar::after { content: ""; position: absolute; left: 22px; right: 22px; bottom: 12px; height: 3px; border-radius: 2px; background: #11bfff; }
.account-2026 .acc-over { margin: 0 0 4px; font: 700 11px "Gilroy", system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #8a9aa6; }
.account-2026 .acc-id h1 { margin: 0; font: 800 clamp(26px, 3vw, 34px)/1.08 "Gilroy", system-ui, sans-serif; letter-spacing: -.03em; color: #0e2233; }
.account-2026 .acc-mail { margin: 4px 0 0; font-size: 15px; color: #5b6e7d; overflow-wrap: anywhere; }
.account-2026 .acc-tags { display: flex; flex-wrap: wrap; gap: 6px; margin: 12px 0 0; padding: 0; list-style: none; }
.account-2026 .acc-tags li { padding: 5px 11px; border-radius: 999px; background: #f3f6f8; color: #22384a; font: 700 12.5px "Gilroy", system-ui, sans-serif; }
.account-2026 .acc-tags .is-role { background: #0e2233; color: #fff; }
.account-2026 .acc-tags .is-ok { background: #e3f5f1; color: #0f766e; }
.account-2026 .acc-tags .is-warn { background: #fff4e0; color: #a45a07; }
.account-2026 .acc-actions { display: flex; flex-direction: column; gap: 8px; align-items: stretch; }
.account-2026 .acc-actions form { margin: 0; }
.account-2026 .acc-actions .button { width: 100%; justify-content: center; }

.account-2026 .acc-layout { display: grid; grid-template-columns: 250px minmax(0, 1fr); gap: 28px; align-items: start; }
.account-2026 .acc-side { position: sticky; top: 104px; display: grid; gap: 6px; }
.account-2026 .acc-side-title { margin: 8px 0 4px; font: 700 10.5px "Gilroy", system-ui, sans-serif; letter-spacing: .14em; text-transform: uppercase; color: #8a9aa6; }
.account-2026 .acc-spaces { display: grid; gap: 4px; margin-bottom: 10px; }
.account-2026 .acc-spaces a { display: flex; align-items: center; gap: 12px; padding: 11px 13px; border-radius: 12px; background: #fff; border: 1px solid #e3e9ee; color: #0e2233; font: 700 14.5px "Gilroy", system-ui, sans-serif; text-decoration: none; transition: border-color .15s, box-shadow .15s; }
.account-2026 .acc-spaces a:hover { border-color: #075985; box-shadow: 0 8px 20px rgba(14, 34, 51, .08); }
.account-2026 .acc-spaces svg { flex: none; color: #075985; }
.account-2026 .acc-spaces b { margin-left: auto; min-width: 22px; padding: 0 7px; border-radius: 999px; background: #b93a28; color: #fff; font-size: 12px; line-height: 22px; text-align: center; }
.account-2026 .account-sectionnav { display: grid !important; gap: 2px; margin: 0 !important; padding: 0 !important; border: 0 !important; background: none !important; position: static !important; }
.account-2026 .account-sectionnav a { display: block; padding: 9px 13px !important; border: 0 !important; border-radius: 10px !important; background: none !important; color: #22384a !important; font: 600 14.5px "Gilroy", system-ui, sans-serif !important; letter-spacing: 0 !important; text-transform: none !important; text-decoration: none; }
.account-2026 .account-sectionnav a:hover, .account-2026 .account-sectionnav a.is-current { background: #e0f2fe !important; color: #075985 !important; }
.account-2026 .account-sectionnav a.is-danger { color: #b93a28 !important; }

.account-2026 .account-grid { display: grid !important; grid-template-columns: 1fr !important; gap: 22px !important; }
.account-2026 .account-card, .account-2026 .security-card, .account-2026 .account-danger { border: 1px solid #e3e9ee !important; border-radius: 20px !important; background: #fff !important; box-shadow: 0 1px 2px rgba(14, 34, 51, .04) !important; }
.account-2026 .account-card { padding: 8px 28px 24px !important; }
.account-2026 .account-fieldset { margin: 0 !important; padding: 24px 0 !important; border: 0 !important; border-bottom: 1px solid #eef2f5 !important; scroll-margin-top: 110px; }
.account-2026 .account-section-title, .account-2026 .account-aside-title { display: block; margin: 0 0 16px !important; padding: 0 !important; font: 800 19px/1.2 "Gilroy", system-ui, sans-serif !important; letter-spacing: -.02em !important; text-transform: none !important; color: #0e2233 !important; }
.account-2026 .account-section-title::after, .account-2026 .account-aside-title::after { content: ""; display: block; width: 32px; height: 3px; margin-top: 9px; border-radius: 3px; background: #b93a28; }
.account-2026 .field label { font: 700 13.5px "Gilroy", system-ui, sans-serif !important; color: #0e2233 !important; text-transform: none !important; letter-spacing: 0 !important; }
.account-2026 .field input, .account-2026 .field select, .account-2026 .field textarea { min-height: 48px; border: 1.5px solid #cfd9e0 !important; border-radius: 12px !important; background: #fff !important; font: 500 15.5px "Gilroy", system-ui, sans-serif !important; color: #0e2233 !important; }
.account-2026 .field textarea { min-height: 120px; }
.account-2026 .field input:focus, .account-2026 .field select:focus, .account-2026 .field textarea:focus { border-color: #075985 !important; box-shadow: 0 0 0 4px #e0f2fe !important; outline: 0 !important; }
.account-2026 .field input:disabled { background: #f3f6f8 !important; color: #5b6e7d !important; }
.account-2026 .check-grid .check { padding: 12px 14px; border: 1px solid #e3e9ee; border-radius: 12px; background: #fbfcfd; }
.account-2026 .account-form-actions { position: sticky; bottom: 12px; z-index: 5; display: flex; align-items: center; justify-content: space-between; gap: 14px; margin: 18px -12px 0; padding: 12px 12px 12px 18px; border-radius: 16px; background: rgba(255, 255, 255, .96); box-shadow: 0 0 0 1px #e3e9ee, 0 12px 30px rgba(14, 34, 51, .12); }
.account-2026 .account-aside { display: grid !important; gap: 22px !important; }
.account-2026 .account-security { display: grid; gap: 16px; scroll-margin-top: 110px; }
.account-2026 .security-card { padding: 22px 24px !important; }
.account-2026 .security-card h3 { font: 800 16.5px "Gilroy", system-ui, sans-serif; color: #0e2233; }
.account-2026 .account-danger { padding: 22px 24px !important; border-color: #f1c9c2 !important; scroll-margin-top: 110px; }
.account-2026 .account-danger .account-aside-title { color: #b93a28 !important; }

@media (max-width: 1080px) {
    html body:not(.page-home) main .auth-page.account-2026 { padding-top: 18px !important; }
    .account-2026 .acc-top { grid-template-columns: auto 1fr; padding: 20px; gap: 16px; border-radius: 20px; }
    .account-2026 .acc-avatar { width: 60px; height: 60px; border-radius: 18px; font-size: 26px; }
    .account-2026 .acc-avatar::after { left: 17px; right: 17px; bottom: 10px; }
    .account-2026 .acc-actions { grid-column: 1 / -1; flex-direction: row; }
    .account-2026 .acc-actions > * { flex: 1; }
    .account-2026 .acc-layout { grid-template-columns: 1fr; gap: 18px; }
    .account-2026 .acc-side { position: static; }
    .account-2026 .acc-spaces { grid-template-columns: repeat(2, minmax(0, 1fr)); }
    .account-2026 .acc-spaces a { padding: 12px; font-size: 14px; }
    .account-2026 .account-sectionnav { display: flex !important; gap: 6px; overflow-x: auto; margin: 0 -16px !important; padding: 2px 16px 6px !important; scrollbar-width: none; }
    .account-2026 .account-sectionnav::-webkit-scrollbar { display: none; }
    .account-2026 .account-sectionnav a { flex: none; background: #fff !important; box-shadow: inset 0 0 0 1px #e3e9ee; white-space: nowrap; }
    .account-2026 .account-card { padding: 4px 18px 18px !important; }
    .account-2026 .security-card, .account-2026 .account-danger { padding: 18px !important; }
    .account-2026 .account-form-actions { bottom: calc(80px + env(safe-area-inset-bottom)); margin: 14px -6px 0; }
    .account-2026 .account-save-note { display: none; }
    .account-2026 .account-form-actions .button { flex: 1; justify-content: center; }
}
html body:not(.page-home) main .auth-page.account-2026 .acc-tags li { color: #22384a !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags li.is-role { color: #fff !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags li.is-ok { color: #0f766e !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags li.is-warn { color: #a45a07 !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-over { color: #8a9aa6 !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-avatar { color: #f4f7f9 !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-spaces span { color: #0e2233 !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-spaces b { color: #fff !important; }
@media (max-width: 560px) {
    .account-2026 .acc-top { grid-template-columns: 56px 1fr; align-items: start; }
    .account-2026 .acc-avatar { width: 56px; height: 56px; font-size: 24px; }
    .account-2026 .acc-avatar::after { left: 16px; right: 16px; bottom: 9px; }
    .account-2026 .acc-id h1 { font-size: 24px; }
}
html body:not(.page-home) main .auth-page.account-2026 .acc-tags { display: flex !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags a { color: inherit !important; text-decoration: none; }
html body:not(.page-home) main .auth-page .auth-key-note { grid-column: 1 / -1; margin: 4px 0 2px; padding: 12px 14px 12px 16px; border-radius: 12px; background: #e0f2fe; box-shadow: inset 3px 0 0 #075985; color: #0e2233 !important; font-size: 14px; line-height: 1.5; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags { flex-flow: row wrap !important; grid-template-columns: none !important; }
html body:not(.page-home) main .auth-page.account-2026 .acc-tags li { width: auto !important; flex: none !important; margin: 0 !important; }

/* ================= ARTICLES / NEWS / TECHBLOG — layout fixes (2026-09-28) ================= */

/* 1. Reading surfaces and list rows must never move or grow a card on hover.
      The generic "lift every <article>" rule above was lifting the whole article body. */
html body main :is(.news-story, .techblog-article, .news-rail-item, .articles-row, .articles-lead),
html body main :is(.news-story, .techblog-article, .news-rail-item, .articles-row, .articles-lead):hover {
  transform: none !important;
  box-shadow: none !important;
  background: transparent !important;
}
/* list rows: feedback through the title and the arrow only */
html body main :is(.articles-row, .articles-lead, .news-rail-item) :is(h2, h3) { transition: color .25s var(--ease); }
html body main :is(.articles-row, .articles-lead, .news-rail-item):hover :is(h2, h3) { color: var(--L-accent-bright, #075985) !important; }
html body main :is(.articles-row, .articles-lead, .news-rail-item) img { transition: filter .3s var(--ease); }
html body main :is(.articles-row, .articles-lead, .news-rail-item):hover img { filter: saturate(1.08) contrast(1.04); }
/* titles inside cards are headings, not underlined links */
html body main :is(.news-rail-item, .articles-row, .articles-lead, .news-card, .techblog-entry) a:hover,
html body main :is(.news-rail-item, .articles-row, .articles-lead, .news-card, .techblog-entry) a { background-image: none !important; }
/* grid cards keep a quiet lift, shadow only (no jump of neighbours) */
html body main :is(.news-card, .techblog-entry):hover { transform: translateY(-2px); }

/* 2. Article column: heading, cover, body, share and notes share one width and one left edge */
html body .news-story > * { max-width: 700px !important; width: 100%; }
html body .news-cover { max-width: 700px !important; margin: 0 0 28px !important; }
html body .news-cover img { width: 100% !important; border-radius: 14px !important; }
html body .news-prose { max-width: 700px !important; }
html body .news-share, html body .news-method, html body .news-contents { max-width: 700px !important; }

/* 3. "Derniers articles" rail: one consistent card rhythm */
html body .news-rail-item { padding: 18px 0 !important; }
html body .news-rail-item a { grid-template-columns: 72px minmax(0, 1fr) !important; gap: 14px !important; align-items: start; }
html body .news-rail-item img { width: 72px !important; height: 72px !important; border-radius: 10px !important; }
html body .news-rail-lead a { display: block !important; }
html body .news-rail-lead img { width: 100% !important; height: auto !important; aspect-ratio: 16/10; border-radius: 14px !important; margin-bottom: 14px !important; }
html body .news-rail-item h3 { font-size: 16px !important; line-height: 1.3 !important; margin: 6px 0 6px !important; text-wrap: pretty; }
html body .news-rail-lead h3 { font-size: 19px !important; line-height: 1.25 !important; }
/* category label: one line, small, no heavy pill */
html body main .news-rail-item .news-label {
  display: block !important; max-width: 100%; padding: 0 !important; border: 0 !important; background: none !important;
  font-size: 11px !important; line-height: 1.4 !important; font-weight: 700 !important; letter-spacing: .04em; text-transform: uppercase;
  white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: #0a6f6b !important; -webkit-text-fill-color: #0a6f6b !important;
}
html body .news-rail-item time { display: block; margin-top: 2px; }

/* 4. TechBlog article: same single column discipline */
html body .techblog-article :is(figure, img) { max-width: 100%; }
html body .techblog-article:hover { transform: none !important; }

/* 5. Cards get real inner padding and more width (nothing touches the card edge) */
/* "À lire aussi" / related cards */
html body main .news-card { border-radius: 16px !important; overflow: hidden; }
html body main .news-card :is(.news-label, h2, h3, p, time, [class*="more"], [class*="meta"]),
html body main .news-card > a:not(.fx-img-wrap),
html body main .news-card > a > :not(img):not(picture):not(.fx-img-wrap) { margin-left: 22px !important; margin-right: 22px !important; }
html body main .news-card .news-label { margin-top: 18px !important; display: inline-block; }
html body main .news-card > a > :last-child, html body main .news-card > :last-child:not(a) { margin-bottom: 22px !important; }
html body main .news-card img { border-radius: 0 !important; }
/* right rail: wider column, each item is a padded card */
@media (min-width: 961px) {
  html body .news-layout { grid-template-columns: minmax(0, 700px) minmax(300px, 340px) !important; gap: 48px !important; }
}
html body .news-rail { padding-left: 28px !important; }
html body .news-rail-item { padding: 16px !important; margin: 0 0 12px !important; border: 1px solid rgba(14,34,51,.1) !important; border-radius: 16px !important; background: #fff !important; }
html body .news-rail-item:hover { background: #fff !important; border-color: rgba(7,89,133,.35) !important; }
html body .news-rail-lead { padding: 0 0 16px !important; overflow: hidden; }
html body .news-rail-lead img { border-radius: 16px 16px 0 0 !important; margin-bottom: 14px !important; }
html body .news-rail-lead a > :not(img) { margin-left: 16px !important; margin-right: 16px !important; }
html body .news-all { margin-top: 6px; }
/* news + author lists: rows become padded cards */
html body main :is(.articles-row, .articles-lead) { padding: 20px 24px !important; margin-bottom: 14px !important; border: 1px solid rgba(14,34,51,.1) !important; border-radius: 18px !important; background: #fff !important; }
html body main :is(.articles-row, .articles-lead):hover { background: #fff !important; border-color: rgba(7,89,133,.35) !important; }
html body main :is(.articles-row-cover, .articles-lead-cover) img { border-radius: 12px !important; }
html body main .articles-row-arrow { margin-right: 4px; }
@media (max-width: 760px) {
  html body main :is(.articles-row, .articles-lead) { padding: 16px !important; }
  html body .news-rail { padding-left: 0 !important; }
}

/* PWA install chip: solid surface (the light remap had made it a 10% transparent tint over the content) */
html body .pwa-chip {
  background: #FFFFFF !important;
  color: #0E2233 !important;
  border: 1.5px solid rgba(14, 34, 51, 0.18) !important;
  box-shadow: 0 10px 28px rgba(14, 34, 51, 0.16) !important;
}
html body .pwa-chip button { background: transparent !important; color: inherit !important; border: 0 !important; box-shadow: none !important; font-weight: 600; }
html body .pwa-chip .pwa-chip-go:hover, html body .pwa-chip .pwa-chip-x:hover { background: rgba(14, 34, 51, 0.08) !important; }

/* Footer owl + social links: one centred unit under the identity column (the 24.09 layer had pushed
   them to the left edge while the social links kept fixed 102/112px boxes, so they drifted apart). */
@media (min-width: 761px) {
  html body .site-footer .footer-owl-cluster { align-items: center !important; }
  html body .site-footer .footer-owl { width: 100% !important; display: grid !important; place-items: center !important; }
  html body .site-footer .footer-owl img { width: 132px !important; margin: 0 auto !important; }
  html body .site-footer .footer-main .footer-owl-cluster > .footer-social-brands,
  html body .site-footer .footer-social-brands { width: auto !important; justify-content: center !important; align-items: center !important; gap: 24px !important; }
  html body .site-footer .footer-social-brands > a { width: auto !important; min-width: 0 !important; }
}

/* Footer social logos: same height, one centre line, tight pair (placed in the bottom-left corner below) */
@media (min-width: 761px) {
  html body .site-footer .footer-social-brands { display: flex !important; flex-wrap: nowrap !important; justify-content: center !important; align-items: center !important; gap: 14px !important; width: 100% !important; margin: 0 !important; padding: 0 !important; }
  html body .site-footer .footer-social-brands > a { display: inline-flex !important; align-items: center !important; justify-content: center !important; height: 32px !important; min-height: 32px !important; padding: 0 !important; margin: 0 !important; width: auto !important; min-width: 0 !important; line-height: 1 !important; }
  html body .site-footer .footer-social-brands > .footer-linkedin svg { display: block; height: 21px !important; width: auto !important; }
  html body .site-footer .footer-social-brands > .footer-facebook { gap: 6px !important; }
  html body .site-footer .footer-social-brands > .footer-facebook svg { display: block; width: 21px !important; height: 21px !important; }
  html body .site-footer .footer-social-brands > .footer-facebook span { display: block; font-size: 16px !important; line-height: 21px !important; font-weight: 700; }
}
@media (min-width: 761px) {
  html body .site-footer .footer-main .footer-owl-cluster > .footer-social-brands { gap: 14px !important; }
  html body .site-footer .footer-owl-cluster { gap: 14px !important; }
  html body .site-footer .footer-owl { min-height: 0 !important; padding: 0 !important; height: auto !important; }
}
/* Social links sit in the bottom-left corner of the identity column, on the left edge of the bank details. */
@media (min-width: 761px) {
  html body .site-footer .footer-owl-cluster { justify-content: flex-start !important; flex: 1 1 auto !important; }
  html body .site-footer .footer-owl { flex: 0 0 auto !important; }
  html body .site-footer .footer-owl img { margin-bottom: -14px !important; }
  html body .site-footer .footer-main .footer-owl-cluster > .footer-social-brands { width: auto !important; align-self: flex-start !important; justify-content: flex-start !important; margin-top: auto !important; margin-bottom: 7px !important; }
}
/* One-row footer (5 columns from 1121px; observatory.css wraps it at 1120px, style.css at 1080px): drop them into the bottom padding so they end 9px above the
   newsletter rule (the column ends 7px under the last link, then 40px of padding: 7 + 40 - 9 = 38).
   Narrower: the grid wraps and the next row starts right under the identity column. */
@media (min-width: 1121px) {
  html body .site-footer .footer-main .footer-owl-cluster > .footer-social-brands { position: relative !important; top: 38px !important; }
}
/* Facebook logo was painted dark (#10212e) on every page except home, invisible on the dark footer */
html body .site-footer .footer-main .footer-social-brands > .footer-facebook,
html body:not(.page-home) .site-footer .footer-main .footer-social-brands > .footer-facebook { color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; }
html body .site-footer .footer-social-brands > .footer-facebook svg path { fill: currentColor !important; }
html body .site-footer .footer-social-brands > .footer-facebook span { color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; opacity: 1 !important; }
html body .site-footer.site-footer .footer-main .footer-social-brands > a.footer-facebook span { color: #FFFFFF !important; -webkit-text-fill-color: #FFFFFF !important; opacity: 1 !important; }
/* Logo divider: the base style is white for the old dark header; the header is light on every redesigned page, home included. */
html body .site-header .brand span{border-left:1px solid rgba(14,34,51,.3) !important}

/* Bandeaux « nouvelles plateformes » (accueil) : carte Jobs horizontale + carte Market
   verticale ou le robot sur sa tour de materiel deborde du cadre. Trait encre et
   ombre pleine, meme famille que les autocollants de jobs/market et les illustrations Gemini. */
main > section.home-launch { background: #fff; }
/* Le robot Market deborde de 40px : on remplace le grand padding generique des sections. */
main > section.home-launch:not(.hero):not(.home-tech-news):not(.principles):not(.partnership-cta) { padding-top: 8px !important; }
.home-launch-grid { display: grid; grid-template-columns: 224px minmax(0, 1fr) 280px; gap: 24px; align-items: stretch; padding-top: 52px; max-width: 1340px; margin-inline: auto; }
.home-launch-card { display: grid; grid-template-columns: 236px 1fr; align-items: center; align-content: center; gap: 10px 24px;
    padding: 16px 28px 16px 16px; background: #f2fbf6; color: #10212e;
    border: 2px solid #10212e; border-radius: 18px; box-shadow: 5px 5px 0 #10212e; }
.home-launch-art { display: block; width: 100%; height: auto; }
.home-launch-copy { min-width: 0; }
.home-launch-tag { display: inline-block; padding: 2px 8px; border-radius: 6px; background: #e8663d; color: #fff;
    font-size: 12px; font-weight: 800; letter-spacing: .08em; text-transform: uppercase; transform: rotate(-3deg); }
.home-launch .home-launch-title, .home-launch .home-launch-market-title { margin: 10px 0 0; font-weight: 800; letter-spacing: -.02em; color: #10212e; }
html body main .home-launch .home-launch-title { font-size: 22px !important; line-height: 1.15 !important; }
.home-launch .fx-rule { display: none !important; }
/* redesign.js peut prendre ces illustrations pour des photos (CSS pas encore charge au 1er passage) :
   pas de cadre overflow:hidden ni de zoom, sinon le robot qui deborde est coupe. */
.home-launch .fx-img-wrap { overflow: visible !important; }
.home-launch img.fx-kb, .home-launch img.fx-kb.fx-kb-in { transform: none !important; transition: none !important; }
.home-launch-text { margin: 8px 0 0; max-width: 60ch; font-size: 15px; line-height: 1.55; color: #3c4d59; text-wrap: pretty; }
.home-launch-cta { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 14px; }
.home-launch .home-launch-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; padding: 0 18px; border: 2px solid #10212e;
    border-radius: 10px; font-size: 14px; font-weight: 700; text-decoration: none; box-shadow: 3px 3px 0 #10212e;
    transition: transform .15s ease, box-shadow .15s ease; }
.home-launch .home-launch-btn:hover { transform: translate(-1px, -1px); box-shadow: 4px 4px 0 #10212e; }
.home-launch .home-launch-btn:active { transform: translate(2px, 2px); box-shadow: 1px 1px 0 #10212e; }
.home-launch .home-launch-btn:focus-visible { outline: 3px solid #22b8ee; outline-offset: 3px; }
html body main .home-launch .home-launch-btn-jobs { background: #13803f; color: #fff !important; }
html body main .home-launch .home-launch-btn-ink { background: #fff; color: #10212e !important; }
html body main .home-launch .home-launch-btn-market { background: #b9551d; color: #fff !important; }
.home-launch-facts { grid-column: 1 / -1; display: flex; flex-wrap: wrap; gap: 6px 18px; margin: 2px 0 0; padding: 10px 0 0 4px;
    list-style: none; border-top: 2px dashed rgba(16, 33, 46, .28); }
.home-launch-facts li { display: flex; align-items: center; gap: 7px; margin: 0; font-size: 13px; font-weight: 700; line-height: 1.35; color: #10212e; }
.home-launch-facts svg { flex: none; padding: 2px; border-radius: 50%; background: #13803f; color: #fff; }

.home-launch-market { position: relative; display: flex; flex-direction: column; align-items: flex-start; padding: 0 18px 16px;
    background: #fbf1ea; color: #10212e; border: 2px solid #10212e; border-radius: 18px; box-shadow: 5px 5px 0 #10212e; }
.home-launch-market-art { display: block; width: 74px; height: auto; margin: -58px auto 2px; filter: drop-shadow(3px 4px 0 rgba(16, 33, 46, .15)); }
.home-launch-market .home-launch-tag { background: #b9551d; }
.home-launch-market.is-soon .home-launch-tag { background: #10212e; }
html body main .home-launch .home-launch-market-title { margin-top: 8px; font-size: 18px !important; line-height: 1.2 !important; }
.home-launch-market > * { justify-self: start; }
.home-launch-market-text { margin: 6px 0 12px; font-size: 13.5px; line-height: 1.5; color: #4a4036; text-wrap: pretty; }
.home-launch-market .home-launch-btn { margin-top: auto; align-self: stretch; }

/* Carte partenaire WEBURL : codes de weburl.be (papier, encre, rouge #cd0402, angles droits,
   trame d'impression dans un cercle trace a la main, note au feutre) pour trancher avec les deux cartes IBCSC. */
.home-launch .home-launch-weburl { position: relative; display: flex; flex-direction: column; padding: 12px 16px 16px; background: #fbf2ee; color: #0d0d0d;
    border: 2px solid #0d0d0d; border-radius: 18px; box-shadow: 5px 5px 0 #cd0402; text-decoration: none; overflow: hidden;
    transition: transform .15s ease, box-shadow .15s ease; }
.home-launch .home-launch-weburl:hover { transform: translate(-1px, -1px); box-shadow: 6px 6px 0 #cd0402; }
.home-launch .home-launch-weburl:focus-visible { outline: 3px solid #cd0402; outline-offset: 3px; }
.hw-tag { align-self: flex-end; margin-right: 2px; font: 500 9px/1.2 "WB Mono", ui-monospace, monospace; letter-spacing: .06em; text-transform: uppercase; color: #7a736e; }
.hw-visual { position: relative; display: block; width: 116px; height: 116px; margin: 10px 0 14px 8px; }
.hw-photo { display: block; width: 100%; height: 100%; border-radius: 50%; }
.hw-ring { position: absolute; inset: -9px; width: calc(100% + 18px); height: calc(100% + 18px); overflow: visible; }
.hw-ring path { fill: none; stroke: #cd0402; stroke-width: 2.4; stroke-linecap: round; vector-effect: non-scaling-stroke; stroke-dasharray: 1; stroke-dashoffset: 0; transition: stroke-dashoffset .9s cubic-bezier(.22, 1, .36, 1); }
.home-launch-weburl:hover .hw-ring path { animation: hw-draw .9s cubic-bezier(.22, 1, .36, 1); }
@keyframes hw-draw { from { stroke-dashoffset: 1; } to { stroke-dashoffset: 0; } }
.hw-note { position: absolute; left: 104%; top: 0; width: 74px; font: 400 13px/1.05 "WB Hand", cursive; color: #cd0402; transform: rotate(-7deg); }
.hw-note svg { display: block; width: 34px; height: 18px; margin: 3px 0 0 -6px; overflow: visible; }
.hw-note path { fill: none; stroke: #cd0402; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.hw-brand { display: flex; flex-direction: column; gap: 4px; }
.hw-brand img { width: 84px; height: auto; }
.hw-dept { font: 500 9px/1.3 "WB Mono", ui-monospace, monospace; letter-spacing: .05em; text-transform: uppercase; color: #57504b; }
.hw-title { display: block; margin: 8px 0 14px; font-family: "WB Gilroy", Gilroy, sans-serif; font-size: 22px; line-height: 1.02; letter-spacing: -.035em; color: #0d0d0d; }
.hw-title b { font-weight: 900; }
.hw-title span { font-weight: 200; }
.hw-title .hw-red { color: #cd0402; }
.hw-cta { margin-top: auto; display: flex; align-items: center; justify-content: space-between; min-height: 40px; padding: 0 14px; border-radius: 10px; background: #cd0402; color: #fff;
    font-size: 15px; font-weight: 600; letter-spacing: -.01em; transition: background .2s ease; }
.hw-cta i { font-style: normal; transition: transform .2s ease; }
.home-launch-weburl:hover .hw-cta { background: #a80302; }
.home-launch-weburl:hover .hw-cta i { transform: translateX(3px); }
/* La police Gilroy du site est imposee partout : on reprend la main pour les polices WEBURL. */
html body main .home-launch-weburl :is(.hw-tag, .hw-dept) { font-family: "WB Mono", ui-monospace, monospace !important; }
html body main .home-launch-weburl .hw-note { font-family: "WB Hand", cursive !important; }
html body main .home-launch-weburl :is(.hw-title, .hw-title b, .hw-title span) { font-family: "WB Gilroy", Gilroy, sans-serif !important; }
@media (prefers-reduced-motion: reduce) { .home-launch-weburl:hover .hw-ring path { animation: none; } .hw-cta, .hw-cta i, .home-launch .home-launch-weburl { transition: none; } }
@media (prefers-reduced-motion: reduce) { .home-launch .home-launch-btn { transition: none; } }
@media (max-width: 1279px) {
    .home-launch-grid { grid-template-columns: minmax(0, 1fr) 280px; }
    .home-launch .home-launch-weburl { order: 3; grid-column: 1 / -1; display: grid; grid-template-columns: 112px 1fr auto; grid-template-rows: auto auto auto; align-items: center; column-gap: 22px; padding: 14px 18px 14px 16px; }
    .hw-tag { position: absolute; top: 8px; right: 10px; }
    .hw-visual { grid-row: 1 / 4; width: 96px; height: 96px; margin: 8px; }
    .hw-note { display: none; }
    .hw-title { margin: 6px 0 0; font-size: 20px; }
    .hw-cta { grid-column: 3; grid-row: 1 / 4; margin: 0; gap: 10px; }
}
@media (max-width: 1100px) {
    .home-launch-grid { grid-template-columns: 1fr; gap: 28px; padding-top: 20px; }
    .home-launch-market { display: grid; grid-template-columns: 120px 1fr; grid-template-rows: auto auto auto auto; column-gap: 20px; padding: 18px 22px 20px; }
    .home-launch-market-art { grid-row: 1 / 5; width: 120px; margin: -64px 0 0; align-self: end; }
    .home-launch-market .home-launch-btn { margin-top: 0; justify-self: start; }
}
@media (max-width: 760px) {
    .home-launch-card { grid-template-columns: 1fr; gap: 8px; padding: 16px 16px 20px; box-shadow: 4px 4px 0 #10212e; }
    .home-launch-art { max-width: 180px; margin: 0 auto; }
    .home-launch-text { font-size: 15px; }
    html body main .home-launch .home-launch-title { font-size: 21px !important; }
    .home-launch-facts { display: none; }
    .home-launch-cta .home-launch-btn { flex: 1 1 auto; }
    .home-launch-market { grid-template-columns: 92px 1fr; column-gap: 14px; padding: 16px; box-shadow: 4px 4px 0 #10212e; }
    .home-launch-market-art { width: 92px; margin-top: -48px; }
    .home-launch-market .home-launch-btn { grid-column: 1 / -1; justify-self: stretch; margin-top: 4px; }
    .home-launch .home-launch-weburl { grid-template-columns: 76px 1fr; column-gap: 14px; padding: 22px 14px 14px; }
    .hw-visual { grid-row: 1 / 3; width: 70px; height: 70px; margin: 6px; }
    .hw-title { font-size: 18px; }
    .hw-cta { grid-column: 1 / -1; grid-row: auto; margin-top: 12px; justify-content: space-between; }
}

/* ================= NEWSLETTER — footer band + /newsletter page (2026-10-03) ================= */
.site-footer .footer-newsletter { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1.15fr); gap: 18px 40px; align-items: center; padding-top: 28px; padding-bottom: 28px; border-top: 1px solid var(--L-line); }
.site-footer .footer-newsletter h2 { margin: 0 0 6px; font-size: 1.25rem; letter-spacing: -.01em; }
.site-footer .footer-newsletter-copy p { margin: 0; font-size: .92rem; line-height: 1.55; }
.nl-form { display: grid; gap: 10px; margin: 0; }
.nl-form-hp { position: absolute !important; left: -9999px !important; width: 1px; height: 1px; overflow: hidden; }
.nl-form-row { display: flex; gap: 8px; }
.nl-form-row input { flex: 1 1 auto; min-width: 0; min-height: 48px; padding: 0 16px; border: 1px solid #c9d4dc; border-radius: 12px; background: #fff; color: #0e2233; font: 500 16px/1.2 Gilroy, system-ui, sans-serif; }
.nl-form-row input:focus { outline: 0; border-color: #087394; box-shadow: 0 0 0 4px rgba(8, 115, 148, .16); }
.nl-form-row .button { flex: 0 0 auto; min-height: 48px; border-radius: 12px; white-space: nowrap; }
.nl-form-consent { display: flex; gap: 10px; align-items: flex-start; font-size: .84rem; line-height: 1.5; cursor: pointer; }
.nl-form-consent input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #087394; }
.nl-form-consent a { text-decoration: underline; }
.nl-page { padding: clamp(48px, 8vw, 96px) 0; background: #f5f4f0; }
.nl-page-inner { max-width: 640px; }
.nl-page-mark { display: grid; place-items: center; width: 56px; height: 56px; margin-bottom: 18px; border-radius: 16px; background: #e0f2fe; color: #075985; }
.nl-page h1 { margin: 0 0 14px; font-size: clamp(2rem, 6vw, 2.8rem); line-height: 1.08; letter-spacing: -.03em; color: #0e2233; }
.nl-page p { margin: 0 0 22px; font-size: 1.05rem; line-height: 1.6; color: #364b5b; }
.nl-page .nl-state { padding: 16px 18px; border-radius: 14px; border: 1px solid; }
.nl-page .nl-state.is-good { background: #e3f5f1; border-color: #b7e3d8; color: #0f5e57; }
.nl-page .nl-state.is-bad { background: #fff4e0; border-color: #f2d29c; color: #7a4305; }
.nl-page .nl-form-consent { color: #364b5b; }
@media (max-width: 760px) {
  .site-footer .footer-newsletter { grid-template-columns: 1fr; }
}
@media (max-width: 440px) {
  .nl-form-row { flex-direction: column; }
  .nl-form-row .button { width: 100%; }
}

/* ================= NEWSLETTER — topics + preference centre (2026-10-03) ================= */
.nl-form-topics { display: flex; flex-wrap: wrap; gap: 8px; margin: 0; padding: 0; border: 0; min-width: 0; }
.nl-form-topics legend { width: 100%; margin: 0 0 8px; padding: 0; font-size: .86rem; font-weight: 700; }
.nl-topic { display: inline-flex; align-items: center; gap: 8px; min-height: 40px; padding: 0 14px; border: 1px solid #c9d4dc; border-radius: 999px; font-size: .88rem; cursor: pointer; user-select: none; }
.nl-topic input { width: 16px; height: 16px; margin: 0; accent-color: #087394; }
.nl-topic:has(input:checked) { border-color: #087394; background: #e0f2fe; color: #075985; }
.site-footer .nl-topic { border-color: rgba(255, 255, 255, .28); }
.site-footer .nl-topic:has(input:checked) { border-color: #7dd3fc; background: rgba(125, 211, 252, .14); }
.site-footer .nl-topic:has(input:checked) span { color: #ffffff !important; }
.nl-form-note { margin: 0 !important; font-size: .8rem !important; opacity: .85; }
.nl-prefs { display: grid; gap: 22px; margin: 0 0 26px; }
.nl-prefs fieldset { display: grid; gap: 10px; margin: 0; padding: 0; border: 0; min-width: 0; }
.nl-prefs legend { margin: 0 0 10px; padding: 0; font-size: 1.05rem; font-weight: 800; color: #0e2233; }
.nl-prefs-email { margin: 0 !important; font-size: .95rem !important; }
.nl-choice { display: flex; gap: 12px; align-items: flex-start; padding: 14px 16px; border: 1px solid #d1d8dd; border-radius: 14px; background: #fff; cursor: pointer; }
.nl-choice:has(input:checked) { border-color: #087394; box-shadow: 0 0 0 3px rgba(8, 115, 148, .12); }
.nl-choice input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #087394; }
.nl-choice span { display: grid; gap: 3px; }
.nl-choice strong { color: #0e2233; font-size: .98rem; }
.nl-choice small { color: #5b6e7d; font-size: .86rem; line-height: 1.45; }
.nl-prefs-actions { display: flex; flex-wrap: wrap; gap: 10px; }
.nl-unsub-all { display: grid; justify-items: start; gap: 8px; padding-top: 22px; border-top: 1px solid #d1d8dd; }
.nl-unsub-all small { color: #5b6e7d; font-size: .86rem; }
/* Account: e-mail notification preferences */
.account-2026 .acc-notify-form { display: grid; gap: 10px; }
.account-2026 .acc-notify { display: flex; gap: 12px; align-items: flex-start; padding: 12px 14px; border: 1px solid #dfe6eb; border-radius: 12px; background: #fff; cursor: pointer; }
.account-2026 .acc-notify input { flex: 0 0 auto; width: 18px; height: 18px; margin: 2px 0 0; accent-color: #087394; }
.account-2026 .acc-notify span { display: grid; gap: 3px; }
.account-2026 .acc-notify strong { font-size: .95rem; color: #0e2233; }
.account-2026 .acc-notify small { font-size: .82rem; line-height: 1.45; color: #5b6e7d; }
.account-2026 .acc-notify.is-locked { cursor: default; background: #f5f7f9; }
.account-2026 .acc-notify-sub { margin: 10px 0 2px; font-size: 1rem; color: #0e2233; }
.account-2026 .acc-notify-freq { display: flex; flex-wrap: wrap; gap: 8px 16px; align-items: center; padding: 4px 2px; font-size: .9rem; }
.account-2026 .acc-notify-freq > span { width: 100%; font-weight: 700; color: #0e2233; }
.account-2026 .acc-notify-freq label { display: inline-flex; gap: 8px; align-items: center; cursor: pointer; }
.account-2026 .acc-notify-freq input { accent-color: #087394; }
.account-2026 .acc-notify-note { margin: 2px 0 4px; font-size: .82rem; color: #5b6e7d; }
.account-2026 .acc-notify-form .button { justify-self: start; }
