/* Sans ceci, le font boosting de Chrome mobile GONFLE des textes au rendu
   (invisible dans les styles calcules) — vecu : nav de recruter.html eclatee a 375px. */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
/* AgentMondial — public experience 2026
   This stylesheet is deliberately additive: each legacy page keeps its own
   functional markup and JavaScript contracts while sharing one visual system. */

:root {
  --am-ink: #11132b;
  --am-violet: #7c3aed;
  --am-blue: #2563eb;
  --am-cyan: #06b6d4;
  --am-coral: #ff5b6e;
  --am-orange: #ff9f43;
  --am-yellow: #ffd84d;
  --am-green: #34d399;
  --am-paper: #f7f8ff;
  --am-white: #fff;
  --am-night: #111544;
  --am-radius-xl: 36px;
  --am-radius-lg: 26px;
  --am-shadow: 0 30px 80px -42px rgba(39, 29, 105, .42), 0 12px 30px -22px rgba(17, 19, 43, .2);
  --am-rainbow: linear-gradient(115deg, var(--am-violet), var(--am-blue) 28%, var(--am-cyan) 51%, var(--am-green) 70%, var(--am-yellow) 84%, var(--am-coral));
}

body.am-home,
body.am-catalog,
body.am-recruit,
body.am-characters,
body.am-auth,
body.am-download,
body.am-data-delete {
  --bg: var(--am-paper);
  --bg2: #eef1ff;
  --surf: #fff;
  --surf2: #f0f2fb;
  --line: rgba(17, 19, 43, .09);
  --line2: rgba(17, 19, 43, .16);
  --txt: var(--am-ink);
  --muted: #5f647d;
  --faint: #858aa3;
  --accent: var(--am-violet);
  --grad: linear-gradient(120deg, var(--am-violet), var(--am-blue) 48%, var(--am-cyan));
  --grad-soft: linear-gradient(135deg, rgba(124, 58, 237, .11), rgba(6, 182, 212, .1));
  background:
    radial-gradient(900px 620px at -8% 9%, rgba(124, 58, 237, .12), transparent 67%),
    radial-gradient(780px 560px at 105% 28%, rgba(6, 182, 212, .11), transparent 68%),
    var(--am-paper);
  color: var(--am-ink);
}

:root[data-theme="dark"] body.am-home,
:root[data-theme="dark"] body.am-catalog,
:root[data-theme="dark"] body.am-recruit,
:root[data-theme="dark"] body.am-auth,
:root[data-theme="dark"] body.am-data-delete {
  --bg: #080d2e;
  --bg2: #111744;
  --surf: #141b4c;
  --surf2: #1d275b;
  --line: rgba(255, 255, 255, .11);
  --line2: rgba(255, 255, 255, .19);
  --txt: #fff;
  --muted: #b6bada;
  --faint: #8f96bb;
  background:
    radial-gradient(900px 620px at -8% 9%, rgba(124, 58, 237, .24), transparent 67%),
    radial-gradient(780px 560px at 105% 28%, rgba(6, 182, 212, .18), transparent 68%),
    #080d2e;
  color: #fff;
}

body.am-home::before,
body.am-catalog::before,
body.am-recruit::before,
body.am-auth::before,
body.am-data-delete::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: -1;
  opacity: .54;
  background-image: radial-gradient(rgba(65, 51, 148, .11) 1px, transparent 1px);
  background-size: 22px 22px;
  mask-image: linear-gradient(to bottom, #000, transparent 60%);
}

body.am-home .btn,
body.am-catalog .btn,
body.am-recruit .btn,
body.am-auth .btn,
body.am-download .btn,
body.am-data-delete .btn {
  min-height: 46px;
  border-radius: 15px;
  color: #fff;
  background: linear-gradient(115deg, var(--am-violet), var(--am-blue) 52%, var(--am-cyan));
  box-shadow: 0 16px 32px -18px rgba(76, 64, 220, .68);
}

body.am-home .btn.ghost,
body.am-catalog .btn.ghost,
body.am-recruit .btn.ghost,
body.am-auth .btn.ghost {
  color: var(--txt);
  border: 1px solid var(--line2);
  background: rgba(255, 255, 255, .32);
  box-shadow: none;
}
:root[data-theme="dark"] body.am-home .btn.ghost,
:root[data-theme="dark"] body.am-catalog .btn.ghost,
:root[data-theme="dark"] body.am-recruit .btn.ghost,
:root[data-theme="dark"] body.am-auth .btn.ghost { background: rgba(255, 255, 255, .065); }

body.am-home .btn:hover,
body.am-catalog .btn:hover,
body.am-recruit .btn:hover,
body.am-auth .btn:hover {
  transform: translateY(-2px) scale(1.01);
}

/* ---------- Homepage / cinematic hero ---------- */
body.am-home nav {
  top: 12px;
  width: min(1420px, calc(100% - 28px));
  margin: 0 auto;
  border: 1px solid rgba(255, 255, 255, .68);
  border-radius: 19px;
  background: rgba(255, 255, 255, .78);
  box-shadow: 0 18px 40px -30px rgba(17, 19, 43, .52);
}

body.am-home nav.scrolled {
  background: rgba(255, 255, 255, .92);
  border-color: rgba(17, 19, 43, .1);
}

:root[data-theme="dark"] body.am-home nav,
:root[data-theme="dark"] body.am-home nav.scrolled {
  background: rgba(9, 13, 43, .84);
  border-color: rgba(255, 255, 255, .14);
}

body.am-home nav .nav-links a,
body.am-home nav .theme-btn { color: #656b81; }
body.am-home nav .nav-links a:hover,
body.am-home nav .nav-links a.on,
body.am-home nav .theme-btn:hover { color: #11132b; }
:root[data-theme="dark"] body.am-home nav .nav-links a,
:root[data-theme="dark"] body.am-home nav .theme-btn { color: #aeb4d5; }
:root[data-theme="dark"] body.am-home nav .nav-links a:hover,
:root[data-theme="dark"] body.am-home nav .nav-links a.on { color: #fff; }
body.am-home nav .nav-pill { background: linear-gradient(90deg, var(--am-violet), var(--am-coral)); }
body.am-home nav .btn.ghost { color: var(--txt); border-color: var(--line2); background: rgba(255, 255, 255, .42); }
:root[data-theme="dark"] body.am-home nav .btn.ghost { background: rgba(255, 255, 255, .06); }

body.am-home header.hero {
  isolation: isolate;
  min-height: min(820px, calc(100vh - 30px));
  width: min(1460px, calc(100% - 28px));
  margin: 28px auto 0;
  padding: 0;
  border-radius: 42px;
  overflow: hidden;
  background: var(--am-night);
  box-shadow: 0 46px 110px -50px rgba(22, 19, 75, .62);
}

body.am-home .hero-video-stage {
  position: absolute;
  inset: 0;
  z-index: 0;
  overflow: hidden;
  background: #111544 url("hero-agents-poster.webp?v=1") center / cover no-repeat;
}

body.am-home .hero-video-stage::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 2;
  background:
    linear-gradient(90deg, rgba(8, 10, 39, .98) 0%, rgba(8, 10, 39, .91) 33%, rgba(8, 10, 39, .56) 56%, rgba(8, 10, 39, .15) 82%),
    linear-gradient(0deg, rgba(8, 10, 39, .68), transparent 48%);
}

body.am-home .hero-video-stage::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 3;
  pointer-events: none;
  background:
    radial-gradient(560px 320px at 74% 15%, rgba(255, 91, 110, .28), transparent 68%),
    radial-gradient(620px 360px at 92% 92%, rgba(6, 182, 212, .28), transparent 70%);
  mix-blend-mode: screen;
}

body.am-home .hero-video-stage video {
  width: 100%;
  height: 100%;
  display: block;
  object-fit: cover;
  object-position: center;
  transform: scale(1.015);
}

body.am-home .hero-live,
body.am-home .hero-video-toggle {
  position: absolute;
  z-index: 5;
  color: #fff;
  border: 1px solid rgba(255, 255, 255, .28);
  background: rgba(12, 15, 49, .56);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  box-shadow: 0 14px 30px -22px rgba(0, 0, 0, .65);
}

body.am-home .hero-live {
  top: 28px;
  right: 30px;
  display: flex;
  align-items: center;
  gap: 9px;
  padding: 9px 13px;
  border-radius: 999px;
  font-size: 12px;
  font-weight: 750;
}

body.am-home .hero-live i {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: var(--am-green);
  box-shadow: 0 0 0 5px rgba(52, 211, 153, .16), 0 0 16px rgba(52, 211, 153, .8);
}

body.am-home .hero-video-toggle {
  right: 30px;
  bottom: 28px;
  min-height: 42px;
  padding: 0 14px;
  border-radius: 13px;
  font: 700 12px/1 var(--sans, Inter, sans-serif);
  cursor: pointer;
}

body.am-home header.hero > .wrap {
  position: relative;
  z-index: 4;
  min-height: inherit;
  display: flex;
  align-items: center;
  width: 100%;
  max-width: 1360px;
}

body.am-home .hero-grid {
  display: block;
  width: 100%;
  min-height: 0;
}

body.am-home .hero-txt {
  max-width: 710px;
  margin: 0;
  padding: 106px 0 96px;
  text-align: left;
}

body.am-home .hero-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: 9px;
  margin-bottom: 22px;
  padding: 8px 13px;
  border: 1px solid rgba(255, 255, 255, .22);
  border-radius: 999px;
  background: rgba(255, 255, 255, .09);
  color: #fff;
  font-size: 12px;
  font-weight: 750;
  letter-spacing: .08em;
  text-transform: uppercase;
}

body.am-home .hero-eyebrow::before {
  content: "";
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: linear-gradient(135deg, var(--am-yellow), var(--am-coral));
  box-shadow: 0 0 16px rgba(255, 216, 77, .72);
}

body.am-home .hero-txt h1 {
  max-width: 700px;
  margin: 0 0 24px;
  color: #fff;
  font-size: clamp(50px, 6.2vw, 88px);
  line-height: .95;
  letter-spacing: -.065em;
  text-wrap: balance;
  text-shadow: 0 16px 48px rgba(0, 0, 0, .28);
}

body.am-home .hero-txt .grad-txt {
  background: linear-gradient(100deg, #fff 4%, #b7f6ff 34%, #ffd84d 67%, #ff91a0);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

body.am-home .hero-txt .hsub {
  max-width: 610px;
  margin: 0 0 30px;
  color: rgba(255, 255, 255, .78);
  font-size: clamp(17px, 1.55vw, 20px);
  line-height: 1.55;
}
body.am-home .hero-txt .hsub b { color: #fff !important; }
body.am-home .hero-txt .hero-cta,
body.am-home .hero-txt .channels-chip,
body.am-home .hero-txt .rating { justify-content: flex-start; }

body.am-home .hero-cta { margin: 0 0 24px; }
body.am-home .hero-cta .btn:first-child {
  color: #15162e;
  background: linear-gradient(115deg, #ffd84d, #ff9f43 52%, #ff7181);
  box-shadow: 0 20px 42px -22px rgba(255, 159, 67, .82);
}
body.am-home .hero-cta .btn.ghost {
  color: #fff;
  border-color: rgba(255, 255, 255, .28);
  background: rgba(255, 255, 255, .09);
  backdrop-filter: blur(12px);
}
body.am-home .hero-cta .withface img { border: 2px solid rgba(255, 255, 255, .68); }
body.am-home .channels-chip { max-width: 620px; margin-top: 0; }
body.am-home .channels-chip .chip {
  color: rgba(255, 255, 255, .84);
  border-color: rgba(255, 255, 255, .16);
  background: rgba(255, 255, 255, .07);
}
body.am-home .hero-txt .rating { color: rgba(255, 255, 255, .68); }
body.am-home .hero-crew,
body.am-home .crew-line { display: none; }

/* Product preview and sections become a sequence of colourful editorial rooms. */
body.am-home .showcase {
  width: min(1180px, calc(100% - 36px));
  margin: 72px auto 38px;
}
body.am-home .showcase .frame {
  border-radius: 30px;
  border: 1px solid rgba(17, 19, 43, .1);
  background: rgba(255, 255, 255, .82);
  box-shadow: var(--am-shadow);
}
:root[data-theme="dark"] body.am-home .showcase .frame { background: rgba(20, 27, 76, .86); }
body.am-home .trust { border: 0; }
body.am-home .trust .marquee span:nth-child(4n+1) { color: var(--am-violet); }
body.am-home .trust .marquee span:nth-child(4n+2) { color: var(--am-coral); }
body.am-home .trust .marquee span:nth-child(4n+3) { color: var(--am-blue); }
body.am-home .trust .marquee span:nth-child(4n) { color: #0d9f87; }

body.am-home section {
  width: min(1460px, calc(100% - 28px));
  margin: 24px auto;
  border: 1px solid rgba(17, 19, 43, .07);
  border-radius: var(--am-radius-xl);
  overflow: hidden;
}
body.am-home section#agents { background: linear-gradient(145deg, #f2efff, #fff 42%, #ecfbff); }
body.am-home section#cerveau { background: linear-gradient(140deg, #111544, #252060 60%, #113d5d); color: #fff; }
body.am-home section#agences { background: linear-gradient(145deg, #fff2f5, #fff 48%, #fff8dc); }
body.am-home section#canaux { background: linear-gradient(145deg, #eafcff, #fff 42%, #edfff4); }
body.am-home section#capacites { background: linear-gradient(145deg, #fff8dc, #fff 45%, #fff0f3); }
body.am-home section#controle { background: linear-gradient(145deg, #eef2ff, #fff 48%, #f5edff); }
body.am-home section#tarifs { background: linear-gradient(145deg, #111544, #23195b 52%, #114a5d); color: #fff; }
body.am-home section#faq { background: linear-gradient(145deg, #eefcff, #fff 45%, #f4efff); }
:root[data-theme="dark"] body.am-home section { border-color: rgba(255, 255, 255, .1); }
:root[data-theme="dark"] body.am-home section#agents,
:root[data-theme="dark"] body.am-home section#agences,
:root[data-theme="dark"] body.am-home section#canaux,
:root[data-theme="dark"] body.am-home section#capacites,
:root[data-theme="dark"] body.am-home section#controle,
:root[data-theme="dark"] body.am-home section#faq { background: linear-gradient(145deg, #111744, #161d50); }

body.am-home section#cerveau,
body.am-home section#tarifs,
body.am-home section#cerveau .lead,
body.am-home section#tarifs .lead,
body.am-home section#cerveau p,
body.am-home section#tarifs p { --txt: #fff; --muted: #bec4e4; --faint: #949dc7; }

body.am-home .agent,
body.am-home .card,
body.am-home .feat,
body.am-home .scard,
body.am-home .price,
body.am-home .faq,
body.am-home .res > *,
body.am-home .uc-grid > * {
  border-color: rgba(17, 19, 43, .09);
  background: rgba(255, 255, 255, .74);
  box-shadow: 0 20px 44px -38px rgba(24, 19, 73, .5);
  backdrop-filter: blur(10px);
}
:root[data-theme="dark"] body.am-home .agent,
:root[data-theme="dark"] body.am-home .card,
:root[data-theme="dark"] body.am-home .feat,
:root[data-theme="dark"] body.am-home .scard,
:root[data-theme="dark"] body.am-home .price,
:root[data-theme="dark"] body.am-home .faq { background: rgba(255, 255, 255, .055); border-color: rgba(255, 255, 255, .12); }

body.am-home .agents .agent:nth-child(6n+1) { --am-card-accent: var(--am-coral); }
body.am-home .agents .agent:nth-child(6n+2) { --am-card-accent: var(--am-violet); }
body.am-home .agents .agent:nth-child(6n+3) { --am-card-accent: var(--am-cyan); }
body.am-home .agents .agent:nth-child(6n+4) { --am-card-accent: var(--am-orange); }
body.am-home .agents .agent:nth-child(6n+5) { --am-card-accent: var(--am-green); }
body.am-home .agents .agent:nth-child(6n) { --am-card-accent: var(--am-blue); }
body.am-home .agents .agent { border-top: 4px solid var(--am-card-accent, var(--am-violet)); }
body.am-home .agents .agent:hover { transform: translateY(-7px) rotate(-.25deg); }
body.am-home .agents .agent .role { color: var(--am-card-accent, var(--am-violet)); }

/* ---------- Expert catalogue and recruiting catalogue ---------- */
body.am-catalog nav,
body.am-recruit nav {
  top: 10px;
  width: min(1400px, calc(100% - 24px));
  margin: 0 auto;
  border: 1px solid rgba(255, 255, 255, .74);
  border-radius: 18px;
  background: rgba(255, 255, 255, .84);
  box-shadow: 0 18px 42px -32px rgba(17, 19, 43, .5);
}
body.am-catalog nav.scrolled,
body.am-recruit nav.scrolled { background: rgba(255, 255, 255, .94); border-color: rgba(17, 19, 43, .1); }
:root[data-theme="dark"] body.am-catalog nav,
:root[data-theme="dark"] body.am-recruit nav { background: rgba(9, 13, 43, .88); border-color: rgba(255, 255, 255, .14); }

body.am-catalog header.top,
body.am-recruit header {
  position: relative;
  isolation: isolate;
  width: min(1400px, calc(100% - 28px));
  margin: 26px auto 0;
  padding: 86px 22px 54px;
  border-radius: 36px;
  color: #fff;
  overflow: hidden;
  background:
    radial-gradient(520px 330px at 8% 20%, rgba(255, 91, 110, .52), transparent 68%),
    radial-gradient(560px 360px at 92% 12%, rgba(6, 182, 212, .44), transparent 70%),
    linear-gradient(135deg, #15184c, #34206d 52%, #12546b);
  box-shadow: 0 34px 80px -48px rgba(29, 22, 93, .72);
}
body.am-catalog header.top::after,
body.am-recruit header::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: .55;
  background-image: radial-gradient(rgba(255, 255, 255, .28) 1px, transparent 1px);
  background-size: 24px 24px;
  mask-image: linear-gradient(110deg, transparent 20%, #000 80%);
}
body.am-catalog header.top > *,
body.am-recruit header > * { position: relative; z-index: 1; }
body.am-catalog header.top .eyebrow,
body.am-recruit header .sur { color: #9ff5ff; }
body.am-catalog header.top .sous,
body.am-recruit header .chapo { color: rgba(255, 255, 255, .76); }
body.am-catalog header.top .grad-txt,
body.am-recruit header h1 em {
  background: linear-gradient(100deg, #fff, #b7f6ff 38%, #ffd84d 72%, #ff91a0);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}

body.am-catalog .outils {
  width: min(1180px, calc(100% - 36px));
  margin: -22px auto 10px;
  padding: 18px;
  border: 1px solid rgba(17, 19, 43, .1);
  border-radius: 22px;
  background: rgba(255, 255, 255, .88);
  box-shadow: var(--am-shadow);
  backdrop-filter: blur(18px);
}
body.am-catalog .outils > .wrap { padding: 0; }
body.am-catalog .rech,
body.am-recruit .cherche {
  border: 1px solid rgba(92, 78, 172, .18);
  background: #fff;
  box-shadow: 0 12px 30px -24px rgba(34, 25, 105, .45);
}
body.am-catalog .puce,
body.am-recruit .chip {
  min-height: 40px;
  border-radius: 12px;
  border-color: rgba(17, 19, 43, .1);
  background: #f4f5fb;
  color: #61677f;
}
body.am-catalog .puce.on,
body.am-recruit .chip.actif {
  border-color: transparent;
  background: linear-gradient(115deg, var(--am-violet), var(--am-blue), var(--am-cyan));
  color: #fff;
  box-shadow: 0 12px 26px -18px rgba(63, 48, 185, .7);
}

body.am-catalog .grille,
body.am-recruit .grille { gap: 20px; }
body.am-catalog .xp,
body.am-recruit .recrue {
  --am-tile: var(--am-violet);
  border: 1px solid rgba(17, 19, 43, .09);
  border-radius: 24px;
  background: rgba(255, 255, 255, .92);
  box-shadow: 0 22px 46px -38px rgba(25, 18, 81, .58);
  overflow: hidden;
}
body.am-catalog .xp:nth-child(6n+1), body.am-recruit .recrue:nth-child(6n+1) { --am-tile: var(--am-coral); }
body.am-catalog .xp:nth-child(6n+2), body.am-recruit .recrue:nth-child(6n+2) { --am-tile: var(--am-violet); }
body.am-catalog .xp:nth-child(6n+3), body.am-recruit .recrue:nth-child(6n+3) { --am-tile: var(--am-cyan); }
body.am-catalog .xp:nth-child(6n+4), body.am-recruit .recrue:nth-child(6n+4) { --am-tile: var(--am-orange); }
body.am-catalog .xp:nth-child(6n+5), body.am-recruit .recrue:nth-child(6n+5) { --am-tile: var(--am-green); }
body.am-catalog .xp:nth-child(6n), body.am-recruit .recrue:nth-child(6n) { --am-tile: var(--am-blue); }
body.am-catalog .xp { border-top: 4px solid var(--am-tile); }
body.am-recruit .recrue { border-bottom: 4px solid var(--am-tile); }
body.am-catalog .xp:hover,
body.am-recruit .recrue:hover { transform: translateY(-7px); box-shadow: 0 30px 62px -38px color-mix(in srgb, var(--am-tile) 45%, transparent); }
body.am-catalog .vign video,
body.am-recruit .scene video { aspect-ratio: 4 / 5; object-position: 50% var(--y, 8%); }
/* --y est pose carte par carte, mesure sur le portrait par
   outils/cadre_portraits.mjs : les personnages ne sont pas cadres a la
   meme echelle a la source, et un 8 % uniforme coupait le crane de ceux
   qui sont serres -- les neuf recruteurs au premier chef. */
body.am-catalog .vign,
body.am-recruit .scene { background: linear-gradient(145deg, color-mix(in srgb, var(--am-tile) 18%, #fff), #fff1d8); }
body.am-catalog .fam,
body.am-recruit .metier { color: color-mix(in srgb, var(--am-tile) 82%, #15162e); }
body.am-catalog .lien { color: color-mix(in srgb, var(--am-tile) 86%, #15162e); }
body.am-recruit .recruter { background: linear-gradient(115deg, var(--am-tile), color-mix(in srgb, var(--am-tile) 56%, var(--am-blue))); }

/* ---------- Private character preview ---------- */
body.am-characters {
  --fond: var(--am-paper);
  --carte: #fff;
  --trait: rgba(17, 19, 43, .1);
  --encre: var(--am-ink);
  --encre-doux: #656a82;
  --accent: var(--am-violet);
}
body.am-characters header {
  max-width: 1400px;
  margin-top: 22px;
  padding: 58px 34px 46px;
  border-radius: 34px;
  color: #fff;
  background: var(--am-rainbow);
  box-shadow: var(--am-shadow);
}
body.am-characters header .sous { color: rgba(255, 255, 255, .78); }
body.am-characters .compte { border: 1px solid rgba(255, 255, 255, .28); border-radius: 999px; background: rgba(255, 255, 255, .15); }
body.am-characters main { gap: 18px; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); }
body.am-characters .agent {
  --am-tile: var(--am-violet);
  border: 0;
  border-radius: 22px;
  background: #fff;
  box-shadow: 0 22px 46px -36px rgba(26, 19, 78, .46);
  overflow: hidden;
  transition: transform .22s ease, box-shadow .22s ease;
}
body.am-characters .agent:nth-child(5n+1) { --am-tile: var(--am-coral); }
body.am-characters .agent:nth-child(5n+2) { --am-tile: var(--am-violet); }
body.am-characters .agent:nth-child(5n+3) { --am-tile: var(--am-cyan); }
body.am-characters .agent:nth-child(5n+4) { --am-tile: var(--am-orange); }
body.am-characters .agent:nth-child(5n) { --am-tile: var(--am-green); }
body.am-characters .agent:hover { transform: translateY(-6px); box-shadow: 0 30px 54px -34px color-mix(in srgb, var(--am-tile) 44%, transparent); }
body.am-characters .agent video { aspect-ratio: 4 / 5; }
body.am-characters figcaption { border-top: 4px solid var(--am-tile); }

/* ---------- Login ---------- */
/* Kanté (01/09) : PLEINE PAGE, bord à bord, AUCUNE carte autour (comme la
   référence miseenrelation). Plus de padding, plus de largeur max, plus de
   rayon/bordure/ombre de conteneur. */
body.am-auth { padding: 0; }
body.am-auth .glow { display: none; }
body.am-auth .auth {
  width: 100%;
  min-height: 100vh;
  margin: 0;
  grid-template-columns: 1.08fr .92fr;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
}
body.am-auth .show {
  padding: 42px 48px 0;
  color: #fff;
  background:
    radial-gradient(560px 420px at 0% 10%, rgba(255, 91, 110, .58), transparent 68%),
    radial-gradient(560px 420px at 100% 90%, rgba(6, 182, 212, .46), transparent 68%),
    linear-gradient(145deg, #17194d, #39216e 54%, #12536b);
}
body.am-auth .show::after {
  content: "";
  position: absolute;
  inset: 0;
  opacity: .42;
  pointer-events: none;
  background-image: radial-gradient(rgba(255, 255, 255, .3) 1px, transparent 1px);
  background-size: 23px 23px;
  mask-image: linear-gradient(130deg, transparent 12%, #000 90%);
}
body.am-auth .show .brand { color: #fff; }
body.am-auth .show .brand .mark {
  width: 40px;
  height: 40px;
  border-radius: 12px;
  font-size: 0;
  background:url("logo-mark.png?v=8") center/contain no-repeat;
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .3), 0 12px 30px -15px rgba(6, 182, 212, .82);
}
body.am-auth .show .tagl { color: rgba(255, 255, 255, .58); }
body.am-auth .show h2 { margin-top: clamp(52px, 8vh, 100px); font-size: clamp(40px, 4vw, 62px); letter-spacing: -.055em; }
body.am-auth .show .lead { max-width: 520px; color: rgba(255, 255, 255, .73); font-size: 17px; }
body.am-auth .show .grad-txt {
  background: linear-gradient(100deg, #b8f6ff, #ffd84d 48%, #ff91a0);
  -webkit-background-clip: text;
  background-clip: text;
  color: transparent;
}
body.am-auth .crew-login::before {
  content: "69 experts disponibles 24 h/24";
  position: absolute;
  left: 50%;
  bottom: 24px;
  z-index: 9;
  transform: translateX(-50%);
  padding: 9px 14px;
  border: 1px solid rgba(255, 255, 255, .26);
  border-radius: 999px;
  background: rgba(10, 13, 45, .58);
  color: #fff;
  font-size: 12px;
  font-weight: 750;
  white-space: nowrap;
  backdrop-filter: blur(14px);
}
body.am-auth .form {
  background:
    radial-gradient(520px 300px at 92% 0%, rgba(124, 58, 237, .1), transparent 72%),
    linear-gradient(180deg, #fff, #f7f8ff);
}
:root[data-theme="dark"] body.am-auth .form { background: linear-gradient(180deg, #131a4b, #090e31); }
/* Kanté (01/09) : AUCUNE carte autour du formulaire (comme la référence) —
   les champs posent directement sur la colonne. */
body.am-auth .form-in {
  max-width: 400px;
  padding: 0;
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
:root[data-theme="dark"] body.am-auth .form-in { background: transparent; border: 0; }
body.am-auth .form .eyebrow { color: var(--am-violet); }
body.am-auth .mtabs { border: 0; border-radius: 14px; background: #edf0fb; }
:root[data-theme="dark"] body.am-auth .mtabs { background: #0d133c; }
body.am-auth .mtab.on { background: #fff; box-shadow: 0 10px 20px -18px rgba(17, 19, 43, .5); }
:root[data-theme="dark"] body.am-auth .mtab.on { background: #20295c; }
body.am-auth .ob {
  min-height: 48px;
  width: 100%;
  border-color: rgba(17, 19, 43, .1);
  border-radius: 14px;
  background: #fff;
  font-family: inherit;
}
:root[data-theme="dark"] body.am-auth .ob { background: #121943; border-color: rgba(255, 255, 255, .14); }

/* ---------- Download / deletion utility pages ---------- */
body.am-download .carte,
body.am-data-delete > .wrap {
  position: relative;
  overflow: hidden;
  border: 1px solid rgba(255, 255, 255, .78);
  border-radius: 28px;
  background: rgba(255, 255, 255, .86);
  box-shadow: var(--am-shadow);
  backdrop-filter: blur(16px);
}
body.am-download .carte::before,
body.am-data-delete > .wrap::before {
  content: "";
  position: absolute;
  inset: 0 0 auto;
  height: 7px;
  background: var(--am-rainbow);
}
body.am-download .marque .m,
body.am-data-delete .mark { background: var(--am-rainbow); color: #fff; }
body.am-download .f { background: rgba(247, 248, 255, .72); }
body.am-data-delete > .wrap { max-width: 720px; margin: 36px auto; padding: 58px 54px 66px; }
body.am-data-delete .code { background: linear-gradient(135deg, #f4efff, #eafcff); }

@media (max-width: 1080px) {
  body.am-home .hero-txt { max-width: 650px; padding-left: 12px; }
  body.am-home .hero-video-stage::before { background: linear-gradient(90deg, rgba(8, 10, 39, .98), rgba(8, 10, 39, .76) 62%, rgba(8, 10, 39, .32)); }
  body.am-auth .auth { grid-template-columns: 1fr 1fr; }
  body.am-auth .show { padding-left: 34px; padding-right: 34px; }
}

@media (max-width: 880px) {
  body.am-home { padding-top: 0; }
  body.am-home nav { top: 8px; width: calc(100% - 16px); }
  body.am-home header.hero { width: calc(100% - 16px); margin-top: 18px; min-height: 720px; border-radius: 30px; }
  body.am-home .hero-video-stage video { object-position: 63% center; }
  body.am-home .hero-video-stage::before { background: linear-gradient(0deg, rgba(8, 10, 39, .97) 0%, rgba(8, 10, 39, .79) 62%, rgba(8, 10, 39, .35)); }
  body.am-home header.hero > .wrap { align-items: flex-end; }
  body.am-home .hero-txt { max-width: 100%; padding: 160px 4px 70px; text-align: center; }
  body.am-home .hero-txt h1 { margin-left: auto; margin-right: auto; font-size: clamp(43px, 11.8vw, 68px); }
  body.am-home .hero-txt .hsub { margin-left: auto; margin-right: auto; }
  body.am-home .hero-txt .hero-cta,
  body.am-home .hero-txt .channels-chip,
  body.am-home .hero-txt .rating { justify-content: center; }
  body.am-home .hero-live { top: 22px; right: 22px; }
  body.am-home .hero-video-toggle { top: 20px; right: auto; bottom: auto; left: 20px; }
  body.am-home section { width: calc(100% - 16px); border-radius: 28px; }

  body.am-auth { padding: 0; }
  body.am-auth .auth { display: block; min-height: 100vh; border-radius: 0; }
  body.am-auth .show { display: block; height: 142px; padding: 24px; }
  body.am-auth .show .in { display: block; }
  body.am-auth .show .tagl,
  body.am-auth .show h2,
  body.am-auth .show .lead,
  body.am-auth .crew-login { display: none; }
  /* Mobile : la colonne vitrine se reduit a un bandeau — une carte de benefice
     coupee en deux y est plus laide qu absente. */
  body.am-auth .fcards { display: none; }
  body.am-auth .form { min-height: calc(100vh - 162px); padding: 24px 16px 34px; justify-content: flex-start; }
  body.am-auth .form-in { margin-top: 0; padding: 0; }
}

@media (max-width: 620px) {
  body.am-home .hero-txt { padding-bottom: 76px; }
  body.am-home .hero-eyebrow { font-size: 10px; letter-spacing: .06em; }
  body.am-home .hero-cta { flex-direction: column; }
  body.am-home .hero-cta .btn { width: 100%; justify-content: center; }
  body.am-home .channels-chip .chip:nth-child(n+4) { display: none; }
  body.am-home .hero-txt .rating { padding: 0 34px; font-size: 12px; }
  body.am-home .showcase { width: calc(100% - 16px); margin-top: 36px; }

  body.am-catalog header.top,
  body.am-recruit header { width: calc(100% - 16px); padding: 60px 18px 44px; border-radius: 28px; }
  body.am-catalog .outils { width: calc(100% - 24px); margin-top: -16px; }
  body.am-catalog .grille,
  body.am-recruit .grille { grid-template-columns: 1fr; }
  body.am-characters header { margin: 8px; padding: 42px 22px 34px; border-radius: 26px; }
  body.am-characters main { padding-left: 12px; padding-right: 12px; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 10px; }
  body.am-characters figcaption { padding: 10px; }
  body.am-data-delete > .wrap { margin: 12px; padding: 44px 24px 50px; }
}

@media (prefers-reduced-motion: reduce) {
  body.am-home .hero-video-stage video,
  body.am-catalog video,
  body.am-recruit video,
  body.am-characters video { animation: none !important; }
  body.am-characters .agent video { display: block !important; }
  body.am-home .agent,
  body.am-catalog .xp,
  body.am-recruit .recrue { transition: none; }
}

/* ---------- V2 · finition plus architecturale ----------
   Les grandes capsules de la première passe donnaient un rendu trop « jouet ».
   On conserve la couleur et la profondeur, avec des angles plus francs. */
:root {
  --am-radius-xl: 18px;
  --am-radius-lg: 12px;
}

body.am-home .btn,
body.am-catalog .btn,
body.am-recruit .btn,
body.am-auth .btn,
body.am-download .btn,
body.am-data-delete .btn { border-radius: 9px; }

body.am-home nav,
body.am-catalog nav,
body.am-recruit nav { border-radius: 10px; }

body.am-home header.hero { border-radius: 16px; }
body.am-home .hero-live,
body.am-home .hero-eyebrow { border-radius: 8px; }
body.am-home .hero-video-toggle { border-radius: 7px; }
body.am-home .showcase .frame { border-radius: 12px; }
body.am-home section { border-radius: 16px; }
body.am-home .agent,
body.am-home .card,
body.am-home .feat,
body.am-home .scard,
body.am-home .price,
body.am-home .faq,
body.am-home .res > *,
body.am-home .uc-grid > * { border-radius: 11px; }
body.am-home :is(.chan,.mcard,.step,.mock) { border-radius: 11px; }
body.am-home .agent .av { border-radius: 9px; }

/* Les deux sections sombres gardent de vraies surfaces sombres : aucun texte
   blanc sur une carte blanchâtre en thème clair ou sombre. */
body.am-home section#cerveau {
  --surf: #1b2254;
  --surf2: #252d64;
  --line: rgba(255,255,255,.12);
  --line2: rgba(255,255,255,.2);
}
body.am-home section#cerveau .brain-core > div {
  border-color: rgba(255,255,255,.16) !important;
  border-radius: 10px !important;
  background: #252d64 !important;
  color: #fff;
}
body.am-home section#tarifs .price {
  border-color: rgba(255,255,255,.14);
  background: rgba(13,17,54,.72);
  color: #fff;
  backdrop-filter: blur(10px);
}
body.am-home section#tarifs .price.feat {
  border: 1.5px solid transparent;
  background: linear-gradient(#24205c,#24205c) padding-box, var(--am-rainbow) border-box;
}
:root[data-theme="dark"] body.am-home .uc-grid > * {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
}

/* `.faq` est une grille, pas une carte. Les cartes sont les `details`. */
body.am-home .faq {
  border: 0;
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  backdrop-filter: none;
}
body.am-home .faq > details {
  border-color: rgba(17,19,43,.1);
  border-radius: 9px;
  background: rgba(255,255,255,.76);
  box-shadow: 0 16px 34px -30px rgba(24,19,73,.42);
}
:root[data-theme="dark"] body.am-home .faq > details {
  border-color: rgba(255,255,255,.12);
  background: rgba(255,255,255,.055);
}

body.am-home .aidefab { border-radius: 9px; }
body.am-home .aidebox { border-radius: 10px; }
body.am-home .aidebox .m { border-radius: 8px; }
body.am-home .aidebox :is(input,form button) { border-radius: 7px; }
body.no-scroll .aidefab,
body.no-scroll .aidebox { visibility: hidden; pointer-events: none; }

body.am-catalog header.top,
body.am-recruit header { border-radius: 16px; }
body.am-catalog .outils { border-radius: 11px; }
body.am-catalog .puce,
body.am-recruit .chip { border-radius: 7px; }
body.am-catalog .xp,
body.am-recruit .recrue { border-radius: 11px; }

body.am-characters header { border-radius: 16px; }
body.am-characters .compte { border-radius: 8px; }
body.am-characters .agent { border-radius: 10px; }

body.am-auth .auth { border-radius: 0; }
body.am-auth .crew-login::before { border-radius: 8px; }
body.am-auth .form-in { border-radius: 0; }
body.am-auth .mtabs,
body.am-auth .ob { border-radius: 8px; }

body.am-download .carte,
body.am-data-delete > .wrap { border-radius: 14px; }

@media (max-width: 880px) {
  body.am-home header.hero,
  body.am-home section,
  body.am-auth .auth { border-radius: 0; }
}

@media (max-width: 620px) {
  body.am-catalog header.top,
  body.am-recruit header,
  body.am-characters header { border-radius: 12px; }
}

@media (max-width: 360px) {
  body.am-home .hero-live { display: none; }
}

/* V3 · Hero net : le contraste est porté par la typographie, pas par un voile
   posé sur les visages. Les quatre panneaux vidéo restent lumineux et lisibles. */
body.am-home .hero-video-stage::before {
  background:
    linear-gradient(90deg, rgba(7, 9, 34, .22) 0%, rgba(7, 9, 34, .13) 36%, rgba(7, 9, 34, .05) 64%, transparent 86%),
    linear-gradient(0deg, rgba(7, 9, 34, .26) 0%, rgba(7, 9, 34, .05) 48%, transparent 72%);
}
body.am-home .hero-video-stage::after {
  opacity:.24;
  mix-blend-mode:normal;
}
body.am-home .hero-video-stage video {
  filter:brightness(1.1) saturate(1.08) contrast(1.025);
}
body.am-home .hero-txt h1 {
  text-shadow:0 3px 18px rgba(4,6,27,.72),0 18px 48px rgba(4,6,27,.42);
}
body.am-home .hero-txt .hsub,
body.am-home .hero-txt .rating {
  text-shadow:0 2px 12px rgba(4,6,27,.82);
}

@media (max-width:1080px) and (min-width:881px) {
  body.am-home .hero-video-stage::before {
    background:
      linear-gradient(90deg,rgba(7,9,34,.32),rgba(7,9,34,.17) 58%,rgba(7,9,34,.04)),
      linear-gradient(0deg,rgba(7,9,34,.24),transparent 52%);
  }
}
@media (max-width:880px) {
  body.am-home .hero-video-stage::before {
    background:linear-gradient(0deg,rgba(7,9,34,.72) 0%,rgba(7,9,34,.28) 54%,rgba(7,9,34,.08) 100%);
  }
  body.am-home .hero-video-stage video { filter:brightness(1.08) saturate(1.06) contrast(1.02); }
}

/* V4 · Landing commerciale : vidéo nette, couleur franche et premier écran structuré. */
body.am-home header.hero{min-height:min(790px,calc(100vh - 26px));border-radius:10px;border:1px solid rgba(255,255,255,.12);box-shadow:0 40px 100px -48px rgba(25,19,87,.72)}
body.am-home .hero-video-stage::before{background:linear-gradient(90deg,rgba(6,8,31,.90) 0%,rgba(6,8,31,.76) 30%,rgba(6,8,31,.25) 49%,transparent 66%)}
body.am-home .hero-video-stage::after{opacity:.11;background:radial-gradient(420px 220px at 46% 86%,rgba(255,216,77,.28),transparent 72%)}
body.am-home .hero-video-stage video{transform:scale(1.002);filter:brightness(1.13) saturate(1.1) contrast(1.02)}
body.am-home .hero-txt{max-width:650px;padding:100px 0 72px}
body.am-home .hero-txt h1{max-width:640px;font-size:clamp(54px,6vw,84px);line-height:.93}
body.am-home .hero-eyebrow{border-radius:5px;border-left:3px solid #ffd84d;background:rgba(11,14,48,.58);backdrop-filter:none}
body.am-home .hero-cta .btn,body.am-home .channels-chip .chip{border-radius:6px}
body.am-home .hero-cta .btn.ghost{background:rgba(8,11,40,.58);backdrop-filter:none}
body.am-home .hero-proof{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));max-width:620px;margin-top:22px;border-top:1px solid rgba(255,255,255,.2);border-bottom:1px solid rgba(255,255,255,.12)}
body.am-home .hero-proof>div{display:flex;flex-direction:column;padding:13px 15px 14px;border-left:1px solid rgba(255,255,255,.13)}
body.am-home .hero-proof>div:first-child{padding-left:0;border-left:0}
body.am-home .hero-proof strong{color:#fff;font-size:20px;letter-spacing:-.03em}
body.am-home .hero-proof span{margin-top:2px;color:rgba(255,255,255,.64);font-size:10px;line-height:1.35}
body.am-home .world-strip{display:grid;grid-template-columns:1.25fr repeat(3,minmax(0,1fr));width:min(1360px,calc(100% - 44px));margin:18px auto 52px;border:1px solid rgba(17,19,43,.1);border-left:4px solid var(--am-violet);border-radius:7px;overflow:hidden;background:rgba(255,255,255,.9);box-shadow:0 28px 60px -48px rgba(24,19,73,.6)}
:root[data-theme="dark"] body.am-home .world-strip{border-color:rgba(255,255,255,.12);background:#111744}
body.am-home .world-strip-title{padding:18px 20px;background:linear-gradient(125deg,rgba(124,77,255,.14),rgba(37,198,229,.05))}
body.am-home .world-strip-title span{color:var(--am-violet);font-size:9px;font-weight:850;letter-spacing:.12em}
body.am-home .world-strip-title strong{display:block;margin-top:5px;font-size:14px;line-height:1.35}
body.am-home .world-strip>a{display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:16px;border-left:1px solid rgba(17,19,43,.09);transition:background .18s}
:root[data-theme="dark"] body.am-home .world-strip>a{border-color:rgba(255,255,255,.1)}
body.am-home .world-strip>a:hover{background:rgba(124,77,255,.065)}
body.am-home .world-strip i{color:var(--am-violet);font-size:10px;font-weight:850;font-style:normal}
body.am-home .world-strip a>span{display:flex;flex-direction:column;min-width:0}
body.am-home .world-strip b{font-size:11.5px}body.am-home .world-strip small{margin-top:2px;color:var(--muted);font-size:9.5px;line-height:1.35}body.am-home .world-strip em{color:var(--am-coral);font-style:normal}
body.am-home .showcase{margin-top:0}
@media(max-width:1080px){body.am-home .world-strip{grid-template-columns:1fr 1fr}body.am-home .world-strip-title{grid-row:span 2}body.am-home .world-strip>a:last-child{grid-column:2}}
@media(max-width:880px){body.am-home header.hero{border-radius:8px}body.am-home .hero-video-stage::before{background:linear-gradient(0deg,rgba(6,8,31,.93) 0%,rgba(6,8,31,.7) 46%,rgba(6,8,31,.04) 76%)}body.am-home .hero-txt{padding:190px 4px 58px}body.am-home .world-strip{grid-template-columns:1fr;width:calc(100% - 24px)}body.am-home .world-strip-title{grid-row:auto}body.am-home .world-strip>a:last-child{grid-column:auto}body.am-home .world-strip>a{border-left:0;border-top:1px solid rgba(17,19,43,.09)}}
@media(max-width:560px){body.am-home .hero-proof{grid-template-columns:1fr 1fr}body.am-home .hero-proof>div:last-child{grid-column:1/-1;border-top:1px solid rgba(255,255,255,.13)}body.am-home .hero-txt h1{font-size:clamp(42px,12vw,58px)}}

/* V5 · Refonte intégrale de la landing.
   Le film et le texte vivent désormais dans deux zones distinctes : aucune
   couche sombre, aucun dégradé ni halo ne passe sur les personnages. */
body.am-home header.hero{min-height:920px;display:block;background:#080b29;border:0;border-radius:6px}
body.am-home .hero-video-stage{inset:0 0 auto;height:510px;background:#080b29}
body.am-home .hero-video-stage::before,body.am-home .hero-video-stage::after{display:none!important;background:none!important}
body.am-home .hero-video-stage video{object-fit:cover;object-position:center 25%;transform:none;filter:brightness(1.08) saturate(1.06) contrast(1.015)}
body.am-home header.hero>.wrap{min-height:920px;align-items:flex-end;max-width:1320px}
body.am-home .hero-txt{max-width:none;width:100%;padding:550px 0 48px;text-align:left}
body.am-home .hero-eyebrow{margin-bottom:16px;background:transparent;border-color:rgba(255,255,255,.16);border-left-color:#ffd84d}
body.am-home .hero-txt h1{max-width:940px;margin-bottom:16px;font-size:clamp(52px,5.3vw,76px);line-height:.94}
body.am-home .hero-txt .hsub{max-width:840px;margin-bottom:20px;font-size:17px;line-height:1.5}
body.am-home .hero-cta{margin-bottom:16px}
body.am-home .channels-chip{display:none}
body.am-home .hero-txt .rating{margin-top:0;font-size:11.5px}
body.am-home .hero-proof{position:absolute;right:0;bottom:48px;width:430px;margin:0;border-color:rgba(255,255,255,.14)}
body.am-home .hero-live{top:26px;right:28px;border-radius:5px;background:rgba(8,11,41,.76);backdrop-filter:none}
body.am-home .hero-video-toggle{top:26px;right:auto;bottom:auto;left:28px;background:rgba(8,11,41,.76);backdrop-filter:none}

/* Les sections redeviennent des chapitres pleine largeur plutôt que de grosses
   cartes arrondies empilées. Chaque chapitre porte sa propre couleur. */
body.am-home section{width:100%;margin:0;border:0;border-top:1px solid rgba(17,19,43,.07);border-radius:0!important;overflow:visible}
body.am-home section>.wrap{max-width:1240px;padding-top:96px;padding-bottom:96px}
body.am-home section#agents{background:linear-gradient(120deg,#f3f0ff 0%,#fff 38%,#eefcff 100%)}
body.am-home section#cerveau{background:linear-gradient(125deg,#0c1035,#201858 62%,#0d4253)}
body.am-home section#agences{background:linear-gradient(120deg,#fff0f3,#fff 42%,#fff8dc)}
body.am-home section#canaux{background:linear-gradient(120deg,#e9fbff,#fff 46%,#ecfff4)}
body.am-home section#capacites{background:linear-gradient(120deg,#fff8dc,#fff 44%,#fff0f3)}
body.am-home section:not([id]){background:#fff}
body.am-home section#controle{background:linear-gradient(120deg,#eef1ff,#fff 46%,#f4edff)}
body.am-home section#tarifs{background:linear-gradient(125deg,#090d2d,#211756 58%,#0d4352)}
body.am-home section#faq{background:linear-gradient(120deg,#eefcff,#fff 48%,#f2edff)}
/* CHAQUE CHAPITRE PORTE SA COULEUR — AUSSI EN SOMBRE (04/09/2026).
   Le theme clair donne a chaque section son degrade ; le sombre les repeignait
   TOUTES avec le meme (`section:not(#cerveau):not(#tarifs)`) et la page devenait
   un seul aplat. Mesure avant correction : 2 fonds distincts en sombre contre 9
   en clair, et CINQ paires de sections voisines strictement identiques.
   On garde la meme base marine — c'est elle qui tient la lisibilite du texte —
   et on pose par-dessus un halo dans la teinte du chapitre, a 20 % au plus :
   assez pour que l'oeil sente le changement de chapitre, trop peu pour toucher
   au contraste du texte (la base ne bouge pas de plus de 3 % de luminance).
   ⚠️ Ces selecteurs portent un id : ils battent l'ancienne regle a deux :not(#id).
   Le CTA final (#demo) garde le fond de page, comme en clair : c'est ce qui le
   detache de la FAQ juste au-dessus. */
:root[data-theme="dark"] body.am-home section#agents{background:radial-gradient(1100px 460px at 8% -14%,rgba(124,77,255,.20),transparent 62%),radial-gradient(920px 430px at 96% 12%,rgba(34,199,230,.13),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section#agences{background:radial-gradient(1100px 460px at 10% -14%,rgba(240,90,120,.16),transparent 62%),radial-gradient(920px 430px at 92% 12%,rgba(245,196,81,.12),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section#canaux{background:radial-gradient(1100px 460px at 6% -14%,rgba(34,199,230,.17),transparent 62%),radial-gradient(920px 430px at 94% 12%,rgba(52,211,153,.12),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section#capacites{background:radial-gradient(1100px 460px at 12% -14%,rgba(245,196,81,.14),transparent 62%),radial-gradient(920px 430px at 90% 12%,rgba(240,90,120,.13),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section#controle{background:radial-gradient(1100px 460px at 8% -14%,rgba(73,86,227,.18),transparent 62%),radial-gradient(920px 430px at 95% 12%,rgba(124,77,255,.12),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section#faq{background:radial-gradient(1100px 460px at 10% -14%,rgba(34,199,230,.14),transparent 62%),radial-gradient(920px 430px at 92% 12%,rgba(124,77,255,.13),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section:not([id]){background:radial-gradient(1100px 460px at 50% -14%,rgba(124,77,255,.12),transparent 62%),radial-gradient(920px 430px at 50% 12%,rgba(34,199,230,.08),transparent 64%),linear-gradient(125deg,#0d1238,#151b4a)}
:root[data-theme="dark"] body.am-home section#demo{background:transparent}
body.am-home .sec-head{max-width:850px;margin:0 0 54px;text-align:left}
body.am-home .sec-head h2{max-width:840px;font-size:clamp(38px,4vw,58px);line-height:1.02;letter-spacing:-.045em}
body.am-home .sec-head .lead{max-width:760px;margin-left:0;font-size:16px;line-height:1.7}
body.am-home .sub-head{max-width:760px;margin:78px 0 34px;text-align:left}
body.am-home .sub-head h3{font-size:clamp(28px,3vw,40px);letter-spacing:-.035em}

/* Roster éditorial : portraits bord à bord et signatures colorées. */
body.am-home .agents{grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}
body.am-home .agent{--land-tone:#7c4dff;padding:0 0 17px;border:0;border-bottom:3px solid var(--land-tone);border-radius:3px!important;background:rgba(255,255,255,.72);box-shadow:0 20px 42px -38px rgba(24,19,73,.56)}
body.am-home .agent:nth-child(3n+2){--land-tone:#22c7e6}body.am-home .agent:nth-child(3n){--land-tone:#f05a78}
body.am-home .agent:hover{transform:translateY(-3px);background:#fff;box-shadow:0 28px 54px -38px rgba(24,19,73,.7)}
body.am-home .agent .av{aspect-ratio:1/1;margin:0 0 14px;border:0;border-radius:3px 3px 0 0}
body.am-home .agent :is(.nm,.role,.desc){margin-left:15px;margin-right:15px}
body.am-home .agent .role{color:var(--land-tone)}
body.am-home .agent.more{padding:18px;border:1px dashed rgba(124,77,255,.38);border-bottom:3px solid var(--land-tone)}

/* Livrables, métiers et canaux : rails colorés, sans boîte dans la boîte. */
body.am-home .modal-grid{gap:0;border-top:1px solid rgba(17,19,43,.1);border-bottom:1px solid rgba(17,19,43,.1)}
body.am-home .mcard{padding:25px 18px;border:0;border-left:1px solid rgba(17,19,43,.09);border-radius:0!important;background:transparent;text-align:left}
body.am-home .mcard:first-child{border-left:0}.mcard .e{font-size:27px}
body.am-home .uc-grid{grid-template-columns:repeat(3,1fr);gap:0;border-top:1px solid rgba(17,19,43,.1)}
body.am-home .uc{--uc-tone:#7c4dff;min-height:172px;padding:23px 22px;border:0;border-right:1px solid rgba(17,19,43,.08);border-bottom:1px solid rgba(17,19,43,.08);border-radius:0!important;background:rgba(255,255,255,.3);box-shadow:inset 3px 0 var(--uc-tone)}
body.am-home .uc:nth-child(3n+2){--uc-tone:#22c7e6}body.am-home .uc:nth-child(3n){--uc-tone:#f05a78}
body.am-home .uc:hover{transform:none;background:rgba(255,255,255,.7)}
body.am-home .chan-grid{gap:0;border:1px solid rgba(17,19,43,.09)}
body.am-home .chan{padding:28px;border:0;border-left:1px solid rgba(17,19,43,.09);border-radius:0!important;background:rgba(255,255,255,.38)}
body.am-home .chan:first-child{border-left:0}body.am-home .chan:hover{transform:none;background:rgba(255,255,255,.72)}
body.am-home .chan .ic{border-radius:5px}

/* Mémoire, étapes, sécurité et résultats : profondeur par lignes, pas par pilules. */
body.am-home .brain-wrap{gap:64px}
body.am-home .brain-feats{gap:0;border-top:1px solid rgba(255,255,255,.13)}
body.am-home .bf{padding:17px 0;border-bottom:1px solid rgba(255,255,255,.13)}
body.am-home .bf .i{border-radius:5px}
body.am-home .steps{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body.am-home .step{padding:28px;border:0;border-left:1px solid var(--line);border-radius:0!important;background:transparent}
body.am-home .step:first-child{border-left:0}
body.am-home .res{gap:0;border:1px solid var(--line)}
body.am-home .res>*{border:0;border-left:1px solid var(--line);border-radius:0!important;background:transparent}
body.am-home .res>*:first-child{border-left:0}
body.am-home .scard{border-radius:4px!important;border-left:3px solid var(--am-violet)}

/* Tarifs et FAQ restent des objets de décision, avec une géométrie courte. */
body.am-home .prices{gap:10px}
body.am-home .price{border-radius:4px!important;border-top:3px solid rgba(255,255,255,.2);background:rgba(8,12,43,.58);backdrop-filter:none}
body.am-home .price.feat{border-radius:4px!important}
body.am-home .price.feat::before{border-radius:3px}
body.am-home .faq{max-width:900px;margin-left:0}
body.am-home .faq>details{border-radius:3px;border-left:3px solid var(--am-violet);box-shadow:none}
body.am-home section#demo>.wrap{padding-top:64px;padding-bottom:64px}
body.am-home .world-strip{border-radius:3px}

@media(max-width:1080px){body.am-home .hero-proof{position:static;width:100%;max-width:620px;margin-top:18px}body.am-home .hero-txt{padding-left:18px;padding-right:18px}body.am-home .agents{grid-template-columns:repeat(3,1fr)}body.am-home .uc-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:880px){body.am-home header.hero,body.am-home header.hero>.wrap{min-height:970px}body.am-home .hero-video-stage{height:470px}body.am-home .hero-video-stage video{object-position:center 22%}body.am-home .hero-txt{padding:510px 10px 44px;text-align:left}body.am-home .hero-txt :is(.hero-cta,.rating){justify-content:flex-start}body.am-home section>.wrap{padding-top:72px;padding-bottom:72px}body.am-home .agents{grid-template-columns:repeat(2,1fr)}body.am-home .modal-grid{grid-template-columns:repeat(2,1fr)}body.am-home .mcard{border-bottom:1px solid rgba(17,19,43,.09)}body.am-home .chan-grid{grid-template-columns:1fr 1fr}}
@media(max-width:560px){body.am-home header.hero,body.am-home header.hero>.wrap{min-height:900px}body.am-home .hero-video-stage{height:360px}body.am-home .hero-txt{padding-top:395px}body.am-home .hero-txt h1{font-size:42px}body.am-home .hero-proof{grid-template-columns:repeat(3,1fr)}body.am-home .hero-proof>div:last-child{grid-column:auto;border-top:0}body.am-home section>.wrap{padding:58px 18px}body.am-home .sec-head h2{font-size:36px}body.am-home .agents,body.am-home .uc-grid,body.am-home .chan-grid{grid-template-columns:1fr}body.am-home .modal-grid{grid-template-columns:1fr 1fr}body.am-home .chan{border-left:0;border-top:1px solid rgba(17,19,43,.09)}}

/* Démonstration produit et confiance : composition éditoriale sans cadre flottant. */
body.am-home .showcase{width:min(1240px,calc(100% - 44px));max-width:none;margin:0 auto 64px;padding:0}
body.am-home .showcase .frame{border-radius:3px;border:1px solid rgba(17,19,43,.1);border-left:4px solid var(--am-violet);background:#10163d;box-shadow:0 30px 70px -54px rgba(24,19,73,.7)}
body.am-home .showcase .frame::before{display:none}
body.am-home .showcase .fbar{background:#0b102f}
body.am-home .showcase .fbar .u{border-radius:3px;background:#151b47}
body.am-home .showcase .demo{grid-template-columns:.85fr 1.15fr;min-height:540px}
body.am-home .showcase .demo .chatcol{padding:34px;border-right:3px solid var(--am-cyan);background:#10163d}
body.am-home .showcase .demo .vizcol{padding:30px;background:linear-gradient(130deg,#141b49,#0d3849)}
body.am-home .showcase .bubble{border-radius:5px}.showcase .bubble.me{border-bottom-right-radius:1px}.showcase .bubble.ai{border-bottom-left-radius:1px}
body.am-home .showcase .replay{border-radius:4px}
body.am-home .trust{padding:34px 0;border-top:1px solid rgba(17,19,43,.08);border-bottom:1px solid rgba(17,19,43,.08);background:rgba(255,255,255,.5)}
body.am-home .trust p{margin-bottom:14px}
body.am-home .sec-grid{grid-template-columns:repeat(2,1fr);gap:0;border-top:1px solid var(--line)}
body.am-home .sec-grid .scard{min-height:150px;padding:24px;border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);border-left:3px solid var(--am-violet);border-radius:0!important;background:transparent}
body.am-home .sec-grid .scard:nth-child(3n+2){border-left-color:var(--am-cyan)}body.am-home .sec-grid .scard:nth-child(3n){border-left-color:var(--am-coral)}
@media(max-width:760px){body.am-home .showcase .demo{grid-template-columns:1fr}body.am-home .showcase .demo .chatcol{border-right:0;border-bottom:3px solid var(--am-cyan)}body.am-home .sec-grid{grid-template-columns:1fr}}

/* V6 · le Hero retrouve son gabarit d'origine. La séparation vidéo/texte reste,
   mais elle ne doit jamais transformer le premier écran en page entière. */
body.am-home header.hero,body.am-home header.hero>.wrap{min-height:min(820px,calc(100vh - 30px))}
body.am-home .hero-video-stage{height:410px}
body.am-home .hero-txt{padding-top:440px;padding-bottom:32px}
body.am-home .hero-txt h1{font-size:clamp(48px,4.8vw,68px)}
body.am-home .hero-txt .hsub{margin-bottom:14px;font-size:16px}
body.am-home .hero-cta{margin-bottom:12px}
body.am-home .hero-proof{bottom:32px}
@media(max-width:1080px){body.am-home header.hero,body.am-home header.hero>.wrap{min-height:840px}body.am-home .hero-video-stage{height:390px}body.am-home .hero-txt{padding-top:420px;padding-bottom:34px}}
@media(max-width:560px){body.am-home header.hero,body.am-home header.hero>.wrap{min-height:760px}body.am-home .hero-video-stage{height:300px}body.am-home .hero-txt{padding-top:330px;padding-bottom:28px}body.am-home .hero-txt h1{font-size:39px}}

/* V7 · restauration exacte du Hero plein cadre.
   « Même hauteur » concerne bien la VIDÉO, pas seulement son conteneur. */
body.am-home header.hero{min-height:min(820px,calc(100vh - 30px))}
body.am-home .hero-video-stage{inset:0;height:100%}
body.am-home .hero-video-stage::before,body.am-home .hero-video-stage::after{display:none!important;background:none!important}
body.am-home .hero-video-stage video{width:100%;height:100%;object-fit:cover;object-position:center;transform:none;filter:brightness(1.08) saturate(1.06) contrast(1.02)}
body.am-home header.hero>.wrap{min-height:min(820px,calc(100vh - 30px));align-items:center}
body.am-home .hero-txt{max-width:670px;padding:104px 0 72px}
body.am-home .hero-txt h1{font-size:clamp(50px,5.4vw,78px);text-shadow:0 3px 10px rgba(3,5,24,.9),0 15px 34px rgba(3,5,24,.72)}
body.am-home .hero-txt .hsub,body.am-home .hero-txt .rating{text-shadow:0 2px 8px rgba(3,5,24,.95),0 8px 22px rgba(3,5,24,.82)}
body.am-home .hero-proof{right:0;bottom:34px}
@media(max-width:1080px){body.am-home header.hero,body.am-home header.hero>.wrap{min-height:780px}body.am-home .hero-video-stage{height:100%}body.am-home .hero-txt{max-width:640px;padding:110px 18px 62px}body.am-home .hero-video-stage video{object-position:62% center}}
@media(max-width:560px){body.am-home header.hero,body.am-home header.hero>.wrap{min-height:720px}body.am-home .hero-video-stage{height:100%}body.am-home .hero-video-stage video{object-position:64% center}body.am-home .hero-txt{padding:120px 12px 48px}body.am-home .hero-txt h1{font-size:42px}}

/* V8 · lisibilité du Hero sur les panneaux clairs ET sombres, sans voile vidéo. */
body.am-home .hero-eyebrow,
:root[data-theme="light"] body.am-home .hero-eyebrow,
:root[data-theme="dark"] body.am-home .hero-eyebrow{color:#fff;border-color:rgba(255,255,255,.34);border-left-color:#ffd84d;background:#111536;box-shadow:0 8px 20px -15px #000}
body.am-home .hero-txt h1,
:root[data-theme="light"] body.am-home .hero-txt h1,
:root[data-theme="dark"] body.am-home .hero-txt h1{color:#fff;-webkit-text-stroke:1.15px rgba(5,7,27,.9);paint-order:stroke fill;text-shadow:0 3px 5px rgba(4,6,26,.82),0 10px 22px rgba(4,6,26,.5)}
body.am-home .hero-txt .grad-txt,
:root[data-theme="light"] body.am-home .hero-txt .grad-txt,
:root[data-theme="dark"] body.am-home .hero-txt .grad-txt{background:linear-gradient(100deg,#d9fbff 0%,#77e9ff 30%,#ffe46d 66%,#ff9bab 100%);-webkit-background-clip:text;background-clip:text;color:transparent;-webkit-text-stroke:1px rgba(5,7,27,.82);filter:drop-shadow(0 3px 2px rgba(4,6,26,.68))}
body.am-home .hero-txt .hsub,
:root[data-theme="light"] body.am-home .hero-txt .hsub,
:root[data-theme="dark"] body.am-home .hero-txt .hsub{width:fit-content;max-width:780px;margin-bottom:14px;padding:9px 13px;border-left:3px solid var(--am-cyan);border-radius:3px;color:#fff;background:#101536;text-shadow:none;box-shadow:0 12px 28px -22px rgba(0,0,0,.9)}
body.am-home .hero-txt .rating,
:root[data-theme="light"] body.am-home .hero-txt .rating,
:root[data-theme="dark"] body.am-home .hero-txt .rating{width:fit-content;margin-top:2px;padding:6px 10px;border-radius:3px;color:#f2f5ff;background:#101536;text-shadow:none;font-weight:650}
body.am-home .hero-cta .btn.ghost,
:root[data-theme="light"] body.am-home .hero-cta .btn.ghost,
:root[data-theme="dark"] body.am-home .hero-cta .btn.ghost{color:#fff;border-color:rgba(255,255,255,.4);background:#101536;backdrop-filter:none;box-shadow:0 12px 30px -22px #000}
body.am-home .hero-proof,
:root[data-theme="light"] body.am-home .hero-proof,
:root[data-theme="dark"] body.am-home .hero-proof{border-color:rgba(255,255,255,.2);background:#101536}
@media(max-width:560px){body.am-home .hero-txt .hsub{padding:8px 10px;font-size:14px}body.am-home .hero-txt .rating{font-size:10px}}

/* V9 · Le message ne flotte plus devant les visages.
   Le film reste intégralement visible ; toute la promesse est regroupée dans un
   bandeau éditorial opaque, posé au niveau des jambes. Le même bandeau sombre
   est volontairement conservé dans les deux thèmes : son contraste ne dépend
   ainsi jamais de la luminosité changeante de la vidéo. */
body.am-home header.hero > .wrap{
  align-items:stretch;
  max-width:1400px;
}
body.am-home .hero-grid{
  position:absolute;
  right:22px;
  bottom:22px;
  left:22px;
  width:auto;
  min-height:0;
}
body.am-home .hero-txt{
  display:grid;
  grid-template-columns:minmax(0,1.08fr) minmax(390px,.92fr);
  grid-template-areas:
    "eyebrow copy"
    "title copy"
    "title actions";
  column-gap:36px;
  row-gap:0;
  align-items:end;
  width:100%;
  max-width:none;
  margin:0;
  padding:22px 25px 23px;
  border:1px solid rgba(255,255,255,.18);
  border-left:4px solid #ffd84d;
  border-radius:5px;
  background:linear-gradient(112deg,#0a1035 0%,#111744 58%,#102044 100%);
  color:#fff;
  box-shadow:0 24px 54px -34px rgba(0,0,0,.82);
  text-align:left;
}
body.am-home .hero-eyebrow,
:root[data-theme="light"] body.am-home .hero-eyebrow,
:root[data-theme="dark"] body.am-home .hero-eyebrow{
  grid-area:eyebrow;
  justify-self:start;
  margin:0 0 10px;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  color:#aeeeff;
  font-size:10.5px;
  letter-spacing:.14em;
}
body.am-home .hero-eyebrow::before{
  width:7px;
  height:7px;
}
body.am-home .hero-txt h1,
:root[data-theme="light"] body.am-home .hero-txt h1,
:root[data-theme="dark"] body.am-home .hero-txt h1{
  grid-area:title;
  max-width:690px;
  margin:0;
  color:#fff;
  font-size:clamp(43px,4.35vw,62px);
  line-height:.94;
  letter-spacing:-.055em;
  -webkit-text-stroke:0;
  text-shadow:none;
}
body.am-home .hero-txt .grad-txt,
:root[data-theme="light"] body.am-home .hero-txt .grad-txt,
:root[data-theme="dark"] body.am-home .hero-txt .grad-txt{
  background:linear-gradient(100deg,#77e9ff 0%,#ffe46d 52%,#ff8da0 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
  -webkit-text-stroke:0;
  filter:none;
}
body.am-home .hero-txt .hsub,
:root[data-theme="light"] body.am-home .hero-txt .hsub,
:root[data-theme="dark"] body.am-home .hero-txt .hsub{
  grid-area:copy;
  align-self:end;
  width:auto;
  max-width:560px;
  margin:0 0 17px;
  padding:0;
  border:0;
  border-radius:0;
  background:none;
  box-shadow:none;
  color:rgba(255,255,255,.78);
  font-size:15px;
  line-height:1.52;
  text-shadow:none;
}
body.am-home .hero-cta{
  grid-area:actions;
  justify-content:flex-start;
  margin:0;
  flex-wrap:nowrap;
}
body.am-home .hero-cta .btn{
  min-height:48px;
  padding:12px 17px;
  font-size:13.5px;
  white-space:nowrap;
}
body.am-home .hero-cta .btn.ghost,
:root[data-theme="light"] body.am-home .hero-cta .btn.ghost,
:root[data-theme="dark"] body.am-home .hero-cta .btn.ghost{
  color:#fff;
  border-color:rgba(255,255,255,.24);
  background:#171e4d;
  box-shadow:none;
}
body.am-home .hero-txt :is(.channels-chip,.rating,.hero-proof){display:none}

/* Le thème sombre doit couvrir les rails éditoriaux ajoutés après la première
   passe de thème, sans laisser de panneaux blancs résiduels. */
:root[data-theme="dark"] body.am-home :is(.modal-grid,.uc-grid,.chan-grid,.steps,.res,.sec-grid){
  border-color:rgba(255,255,255,.12);
}
:root[data-theme="dark"] body.am-home :is(.mcard,.uc,.chan,.step,.res > *,.sec-grid .scard){
  border-color:rgba(255,255,255,.1);
  background:rgba(255,255,255,.045);
}
:root[data-theme="dark"] body.am-home :is(.agent,.uc,.chan):hover{
  background:rgba(255,255,255,.085);
}
:root[data-theme="dark"] body.am-home .trust{
  border-color:rgba(255,255,255,.11);
  background:#0c1238;
}

@media(max-width:1080px){
  body.am-home header.hero,
  body.am-home header.hero > .wrap{min-height:780px}
  body.am-home .hero-grid{right:16px;bottom:16px;left:16px}
  body.am-home .hero-txt{
    grid-template-columns:1fr;
    grid-template-areas:"eyebrow" "title" "copy" "actions";
    padding:20px 21px 21px;
  }
  body.am-home .hero-txt h1,
  :root[data-theme="light"] body.am-home .hero-txt h1,
  :root[data-theme="dark"] body.am-home .hero-txt h1{
    max-width:640px;
    margin-bottom:14px;
    font-size:clamp(44px,6.2vw,58px);
  }
  body.am-home .hero-txt .hsub,
  :root[data-theme="light"] body.am-home .hero-txt .hsub,
  :root[data-theme="dark"] body.am-home .hero-txt .hsub{
    max-width:720px;
    margin-bottom:16px;
  }
}

@media(max-width:560px){
  body.am-home header.hero,
  body.am-home header.hero > .wrap{min-height:720px}
  body.am-home .hero-grid{right:10px;bottom:10px;left:10px}
  body.am-home .hero-txt{padding:16px 15px 17px}
  body.am-home .hero-eyebrow,
  :root[data-theme="light"] body.am-home .hero-eyebrow,
  :root[data-theme="dark"] body.am-home .hero-eyebrow{
    margin-bottom:8px;
    font-size:9.5px;
  }
  body.am-home .hero-txt h1,
  :root[data-theme="light"] body.am-home .hero-txt h1,
  :root[data-theme="dark"] body.am-home .hero-txt h1{
    margin-bottom:11px;
    font-size:clamp(34px,10.4vw,43px);
  }
  body.am-home .hero-txt .hsub,
  :root[data-theme="light"] body.am-home .hero-txt .hsub,
  :root[data-theme="dark"] body.am-home .hero-txt .hsub{
    margin-bottom:13px;
    padding:0;
    font-size:13px;
    line-height:1.42;
  }
  body.am-home .hero-cta{display:grid;grid-template-columns:1fr;gap:8px}
  body.am-home .hero-cta .btn{width:100%;justify-content:center;min-height:44px;padding:10px 12px;font-size:12.5px}
}

/* V10 · aucun texte sur les personnages, y compris sur leurs pieds.
   La vidéo conserve son grand format d'origine dans la première rangée du
   Hero ; le bandeau éditorial devient une seconde rangée, réellement située
   sous l'image. Il ne s'agit donc plus d'une superposition. */
body.am-home header.hero{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  grid-template-rows:auto auto;
  min-height:0;
  background:#0a1035;
}
body.am-home .hero-video-stage{
  position:relative;
  inset:auto;
  grid-column:1;
  grid-row:1;
  width:100%;
  height:auto;
  aspect-ratio:16/9;
  /* Kanté (01/09, en 2 temps) : 1) plein écran, la rangée dépassait la fenêtre
     — rien de la suite ne se voyait ; 2) encore trop zoomée et rognée sur les
     côtés. La scène prend désormais le RATIO EXACT de l'image d'équipe
     (1742/903) et se CENTRE : les 5 personnages sont entiers, plus petits,
     au milieu — et l'aperçu de la section suivante reste visible sous le pli. */
  /* HAUTEUR EXPLICITE + ratio de l'image + centrage grid. ⚠️ la version
     précédente passait par un min() imbriqué dans calc() pour la LARGEUR :
     déclaration rejetée par Chromium → largeur restée à 100 %, ratio cassé,
     et cover rognait LES TÊTES (vu à l'écran, mesuré : ratio 2.607). */
  aspect-ratio:1742/903;
  height:min(680px,calc(100vh - 140px),calc((100vw - 240px)/1.929));
  height:min(680px,calc(100svh - 140px),calc((100vw - 240px)/1.929));
  width:auto;
  max-width:100%;
  justify-self:center;
  /* Dégagement sous la barre, qui est transparente et collante. Il valait 86px
     depuis le jour où Max passait DERRIÈRE « Se connecter ».
     ⚠️ 86px était devenu beaucoup trop : mesuré au navigateur, 114px de vide
     entre le bas de la barre et le haut des personnages — « il y a un vide »
     (Kanté, 02/09). La cause n'est plus la même qu'à l'époque : la rangée a
     depuis été recadrée au ratio exact de l'image, et les noms occupent le haut
     du bloc, si bien que personne n'approche plus de la barre.
     Ramené à 24px, ce qui laisse encore 52px sous une barre de 74px. Vérifié
     au navigateur à 86, 60, 44, 32, 24 et 12px : à AUCUNE de ces valeurs le
     bloc ne repasse derrière la barre. 24px remonte la rangée de 62px et
     découvre le début de la section suivante sous le pli. */
  margin:24px auto 0;
}
body.am-home .hero-video-stage video{
  object-fit:cover;
  object-position:center;
}
body.am-home header.hero > .wrap{
  grid-column:1;
  grid-row:2;
  display:block;
  width:100%;
  max-width:none;
  min-height:0;
  padding:0;
}
body.am-home .hero-grid{
  position:static;
  inset:auto;
  width:100%;
}
body.am-home .hero-txt{
  border-width:1px 0 0 4px;
  border-radius:0;
  box-shadow:none;
}

@media(max-width:1080px){
  body.am-home header.hero{
    grid-template-rows:min(780px,calc(100svh - 24px)) auto;
    min-height:0;
  }
  body.am-home header.hero > .wrap{min-height:0}
  body.am-home .hero-video-stage{height:100%;aspect-ratio:auto}
  body.am-home .hero-video-stage video{object-position:62% center}
}

@media(max-width:560px){
  body.am-home header.hero{
    grid-template-rows:min(720px,calc(100svh - 16px)) auto;
    min-height:0;
  }
  body.am-home header.hero > .wrap{min-height:0}
  body.am-home .hero-video-stage{height:100%;aspect-ratio:auto}
  body.am-home .hero-video-stage video{object-position:64% center}
}

/* V11 · la vidéo et le message deviennent deux objets distincts.
   L'espace entre eux remplace la jonction qui donnait l'impression d'un seul
   bloc massif. La métrique « en activité » disparaît ; le contrôle de mouvement
   reste accessible sous la forme d'une icône volontairement secondaire. */
body.am-home header.hero{
  row-gap:18px;
  overflow:visible;
  background:transparent;
  box-shadow:none;
}
body.am-home .hero-video-stage{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.15);
  border-radius:4px;
  background:#080b29;
  box-shadow:0 34px 80px -50px rgba(22,19,75,.66);
}
body.am-home .hero-live{display:none}
body.am-home .hero-video-toggle{
  top:16px;
  left:16px;
  right:auto;
  bottom:auto;
  display:grid;
  place-items:center;
  width:34px;
  min-width:34px;
  height:34px;
  min-height:34px;
  padding:0;
  border-color:rgba(255,255,255,.2);
  border-radius:4px;
  background:rgba(8,11,41,.66);
  box-shadow:none;
  opacity:.62;
  font-size:12px;
  line-height:1;
  transition:opacity .18s ease,background .18s ease,border-color .18s ease;
}
body.am-home .hero-video-toggle:hover,
body.am-home .hero-video-toggle:focus-visible{
  opacity:1;
  border-color:rgba(255,255,255,.48);
  background:#101536;
}
body.am-home .hero-txt{
  border:1px solid rgba(255,255,255,.14);
  border-left:4px solid #ffd84d;
  border-radius:4px;
}

@media(max-width:560px){
  body.am-home header.hero{row-gap:12px}
  body.am-home .hero-video-toggle{top:10px;left:10px;width:32px;min-width:32px;height:32px;min-height:32px}
}

/* V12 · rythme vertical unifié sur toute la landing.
   L'ancien thème additionnait 90 px sur chaque <section> ET 96 px sur son
   .wrap : entre deux contenus, le vide pouvait atteindre 372 px. Une seule
   couche d'espacement suffit. Les sous-chapitres gardent une respiration nette,
   mais ne créent plus un faux changement de page. */
body.am-home section{
  padding-top:0;
  padding-bottom:0;
}
body.am-home section > .wrap{
  padding-top:64px;
  padding-bottom:64px;
}
body.am-home .sec-head{
  margin-bottom:42px;
}
body.am-home .sub-head{
  margin-top:52px;
  margin-bottom:28px;
  padding-top:20px;
}
body.am-home .bande{
  margin-top:30px;
  margin-bottom:48px;
}
body.am-home .brain-wrap{gap:48px}
body.am-home .showcase{margin-bottom:44px}
body.am-home .trust{padding-top:26px;padding-bottom:26px}
body.am-home .world-strip{margin-bottom:38px}
body.am-home .duo{margin-top:28px;margin-bottom:34px}
body.am-home footer{padding-top:42px;padding-bottom:32px}
body.am-home section#demo > .wrap{
  padding-top:48px;
  padding-bottom:48px;
}

@media(max-width:880px){
  body.am-home section > .wrap{
    padding-top:52px;
    padding-bottom:52px;
  }
  body.am-home .sec-head{margin-bottom:36px}
  body.am-home .sub-head{margin-top:44px;margin-bottom:24px;padding-top:18px}
  body.am-home .bande{margin-top:26px;margin-bottom:42px}
  body.am-home .duo{margin-top:24px;margin-bottom:30px}
  body.am-home section#demo > .wrap{padding-top:44px;padding-bottom:44px}
}

@media(max-width:560px){
  body.am-home section > .wrap{padding:44px 18px}
  body.am-home .sec-head{margin-bottom:30px}
  body.am-home .sub-head{margin-top:38px;margin-bottom:20px;padding-top:16px}
  body.am-home .bande{margin:22px 0 34px}
  body.am-home .showcase{margin-bottom:32px}
  body.am-home .trust{padding-top:22px;padding-bottom:22px}
  body.am-home .world-strip{margin-bottom:30px}
  body.am-home section#demo > .wrap{padding-top:38px;padding-bottom:38px}
  body.am-home .showcase .demo{min-height:0}
}

/* V13 · hiérarchie visuelle renforcée sur les preuves produit.
   Les petits rails du thème précédent étaient propres mais trop discrets : ils
   ressemblaient à des lignes de tableau. Cette passe donne à chaque preuve une
   fonction claire, conserve des angles courts et reste dense. */

/* Parcours immédiatement lisible après le Hero. */
body.am-home .world-strip{
  grid-template-columns:minmax(290px,1.18fr) repeat(3,minmax(210px,1fr));
  width:min(1320px,calc(100% - 40px));
  min-height:122px;
  margin:24px auto 42px;
  border:1px solid rgba(255,255,255,.15);
  border-top:4px solid var(--am-violet);
  border-left:1px solid rgba(255,255,255,.15);
  border-radius:4px;
  background:linear-gradient(125deg,#0b1034,#111744 46%,#101b46);
  box-shadow:0 26px 54px -42px rgba(4,8,31,.85);
}
:root[data-theme="dark"] body.am-home .world-strip{
  border-color:rgba(255,255,255,.15);
  border-top-color:#a78bfa;
  background:linear-gradient(125deg,#0b1034,#111744 46%,#101b46);
}
body.am-home .world-strip-title{
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:24px 27px;
  color:#fff;
  background:linear-gradient(125deg,rgba(124,77,255,.25),rgba(37,198,229,.06));
}
body.am-home .world-strip-title span{
  color:#b9a9ff;
  font-size:10.5px;
  font-weight:900;
  letter-spacing:.13em;
}
body.am-home .world-strip-title strong{
  margin-top:7px;
  font-size:19px;
  font-weight:850;
  line-height:1.24;
  letter-spacing:-.02em;
}
body.am-home .world-strip-title small{
  display:block;
  margin-top:7px;
  color:rgba(235,239,255,.68);
  font-size:12px;
  font-weight:600;
  line-height:1.45;
}
body.am-home .world-strip > a{
  grid-template-columns:38px 1fr 18px;
  gap:12px;
  padding:22px 18px;
  color:#fff;
  border-left:1px solid rgba(255,255,255,.12);
  background:rgba(255,255,255,.015);
}
:root[data-theme="dark"] body.am-home .world-strip > a{border-color:rgba(255,255,255,.12)}
body.am-home .world-strip > a:hover{
  background:linear-gradient(135deg,rgba(124,77,255,.16),rgba(37,198,229,.08));
}
body.am-home .world-strip > a:focus-visible{
  outline:2px solid #58d6e7;
  outline-offset:-3px;
}
body.am-home .world-strip i{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border-radius:3px;
  color:#fff;
  background:linear-gradient(135deg,var(--am-violet),var(--am-blue));
  font-size:12px;
  font-weight:900;
  box-shadow:0 10px 24px -12px rgba(124,77,255,.9);
}
body.am-home .world-strip > a:nth-child(3) i{background:linear-gradient(135deg,#087ca7,var(--am-cyan))}
body.am-home .world-strip > a:nth-child(4) i{background:linear-gradient(135deg,#e04467,var(--am-coral))}
body.am-home .world-strip b{font-size:14.5px;font-weight:850;line-height:1.25}
body.am-home .world-strip small{margin-top:5px;color:rgba(231,235,255,.7);font-size:12px;font-weight:550;line-height:1.42}
body.am-home .world-strip em{color:#ff8794;font-size:17px;font-weight:900}

/* Démonstration multi-missions : une seule surface de produit, quatre preuves. */
body.am-home .showcase-intro{
  width:min(1080px,calc(100% - 44px));
  margin:0 auto 26px;
  text-align:center;
}
body.am-home .showcase-intro .eyebrow{color:var(--am-violet)}
body.am-home .showcase-intro h2{
  max-width:850px;
  margin:10px auto 12px;
  font-size:clamp(34px,4vw,54px);
  line-height:1.02;
  letter-spacing:-.045em;
}
body.am-home .showcase-intro p{
  max-width:760px;
  margin:0 auto;
  color:var(--muted);
  font-size:16px;
  font-weight:600;
  line-height:1.65;
}
body.am-home .showcase{width:min(1240px,calc(100% - 44px));}
body.am-home .mission-tabs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin-bottom:10px;
  padding:1px;
  border:1px solid rgba(255,255,255,.13);
  border-radius:4px;
  background:#252d64;
  overflow:hidden;
}
body.am-home .mission-tab{
  --mission-tone:#a78bfa;
  position:relative;
  display:grid;
  grid-template-columns:32px 1fr;
  grid-template-rows:auto auto;
  column-gap:10px;
  min-height:78px;
  padding:15px 16px;
  color:#dfe4ff;
  border:0;
  border-top:3px solid transparent;
  border-radius:0;
  background:#10163d;
  text-align:left;
  cursor:pointer;
  transition:background .18s,border-color .18s,transform .18s;
}
body.am-home .mission-tab:nth-child(2){--mission-tone:#36d3ea}
body.am-home .mission-tab:nth-child(3){--mission-tone:#ff7888}
body.am-home .mission-tab:nth-child(4){--mission-tone:#ffd84d}
body.am-home .mission-tab > span{
  grid-row:1/3;
  align-self:center;
  color:var(--mission-tone);
  font-size:12px;
  font-weight:900;
  letter-spacing:.08em;
}
body.am-home .mission-tab strong{align-self:end;font-size:14px;font-weight:850;line-height:1.2}
body.am-home .mission-tab small{align-self:start;margin-top:3px;color:#99a2cc;font-size:11px;font-weight:650}
body.am-home .mission-tab:hover{background:#171f50}
body.am-home .mission-tab.is-active{
  color:#fff;
  border-top-color:var(--mission-tone);
  background:linear-gradient(135deg,#1a2358,#141b49);
}
body.am-home .mission-tab:focus-visible{outline:2px solid var(--mission-tone);outline-offset:-3px}
body.am-home .showcase .frame{
  border:1px solid rgba(255,255,255,.14);
  border-left:1px solid rgba(255,255,255,.14);
  border-radius:4px;
  background:#0e1439;
  box-shadow:0 36px 80px -52px rgba(5,8,29,.95);
}
body.am-home .showcase .fbar{min-height:48px;padding:11px 15px;background:#090e2d}
body.am-home .showcase .fbar .u{color:#c8cfee;background:#151c49;border-color:rgba(255,255,255,.12);font-weight:650}
body.am-home .mission-live{
  display:inline-flex;
  align-items:center;
  gap:8px;
  margin-left:auto;
  color:#e7ebff;
  font-size:11.5px;
  font-weight:750;
}
body.am-home .mission-live > b{
  width:8px;
  height:8px;
  border-radius:50%;
  background:#34d399;
  box-shadow:0 0 0 5px rgba(52,211,153,.12);
}
body.am-home .mission-panel[hidden]{display:none!important}
body.am-home .mission-panel.is-active{display:block}
body.am-home .showcase .demo{grid-template-columns:.82fr 1.18fr;min-height:560px}
body.am-home .showcase .demo .chatcol{
  justify-content:center;
  padding:34px;
  border-right:3px solid var(--am-cyan);
  background:linear-gradient(160deg,#111842,#0f1539);
}
body.am-home .showcase .demo .vizcol{
  align-items:stretch;
  padding:30px;
  background:linear-gradient(135deg,#151c4a,#0d3548);
}
body.am-home .mission-label{margin-bottom:8px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.12)}
body.am-home .mission-label span{display:block;color:#67dceb;font-size:10px;font-weight:900;letter-spacing:.14em}
body.am-home .mission-label b{display:block;margin-top:6px;color:#fff;font-size:18px;font-weight:850;line-height:1.25}
body.am-home .showcase .bubble{font-size:13.5px;font-weight:600}
body.am-home .showcase .bubble.ai{color:#f4f6ff;border-color:rgba(255,255,255,.13);background:#20295e}
body.am-home .showcase .bubble.ai .who{color:#58d6e7}
body.am-home .showcase .tag{color:#dfe4ff;border-color:rgba(255,255,255,.13);border-radius:3px;background:#17204f}
body.am-home .result-kicker{display:flex;align-items:center;justify-content:space-between;gap:12px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.12)}
body.am-home .result-kicker span{color:#69deed;font-size:10px;font-weight:900;letter-spacing:.14em}
body.am-home .result-kicker b{color:#fff;font-size:14px;font-weight:850}
body.am-home .showcase .poster{max-width:230px}
body.am-home .result-shell{
  width:100%;
  max-width:640px;
  margin:auto;
  color:#edf0ff;
  border:1px solid rgba(255,255,255,.13);
  border-top:3px solid #7c4dff;
  border-radius:4px;
  background:linear-gradient(155deg,#11173f,#151d4b);
  box-shadow:0 24px 60px -40px rgba(0,0,0,.9);
  overflow:hidden;
}
body.am-home .support-result{border-top-color:#ff6f83}
body.am-home .pilotage-result{border-top-color:#ffd84d}
body.am-home .result-head{display:grid;grid-template-columns:1fr auto;gap:5px 16px;padding:20px 22px;border-bottom:1px solid rgba(255,255,255,.11)}
body.am-home .result-head > span{grid-column:1/-1;color:#66dbea;font-size:9.5px;font-weight:900;letter-spacing:.14em}
body.am-home .result-head strong{font-size:20px;font-weight:900;letter-spacing:-.02em}
body.am-home .result-head em{align-self:center;color:#8cf0c8;font-size:10.5px;font-weight:800;font-style:normal}
body.am-home .result-kpis,body.am-home .support-summary{display:grid;grid-template-columns:repeat(3,1fr);border-bottom:1px solid rgba(255,255,255,.11)}
body.am-home .result-kpis > div,body.am-home .support-summary > div{padding:17px 14px;border-left:1px solid rgba(255,255,255,.1)}
body.am-home .result-kpis > div:first-child,body.am-home .support-summary > div:first-child{border-left:0}
body.am-home .result-kpis b,body.am-home .support-summary b{display:block;color:#fff;font-size:22px;font-weight:900}
body.am-home .result-kpis span,body.am-home .support-summary span{display:block;margin-top:3px;color:#aab2d8;font-size:10.5px;font-weight:650;line-height:1.3}
body.am-home .result-list,body.am-home .ticket-list{padding:10px 18px 14px}
body.am-home .result-row,body.am-home .ticket-list > div{display:flex;align-items:center;gap:11px;padding:11px 2px;border-bottom:1px solid rgba(255,255,255,.09)}
body.am-home .result-row:last-child,body.am-home .ticket-list > div:last-child{border-bottom:0}
body.am-home .result-avatar,body.am-home .ticket-list i{display:grid;width:34px;height:34px;flex:0 0 34px;place-items:center;border-radius:3px;color:#fff;background:#293474;font-size:10px;font-weight:900;font-style:normal}
body.am-home .result-row p,body.am-home .ticket-list p{min-width:0;flex:1;margin:0}
body.am-home .result-row p b,body.am-home .ticket-list p b{display:block;color:#fff;font-size:12.5px}
body.am-home .result-row p small,body.am-home .ticket-list p small{display:block;margin-top:3px;color:#98a2cd;font-size:10.5px}
body.am-home .result-row > em,body.am-home .ticket-list > div > span{color:#8beec5;font-size:10px;font-weight:800;font-style:normal}
body.am-home .ticket-list i.ok{background:#14795c}body.am-home .ticket-list i.sales{background:#156a8a}body.am-home .ticket-list i.alert{background:#9e4254}
body.am-home .pilotage-grid{display:grid;grid-template-columns:1.4fr 1fr;border-bottom:1px solid rgba(255,255,255,.11)}
body.am-home .pilotage-main{padding:22px}.pilotage-main > span{color:#a7afd4;font-size:11px;font-weight:700}.pilotage-main > b{display:block;margin:5px 0;color:#fff;font-size:29px;font-weight:900}.pilotage-main > small{color:#8beec5;font-size:10.5px}
body.am-home .pilotage-side{display:grid;grid-template-columns:1fr 1fr;border-left:1px solid rgba(255,255,255,.1)}
body.am-home .pilotage-side p{display:flex;flex-direction:column;justify-content:center;align-items:center;margin:0;border-left:1px solid rgba(255,255,255,.08)}
body.am-home .pilotage-side p:first-child{border-left:0}.pilotage-side span{color:#a7afd4;font-size:10px}.pilotage-side b{margin-top:4px;color:#fff;font-size:24px}
body.am-home .priority-list{padding:10px 18px 14px}.priority-list p{display:flex;align-items:center;gap:11px;margin:0;padding:10px 0;border-bottom:1px solid rgba(255,255,255,.09)}.priority-list p:last-child{border-bottom:0}.priority-list i{display:grid;width:28px;height:28px;flex:0 0 28px;place-items:center;border-radius:3px;color:#10163d;background:#ffd84d;font-weight:900;font-style:normal}.priority-list p > span{min-width:0;flex:1}.priority-list p b{display:block;color:#fff;font-size:12px}.priority-list p small{display:block;margin-top:2px;color:#98a2cd;font-size:10px}.priority-list p em{color:#ffd977;font-size:9.5px;font-weight:800;font-style:normal}
body.am-home .showcase .replay{min-height:36px;margin-top:12px;padding:8px 14px;color:var(--txt);font-weight:750}

/* Technologies : vraies signatures, pas une ligne grisée. */
body.am-home .trust{
  padding:30px 0 32px;
  color:#fff;
  border-top:1px solid rgba(255,255,255,.14);
  border-bottom:1px solid rgba(255,255,255,.14);
  background:linear-gradient(120deg,#0a0f31,#111744 52%,#0d2144);
}
:root[data-theme="dark"] body.am-home .trust{border-color:rgba(255,255,255,.14);background:linear-gradient(120deg,#0a0f31,#111744 52%,#0d2144)}
body.am-home .trust p{margin-bottom:18px;color:#dce1f7;font-size:13px;font-weight:850;letter-spacing:.12em}
body.am-home .trust .marquee{
  display:grid;
  grid-template-columns:repeat(6,minmax(0,1fr));
  gap:0;
  width:min(1040px,calc(100% - 32px));
  margin:0 auto;
  border-top:1px solid rgba(255,255,255,.12);
  border-bottom:1px solid rgba(255,255,255,.12);
  opacity:1;
}
body.am-home .trust .marquee span{
  display:grid;
  min-height:54px;
  place-items:center;
  padding:12px 10px;
  border-left:1px solid rgba(255,255,255,.1);
  font-size:17px;
  font-weight:900;
  letter-spacing:-.01em;
}
body.am-home .trust .marquee span:first-child{border-left:0}
body.am-home .trust .marquee span:nth-child(4n+1){color:#b8a7ff}
body.am-home .trust .marquee span:nth-child(4n+2){color:#ff8190}
body.am-home .trust .marquee span:nth-child(4n+3){color:#64a1ff}
body.am-home .trust .marquee span:nth-child(4n){color:#55dfca}

/* Carte de découverte du reste de l'équipe : tout reste dans la colonne. */
body.am-home .agent.more{display:flex;min-height:100%;align-items:center;justify-content:center;padding:18px;overflow:hidden;text-align:center}
body.am-home .agent.more > div{display:flex;width:100%;min-width:0;flex-direction:column;align-items:center;justify-content:center}
body.am-home .agent.more .faces{width:100%;max-width:184px;margin:0 auto 14px;padding:0 3px;justify-content:center}
body.am-home .agent.more .faces img{width:42px;height:42px;flex:0 0 42px;margin-left:-8px}
body.am-home .agent.more .faces img:first-child{margin-left:0}
body.am-home .agent.more .faces img:nth-child(n+6){display:none}
body.am-home .agent.more .more-count{display:block;font-size:34px;font-weight:950;line-height:1}
body.am-home .agent.more .more-copy{display:block;margin-top:10px;color:var(--txt);font-size:13.5px;font-weight:800;line-height:1.35}
body.am-home .agent.more .more-domains{display:block;max-width:19ch;margin-top:4px;color:var(--muted);font-size:12.5px;font-weight:600;line-height:1.45}
body.am-home .agent.more .more-cta{display:block;margin-top:12px;color:var(--am-cyan);font-size:14px;font-weight:900;white-space:nowrap}

/* Livrables et secteurs : cartes éditoriales colorées, toujours compactes. */
body.am-home .modal-grid{gap:10px;border:0}
body.am-home .mcard{
  --media-tone:var(--am-violet);
  display:flex;
  flex-direction:column;
  min-height:200px;
  padding:24px 20px;
  border:1px solid rgba(17,19,43,.1);
  border-top:4px solid var(--media-tone);
  border-radius:4px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.88),rgba(241,243,255,.72));
  box-shadow:0 20px 44px -38px rgba(24,19,73,.55);
  text-align:left;
}
body.am-home .mcard:nth-child(2){--media-tone:var(--am-coral)}body.am-home .mcard:nth-child(3){--media-tone:var(--am-blue)}body.am-home .mcard:nth-child(4){--media-tone:#13a891}body.am-home .mcard:nth-child(5){--media-tone:#d29316}
:root[data-theme="dark"] body.am-home .mcard{border-color:rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.07),rgba(255,255,255,.035))}
body.am-home .mcard:hover{transform:translateY(-4px);border-color:var(--media-tone)}
body.am-home .mcard .e{display:grid;width:44px;height:44px;place-items:center;margin-bottom:22px;border-radius:4px;background:var(--media-tone);font-size:22px;box-shadow:0 14px 26px -16px var(--media-tone)}
body.am-home .mcard h4{font-size:17px;font-weight:900}
body.am-home .mcard p{margin-top:7px;color:var(--muted);font-size:13.5px;font-weight:600;line-height:1.5}
body.am-home .mcard .by{display:inline-flex;margin-top:auto;padding-top:16px;color:var(--media-tone);font-size:10.5px;font-weight:850;letter-spacing:.03em}
body.am-home .uc-grid{grid-template-columns:repeat(3,1fr);gap:10px;border:0}
body.am-home .uc{
  min-height:194px;
  padding:23px 24px;
  border:1px solid rgba(17,19,43,.1);
  border-top:4px solid var(--uc-tone);
  border-radius:4px!important;
  background:linear-gradient(145deg,rgba(255,255,255,.78),rgba(244,246,255,.55));
  box-shadow:0 20px 44px -40px rgba(24,19,73,.5);
}
:root[data-theme="dark"] body.am-home .uc{border-color:rgba(255,255,255,.12);background:linear-gradient(145deg,rgba(255,255,255,.065),rgba(255,255,255,.03))}
body.am-home .uc:hover{transform:translateY(-3px);border-color:var(--uc-tone);background:rgba(255,255,255,.82)}
:root[data-theme="dark"] body.am-home .uc:hover{background:rgba(255,255,255,.09)}
body.am-home .uc .e{display:grid;width:42px;height:42px;place-items:center;margin-bottom:18px;border-radius:4px;background:var(--uc-tone);font-size:21px}
body.am-home .uc h4{font-size:16.5px;font-weight:900}
body.am-home .uc p{margin-top:8px;color:var(--muted);font-size:13.5px;font-weight:600;line-height:1.55}

/* La photographie d'équipe suit désormais exactement la largeur de son contenu. */
body.am-home .bande-wide{width:100%;max-width:none!important;margin-right:0;margin-left:0}

/* Dernier appel à l'action : moins haut, mais plus dense et plus décisif. */
body.am-home section#demo > .wrap{padding-top:34px;padding-bottom:34px}
body.am-home .cta-perso{grid-template-columns:240px 1fr;gap:38px;max-width:920px;padding-top:0;align-items:center}
body.am-home .cta-perso .perso::before{width:125%;height:76%}
body.am-home .cta-perso .perso img{max-width:235px;max-height:440px;object-fit:contain}
body.am-home .cta-perso .mot{padding-bottom:0}
body.am-home .cta-perso .mot h2{max-width:650px;font-size:clamp(34px,4vw,49px);line-height:1.04}
body.am-home .cta-perso .mot .lead{margin-bottom:18px;font-size:15.5px}
body.am-home #demo input{border-radius:4px!important}
body.am-home #demo #lead-msg{border-radius:4px!important}

@media(max-width:1080px){
  body.am-home .world-strip{grid-template-columns:repeat(3,1fr)}
  body.am-home .world-strip-title{grid-row:auto;grid-column:1/-1}
  body.am-home .world-strip > a:last-child{grid-column:auto}
  body.am-home .agents{grid-template-columns:repeat(3,1fr)}
}

@media(max-width:880px){
  body.am-home .world-strip{grid-template-columns:1fr;width:calc(100% - 24px)}
  body.am-home .world-strip-title{grid-column:auto;padding:22px 20px}
  body.am-home .world-strip > a{border-top:1px solid rgba(255,255,255,.11);border-left:0;padding:18px 20px}
  body.am-home .mission-tabs{grid-template-columns:1fr 1fr}
  body.am-home .showcase .demo{grid-template-columns:1fr;min-height:0}
  body.am-home .showcase .demo .chatcol{min-height:420px;border-right:0;border-bottom:3px solid var(--am-cyan)}
  body.am-home .showcase .demo .vizcol{min-height:480px}
  body.am-home .trust .marquee{grid-template-columns:repeat(3,1fr)}
  body.am-home .trust .marquee span:nth-child(4){border-left:0}
  body.am-home .modal-grid{grid-template-columns:repeat(2,1fr)}
  body.am-home .uc-grid{grid-template-columns:repeat(2,1fr)}
  body.am-home .cta-perso{grid-template-columns:180px 1fr;gap:26px;text-align:left;justify-items:stretch}
  body.am-home .cta-perso .perso img{max-width:178px;max-height:340px}
}

@media(max-width:560px){
  body.am-home .world-strip-title strong{font-size:17px}
  body.am-home .showcase-intro{width:calc(100% - 32px)}
  body.am-home .showcase-intro h2{font-size:34px}
  body.am-home .showcase{width:calc(100% - 24px)}
  body.am-home .mission-tabs{display:flex;overflow-x:auto;scroll-snap-type:x mandatory}
  body.am-home .mission-tab{min-width:190px;scroll-snap-align:start}
  body.am-home .showcase .fbar .u{display:none}
  body.am-home .mission-live{font-size:10.5px}
  body.am-home .showcase .demo .chatcol{min-height:390px;padding:24px 18px}
  body.am-home .showcase .demo .vizcol{min-height:430px;padding:22px 16px}
  body.am-home .result-head{grid-template-columns:1fr;padding:17px}
  body.am-home .result-head em{justify-self:start}
  body.am-home .result-kpis > div,body.am-home .support-summary > div{padding:14px 8px}
  body.am-home .result-row > em,body.am-home .ticket-list > div > span{display:none}
  body.am-home .pilotage-grid{grid-template-columns:1fr}.pilotage-side{min-height:82px;border-top:1px solid rgba(255,255,255,.1);border-left:0}
  body.am-home .trust p{padding:0 18px;font-size:11.5px;line-height:1.5}
  body.am-home .trust .marquee{grid-template-columns:repeat(2,1fr)}
  body.am-home .trust .marquee span{min-height:50px;font-size:15px}
  body.am-home .trust .marquee span:nth-child(odd){border-left:0}
  body.am-home .modal-grid,body.am-home .uc-grid{grid-template-columns:1fr}
  body.am-home .mcard,body.am-home .uc{min-height:0}
  body.am-home .bande-wide{aspect-ratio:16/10}
  body.am-home section#demo > .wrap{padding-top:26px;padding-bottom:26px}
  body.am-home .cta-perso{grid-template-columns:1fr;gap:10px;text-align:center;justify-items:center}
  body.am-home .cta-perso .perso img{max-width:145px;max-height:275px}
body.am-home .cta-perso .mot h2{font-size:34px}
}

/* ---------- Catalogue V3 · titre ouvert, présentatrice et thème réellement sombre ----------
   Le catalogue n'est plus introduit par une grande carte flottante. Le titre vit
   directement dans la page et la présentatrice donne une entrée humaine à la liste. */
body.am-catalog header.top{
  width:100%;
  max-width:none;
  margin:0;
  padding:clamp(42px,6vw,78px) 0 0;
  border:0;
  border-radius:0;
  color:var(--txt);
  overflow:hidden;
  background:
    radial-gradient(560px 360px at 88% 48%,rgba(6,182,212,.17),transparent 72%),
    radial-gradient(680px 420px at 8% 20%,rgba(124,58,237,.13),transparent 72%);
  box-shadow:none;
}
:root[data-theme="dark"] body.am-catalog header.top{
  background:
    radial-gradient(560px 360px at 88% 48%,rgba(6,182,212,.2),transparent 72%),
    radial-gradient(680px 420px at 8% 20%,rgba(124,58,237,.2),transparent 72%);
}
body.am-catalog header.top::before{display:none}
body.am-catalog header.top::after{
  inset:auto 0 0;
  height:2px;
  opacity:1;
  background:linear-gradient(90deg,transparent 4%,var(--am-violet) 24%,var(--am-cyan) 54%,var(--am-yellow) 78%,transparent 96%);
  background-size:auto;
  mask-image:none;
}
body.am-catalog .catalog-intro{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(280px,390px);
  min-height:430px;
  align-items:center;
  gap:clamp(28px,5vw,78px);
}
body.am-catalog .catalog-copy{
  position:relative;
  z-index:2;
  padding:28px 0 64px;
  text-align:left;
}
body.am-catalog header.top .eyebrow{
  display:inline-flex;
  align-items:center;
  gap:10px;
  color:var(--am-violet);
  font-weight:900;
}
body.am-catalog header.top .eyebrow::before{
  content:"";
  width:28px;
  height:3px;
  background:linear-gradient(90deg,var(--am-coral),var(--am-yellow));
}
body.am-catalog header.top h1{
  max-width:830px;
  margin:16px 0 20px;
  font-size:clamp(46px,6.4vw,82px);
  letter-spacing:-.055em;
  line-height:.96;
}
body.am-catalog header.top .grad-txt{
  background:linear-gradient(100deg,var(--am-blue),var(--am-cyan) 34%,var(--am-green) 55%,var(--am-yellow) 76%,var(--am-coral));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
body.am-catalog header.top .sous{
  max-width:690px;
  margin:0;
  color:var(--muted);
  font-size:clamp(16px,1.6vw,19px);
  font-weight:650;
  line-height:1.6;
}
body.am-catalog .catalog-presenter{
  position:relative;
  align-self:end;
  justify-self:end;
  width:min(100%,390px);
  height:430px;
  margin:0;
}
body.am-catalog .catalog-presenter::before{
  content:"";
  position:absolute;
  right:-30px;
  bottom:34px;
  width:330px;
  height:330px;
  border:2px solid rgba(6,182,212,.32);
  border-radius:50%;
  background:linear-gradient(145deg,rgba(124,58,237,.12),rgba(6,182,212,.08));
}
body.am-catalog .catalog-presenter::after{
  content:"";
  position:absolute;
  right:18px;
  bottom:26px;
  width:72%;
  height:10px;
  background:linear-gradient(90deg,var(--am-violet),var(--am-cyan),var(--am-yellow));
  opacity:.75;
}
body.am-catalog .catalog-presenter img{
  position:relative;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  object-fit:contain;
  object-position:center bottom;
  filter:drop-shadow(0 24px 24px rgba(18,16,62,.24));
}

/* La recherche est un rail fonctionnel distinct, pas une seconde carte collée au hero. */
body.am-catalog .outils{
  width:100%;
  margin:0;
  padding:24px 0 22px;
  border:0;
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:color-mix(in srgb,var(--bg2) 80%,transparent);
  box-shadow:none;
  backdrop-filter:none;
}
body.am-catalog .outils > .wrap{max-width:1180px;padding:0 22px}
body.am-catalog .rech{
  max-width:520px;
  min-height:48px;
  border-radius:4px;
  border-color:var(--line2);
  background:var(--surf);
  color:var(--txt);
  box-shadow:none;
}
body.am-catalog .puce{
  min-height:38px;
  border-radius:4px;
  border-color:var(--line);
  background:var(--surf2);
  color:var(--muted);
}
body.am-catalog .puce:hover{border-color:var(--am-cyan);color:var(--txt)}
body.am-catalog .puce.on{
  border-color:transparent;
  background:linear-gradient(115deg,var(--am-violet),var(--am-blue),var(--am-cyan));
  color:#fff;
}
:root[data-theme="dark"] body.am-catalog .outils{
  background:rgba(11,16,54,.82);
  border-color:rgba(255,255,255,.11);
}
:root[data-theme="dark"] body.am-catalog .rech{
  border-color:rgba(255,255,255,.16);
  background:#101642;
  color:#fff;
}
:root[data-theme="dark"] body.am-catalog .puce{
  border-color:rgba(255,255,255,.12);
  background:#151c4c;
  color:#c5c9dc;
}
:root[data-theme="dark"] body.am-catalog .puce:hover{border-color:var(--am-cyan);color:#fff}
:root[data-theme="dark"] body.am-catalog .puce.on{border-color:transparent;color:#fff}

/* Les portraits restent lumineux, mais le cartouche de chaque fiche suit le thème. */
body.am-catalog .grille{gap:18px;padding-top:34px}
body.am-catalog .xp{
  border:1px solid rgba(17,19,43,.11);
  border-top:4px solid var(--am-tile);
  border-radius:4px;
  background:var(--surf);
  box-shadow:0 20px 42px -36px rgba(24,19,73,.52);
}
body.am-catalog .xp:hover{
  border-color:color-mix(in srgb,var(--am-tile) 58%,var(--line));
  transform:translateY(-5px);
  box-shadow:0 28px 54px -36px color-mix(in srgb,var(--am-tile) 38%,transparent);
}
body.am-catalog .vign{border-bottom-color:var(--line)}
body.am-catalog .corps{background:transparent}
body.am-catalog .xp h3{color:var(--txt);font-size:16px;font-weight:900}
body.am-catalog .xp p{color:var(--muted);font-weight:600}
body.am-catalog .fam,
body.am-catalog .lien{color:color-mix(in srgb,var(--am-tile) 82%,#11132c)}
:root[data-theme="dark"] body.am-catalog .xp{
  border-color:rgba(255,255,255,.12);
  border-top-color:var(--am-tile);
  background:#141b4c;
  box-shadow:0 24px 48px -34px rgba(0,0,0,.78);
}
:root[data-theme="dark"] body.am-catalog .xp:hover{
  border-color:color-mix(in srgb,var(--am-tile) 62%,rgba(255,255,255,.18));
  border-top-color:var(--am-tile);
}
:root[data-theme="dark"] body.am-catalog .corps{background:#141b4c}
:root[data-theme="dark"] body.am-catalog .xp h3{color:#fff}
:root[data-theme="dark"] body.am-catalog .xp p{color:#c5c9dd}
:root[data-theme="dark"] body.am-catalog .fam,
:root[data-theme="dark"] body.am-catalog .lien{color:color-mix(in srgb,var(--am-tile) 66%,#fff)}

@media(max-width:820px){
  body.am-catalog .catalog-intro{grid-template-columns:minmax(0,1fr) 260px;min-height:370px;gap:18px}
  body.am-catalog .catalog-copy{padding-bottom:46px}
  body.am-catalog .catalog-presenter{width:260px;height:340px}
  body.am-catalog .catalog-presenter::before{right:-24px;bottom:28px;width:250px;height:250px}
}

@media(max-width:620px){
  body.am-catalog header.top{padding-top:24px}
  body.am-catalog .catalog-intro{display:grid;grid-template-columns:1fr;min-height:0;gap:0}
  body.am-catalog .catalog-copy{padding:30px 0 16px;text-align:left}
  body.am-catalog header.top h1{font-size:clamp(42px,13vw,58px)}
  body.am-catalog .catalog-presenter{justify-self:center;width:230px;height:270px}
  body.am-catalog .catalog-presenter::before{right:-8px;bottom:22px;width:210px;height:210px}
  body.am-catalog .catalog-presenter::after{right:12px;bottom:14px}
  body.am-catalog .outils{padding:20px 0}
  body.am-catalog .outils > .wrap{padding:0 16px}
  body.am-catalog .rech{max-width:none}
  body.am-catalog .grille{gap:14px}
}

/* ---------- Landing V15 · une équipe réunie, et une palette plus maîtrisée ----------
   Les quatre cadres du film enfermaient chaque personnage dans sa propre fiche.
   La scène rassemble désormais six profils détourés, sans carte individuelle. */
body.am-home .hero-team-stage{
  position:relative;
  isolation:isolate;
  border:0;
  border-radius:0;
  /* ⚠️ 04/09/2026 — FAUSSE ALERTE, GARDEE POUR MEMOIRE. J'ai cru voir cinq
     personnages SANS TETE sur une capture, et j'ai mesure la masse des cheveux
     contre le fond : 1,02 a 1,19. J'ai ajoute une lumiere de fond a hauteur de
     tete... avant de mesurer TOUTE la zone : les VISAGES montent a 15:1, ils
     sont parfaitement lisibles. Seule la chevelure se fond, ce qui est normal
     sur un fond nuit et ne gene personne. La capture etait prise EN COURS DE
     CHARGEMENT (les prenoms n'etaient pas encore poses).
     La lumiere a donc ete RETIREE : Kante avait explicitement demande aucun
     fond derriere cette image le 01/09 (« c'est quoi ce fond blanc ? »), et on
     ne repeint pas un decor pour un defaut qui n'existe pas a l'ecran.
     Mesurer le pire pixel ne suffit pas : il faut mesurer la zone. */
  background:
    linear-gradient(180deg,rgba(255,255,255,.08),transparent 40%),
    radial-gradient(52% 78% at 50% 84%,rgba(6,182,212,.22),transparent 72%),
    linear-gradient(130deg,#0b1034,#151b49 55%,#102748);
  box-shadow:none;
}
:root[data-theme="light"] body.am-home .hero-team-stage{
  background:
    linear-gradient(180deg,rgba(255,255,255,.72),transparent 46%),
    radial-gradient(52% 78% at 50% 84%,rgba(6,182,212,.17),transparent 72%),
    linear-gradient(130deg,#eef1ff,#fff 54%,#e9faff);
}
body.am-home .hero-team-stage::before{
  content:""!important;
  position:absolute!important;
  inset:auto 0 0!important;
  display:block!important;
  height:24%!important;
  background:
    linear-gradient(90deg,transparent 4%,rgba(124,58,237,.28),rgba(6,182,212,.28),transparent 96%),
    linear-gradient(180deg,transparent,rgba(8,12,43,.28))!important;
  opacity:1!important;
}
:root[data-theme="light"] body.am-home .hero-team-stage::before{
  background:
    linear-gradient(90deg,transparent 4%,rgba(124,58,237,.18),rgba(6,182,212,.18),transparent 96%),
    linear-gradient(180deg,transparent,rgba(54,66,124,.09))!important;
}
body.am-home .hero-team-stage::after{
  content:""!important;
  position:absolute!important;
  inset:8% 3% 12%!important;
  display:block!important;
  border:0!important;
  background-image:
    linear-gradient(rgba(255,255,255,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,.055) 1px,transparent 1px)!important;
  background-size:58px 58px!important;
  mask-image:linear-gradient(to bottom,transparent,#000 35%,#000 72%,transparent)!important;
  opacity:1!important;
}
:root[data-theme="light"] body.am-home .hero-team-stage::after{
  background-image:
    linear-gradient(rgba(52,61,118,.055) 1px,transparent 1px),
    linear-gradient(90deg,rgba(52,61,118,.055) 1px,transparent 1px)!important;
}
body.am-home .hero-cast{position:absolute;inset:0;z-index:1;overflow:hidden}
body.am-home .hero-person{
  position:absolute;
  bottom:-7%;
  display:block;
  width:auto;
  object-fit:contain;
  object-position:center bottom;
  transform-origin:center bottom;
  filter:drop-shadow(0 22px 20px rgba(4,7,30,.3));
  animation:amTeamTalk 5.6s ease-in-out infinite;
}
body.am-home .hero-person-1{left:-1%;z-index:1;height:76%;animation-delay:-1.2s}
body.am-home .hero-person-2{left:15%;z-index:2;height:84%;animation-delay:-3.8s}
body.am-home .hero-person-3{left:33%;z-index:4;height:88%;animation-delay:-.4s}
body.am-home .hero-person-4{left:50%;z-index:5;height:87%;animation-delay:-2.7s}
body.am-home .hero-person-5{left:68%;z-index:3;height:86%;animation-delay:-4.6s}
body.am-home .hero-person-6{right:-1%;z-index:2;height:79%;animation-delay:-1.9s}
@keyframes amTeamTalk{
  0%,100%{transform:translateY(0) rotate(0)}
  48%{transform:translateY(-7px) rotate(.25deg)}
}
body.am-home .hero-talk{
  position:absolute;
  z-index:8;
  display:grid;
  min-width:46px;
  min-height:34px;
  place-items:center;
  padding:7px 13px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:18px 18px 18px 4px;
  color:#fff;
  background:#151c49;
  box-shadow:0 16px 30px -22px rgba(0,0,0,.7);
  font-size:15px;
  font-weight:900;
  animation:amTeamBubble 6s ease-in-out infinite;
}
body.am-home .hero-talk::after{
  content:"";
  position:absolute;
  left:12px;
  bottom:-6px;
  width:10px;
  height:10px;
  border-right:1px solid rgba(255,255,255,.24);
  border-bottom:1px solid rgba(255,255,255,.24);
  background:#151c49;
  transform:rotate(45deg);
}
:root[data-theme="light"] body.am-home .hero-talk{
  border-color:rgba(17,19,43,.12);
  color:#11132b;
  background:#fff;
}
:root[data-theme="light"] body.am-home .hero-talk::after{
  border-color:rgba(17,19,43,.12);
  background:#fff;
}
body.am-home .hero-talk-1{top:20%;left:20%;color:#75e5f3}
body.am-home .hero-talk-2{top:10%;left:48%;color:#56d7ae;animation-delay:-2s}
body.am-home .hero-talk-3{top:23%;right:15%;color:#ff7888;animation-delay:-4s}
@keyframes amTeamBubble{
  0%,20%,100%{transform:translateY(0);opacity:.45}
  34%,72%{transform:translateY(-5px);opacity:1}
}
@media(prefers-reduced-motion:reduce){
  body.am-home .hero-person,body.am-home .hero-talk{animation:none}
}

/* Le mode clair est désormais clair partout. Les accents vivent dans les
   bordures, les boutons et les statuts — plus dans six grands fonds concurrents. */
:root[data-theme="light"] body.am-home{
  --am-page-white:#fff;
  --am-page-tint:#f5f7ff;
  --am-page-cyan:#f0fbfd;
}
:root[data-theme="light"] body.am-home .hero-txt{
  border-color:rgba(17,19,43,.1);
  border-left-color:var(--am-violet);
  background:linear-gradient(112deg,#fff,var(--am-page-tint) 62%,var(--am-page-cyan));
  color:#11132b;
}
:root[data-theme="light"] body.am-home .hero-eyebrow{color:#6d3be7}
:root[data-theme="light"] body.am-home .hero-txt h1{color:#11132b}
:root[data-theme="light"] body.am-home .hero-txt .grad-txt{
  background:linear-gradient(100deg,#5b35cf,#167db6 50%,#db4c68);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
:root[data-theme="light"] body.am-home .hero-txt .hsub{color:#555c75}
:root[data-theme="light"] body.am-home .hero-cta .btn.ghost{
  color:#20243f;
  border-color:rgba(17,19,43,.15);
  background:#fff;
}

:root[data-theme="light"] body.am-home .world-strip{
  border-color:rgba(17,19,43,.11);
  border-top-color:var(--am-violet);
  background:#fff;
  box-shadow:0 24px 48px -42px rgba(24,19,73,.42);
}
:root[data-theme="light"] body.am-home .world-strip-title{
  color:#11132b;
  background:linear-gradient(125deg,rgba(124,77,255,.1),rgba(37,198,229,.04));
}
:root[data-theme="light"] body.am-home .world-strip-title span{color:#6c3bd8}
:root[data-theme="light"] body.am-home .world-strip-title small{color:#626980}
:root[data-theme="light"] body.am-home .world-strip > a{
  color:#11132b;
  border-color:rgba(17,19,43,.09);
  background:#fff;
}
:root[data-theme="light"] body.am-home .world-strip > a:hover{background:#f3f6ff}
:root[data-theme="light"] body.am-home .world-strip small{color:#656c84}

:root[data-theme="light"] body.am-home .mission-tabs{
  border-color:rgba(17,19,43,.11);
  background:#dfe4f1;
}
:root[data-theme="light"] body.am-home .mission-tab{color:#1a1d38;background:#f8f9fd}
:root[data-theme="light"] body.am-home .mission-tab small{color:#666e87}
:root[data-theme="light"] body.am-home .mission-tab:hover{background:#f0f3fc}
:root[data-theme="light"] body.am-home .mission-tab.is-active{
  color:#11132b;
  background:linear-gradient(135deg,#fff,#edf2ff);
}
:root[data-theme="light"] body.am-home .showcase .frame{
  border-color:rgba(17,19,43,.12);
  background:#fff;
  box-shadow:0 32px 68px -52px rgba(24,19,73,.48);
}
:root[data-theme="light"] body.am-home .showcase .fbar{background:#edf1f8}
:root[data-theme="light"] body.am-home .showcase .fbar .u{color:#4d546f;border-color:rgba(17,19,43,.1);background:#fff}
:root[data-theme="light"] body.am-home .mission-live{color:#414860}
:root[data-theme="light"] body.am-home .showcase .demo .chatcol{background:linear-gradient(160deg,#f8f9ff,#f1f4fd)}
:root[data-theme="light"] body.am-home .showcase .demo .vizcol{background:linear-gradient(135deg,#f8fbff,#eaf9fc)}
:root[data-theme="light"] body.am-home .mission-label{border-color:rgba(17,19,43,.11)}
:root[data-theme="light"] body.am-home .mission-label b{color:#171a34}
:root[data-theme="light"] body.am-home .showcase .bubble.ai{color:#242943;border-color:rgba(17,19,43,.11);background:#fff}
:root[data-theme="light"] body.am-home .showcase .bubble.ai .who{color:#087f93}
:root[data-theme="light"] body.am-home .showcase .tag{color:#414861;border-color:rgba(17,19,43,.1);background:#fff}
:root[data-theme="light"] body.am-home .result-kicker{border-color:rgba(17,19,43,.11)}
:root[data-theme="light"] body.am-home .result-kicker span{color:#087f93}
:root[data-theme="light"] body.am-home .result-kicker b{color:#171a34}
:root[data-theme="light"] body.am-home .result-shell{
  color:#1b1e38;
  border-color:rgba(17,19,43,.11);
  background:linear-gradient(155deg,#fff,#f3f6ff);
  box-shadow:0 22px 46px -38px rgba(24,19,73,.42);
}
:root[data-theme="light"] body.am-home :is(.result-head,.result-kpis,.support-summary,.result-row,.ticket-list > div,.pilotage-grid,.priority-list p){border-color:rgba(17,19,43,.09)}
:root[data-theme="light"] body.am-home :is(.result-kpis b,.support-summary b,.result-row p b,.ticket-list p b,.pilotage-main > b,.pilotage-side b,.priority-list p b){color:#171a34}
:root[data-theme="light"] body.am-home :is(.result-kpis span,.support-summary span,.result-row p small,.ticket-list p small,.pilotage-main > span,.pilotage-side span,.priority-list p small){color:#68708a}
:root[data-theme="light"] body.am-home .result-head > span{color:#087f93}
:root[data-theme="light"] body.am-home .result-head em,
:root[data-theme="light"] body.am-home .result-row > em,
:root[data-theme="light"] body.am-home .ticket-list > div > span,
:root[data-theme="light"] body.am-home .pilotage-main > small{color:#087a5e}
:root[data-theme="light"] body.am-home .pilotage-side{border-color:rgba(17,19,43,.09)}

:root[data-theme="light"] body.am-home .trust{
  color:#11132b;
  border-color:rgba(17,19,43,.1);
  background:#fff;
}
:root[data-theme="light"] body.am-home .trust p{color:#596078}
:root[data-theme="light"] body.am-home .trust .marquee{border-color:rgba(17,19,43,.1)}
:root[data-theme="light"] body.am-home .trust .marquee span{border-color:rgba(17,19,43,.09)}
:root[data-theme="light"] body.am-home .trust .marquee span:nth-child(4n+1){color:#6d28d9}
:root[data-theme="light"] body.am-home .trust .marquee span:nth-child(4n+2){color:#bd3150}
:root[data-theme="light"] body.am-home .trust .marquee span:nth-child(4n+3){color:#1d4ed8}
:root[data-theme="light"] body.am-home .trust .marquee span:nth-child(4n){color:#087f68}

/* Grands chapitres : deux neutres et une légère teinte cyan suffisent. */
:root[data-theme="light"] body.am-home section#agents,
:root[data-theme="light"] body.am-home section#agences,
:root[data-theme="light"] body.am-home section#capacites,
:root[data-theme="light"] body.am-home section#faq{background:var(--am-page-white)}
:root[data-theme="light"] body.am-home section#canaux,
:root[data-theme="light"] body.am-home section#controle,
:root[data-theme="light"] body.am-home section:not([id]){background:var(--am-page-tint)}
:root[data-theme="light"] body.am-home section#cerveau,
:root[data-theme="light"] body.am-home section#tarifs{
  --txt:#11132b;
  --muted:#5a6178;
  --faint:#747b92;
  --surf:#fff;
  --surf2:#f2f5ff;
  --line:rgba(17,19,43,.1);
  --line2:rgba(17,19,43,.16);
  color:#11132b;
  background:linear-gradient(125deg,#f2f5ff,#fff 62%,#eefbfc);
}
:root[data-theme="light"] body.am-home section#cerveau :is(.lead,p),
:root[data-theme="light"] body.am-home section#tarifs :is(.lead,p){--txt:#11132b;--muted:#5a6178;--faint:#747b92}
:root[data-theme="light"] body.am-home section#cerveau .brain-core > div{
  border-color:rgba(17,19,43,.11)!important;
  background:#fff!important;
  color:#11132b;
}
:root[data-theme="light"] body.am-home section#cerveau .brain-feats{border-color:rgba(17,19,43,.11)}
:root[data-theme="light"] body.am-home section#cerveau .bf{border-color:rgba(17,19,43,.1)}
:root[data-theme="light"] body.am-home section#tarifs .price{
  border-color:rgba(17,19,43,.11);
  background:#fff;
  color:#11132b;
  backdrop-filter:none;
}
:root[data-theme="light"] body.am-home section#tarifs .price.feat{
  border:1.5px solid transparent;
  background:linear-gradient(#fff,#fff) padding-box,linear-gradient(115deg,var(--am-violet),var(--am-cyan),var(--am-coral)) border-box;
}

@media(max-width:900px){
  body.am-home .hero-person-1,body.am-home .hero-person-6{display:none}
  body.am-home .hero-person-2{left:-3%;height:76%}
  body.am-home .hero-person-3{left:23%;height:86%}
  body.am-home .hero-person-4{left:49%;height:84%}
  body.am-home .hero-person-5{right:-1%;left:auto;height:78%}
  body.am-home .hero-talk-1{top:17%;left:18%}
  body.am-home .hero-talk-2{top:9%;left:51%}
  body.am-home .hero-talk-3{top:22%;right:10%}
}

@media(max-width:560px){
  body.am-home .hero-person-1,body.am-home .hero-person-6{display:none}
  body.am-home .hero-person-2{left:-7%;height:72%}
  body.am-home .hero-person-3{left:20%;height:82%}
  body.am-home .hero-person-4{left:48%;height:80%}
  body.am-home .hero-person-5{right:-4%;left:auto;height:74%}
  body.am-home .hero-talk-1{top:17%;left:18%}
  body.am-home .hero-talk-2{top:8%;left:51%}
  body.am-home .hero-talk-3{display:none}
}

/* ---------- V16 · Heroes clarifiés ----------
   La scène d'accueil ne superpose plus les profils et aucun effet décoratif ne
   passe devant eux. La page Recruter adopte la même ouverture éditoriale que
   le catalogue, avec un seul personnage qui guide vers la recherche. */

/* Landing : quatre profils lisibles, sans bulles ni voile. */
body.am-home .hero-team-stage::before{
  content:none!important;
  display:none!important;
}
body.am-home .hero-team-stage::after{
  z-index:0!important;
  inset:9% 4% 5%!important;
  opacity:.32!important;
  mask-image:linear-gradient(to bottom,transparent,#000 34%,#000 78%,transparent)!important;
}
body.am-home .hero-cast{
  display:grid;
  grid-template-columns:1fr 1.33fr 1fr 1fr;
  align-items:end;
  gap:clamp(10px,1.7vw,24px);
  padding:clamp(34px,4.5vw,68px) clamp(24px,4.6vw,68px) 0;
  z-index:1;
}
body.am-home .hero-cast .hero-person{
  position:static;
  inset:auto;
  z-index:1;
  align-self:end;
  justify-self:center;
  display:block;
  width:100%;
  height:88%;
  max-width:100%;
  object-fit:contain;
  object-position:center bottom;
  transform:none;
  animation:none;
  filter:drop-shadow(0 22px 20px rgba(4,7,30,.24));
}
body.am-home .hero-talk{display:none!important}

/* Recruter : Hero ouvert et recherche prioritaire. */
body.am-recruit > .wrap{max-width:1220px}
body.am-recruit header.recruit-intro{
  position:relative;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(360px,.82fr);
  align-items:end;
  gap:clamp(22px,4vw,58px);
  width:100%;
  min-height:500px;
  margin:0;
  padding:22px 0 0;
  overflow:visible;
  color:var(--txt);
  text-align:left;
  border:0;
  border-bottom:1px solid var(--line);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.am-recruit header.recruit-intro::after{content:none;display:none}
body.am-recruit header.recruit-intro > *{position:relative;z-index:1}
body.am-recruit .recruit-copy{align-self:center;padding:54px 0 58px}
body.am-recruit .recruit-intro .sur{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 17px;
  color:var(--am-violet);
  font-size:11px;
  font-weight:900;
  letter-spacing:.15em;
}
body.am-recruit .recruit-intro .sur::before{
  content:"";
  width:24px;
  height:3px;
  background:linear-gradient(90deg,var(--am-coral),var(--am-yellow));
}
body.am-recruit .recruit-intro h1{
  max-width:760px;
  margin:0;
  color:var(--txt);
  font-size:clamp(48px,6vw,78px);
  font-weight:900;
  line-height:.98;
  letter-spacing:-.06em;
}
body.am-recruit .recruit-intro h1 em{
  background:linear-gradient(100deg,#6339d9,#168eb4 55%,#db5167);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
body.am-recruit .recruit-intro .chapo{
  max-width:60ch;
  margin:20px 0 0;
  color:var(--muted);
  font-size:17px;
  line-height:1.55;
}
body.am-recruit .recruit-intro .cherche{
  width:100%;
  max-width:680px;
  min-height:58px;
  margin:29px 0 0;
  padding:6px 7px 6px 18px;
  border:1px solid var(--line2);
  border-radius:7px;
  background:var(--surf);
  box-shadow:0 22px 44px -36px rgba(36,27,102,.5);
}
body.am-recruit .recruit-intro .cherche:focus-within{
  border-color:color-mix(in srgb,var(--am-violet) 66%,var(--line2));
  box-shadow:0 0 0 3px color-mix(in srgb,var(--am-violet) 13%,transparent);
}
body.am-recruit .recruit-intro .cherche input{color:var(--txt)}
body.am-recruit .recruit-intro .cherche button{
  width:46px;
  height:44px;
  border-radius:5px;
  background:linear-gradient(125deg,var(--am-violet),var(--am-blue));
}
body.am-recruit .recruit-intro .cherche button:focus-visible{
  outline:2px solid var(--am-cyan);
  outline-offset:3px;
}
body.am-recruit .recruit-note{
  display:flex;
  align-items:center;
  gap:12px;
  margin:15px 0 0;
  color:var(--faint);
  font-size:12.5px;
}
body.am-recruit .recruit-note strong{color:var(--txt);font-size:13px}
body.am-recruit .recruit-note strong::before{content:"";display:inline-block;width:7px;height:7px;margin-right:7px;border-radius:50%;background:var(--am-green);box-shadow:0 0 0 4px rgba(52,211,153,.12)}
body.am-recruit .recruit-presenter{
  position:relative;
  isolation:isolate;
  align-self:end;
  justify-self:end;
  display:flex;
  align-items:flex-end;
  justify-content:flex-end;
  width:min(100%,440px);
  height:500px;
  margin:0;
}
body.am-recruit .recruit-presenter::before{
  content:"";
  position:absolute;
  right:0;
  bottom:48px;
  z-index:-1;
  width:360px;
  height:360px;
  border:1px solid color-mix(in srgb,var(--am-cyan) 48%,transparent);
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,58,237,.1),transparent 68%);
}
body.am-recruit .recruit-presenter::after{
  content:"";
  position:absolute;
  right:8px;
  bottom:30px;
  z-index:-1;
  width:68%;
  height:5px;
  background:linear-gradient(90deg,var(--am-violet),var(--am-cyan),var(--am-coral));
}
body.am-recruit .recruit-presenter img{
  display:block;
  width:auto;
  height:490px;
  max-width:100%;
  object-fit:contain;
  object-position:right bottom;
  filter:drop-shadow(0 24px 24px rgba(19,22,65,.24));
}

body.am-recruit .recruit-tools{
  padding:22px 0 20px;
  border-bottom:1px solid var(--line);
}
body.am-recruit .recruit-tools .separateur{
  justify-content:flex-start;
  max-width:none;
  margin:0;
  color:var(--faint);
  font-size:10.5px;
  letter-spacing:.14em;
}
body.am-recruit .recruit-tools .separateur::before{display:none}
body.am-recruit .recruit-tools .separateur::after{max-width:380px}
body.am-recruit .recruit-tools .filtres{justify-content:flex-start;padding:15px 0 0}
body.am-recruit .recruit-tools .chip{
  min-height:36px;
  padding:7px 12px;
  border:1px solid var(--line);
  border-radius:5px;
  background:var(--surf);
  color:var(--muted);
  box-shadow:none;
}
body.am-recruit .recruit-tools .chip:hover,
body.am-recruit .recruit-tools .chip:focus-visible{
  color:var(--txt);
  border-color:var(--line2);
  transform:none;
}
body.am-recruit .recruit-tools .chip:focus-visible{outline:2px solid var(--am-cyan);outline-offset:2px}
body.am-recruit .recruit-tools .chip.actif{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(115deg,var(--am-violet),var(--am-blue));
  box-shadow:none;
}

/* Fiches : surfaces thémables, angles courts et seulement trois accents. */
body.am-recruit .grille{gap:16px;padding:28px 0 82px}
body.am-recruit .recrue,
body.am-recruit .recrue:nth-child(n){
  --am-tile:var(--am-violet);
  padding:0;
  overflow:hidden;
  color:var(--txt);
  border:1px solid var(--line);
  border-top:3px solid var(--am-tile);
  border-bottom:1px solid var(--line);
  border-radius:5px;
  background:var(--surf);
  box-shadow:0 20px 42px -38px rgba(25,18,81,.52);
}
body.am-recruit .recrue:nth-child(3n+2){--am-tile:var(--am-cyan)}
body.am-recruit .recrue:nth-child(3n){--am-tile:var(--am-coral)}
body.am-recruit .recrue:hover{
  transform:translateY(-3px);
  border-color:color-mix(in srgb,var(--am-tile) 36%,var(--line));
  border-top-color:var(--am-tile);
  box-shadow:0 26px 52px -40px rgba(25,18,81,.65);
}
body.am-recruit .scene{
  border-radius:0;
  border-bottom:1px solid var(--line);
  background:linear-gradient(145deg,color-mix(in srgb,var(--am-tile) 9%,#fff4dc),#f5dfbc);
}
body.am-recruit .corps{padding:17px 16px 8px;background:var(--surf)}
body.am-recruit .nom{color:var(--txt);font-weight:850}
body.am-recruit .metier{color:color-mix(in srgb,var(--am-tile) 74%,var(--txt));font-weight:750}
body.am-recruit .desc{color:var(--muted)}
body.am-recruit .missions li{color:var(--faint)}
body.am-recruit .pied{padding:12px 16px 16px;background:var(--surf)}
body.am-recruit .tag{border:1px solid var(--line);border-radius:4px;background:var(--surf2);color:var(--muted)}
body.am-recruit .recruter{
  padding:9px 14px;
  border-radius:4px;
  color:#fff;
  background:#5c43d8;
  box-shadow:none;
}
body.am-recruit .recruter:focus-visible{outline:2px solid var(--am-cyan);outline-offset:2px}

:root[data-theme="dark"] body.am-recruit .recruit-intro h1 em{
  background:linear-gradient(100deg,#b49bff,#71ddec 56%,#ff93a1);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
:root[data-theme="dark"] body.am-recruit .recruit-intro .sur{color:#9dafff}
:root[data-theme="dark"] body.am-recruit .recruit-intro .cherche{border-color:var(--line2);background:var(--surf)}
:root[data-theme="dark"] body.am-recruit .recruit-tools .chip{background:var(--surf2);color:var(--muted)}
:root[data-theme="dark"] body.am-recruit .recrue{background:var(--surf);border-color:var(--line);border-top-color:var(--am-tile)}
:root[data-theme="dark"] body.am-recruit .corps,
:root[data-theme="dark"] body.am-recruit .pied{background:var(--surf)}
:root[data-theme="dark"] body.am-recruit .nom{color:#fff}
:root[data-theme="dark"] body.am-recruit .metier{color:#8de5ef}
:root[data-theme="dark"] body.am-recruit .desc{color:#c3c7dd}
:root[data-theme="dark"] body.am-recruit .missions li{color:#9ea5c9}

@media(max-width:900px){
  body.am-home .hero-cast{grid-template-columns:1fr 1.28fr 1fr 1fr;gap:7px;padding:34px 16px 0}
  body.am-home .hero-cast .hero-person{display:block;left:auto;right:auto;height:84%}
  body.am-recruit header.recruit-intro{grid-template-columns:minmax(0,1fr) 310px;gap:18px;min-height:460px}
  body.am-recruit .recruit-copy{padding:46px 0 50px}
  body.am-recruit .recruit-intro h1{font-size:clamp(44px,7vw,62px)}
  body.am-recruit .recruit-presenter{width:310px;height:440px}
  body.am-recruit .recruit-presenter img{height:420px}
  body.am-recruit .recruit-presenter::before{width:280px;height:280px}
}

@media(max-width:620px){
  body.am-home .hero-cast{grid-template-columns:1fr 1.28fr 1fr;gap:4px;padding:28px 8px 0}
  body.am-home .hero-cast .hero-person{display:block;height:80%}
  body.am-home .hero-cast .hero-person-4{display:none}
  /* ⚠️ « Le catalogue » N'EST PLUS MASQUE. C'etait le SEUL lien de recruter.html
     vers experts.html : sous 620px, le catalogue devenait inatteignable depuis
     cette page. Masquer un ornement est legitime, masquer le seul chemin vers
     une page ne l'est pas. On compacte au lieu de supprimer, et on autorise le
     retour a la ligne pour les tres petits ecrans : la barre prend deux lignes
     plutot que de perdre une destination. */
  body.am-recruit nav .nav-in{flex-wrap:wrap;row-gap:8px}
  body.am-recruit nav .btn{padding:8px 12px;font-size:13px}
  body.am-recruit nav .btn.ghost{padding:8px 11px}
  body.am-recruit nav .brand-img{width:120px;height:auto}
  body.am-recruit nav .logo{font-size:16px}
  body.am-recruit nav .logo .mark{width:32px;height:32px}
  body.am-recruit > .wrap{padding:0 18px}
  body.am-recruit header.recruit-intro{
    grid-template-columns:1fr;
    gap:0;
    min-height:0;
    width:100%;
    padding:0;
  }
  body.am-recruit .recruit-copy{padding:44px 0 20px}
  body.am-recruit .recruit-intro h1{font-size:clamp(42px,13vw,58px)}
  body.am-recruit .recruit-intro .chapo{font-size:15.5px}
  body.am-recruit .recruit-intro .cherche{margin-top:23px}
  body.am-recruit .recruit-note{align-items:flex-start;flex-direction:column;gap:4px}
  body.am-recruit .recruit-presenter{justify-self:end;width:280px;height:340px;margin-right:-8px}
  body.am-recruit .recruit-presenter img{height:332px}
  body.am-recruit .recruit-presenter::before{right:0;bottom:36px;width:230px;height:230px}
  body.am-recruit .recruit-tools{padding:20px 0 15px}
  body.am-recruit .recruit-tools .separateur::after{display:none}
  body.am-recruit .recruit-tools .filtres{
    flex-wrap:nowrap;
    justify-content:flex-start;
    gap:7px;
    overflow-x:auto;
    padding:14px 2px 7px;
    scrollbar-width:none;
  }
  body.am-recruit .recruit-tools .filtres::-webkit-scrollbar{display:none}
  body.am-recruit .recruit-tools .chip{flex:none}
  body.am-recruit .grille{gap:14px;padding-top:22px}
}

@media(prefers-reduced-motion:reduce){
  body.am-recruit .recrue:hover{transform:none}
}

/* ---------- V17 · navigation sans cadre ----------
   La barre conserve son fond translucide et sa lisibilité, mais n'est plus
   enfermée dans un rectangle bordé, au repos comme au défilement. */
body.am-home nav,
body.am-home nav.scrolled,
body.am-catalog nav,
body.am-catalog nav.scrolled,
body.am-recruit nav,
body.am-recruit nav.scrolled,
:root[data-theme="dark"] body.am-home nav,
:root[data-theme="dark"] body.am-home nav.scrolled,
:root[data-theme="dark"] body.am-catalog nav,
:root[data-theme="dark"] body.am-recruit nav{
  border:0;
  box-shadow:none;
}

/* ---------- V18 · équipe en pied et identifiée ----------
   Cinq silhouettes complètes occupent la scène sans se chevaucher. Les noms et
   métiers restent de simples repères typographiques, sans carte ni bulle. */
body.am-home .hero-cast{
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:clamp(3px,1vw,14px);
  padding:clamp(36px,4vw,58px) clamp(16px,3.2vw,46px) 0;
}
body.am-home .hero-profile{
  --profile-accent:var(--am-cyan);
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  min-width:0;
  height:100%;
  margin:0;
  overflow:visible;
}
body.am-home .hero-profile-1{--profile-accent:#ff8a72}
body.am-home .hero-profile-2{--profile-accent:#8c78ff}
body.am-home .hero-profile-3{--profile-accent:#21cbd8}
body.am-home .hero-profile-4{--profile-accent:#ffd24a}
body.am-home .hero-profile-5{--profile-accent:#5bd69a}
body.am-home .hero-profile .hero-person{
  position:static;
  inset:auto;
  display:block;
  width:auto;
  height:82%;
  max-width:100%;
  object-fit:contain;
  object-position:center bottom;
  transform:none;
  filter:drop-shadow(0 22px 20px rgba(4,7,30,.22));
}
body.am-home .hero-profile-1 .hero-person,
body.am-home .hero-profile-5 .hero-person{height:79%}
body.am-home .hero-profile-3 .hero-person{height:84%}
body.am-home .hero-profile figcaption{
  position:absolute;
  top:5.5%;
  left:50%;
  z-index:3;
  display:grid;
  gap:3px;
  width:max-content;
  max-width:calc(100% - 8px);
  margin:0;
  color:#fff;
  text-align:center;
  text-shadow:0 2px 12px rgba(3,7,32,.72);
  transform:translateX(-50%);
}
body.am-home .hero-profile figcaption strong{
  font-size:clamp(14px,1.25vw,18px);
  font-weight:900;
  line-height:1;
  letter-spacing:-.02em;
}
body.am-home .hero-profile figcaption span{
  color:var(--profile-accent);
  font-size:clamp(9px,.78vw,11px);
  font-weight:800;
  line-height:1.15;
  letter-spacing:.07em;
  text-transform:uppercase;
}
body.am-home .hero-profile figcaption span::before{
  content:"";
  display:inline-block;
  width:5px;
  height:5px;
  margin-right:6px;
  border-radius:50%;
  background:currentColor;
  vertical-align:2px;
}

/* Les présentateurs doivent être directement posés sur le fond. */
body.am-catalog .catalog-presenter::before,
body.am-catalog .catalog-presenter::after,
body.am-recruit .recruit-presenter::before,
body.am-recruit .recruit-presenter::after{
  content:none!important;
  display:none!important;
}

@media(max-width:900px){
  body.am-home .hero-cast{
    grid-template-columns:repeat(5,minmax(0,1fr));
    gap:2px;
    padding:30px 10px 0;
  }
  body.am-home .hero-profile .hero-person{height:80%}
  body.am-home .hero-profile-1 .hero-person,
  body.am-home .hero-profile-5 .hero-person{height:77%}
  body.am-home .hero-profile-3 .hero-person{height:82%}
  body.am-home .hero-profile figcaption span{letter-spacing:.03em}
}

@media(max-width:620px){
  body.am-home .hero-cast{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:2px;
    padding:26px 5px 0;
  }
  body.am-home .hero-profile-2,
  body.am-home .hero-profile-5{display:none}
  body.am-home .hero-profile .hero-person,
  body.am-home .hero-profile-1 .hero-person,
  body.am-home .hero-profile-3 .hero-person,
  body.am-home .hero-profile-4 .hero-person{display:block;height:79%}
  body.am-home .hero-profile figcaption{top:6%}
  body.am-home .hero-profile figcaption strong{font-size:13px}
  body.am-home .hero-profile figcaption span{font-size:8px}
}

/* ---------- V19/V22 · composition Hero unifiée ----------
   Une seule équipe détourée remplace les anciennes découpes individuelles et
   repose directement sur le fond clair ou sombre de la page. */
body.am-home .hero-cast{
  position:absolute;
  inset:0;
  display:block;
  padding:0;
  overflow:hidden;
}
body.am-home .hero-team-image{
  position:absolute;
  inset:0;
  z-index:1;
  display:block;
  width:100%;
  height:100%;
  max-width:100%;
  object-fit:cover;
  object-position:center bottom;
  filter:none;
  opacity:1;
  transition:opacity .22s ease;
  transform:none;
}
body.am-home .hero-labels{
  position:absolute;
  top:3.8%;
  right:6%;
  left:9%;
  z-index:3;
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  align-items:start;
}
body.am-home .hero-label{
  --label-accent:var(--am-cyan);
  display:grid;
  gap:6px;
  min-width:0;
  color:#fff;
  text-align:center;
  text-shadow:0 3px 18px rgba(3,7,32,.74);
}
body.am-home .hero-label-1{--label-accent:#ff8a72}
body.am-home .hero-label-2{--label-accent:#9a86ff}
body.am-home .hero-label-3{--label-accent:#38d8e2}
body.am-home .hero-label-4{--label-accent:#ffd45b}
body.am-home .hero-label-5{--label-accent:#67dfa6}
body.am-home .hero-label strong{
  font-size:clamp(22px,2.15vw,32px);
  font-weight:950;
  line-height:.9;
  letter-spacing:-.055em;
}
body.am-home .hero-label span{
  color:var(--label-accent);
  font-size:clamp(10px,.88vw,13px);
  font-weight:900;
  line-height:1.1;
  letter-spacing:.055em;
  text-transform:uppercase;
}
body.am-home .hero-label span::before{
  content:"";
  display:inline-block;
  width:6px;
  height:6px;
  margin-right:7px;
  border-radius:50%;
  background:currentColor;
  vertical-align:2px;
}
:root[data-theme="light"] body.am-home .hero-label{
  color:#111936;
  text-shadow:0 2px 16px rgba(255,255,255,.92);
}
:root[data-theme="light"] body.am-home .hero-label span{
  color:#263d75;
}

@media(max-width:900px){
  body.am-home .hero-team-image{height:100%;object-position:center bottom}
  body.am-home .hero-labels{top:4.5%;right:20%;left:20%;grid-template-columns:repeat(3,minmax(0,1fr))}
  body.am-home .hero-label-1,
  body.am-home .hero-label-5{display:none}
  body.am-home .hero-label{gap:4px}
  body.am-home .hero-label strong{font-size:clamp(17px,2.65vw,24px)}
  body.am-home .hero-label span{font-size:clamp(8px,1.2vw,10px);letter-spacing:.02em}
}

@media(max-width:620px){
  body.am-home .hero-team-image{height:100%;object-position:center bottom}
  body.am-home .hero-labels{top:5%;right:32%;left:32%;grid-template-columns:1fr}
  body.am-home .hero-label-1,
  body.am-home .hero-label-2,
  body.am-home .hero-label-4,
  body.am-home .hero-label-5{display:none}
  body.am-home .hero-label strong{font-size:clamp(12px,3.55vw,16px);letter-spacing:-.035em}
  body.am-home .hero-label span{display:none}
}

/* ---------- V21/V22 · Hero sans effet de carte ----------
   Les dimensions historiques du Hero sont conservées. Seul le fond des
   personnages disparaît : la scène est réellement transparente. */
body.am-home .hero-team-stage{
  width:100%;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.am-home .hero-team-stage::before,
body.am-home .hero-team-stage::after{
  content:none!important;
  display:none!important;
}

/* ============================================================
   Finition premium · système chromatique sobre
   IMPORTANT : cette couche ne modifie aucune dimension, position ou échelle
   du Hero et de ses cinq personnages. Elle harmonise uniquement les surfaces,
   les contrastes et les composants situés autour de cette composition validée.
   ============================================================ */
:root{
  --am-brand:#3154c8;
  --am-brand-strong:#263f9f;
  --am-brand-soft:#e8edff;
  --am-accent:#087f93;
  --am-gold:#8a6200;
}

body.am-home,
body.am-catalog,
body.am-recruit,
body.am-characters,
body.am-auth,
body.am-download,
body.am-data-delete{
  --bg:#f5f6f8;
  --bg2:#eef1f5;
  --surf:#fff;
  --surf2:#eef1f5;
  --line:#dce1e9;
  --line2:#c8cfdb;
  --txt:#11162a;
  --muted:#5e6678;
  --faint:#70798c;
  --accent:var(--am-brand);
  --grad:linear-gradient(115deg,#263f9f,#3154c8 58%,#087f93);
  --grad-soft:linear-gradient(135deg,rgba(49,84,200,.08),rgba(8,127,147,.055));
  background:var(--bg);
  color:var(--txt);
}
:root[data-theme="dark"] body.am-home,
:root[data-theme="dark"] body.am-catalog,
:root[data-theme="dark"] body.am-recruit,
:root[data-theme="dark"] body.am-characters,
:root[data-theme="dark"] body.am-auth,
:root[data-theme="dark"] body.am-download,
:root[data-theme="dark"] body.am-data-delete{
  --bg:#101742;
  --bg2:#0c132b;
  --surf:#1a2356;
  --surf2:#232d68;
  --line:#3d477f;
  --line2:#3a4564;
  --txt:#f7f8fc;
  --muted:#aab2c7;
  --faint:#8e99b2;
  --accent:#7f96ff;
  --am-brand:#7f96ff;
  --am-brand-strong:#aab8ff;
  --am-brand-soft:#182448;
  --am-accent:#66cedc;
  --am-gold:#e0b84e;
  background:var(--bg);
  color:var(--txt);
}
body.am-home::before,
body.am-catalog::before,
body.am-recruit::before,
body.am-auth::before,
body.am-data-delete::before{content:none!important;display:none!important}

/* Navigation sans cadre : la barre flotte par son contraste, pas par un contour. */
body.am-home nav,
body.am-home nav.scrolled,
body.am-catalog nav,
body.am-recruit nav,
body.am-characters nav{
  border:0!important;
  border-radius:12px;
  background:color-mix(in srgb,var(--surf) 94%,transparent)!important;
  box-shadow:0 14px 34px -30px rgba(17,22,42,.55);
}
:root[data-theme="dark"] body.am-home nav,
:root[data-theme="dark"] body.am-home nav.scrolled,
:root[data-theme="dark"] body.am-catalog nav,
:root[data-theme="dark"] body.am-recruit nav,
:root[data-theme="dark"] body.am-characters nav{
  background:color-mix(in srgb,var(--bg) 92%,transparent)!important;
}
body.am-home .nav-pill{background:var(--am-brand)}

body.am-home .btn,
body.am-catalog .btn,
body.am-recruit .btn,
body.am-auth .btn,
body.am-download .btn,
body.am-data-delete .btn{
  border-radius:8px;
  background:linear-gradient(115deg,#263f9f,#3154c8 72%,#256b9d);
  box-shadow:0 12px 24px -18px rgba(38,63,159,.65);
}
body.am-home .btn:hover,
body.am-catalog .btn:hover,
body.am-recruit .btn:hover,
body.am-auth .btn:hover{transform:translateY(-1px)}
body.am-home .btn.ghost,
body.am-catalog .btn.ghost,
body.am-recruit .btn.ghost,
body.am-auth .btn.ghost{
  color:var(--txt);
  border-color:var(--line);
  background:var(--surf);
}
:root[data-theme="dark"] body.am-home .btn.ghost,
:root[data-theme="dark"] body.am-catalog .btn.ghost,
:root[data-theme="dark"] body.am-recruit .btn.ghost,
:root[data-theme="dark"] body.am-auth .btn.ghost{background:var(--surf2)}

body.am-home .grad-txt,
body.am-catalog .grad-txt,
body.am-recruit .grad-txt{
  background:linear-gradient(100deg,var(--am-brand-strong),var(--am-brand) 58%,var(--am-accent));
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}

/* Un rythme régulier et un fond réellement cohérent dans les deux thèmes. */
body.am-home section,
:root[data-theme="light"] body.am-home section,
:root[data-theme="dark"] body.am-home section{
  color:var(--txt);
  background:var(--bg);
}
body.am-home section:nth-of-type(even),
:root[data-theme="light"] body.am-home section:nth-of-type(even),
:root[data-theme="dark"] body.am-home section:nth-of-type(even){background:var(--bg2)}
body.am-home section :is(h2,h3,h4){color:var(--txt)}
body.am-home section :is(.lead,p){color:var(--muted)}
body.am-home .wrap.section,
body.am-home section>.wrap{scroll-margin-top:88px}

/* Bande de fonctionnement : une seule signature bleue, texte plus lisible. */
body.am-home .world-strip{
  border:1px solid var(--line);
  border-top:3px solid var(--am-brand);
  border-radius:8px;
  color:var(--txt);
  background:var(--surf);
  box-shadow:none;
}
body.am-home .world-strip-title{
  color:var(--txt);
  background:color-mix(in srgb,var(--am-brand) 7%,var(--surf));
}
body.am-home .world-strip-title span{color:var(--am-brand-strong)}
body.am-home .world-strip-title small,
body.am-home .world-strip small{color:var(--muted)}
body.am-home .world-strip>a{
  color:var(--txt);
  border-color:var(--line);
  background:var(--surf);
}
body.am-home .world-strip>a:hover{background:var(--surf2)}
body.am-home .world-strip>a :is(.n,.arrow){color:var(--am-brand)}

/* Quatre missions concrètes : contraste de produit, palette limitée. */
body.am-home .mission-tabs{
  border-color:var(--line);
  border-radius:8px;
  background:var(--line);
}
body.am-home .mission-tab{
  color:var(--txt);
  background:var(--surf);
}
body.am-home .mission-tab small{color:var(--muted)}
body.am-home .mission-tab:hover{background:var(--surf2)}
body.am-home .mission-tab.is-active{
  color:var(--txt);
  background:color-mix(in srgb,var(--am-brand) 10%,var(--surf));
  box-shadow:inset 0 -3px var(--am-brand);
}
body.am-home .mission-tab>span,
body.am-home .mission-label span,
body.am-home .mission-live,
body.am-home .result-kicker span{color:var(--am-accent)}
body.am-home .showcase .frame{
  border-color:var(--line);
  border-radius:8px;
  background:var(--surf);
  box-shadow:0 24px 54px -46px rgba(17,22,42,.52);
}

/* Preuve technologique : les marques sont fortes sans devenir un arc-en-ciel. */
body.am-home .trust{
  color:var(--txt);
  border-color:var(--line);
  background:var(--surf);
}
body.am-home .trust p{color:var(--muted);font-weight:750}
body.am-home .trust .marquee{border-color:var(--line)}
body.am-home .trust .marquee span,
:root[data-theme="light"] body.am-home .trust .marquee span:nth-child(n),
:root[data-theme="dark"] body.am-home .trust .marquee span:nth-child(n){
  color:var(--txt);
  border-color:var(--line);
  font-weight:850;
  opacity:.88;
}
body.am-home .trust .marquee span:hover{color:var(--am-brand);background:var(--surf2);opacity:1}

/* Équipe : les portraits et les rôles vivent dans un rail, sans cartes colorées. */
body.am-home .agents{gap:0;border:1px solid var(--line);border-radius:8px;background:var(--surf);overflow:hidden}
body.am-home .agent,
body.am-home .agent:nth-child(n){
  --card-accent:var(--am-brand);
  border:0;
  border-right:1px solid var(--line);
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
body.am-home .agent:last-child{border-right:0}
body.am-home .agent:hover{transform:none;background:var(--surf2);box-shadow:none}
body.am-home .agent .role,
body.am-home .agent a{color:var(--am-brand-strong)!important}
body.am-home .agent.more{border:0;background:color-mix(in srgb,var(--am-brand) 6%,var(--surf))}
body.am-home .agent.more .more-cta{color:var(--am-brand-strong)}
body.am-home .ipills{margin-top:0!important;margin-bottom:32px!important}
body.am-home .ipill{border:0;background:transparent;color:var(--muted);padding:5px 7px}
body.am-home .ipill::before{content:"·";margin-right:7px;color:var(--am-brand)}

/* Livrables et métiers : rails éditoriaux, pas de cartes dans les cartes. */
body.am-home .modal-grid,
body.am-home .uc-grid{
  gap:0;
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--surf);
  overflow:hidden;
}
body.am-home .mcard,
body.am-home .mcard:nth-child(n),
body.am-home .uc,
body.am-home .uc:nth-child(n){
  --media-tone:var(--am-brand);
  --uc-tone:var(--am-brand);
  min-height:0;
  border:0;
  border-right:1px solid var(--line);
  border-bottom:1px solid var(--line);
  border-radius:0!important;
  background:transparent;
  box-shadow:none;
}
body.am-home .mcard:last-child{border-right:0}
body.am-home .uc:nth-child(3n){border-right:0}
body.am-home .uc:nth-last-child(-n+3){border-bottom:0}
body.am-home .mcard:hover,
body.am-home .uc:hover{
  transform:none;
  border-color:var(--line);
  background:var(--surf2);
  box-shadow:none;
}
body.am-home :is(.mcard,.uc) .e{
  display:grid;
  width:38px;
  height:38px;
  place-items:center;
  margin-bottom:16px;
  border:1px solid color-mix(in srgb,var(--am-brand) 24%,var(--line));
  border-radius:8px;
  color:var(--am-brand);
  background:color-mix(in srgb,var(--am-brand) 8%,var(--surf));
  box-shadow:none;
  font-size:0;
}
body.am-home :is(.mcard,.uc) .e svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}
body.am-home .mcard .by{color:var(--muted)}

/* Formulaire final : une surface claire reste claire, avec messages lisibles. */
body.am-home #demo input{
  color:var(--txt)!important;
  border-color:var(--line2)!important;
  background:var(--surf)!important;
}
body.am-home #demo input::placeholder{color:var(--faint);opacity:1}
body.am-home #demo input:focus{border-color:rgba(148,163,184,.7)!important;box-shadow:0 0 0 3px rgba(148,163,184,.13)}
body.am-home #demo #lead-msg{color:var(--txt)}
body.am-home #demo a{color:var(--am-brand-strong)!important}

/* Recruter et catalogue : mêmes surfaces, même densité, aucun code couleur arbitraire. */
body.am-recruit .recruit-intro,
body.am-catalog header.top{color:var(--txt);background:var(--bg)}
body.am-recruit .recruit-intro .sur,
body.am-recruit .separateur,
body.am-catalog header.top .eyebrow{color:var(--am-brand-strong)}
body.am-recruit .recruit-intro .cherche{
  border-color:var(--line2);
  border-radius:8px;
  background:var(--surf);
  box-shadow:0 16px 36px -34px rgba(17,22,42,.55);
}
body.am-recruit .recruit-intro .cherche input::placeholder{color:var(--faint)}
body.am-recruit .recruit-intro .cherche button{border-radius:6px;background:var(--am-brand)}
body.am-recruit .recruit-tools .filtres{gap:0;border-bottom:1px solid var(--line)}
body.am-recruit .recruit-tools .chip{
  border:0;
  border-bottom:3px solid transparent;
  border-radius:0;
  color:var(--muted);
  background:transparent;
}
body.am-recruit .recruit-tools .chip:hover{color:var(--txt);background:var(--surf2)}
body.am-recruit .recruit-tools .chip.actif{
  color:var(--am-brand-strong);
  border-bottom-color:var(--am-brand);
  background:transparent;
  box-shadow:none;
}
body.am-recruit .recrue,
body.am-recruit .recrue:nth-child(n),
body.am-catalog .xp,
body.am-catalog .xp:nth-child(n){
  --recrue-tone:var(--am-brand);
  --am-tile:var(--am-brand);
  border:1px solid var(--line);
  border-radius:8px;
  background:var(--surf);
  box-shadow:none;
}
body.am-recruit .recrue:hover,
body.am-catalog .xp:hover{
  transform:translateY(-1px);
  border-color:color-mix(in srgb,var(--am-brand) 38%,var(--line));
  background:var(--surf);
  box-shadow:0 18px 36px -32px rgba(17,22,42,.48);
}
body.am-recruit .recrue::before{display:none}
body.am-recruit .recrue :is(.metier,.missions li,.voir),
body.am-catalog :is(.fam,.lien){color:var(--am-brand-strong)}

/* Les cinq noms conservent leur place et leur taille ; seule la palette se resserre. */
body.am-home .hero-label:nth-child(n){--label-accent:#93a7ff}
body.am-home .hero-label:nth-child(3){--label-accent:#66cedc}
:root[data-theme="light"] body.am-home .hero-label span{color:#263f9f}

:root[data-theme="light"] body.am-home section#cerveau,
:root[data-theme="light"] body.am-home section#tarifs,
:root[data-theme="dark"] body.am-home section#cerveau,
:root[data-theme="dark"] body.am-home section#tarifs{
  color:var(--txt);
  background:var(--bg2);
}
:root[data-theme="light"] body.am-home section#cerveau .brain-core>div,
:root[data-theme="dark"] body.am-home section#cerveau .brain-core>div,
:root[data-theme="light"] body.am-home section#tarifs .price,
:root[data-theme="dark"] body.am-home section#tarifs .price{
  color:var(--txt);
  border-color:var(--line)!important;
  background:var(--surf)!important;
  box-shadow:none;
}
:root[data-theme="light"] body.am-home section#tarifs .price.feat,
:root[data-theme="dark"] body.am-home section#tarifs .price.feat{
  border:2px solid var(--am-brand)!important;
  background:var(--surf)!important;
}

body.am-home :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
body.am-catalog :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible,
body.am-recruit :is(a,button,input,select,textarea,summary,[tabindex]):focus-visible{
  outline:2px solid rgba(148,163,184,.9)!important;
  outline-offset:3px!important;
}

@media(hover:none),(pointer:coarse){
  body.am-home :is(button,.btn,.theme-btn,.menu-btn),
  body.am-catalog :is(button,.btn,.theme-btn,.menu-btn),
  body.am-recruit :is(button,.btn,.theme-btn,.menu-btn,.chip){min-width:44px;min-height:44px}
  body.am-home :is(input,select,textarea),
  body.am-catalog :is(input,select,textarea),
  body.am-recruit :is(input,select,textarea){font-size:16px}
}

@media(prefers-reduced-motion:reduce){
  body.am-home *,body.am-home *::before,body.am-home *::after,
  body.am-catalog *,body.am-catalog *::before,body.am-catalog *::after,
  body.am-recruit *,body.am-recruit *::before,body.am-recruit *::after{
    scroll-behavior:auto!important;
    animation-duration:.01ms!important;
    animation-iteration-count:1!important;
    transition-duration:.01ms!important;
  }
}

@media(max-width:1080px){
  body.am-home .agent:nth-child(3n){border-right:0}
}
@media(max-width:880px){
  body.am-home .mcard:nth-child(2n),body.am-home .uc:nth-child(2n){border-right:0}
  body.am-home .mcard:nth-child(odd),body.am-home .uc:nth-child(odd){border-right:1px solid var(--line)}
  body.am-home .uc:nth-last-child(-n+3){border-bottom:1px solid var(--line)}
  body.am-home .uc:nth-last-child(-n+2){border-bottom:0}
}
@media(max-width:560px){
  body.am-home .modal-grid,body.am-home .uc-grid{border-radius:6px}
  body.am-home .mcard:nth-child(n),body.am-home .uc:nth-child(n){border-right:0;border-bottom:1px solid var(--line)}
  body.am-home .mcard:last-child,body.am-home .uc:last-child{border-bottom:0}
  body.am-recruit .recruit-tools .filtres{display:flex;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
  body.am-recruit .recruit-tools .chip{flex:none}
}

/* ---- Fin de cascade V19 (01/09) : une règle tardive `.hero-team-stage{width:100%}`
   écrasait la largeur au ratio — la scène repassait pleine largeur et cover
   rognait les têtes (mesuré : ratio 2.607 au lieu de 1.929). Posée EN DERNIER
   avec double classe pour gagner : largeur auto pilotée par le ratio, centrée. */
@media(min-width:981px){
  body.am-home .hero-video-stage.hero-team-stage{
    width:auto;max-width:100%;
    /* 08/09/2026 — CENTRE, sur demande de Kanté (« la plateforme doit être bien
       centrée sur n'importe quel pc, mobile ou tablette »). Cela ANNULE la
       consigne du 01/09 (« le bloc part à gauche, Mila doit tomber entre le
       logo et Accueil ») : mesure à l'appui, l'alignement à gauche laissait
       202 px de vide à droite sur un écran de 1366 et 359 px sur un 1920, ce
       qui se lit comme un bandeau collé au bord.
       AUCUN fond derrière : l'image est détourée, le dégradé de scène
       dessinait un rectangle clair (« c'est quoi ce fond blanc ? »). */
    justify-self:center;
    margin-left:auto;
    margin-right:auto;
    background:none;
  }
  body.am-home .hero-video-stage.hero-team-stage::before,
  body.am-home .hero-video-stage.hero-team-stage::after{display:none}
  /* Les blocs de thème (:root[data-theme=…]) repeignaient le dégradé par
     spécificité supérieure — on les égale : aucun fond, dans les deux modes. */
  :root[data-theme="light"] body.am-home .hero-video-stage.hero-team-stage,
  :root[data-theme="dark"] body.am-home .hero-video-stage.hero-team-stage{background:none}
}
/* ≤980px : le mobile garde SA composition pleine largeur (width:auto y mettait
   la scène à 0px de large — vécu, mesuré). Rien à surcharger ici. */

/* ---- Navbar PLATE façon xksgroup.com (Kanté, 01/09 — « pas de card qui
   l'entoure »). Mesuré sur la référence : sticky, transparente au repos,
   bord à bord, 0 rayon, 0 ombre. Au défilement seulement, un fond plein
   + un filet bas pour rester lisible. ---- */
body.am-home nav, body.am-catalog nav, body.am-recruit nav,
:root[data-theme="dark"] body.am-home nav,
:root[data-theme="dark"] body.am-catalog nav,
:root[data-theme="dark"] body.am-recruit nav{
  top:0;width:100%;margin:0;border:0;border-radius:0;background:transparent;box-shadow:none;
}
body.am-home nav.scrolled, body.am-catalog nav.scrolled, body.am-recruit nav.scrolled{
  background:rgba(255,255,255,.94);border-bottom:1px solid rgba(17,19,43,.08);
}
:root[data-theme="dark"] body.am-home nav.scrolled,
:root[data-theme="dark"] body.am-catalog nav.scrolled,
:root[data-theme="dark"] body.am-recruit nav.scrolled{
  background:rgba(13,19,53,.94);border-bottom:1px solid rgba(255,255,255,.1);
}

/* ---- Kante (01/09) : les 3 controles de droite (drapeaux, lune, Se
   connecter) a la MEME hauteur (38px, celle de la carte des drapeaux) et
   coins moins arrondis (8px). ---- */
body.am-home nav :is(.btn,.theme-btn,#lang-btn),
body.am-catalog nav :is(.btn,.theme-btn,#lang-btn),
body.am-recruit nav :is(.btn,.theme-btn,#lang-btn){height:38px;min-height:38px;box-sizing:border-box;border-radius:8px;display:inline-flex;align-items:center;padding-top:0;padding-bottom:0}

/* ⚠️ LE LOGO ETAIT INVISIBLE SUR TELEPHONE, ET C'EST LA REGLE CI-DESSUS QUI EN
   EST LA CAUSE. Mesure a 375 px : la barre reclamait 497 px pour 375
   disponibles (burger + logo + « Se connecter » + « Creer mon equipe IA »), et
   c'est le logo que flexbox ecrasait — largeur ZERO, quelle que soit sa
   hauteur (verifie a 38, 28 et 24 px : toujours zero).
   index.html masque pourtant bien ces deux boutons sous 1240 px. Sans effet :
   le `:is()` ci-dessus contient #lang-btn, et un ID a l'interieur d'un :is()
   donne sa specificite (1,2,1) a TOUT le groupe. Aucun selecteur de classes ne
   peut la battre — d'ou !important, deja employe ailleurs dans le projet pour
   ce meme conflit.
   RIEN N'EST PERDU : les deux actions vivent deja dans le menu burger
   (index.html, bloc .mact). On ne masque que sur l'accueil : experts.html et
   recruter.html n'ont AUCUN menu mobile, les masquer chez elles supprimerait
   leur seul acces. */
@media(max-width:1240px){
  body.am-home nav .nav-cta .btn{display:none!important}
}
body.am-home nav .theme-btn,
body.am-catalog nav .theme-btn,
body.am-recruit nav .theme-btn{width:38px;justify-content:center;padding:0}
body.am-home nav .theme-btn svg,
body.am-catalog nav .theme-btn svg,
body.am-recruit nav .theme-btn svg{width:19px;height:19px}

/* Kante (01/09) : le badge « 69 experts » se posait SUR LES PIEDS des
   personnages. Il remonte sous les cartes de benefices (en HTML). */
body.am-auth .crew-login::before{display:none!important}

/* ============================================================
   Kante (01/09) : « le mode sombre ne s'applique pas a toute la page ».
   Mesure a l'appui : la colonne de droite basculait, la colonne vitrine
   gardait son degrade violet dans les DEUX themes. Elle suit maintenant
   le theme, avec des textes et des cartes lisibles en clair.
   ============================================================ */
:root[data-theme="light"] body.am-auth .show{
  background:
    radial-gradient(560px 420px at 0% 10%, rgba(255,91,110,.16), transparent 68%),
    radial-gradient(560px 420px at 100% 90%, rgba(6,182,212,.16), transparent 68%),
    linear-gradient(145deg,#eef0ff,#f6f2ff 54%,#e9f8ff);
  color:#181a3a;
}
:root[data-theme="light"] body.am-auth .show::after{opacity:.20}
:root[data-theme="light"] body.am-auth .show .brand{color:#181a3a}
:root[data-theme="light"] body.am-auth .show .tagl{color:#6b7194}
:root[data-theme="light"] body.am-auth .show h2{color:#141634}
:root[data-theme="light"] body.am-auth .show .lead{color:#565c80}
:root[data-theme="light"] body.am-auth .fcard{
  background:#fff;border-color:rgba(20,22,52,.10);box-shadow:0 10px 26px -22px rgba(20,22,52,.5);
}
:root[data-theme="light"] body.am-auth .fcard b{color:#181a3a}
:root[data-theme="light"] body.am-auth .fcard .ic{
  color:#0e8ea6;border-color:rgba(6,182,212,.28);background:rgba(6,182,212,.10);
}
:root[data-theme="light"] body.am-auth .dispo-badge{
  background:#fff;border-color:rgba(20,22,52,.10);color:#181a3a;
}

/* Le degrade de « vous attend. » etait pale sur le nouveau fond clair :
   version soutenue, lisible, memes couleurs de marque. */
:root[data-theme="light"] body.am-auth .show .grad-txt{
  background-image:linear-gradient(92deg,#6d28d9,#2563eb 46%,#0e7490);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}

/* ============================================================
   Page de connexion sur ecran COURT (mesure a 360x640) : le bas du
   formulaire — « Continuer avec Facebook », « Creer mon compte », la mention
   de securite — etait coupe et INACCESSIBLE. Rien ne pouvait defiler.

   Cause : la mise en page desktop demandee par Kante (« tout sur la page sans
   que j'aie a utiliser la roulette ») repose sur .auth{height:100vh;
   overflow:hidden} et .form{min-height:100vh}. En deux colonnes cote a cote,
   c'est exact. Mais sous 880 px les colonnes s'EMPILENT : le formulaire
   commence sous le bandeau (142 px mesures) tout en gardant une hauteur de
   100vh — il depassait donc de 142 px, hors d'un parent qui coupe.

   Sur telephone, mieux vaut faire defiler que rendre un bouton inatteignable.
   La contrainte « sans molette » reste entiere sur grand ecran : ce bloc ne
   s'applique qu'en dessous de 880 px, et quand le contenu tient (cas de
   375x812, mesure a 757 px) aucune barre de defilement n'apparait.
   ============================================================ */
@media(max-width:880px){
  /* Pas d'`overflow-y:auto` sur le body : il ferait du body un conteneur de
     defilement a lui seul, et c'est alors `body.scrollTop` qui bouge pendant
     que la fenetre reste a zero — un defilement non standard, que ni la barre
     de la fenetre ni « remonter en haut » ne pilotent. On laisse simplement le
     contenu depasser : c'est la PAGE qui defile, normalement. */
  body.am-auth .auth{
    height:auto;max-height:none;min-height:100svh;overflow:visible;
  }
  body.am-auth .form{
    height:auto;max-height:none;min-height:0;overflow:visible;
    padding-bottom:32px;
  }
}

/* ============================================================
   LA MARQUE EST UNE IMAGE, PAS UNE PASTILLE + DU TEXTE.
   Kanté, 01/09 : « tu dois mettre tout ce bloc… en png… pas dans un carré et
   pas de fond derrière ».
   Avant : un carré de 40 px à coins arrondis, fond #00041f, portant la bulle,
   suivi du mot « AgentMondial » composé dans la police du site. Deux
   typographies pour une seule marque, et une bulle enfermée dans une boîte qui
   n'existe nulle part dans la charte.
   Le PNG est transparent : rien ne doit être peint derrière lui.
   ============================================================ */
.brand-img{
  display:block;height:40px;width:auto;max-width:100%;aspect-ratio:646/120;object-fit:contain;object-position:left center;flex:none;
  background:none;border:0;border-radius:0;box-shadow:none;
}
:is(.logo,.brand):has(.brand-img){
  display:inline-flex;align-items:center;gap:0;flex:none;min-width:0;
  background:none;border:0;box-shadow:none;font-size:0;
}
/* Les anciennes pastilles n'ont plus lieu d'être là où l'image les remplace. */
:is(.logo,.brand):has(.brand-img) .mark{display:none}
@media(max-width:760px){ .brand-img{height:34px;min-width:calc(34px * 646 / 120)} }
/* Catalogue sur telephone (05/09/2026) : la barre portait trois boutons et debordait de 164 px ; on garde l action principale. */
@media(max-width:600px){ body.am-catalog nav .nav-in .btn.ghost{display:none!important} body.am-catalog nav .nav-in .btn{padding:0 10px!important;font-size:12px!important;white-space:nowrap} body.am-catalog nav .nav-in{gap:8px} body.am-catalog nav .brand-img{height:22px;min-width:118px} body.am-catalog nav #lang-btn{padding:0!important;gap:2px!important} body.am-catalog nav #lang-btn .lsw{padding:2px 5px!important;font-size:10px!important} }

/* Même règle hors de l'espace connecté : le logo n'est jamais encadré. */
:is(.logo,.brand) .mark{
  background-color:transparent;box-shadow:none;border-radius:0;
  background-size:contain;background-repeat:no-repeat;background-position:center;
}

/* ============================================================
   Kanté, 01/09 : « agrandis l'écriture du logo, il me paraît petit à cet
   endroit, et rapproche-le un peu de l'onglet Accueil ».
   Mesuré avant : logo de 40 px de haut, et 31 px de vide avant le premier
   onglet — la barre de navigation est une grille en trois colonnes, et les
   liens étaient CENTRÉS dans la leur, ce qui ajoutait une vingtaine de pixels
   au gap de 12. Après : 52 px de haut, et 12 px d'écart, le gap seul.
   ============================================================ */
/* ⚠️ MESURE, PAS TATONNEMENT. Le logo faisait 226x52 px dans une barre de
   74 px — 70 % de sa hauteur — et son ecriture 29,7 px contre 14 px pour les
   onglets, soit 2,12 fois. A 36 px, elle tombe a 20,6 px (1,47 fois) : le nom
   reste dominant sans ecraser la navigation.
   Le rapport avait empire sans que rien ne bouge dans le CSS : en reequilibrant
   la bulle, l'image est passee de 121 a 98 px de haut, donc a hauteur
   d'affichage egale tout le contenu s'est trouve agrandi de 23 %. */
nav .brand-img{height:36px}
.nav-in .nav-links{justify-self:start}
@media(max-width:980px){ nav .brand-img{height:32px} }
@media(max-width:760px){ nav .brand-img{height:28px} }


/* ═══ COULEUR SUR LES LIVRABLES ET LES MÉTIERS (04/09/2026) — Kanté : « il manque
   des beaux logos en couleurs », « on n'arrive même pas à différencier ».
   Chaque carte a SA teinte : pastille en dégradé, icône blanche, filet et halo
   dans la même teinte. Placé en fin de feuille pour gagner sur les règles
   « plates » ci-dessus. ═══ */
body.am-home .modal-grid{gap:16px;border:0}
body.am-home .modal-grid .mcard{--mc:#7C3AED;position:relative;overflow:hidden;border:1px solid var(--line)!important;border-radius:12px!important;
  background:var(--surf)!important;padding:22px 22px 20px;display:flex;flex-direction:column;gap:8px;text-align:left}
body.am-home .modal-grid .mcard::before{content:"";position:absolute;inset:0;background:radial-gradient(90% 60% at 100% 0%,color-mix(in srgb,var(--mc) 24%,transparent),transparent 62%);pointer-events:none}
body.am-home .modal-grid .mcard::after{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:linear-gradient(180deg,var(--mc),transparent)}
body.am-home .modal-grid .mcard:hover{transform:translateY(-5px);border-color:color-mix(in srgb,var(--mc) 60%,var(--line))!important}
body.am-home .modal-grid .mcard .e{width:48px;height:48px;border-radius:12px;display:grid;place-items:center;margin:0 0 6px;position:relative;
  background:linear-gradient(135deg,var(--mc),color-mix(in srgb,var(--mc) 45%,#fff));box-shadow:0 12px 26px -12px var(--mc)}
body.am-home .modal-grid .mcard .e svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.am-home .modal-grid .mcard h4{position:relative;font-size:17px}
body.am-home .modal-grid .mcard p{position:relative;font-size:13.5px;line-height:1.5}
body.am-home .modal-grid .mcard .by{position:relative;margin-top:auto;padding-top:10px;display:flex;flex-wrap:wrap;gap:5px;font-size:11px}
body.am-home .modal-grid .mcard .by span{font-weight:700;color:var(--txt);padding:4px 8px;border-radius:5px;border:1px solid color-mix(in srgb,var(--mc) 45%,var(--line));background:color-mix(in srgb,var(--mc) 12%,transparent)}
body.am-home .mcard.txt{--mc:#7C3AED}body.am-home .mcard.img{--mc:#EC4899}body.am-home .mcard.vid{--mc:#3B82F6}body.am-home .mcard.vox{--mc:#10B981}body.am-home .mcard.mus{--mc:#F59E0B}body.am-home .mcard.doc{--mc:#06B6D4}

body.am-home .uc-grid{gap:14px;border:0}
body.am-home .uc-grid .uc{position:relative;overflow:hidden;border:1px solid var(--line)!important;border-radius:12px!important;border-top:1px solid var(--line)!important;
  background:var(--surf)!important;padding:22px 20px 20px;min-height:0}
body.am-home .uc-grid .uc::before{content:"";position:absolute;inset:0;background:radial-gradient(80% 55% at 100% 0%,color-mix(in srgb,var(--uc-tone) 18%,transparent),transparent 60%);pointer-events:none}
body.am-home .uc-grid .uc:hover{transform:translateY(-4px);border-color:color-mix(in srgb,var(--uc-tone) 60%,var(--line))!important;background:var(--surf)!important}
body.am-home .uc-grid .uc .e{width:46px;height:46px;border-radius:12px;margin-bottom:14px;position:relative;
  background:linear-gradient(135deg,var(--uc-tone),color-mix(in srgb,var(--uc-tone) 45%,#fff));box-shadow:0 12px 26px -12px var(--uc-tone)}
body.am-home .uc-grid .uc .e svg{width:22px;height:22px;stroke:#fff;fill:none;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}
body.am-home .uc-grid .uc h4,body.am-home .uc-grid .uc p{position:relative}
body.am-home .uc-grid .uc:nth-child(1){--uc-tone:#7C3AED}body.am-home .uc-grid .uc:nth-child(2){--uc-tone:#3B82F6}body.am-home .uc-grid .uc:nth-child(3){--uc-tone:#EC4899}
body.am-home .uc-grid .uc:nth-child(4){--uc-tone:#F59E0B}body.am-home .uc-grid .uc:nth-child(5){--uc-tone:#EF4444}body.am-home .uc-grid .uc:nth-child(6){--uc-tone:#06B6D4}
body.am-home .uc-grid .uc:nth-child(7){--uc-tone:#10B981}body.am-home .uc-grid .uc:nth-child(8){--uc-tone:#F97316}body.am-home .uc-grid .uc:nth-child(9){--uc-tone:#A855F7}
body.am-home .uc-grid .uc:nth-child(10){--uc-tone:#EAB308}body.am-home .uc-grid .uc:nth-child(11){--uc-tone:#0EA5E9}body.am-home .uc-grid .uc:nth-child(12){--uc-tone:#F43F5E}


/* ═══ BLOC DES EXPERTS, REVU (04/09/2026) : le chef d'orchestre (le VRAI, à la
   baguette) en bandeau pleine largeur, portrait en couverture sans vide, texte au
   centre, repères et bouton à droite ; puis les experts sur deux rangées de cinq. ═══ */
body.am-home .agents{gap:0}
body.am-home .agent.chef{grid-column:1/-1;grid-row:auto;display:grid;grid-template-columns:300px minmax(0,1.15fr) minmax(0,.85fr);gap:0;padding:0;min-height:0;align-items:stretch;
  border-bottom:1px solid var(--line);background:radial-gradient(80% 90% at 0% 50%,rgba(124,58,237,.28),transparent 60%),radial-gradient(60% 80% at 100% 0%,rgba(6,182,212,.14),transparent 60%),var(--surf)}
body.am-home .agent.chef:hover{background:radial-gradient(80% 90% at 0% 50%,rgba(124,58,237,.34),transparent 60%),radial-gradient(60% 80% at 100% 0%,rgba(6,182,212,.18),transparent 60%),var(--surf2)}
body.am-home .agent.chef .av{aspect-ratio:auto;height:100%;min-height:300px;max-height:340px;margin:0;border:0;border-radius:0;position:relative;overflow:hidden;background:#12102a;padding:0;display:block}
body.am-home .agent.chef .av::before,body.am-home .agent.chef .av::after{display:none}
body.am-home .agent.chef .av img{position:absolute;inset:0;margin:0;width:100%;height:100%;max-width:none;object-fit:cover;object-position:50% 16%;filter:none;animation:agfloat 8s ease-in-out infinite;transform-origin:50% 100%}
body.am-home .agent.chef:hover .av img{transform:scale(1.03);animation-play-state:paused}
body.am-home .agent.chef .txt{padding:30px 34px;display:flex;flex-direction:column;justify-content:center;gap:8px;min-width:0}
body.am-home .agent.chef .side{padding:30px 30px 30px 0;display:flex;flex-direction:column;justify-content:center;gap:14px;min-width:0}
body.am-home .agent.chef .nm{font-size:clamp(24px,2.3vw,30px);line-height:1.08;letter-spacing:-.025em}
body.am-home .agent.chef .desc{font-size:14.5px;line-height:1.6}
body.am-home .agent.chef .pts{display:flex;flex-direction:column;gap:9px;margin:0}
body.am-home .agent.chef .cta{margin:0;align-self:flex-start}
@media(max-width:1080px){
  body.am-home .agent.chef{grid-template-columns:240px minmax(0,1fr)}
  body.am-home .agent.chef .side{grid-column:2;padding:0 30px 26px 34px}
  body.am-home .agent.chef .txt{padding-bottom:12px}
  body.am-home .agent.chef .av{max-height:none;grid-row:span 2}
}
@media(max-width:700px){
  body.am-home .agent.chef{grid-template-columns:1fr}
  body.am-home .agent.chef .av{grid-row:auto;min-height:240px;max-height:260px}
  body.am-home .agent.chef .av img{object-position:50% 12%}
  body.am-home .agent.chef .txt,body.am-home .agent.chef .side{padding:20px 22px}
  body.am-home .agent.chef .side{padding-top:0}
}

/* ═══════════════════════════════════════════════════════════════════════════
   LE DEROULEUR SUR LE COTE (04/09/2026)

   « On voit mal le derouleur sur le cote. » Mesure faite avant de toucher :
     · thème sombre  #2E376B sur #080F3A  ->  contraste 1,65
     · thème clair   #E7E9EE sur #F6F7F9  ->  contraste 1,13
   Un contour a 1,13, c'est un contour qu'on ne voit pas. Et la bordure de 3 px
   prise sur une largeur de 10 px ne laissait que QUATRE pixels de curseur.

   Reecrit : 13 px de large (9 px de curseur visible), et une couleur non plus
   fixe mais TRANSPARENTE — le curseur se pose donc correctement sur un panneau
   comme sur le fond de page, ce que `var(--surf3)` ne savait pas faire. La
   bordure reste, en transparent + `background-clip:padding-box`, pour garder
   l'air autour du curseur sans reboucher la gouttiere.
     · sombre  blanc a 34 %  ->  3,04     · clair  noir a 45 %  ->  3,14
   Au-dessus de 3:1, le seuil des elements d'interface non textuels.
   ═══════════════════════════════════════════════════════════════════════════ */
html{scrollbar-width:thin;scrollbar-color:rgba(9,9,11,.45) transparent}
:root[data-theme="dark"]{scrollbar-color:rgba(255,255,255,.34) transparent}
::-webkit-scrollbar{width:13px;height:13px}
::-webkit-scrollbar-track,::-webkit-scrollbar-corner{background:transparent}
::-webkit-scrollbar-thumb{background:rgba(9,9,11,.45);background-clip:padding-box;
  border:3px solid transparent;border-radius:99px;min-height:40px}
::-webkit-scrollbar-thumb:hover{background:rgba(9,9,11,.62);background-clip:padding-box}
::-webkit-scrollbar-thumb:active{background:rgba(9,9,11,.74);background-clip:padding-box}
:root[data-theme="dark"] ::-webkit-scrollbar-thumb{background:rgba(255,255,255,.34);background-clip:padding-box}
:root[data-theme="dark"] ::-webkit-scrollbar-thumb:hover{background:rgba(255,255,255,.5);background-clip:padding-box}
:root[data-theme="dark"] ::-webkit-scrollbar-thumb:active{background:rgba(255,255,255,.64);background-clip:padding-box}

/* ═══ ICONES 3D (05/09/2026) ═══ les images remplacent les traits aux memes emplacements. */
body.am-home :is(.mcard,.uc) .e img.am-ico3d{width:26px;height:26px;object-fit:contain;display:block}
body.am-home .modal-grid .mcard .e img.am-ico3d,body.am-home .uc-grid .uc .e img.am-ico3d{width:28px;height:28px}

/* ═══ ICONES NUES (05/09/2026) ═══
   Kante : « il faut que les logos soient en png et non dans les cards ». L'icone
   3D se pose directement sur la carte, sans tuile coloree derriere — comme dans
   la rangee « Business, Marketing… ». La classe am-nu est posee par le JS ;
   :has() couvre les navigateurs qui n'ont pas encore relu le script. */
body.am-home :is(.mcard,.uc) .e.am-nu,
body.am-home :is(.mcard,.uc) .e:has(> img.am-ico3d){background:none;border:0;box-shadow:none;width:auto;min-width:0;padding:0;display:flex;align-items:center;justify-content:flex-start} /* la hauteur de la boite est conservee : la carte ne change pas de taille */
body.am-home :is(.mcard,.uc) .e img.am-ico3d,
body.am-home .modal-grid .mcard .e img.am-ico3d,body.am-home .uc-grid .uc .e img.am-ico3d{width:32px;height:32px;filter:drop-shadow(0 5px 8px rgba(20,16,60,.14))} /* 44 -> 32 : « logos moins grands » (Kante, 05/09) */

/* ═══ PAS DE PANNEAU DERRIERE LES CARTES MEDIAS (05/09/2026) ═══
   Kante : « pourquoi il y a un fond derriere les cards, ca fait moche ». La grille
   .modal-grid portait la meme couleur de surface que ses cartes : en sombre, un
   grand rectangle clair encadrait les six cartes. La grille redevient invisible ;
   seules les cartes ont un fond. */
body.am-home .modal-grid,
body.am-home .uc-grid{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important} /* « la aussi » : les deux grilles .uc-grid (usages, agences) portaient le meme panneau */

/* ═══ CARTES LIVRABLES AU FORMAT DES CARTES D'USAGES (05/09/2026) ═══
   Kante : « tu peux mettre ces cards a la meme taille que les autres ? ». Les six
   cartes prennent la meme hauteur (rangees egales), l'icone occupe 36 px au lieu
   d'une boite de 48, la description et les etiquettes se resserrent, et les
   etiquettes tiennent sur une ligne — c'est ce qui faisait deborder « Texte ». */
body.am-home .modal-grid{grid-auto-rows:1fr;gap:14px}
body.am-home .modal-grid .mcard{padding:20px 20px 18px;gap:6px}
body.am-home .modal-grid .mcard .e.am-nu,body.am-home .modal-grid .mcard .e:has(> img.am-ico3d){height:36px;margin:0 0 4px}
body.am-home .modal-grid .mcard h4{font-size:16px}
body.am-home .modal-grid .mcard p{font-size:13px;line-height:1.45}
body.am-home .modal-grid .mcard .by{padding-top:6px;gap:4px;font-size:10px;flex-wrap:nowrap;overflow:hidden}
body.am-home .modal-grid .mcard .by span{padding:2px 6px;white-space:nowrap;letter-spacing:0} /* 5 etiquettes de « Texte » sur une ligne : DeepSeek etait coupe */

/* ═══ SOUS-TITRE « Et pas seulement du texte » (05/09/2026) ═══
   Kante : « mieux presenter ces textes, ils sont mal places ». Le bloc .sub-head
   etait une ligne flex : le titre prenait 474 px et le paragraphe se retrouvait
   coince sur 272 px, en quatre lignes, cale sur la ligne de base du titre.
   Titre au-dessus, paragraphe en dessous sur une largeur de lecture. */
body.am-home .sub-head{display:block!important;max-width:760px}
body.am-home .sub-head h3{display:block;margin:0;text-wrap:balance}
body.am-home .sub-head p{display:block;margin:12px 0 0!important;max-width:620px;width:auto!important;flex:none;font-size:16px;line-height:1.55;color:var(--muted);padding:0!important;border:0!important}
body.am-home .sub-head::before,body.am-home .sub-head p::before{display:none}

/* ═══ CANAUX / CAPACITES ET VIGNETTES DE FICHIERS EN 3D (05/09/2026) ═══ derniers
   traits et emoji systeme de la landing : en-tetes des cartes .chan (icone nue,
   nommee par data-ico) et vignettes .liv des maquettes. Rangees egales dans .chan-grid. */
body.am-home .chan .ic.am-nu{background:none!important;box-shadow:none!important;border:0!important}
body.am-home .chan .ic img.am-ico3d{width:36px;height:36px;object-fit:contain;filter:drop-shadow(0 5px 8px rgba(20,16,60,.16))}
body.am-home .mock .liv .ico.am-nu{background:none!important;border:0!important}
body.am-home .mock .liv .ico img.am-ico3d{width:22px;height:22px;object-fit:contain}
body.am-home .chan-grid{grid-auto-rows:1fr}

/* ═══ SILHOUETTES TROP SOMBRES EN MODE NUIT (05/09/2026) ═══
   Kante : « trop sombre ce logo ». Mesure sur les 89 icones : les silhouettes
   Fluent (user, users, rh) ont une luminance moyenne de 32/255 — quasi noires
   sur un fond #101742. Inversion + rotation de teinte : le noir devient clair,
   la teinte revient a sa place. Les autres icones sont deja lumineuses (≥ 66). */
:root[data-theme="dark"] img.am-ico3d:is([src*="/users."],[src*="/user."],[src*="/rh."]){filter:invert(.88) hue-rotate(180deg) drop-shadow(0 4px 7px rgba(0,0,0,.35))}

/* ═══ BLOC CHEF D'ORCHESTRE SANS CADRE (05/09/2026) ═══ Kante : d'accord pour le
   retirer aussi. Le conteneur .agents ne peint plus rien ; le chef et la rangee des
   visages gardent leurs propres surfaces. */
body.am-home .agents{background:transparent!important;border:0!important;box-shadow:none!important;border-radius:0!important}

/* ═══════════════════════════════════════════════════════════════════════
   LE BLOC DE NAVIGATION DECALE VERS LA DROITE — 08/09/2026

   Kante, capture de sa barre a l appui : « decaler le bloc comme tu le vois
   dans la capture vers la droite ».

   Sur sa capture les ONGLETS SONT VISIBLES : son ecran fait donc plus de
   1400 px de large (en dessous, ils se replient dans le burger). Ma premiere
   regle, bornee a 1399 px, ne l atteignait pas.

   Le bloc entier est deplace, mais jamais au-dela de la place libre a sa
   droite, sinon « Se connecter » sort de l ecran. La borne se calcule sur la
   largeur reelle de la barre, qui change a 1400 px.

   ⛔ Ni `padding-left` (au-dessus de 1400 le logo est centre dans sa colonne :
   aucun effet sur lui, et a forte dose il chevauche « Accueil »), ni de
   contrainte de largeur (elle retrecit le logo de moitie). Mesures dans
   memory/agentmondial-hero-bandeau-centre.md.

   `--am-nav-decalage` est la SEULE valeur a bouger pour en mettre plus ou
   moins.
   ═══════════════════════════════════════════════════════════════════════ */
@media(min-width:981px){
  /* ⚠️ LIMITE A L ACCUEIL. Applique a toutes les pages publiques, ce decalage
     faisait DEBORDER recruter.html : sa barre monte a 1400 px de large alors
     que la borne se calcule sur 1180, donc elle sortait de 59 px et la page
     entiere passait a 1425. Mesure a 1366. */
  body.am-home nav .wrap.nav-in{
    --am-nav-decalage:80px;
    transform:translateX(min(var(--am-nav-decalage), max(0px, (100vw - 1180px) / 2 - 24px)));
  }
}
@media(min-width:1400px){
  body.am-home nav .wrap.nav-in{
    transform:translateX(min(var(--am-nav-decalage), max(0px, (100vw - 1400px) / 2 - 24px)));
  }
}
