/* ==========================================================================
                             SECTION HERO
   ========================================================================== */
.at-hero{position: relative; isolation: isolate; color: var(--trafic-dark);
padding: calc(var(--at-header-h) + 86px) 20px 78px 20px; /*Padding très spécifique dû à la gestion du header*/}
.at-hero-cta{ display:flex; justify-content:center; margin-bottom:var(--at-margin); }
.at-hero-logos{ opacity:.85; }
.at-hero-logos-list{list-style:none; margin:0; padding:0; display:flex; justify-content:center; align-items:center;gap:72px; flex-wrap:wrap;}
.at-hero-logos-list img{ display:block; height:72px; width:auto; filter:grayscale(100%); opacity:.85; transition:opacity .15s, filter .15s; }
.at-hero-logos-list img:hover{ filter:none; opacity:1; }
.at-hero-bg{
  position:absolute; inset:0; z-index:-3;
  background:
    radial-gradient(rgba(0, 0, 0, 0.094) 1.1px, transparent 1.1px) 0 0 / 18px 18px,
    linear-gradient(160deg, rgba(0,120,200,0.3) 0%, rgba(0,120,200,0.15) 35%, rgba(0,120,200,0) 70%),
    linear-gradient(180deg,#ffffff 0%, #f8fafc 100%);
}
.at-hero-canvas{ position:absolute; inset:0; z-index:-2; width:100%; height:100%; pointer-events:none; }
.at-hero-contrast{position:absolute; inset:0; z-index:-1; pointer-events:none;
  background: radial-gradient(600px 320px at 50% 38%, rgba(255,255,255,.88) 0%, rgba(255,255,255,.68) 28%, rgba(255,255,255,.25) 52%, rgba(255,255,255,0) 70%);
  transition: opacity .25s, transform .25s; opacity:1;} /* Constaste entre le fond et le texte pour assurer une bonne lisibilité */
/* ===== MEDIA-QUERIES HERO ===== */
@media (max-width: 991px){
    .at-hero{padding: calc(var(--at-header-h) + 86px) 20px 78px 20px;}
    .at-hero-logos-list{gap:52px;}
    .at-hero-logos-list img{height:52px;}}
@media (max-width: 767px){
    .at-hero{padding: calc(var(--at-header-h) + 88px) 20px 78px 20px;}
    .at-display-none{ display:none; }}
@media (max-width: 450px){
    .at-hero{padding: calc(var(--at-header-h) + 84px) 20px 78px 20px;}
    .at-hero-contrast{ background:radial-gradient(520px 300px at 50% 40%, rgba(255,255,255,.92) 0%, rgba(255,255,255,.70) 30%, rgba(255,255,255,.28) 55%, rgba(255,255,255,0) 72%);}
}
/* ==========================================================================
                             SECTION CLIENTS
   ========================================================================== */
.at-clients{position: relative; padding: 78px 0px;
  background: linear-gradient(180deg, var(--clients-bg1) 0%, var(--clients-bg2) 100%);
  /* ne pas clipper l'enfant width:100vw */
  overflow-x: visible;}
.at-clients::before{
  content:""; position:absolute; left:0; right:0; top:-56px; height:56px; pointer-events:none;
  background: linear-gradient(to bottom, rgba(255,255,255,0) 0%, var(--clients-bg1) 100%);} /* petit fondu de transition avec la section précédente */
.at-logos-stack{position: relative;isolation: isolate;z-index: 0;overflow-x: visible;}
.at-logos-rail{position: relative; z-index: 2; display: flex; align-items: center; overflow-x: hidden; overflow-y: visible; contain: paint; min-height: clamp(80px, 10vw, 120px);
  width: 100vw; width: 100dvw; left: 50%; transform: translateX(-50%) translateY(var(--ty, 0px)); padding-left:  clamp(16px, 4vw, 48px); padding-right: clamp(16px, 4vw, 48px);
  margin-top: 42px;  margin-bottom: 42px; -webkit-mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent); mask-image: linear-gradient(90deg, transparent, #000 6%, #000 94%, transparent);}
.at-logos-rail.is-paused .at-logos-track{ will-change: auto; }
.at-logos-track{display: flex; align-items: center; flex-wrap: nowrap; gap: 0; will-change: transform;}
.at-logos-list{
  --speed: 30s; /* lu par le JS */
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  flex-wrap: nowrap;
  min-width: max-content; /* largeur intrinsèque = somme des logos + gaps */
  gap: 140px;
  padding: 0; margin: 0; list-style: none;}
.at-logos-track [data-rail-spacer]{
  flex: 0 0 auto;
  width: 140px; /* valeur de secours, corrigée en JS */
  height: 1px; opacity: 0;
} /* “spacer” entre la fin de l’original et le début du clone (recrée le gap) */
.at-logos-list li{ flex: 0 0 auto; }
.at-logos-list img{
  flex: 0 0 auto;
  height: 80px; /* valeur mobile par défaut */
  width: auto;
  max-height: none; /* neutralise les anciennes règles */
  display: block;
  filter: grayscale(100%);
  opacity: .9;
  transform: translateZ(0);
  transition: filter .15s ease, opacity .15s ease, transform .15s ease;
}
.at-logos-list img:hover{ filter: none; opacity: 1; transform: translateY(-1px) scale(1.02); }
.at-logos-rail--bg{ position: absolute; z-index: 0; pointer-events: none; width: 100vw; width: 100dvw; left: 50%; top: 60px;
  transform: translateX(-50%) translateY(calc(-50% + var(--ty, 0px))); opacity: .05; filter: grayscale(100%) saturate(.85) contrast(.90) blur(.4px);} /* BG rail derrière, très clair et plus gros */
.at-logos-rail--bg .at-logos-list img{ height: clamp(140px, 20vw, 280px); width: auto; }
.at-clients-cta{ display:flex; justify-content:center; margin-top: var(--at-margin); }
/* ===== MEDIA-QUERIES CLIENTS ===== */
@supports not (overflow: clip) {
  .at-clients, .at-logos-stack, .at-logos-rail{ overflow-x: hidden; }}
@supports (overflow: clip){
  .at-logos-stack{ overflow-x: clip; }
  .at-logos-rail { overflow-x: clip; }}
@media (prefers-reduced-motion: reduce){
  .at-logos-list{ animation: none; flex-wrap: wrap; justify-content: center; }
  .at-logos-rail{ -webkit-mask-image: none; mask-image: none; }}
@media (hover:hover){
  .at-logos-rail:hover .at-logos-track{ will-change: auto; }  /* Hover pause desktop (optionnel, garde l’état “is-paused”) */}
@media (hover:none){
  .at-logos-list img:hover{ transform: none; }}
@supports not (gap: 1rem) {
  .at-logos-list  { gap: 0 !important; }
  .at-logos-list li + li { margin-left: clamp(28px, 5vw, 64px); }
  .at-logos-rail [data-rail-spacer] { width: clamp(28px, 5vw, 64px) !important; }}
@supports (content-visibility: auto) {/* Progressive enhancement : réserve intrinsèque pour les images lazy */
  .at-logos-list img[loading="lazy"]{
    content-visibility: auto;
    /* placeholder vertical (mobile) ; la largeur s’adapte via object-size */
    contain-intrinsic-size: 0 80px;}
  .at-logos-rail--bg .at-logos-list img[loading="lazy"]{
    contain-intrinsic-size: 0 160px; /* mobile: réserve cohérente avec la clamp mini */}}
@media (min-width: 992px){
  .at-logos-rail:not(.at-logos-rail--bg) .at-logos-list img{ height: 120px; }
  .at-logos-rail--bg .at-logos-list img{     height: clamp(220px, 16vw, 360px); }
  .at-logos-rail--reverse .at-logos-list { margin-top:var(--at-margin); }
  .at-logos-rail--bg{ top:135px; }
  .at-logos-list img[loading="lazy"]{ contain-intrinsic-size: 0 120px; }
  .at-logos-rail--bg .at-logos-list img[loading="lazy"]{ contain-intrinsic-size: 0 240px;}}
  /* ==========================================================================
                   SECTION TEAM
   ========================================================================== */
.at-team.v4{position: relative; padding: 78px 20px; background: var(--trafic-grey); overflow: hidden; }
.at-team.v4 .at-team-sep-line{ position:absolute; top:0; left:0; right:0; height:4px; z-index:10; background-image: linear-gradient(90deg, color-mix(in srgb, var(--trafic-primary) 72%, #fff) 0%, color-mix(in srgb, var(--trafic-primary) 40%, transparent) 100%);
  background-size: var(--sep, 0%) 100%; background-repeat: no-repeat; opacity:.95;} /* séparation avec la section supérieure */
.at-team.v4 .at-team-sep-line::after{ content:""; position:absolute; inset:0; pointer-events:none; box-shadow: 0 0 18px color-mix(in srgb, var(--trafic-primary) 35%, transparent); opacity:.65;}
/* Grille 2 colonnes */
.at-team.v4 .at-team-grid{ position:relative; z-index:1; margin:0 auto; display:grid; gap:clamp(28px, 4vw, 56px); grid-template-columns: minmax(320px, 520px) 1fr; align-items:start;}
/* Titre/texte/CTA */
.at-team-head{ display:block; }
.at-team-actions{ display:flex; gap:12px; align-items:center; justify-content:center; margin-bottom:var(--at-margin); }
.at-team-actions .at-button{ width:auto; }
/* KPIs — visibles par défaut (pas de dépendance JS) */
.at-metrics-strip{ position: relative; }
.at-metrics{ display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 13px;}
/* Cartes “verre” + dégradé + petite tâche bleue */
.at-metric{ position: relative; padding: 13px; border-radius: 18px; overflow: hidden;
  background:
    /* petite tâche bleue, discrète, coin haut-droit */
    radial-gradient(220px 160px at 104% -18%, color-mix(in srgb, var(--trafic-primary) 22%, transparent) 0%, transparent 60%),
    /* modelé sombre très léger en haut-gauche */
    radial-gradient(600px 300px at -20% -30%, rgba(0,0,0,.08), transparent 60%),
    /* base verre clair */
    linear-gradient(135deg, rgba(255,255,255,.92), rgba(255,255,255,.98));
  box-shadow: 0 16px 40px rgba(0,0,0,.08);
  display: grid; grid-template-rows: 1fr auto; align-items: end; gap: 8px;}
/* Halo conique subtil */
.at-metric::after{
  content:""; position:absolute; right:-28px; top:-28px; width:160px; height:160px; z-index:0;
  background: conic-gradient(from 210deg, var(--trafic-primary), transparent 40%);
  filter: blur(18px); opacity:.24; transform: rotate(-8deg);}
/* Reflet diagonal premium (sheen) */
.at-metric::before{
  content:""; position:absolute; inset:-1px; pointer-events:none; z-index:1;
  background:
    linear-gradient(115deg, rgba(255,255,255,0) 40%,
                           rgba(255,255,255,.45) 52%,
                           rgba(255,255,255,0) 64%);
  background-repeat: no-repeat;
  background-size: 26% 200%;
  background-position: -140% -30%;
  transition: background-position 1.1s cubic-bezier(.2,.8,.2,1);
  mix-blend-mode: screen;
  opacity:.55;}
/* Valeur + libellés */
.at-metric-value{margin:0; line-height:1; font-weight:900; font-family:'Oswald', sans-serif; font-size: 42px; order:1;
  background: linear-gradient(90deg,  var(--trafic-dark), var(--trafic-primary)); -webkit-background-clip:text; background-clip:text; color:transparent;
  text-shadow: 0 0 0.5px rgba(0,0,0,.22); }
.at-metric .at-counter{ min-width: 1ch; display: inline-block; font-weight:500; }
.at-metric-label{ margin:0; font-size:14px; letter-spacing:.8px; text-transform:uppercase; color:var(--trafic-dark); opacity:.75; font-family: 'Oswald', sans-serif; order:2;}
.at-metric-sub{ font-size: 12px; text-transform: none; }
/* Reveal-on-scroll (propre, no-JS safe) */
.at-team.v4.at-js-kpi .at-metric{ opacity:0; transform: translateY(18px); }
.at-team.v4.at-js-kpi .at-metric.is-in{opacity:1; transform:none; transition: transform .6s cubic-bezier(.2,.8,.2,1), opacity .6s ease;}
.at-team.v4.at-js-kpi .at-metric.is-in::before{ background-position: 160% 30%; }
/* Drapeau FR */
.at-flag{ display:inline-block; width:16px; height:10px; margin-left:8px; vertical-align:baseline; border-radius:2px; box-shadow:0 0 0 1px rgba(0,0,0,.08) inset; }
.at-flag--fr{ background:linear-gradient(90deg,#0055A4 0 33.333%,#fff 33.333% 66.666%,#EF4135 66.666% 100%); }
/* Collage */
.at-team-right{ position:relative; }
.at-collage.v2{
  /* variables lues par le JS (desktop) */
  --min-alpha:.40;
  --fade-window:.72;
  --parallax-factor:.18;
  position:relative; min-height:clamp(480px, 60vh, 720px);
  border-radius:28px; overflow:visible; transform:translateZ(0);
  background:
    radial-gradient(90% 70% at 62% 38%, rgba(255,255,255,.55), transparent 60%),
    radial-gradient(60% 60% at 70% 60%, rgba(0,120,200,.06), transparent 70%);}
/* Items absolus (desktop) */
.at-col-item{
  position:absolute;
  left:var(--x,50%); top:var(--y,50%); width:var(--w,30%);
  transform: translate(-50%, calc(-50% + var(--parallax, 0px))) rotate(var(--rot,0deg));
  opacity:var(--alpha, var(--min-alpha));
  filter:drop-shadow(0 12px 28px rgba(0,0,0,.16));
  will-change: transform, opacity;}
.at-col-item::before{
  content:""; position:absolute; inset:-7%; border-radius:36px; z-index:-1; pointer-events:none;
  background: radial-gradient(50% 50% at 50% 45%, color-mix(in srgb, var(--trafic-primary) 18%, transparent), transparent 70%);
  filter: blur(18px); opacity:.5;}
.at-col-frame{
  position:relative; width:100%; aspect-ratio:var(--ar,1/1);
  border-radius:22px; overflow:hidden; background:#e9eef3;
  box-shadow: inset 0 0 0 1px rgba(255,255,255,.7), inset 0 30px 40px rgba(0,0,0,.08);}
.at-col-frame::before{
  content:""; position:absolute; inset:-2px; border-radius:24px; pointer-events:none;
  background: linear-gradient(180deg, color-mix(in srgb, var(--trafic-primary) 70%, #fff), transparent 65%);
  -webkit-mask: linear-gradient(#000 0 0) content-box, linear-gradient(#000 0 0);
  -webkit-mask-composite: xor; mask-composite: exclude;
  padding:1.5px; opacity:.7;}
.at-col-frame::after{
  content:""; position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(80% 60% at 50% 40%, rgba(0,0,0,.0) 60%, rgba(0,0,0,.12) 100%);
  mix-blend-mode:multiply; opacity:.32;}
.at-col-item img{ position:absolute; inset:0; width:100%; height:100%; object-fit:cover; object-position:center; }
.at-col-cap{
  display:-webkit-box; -webkit-line-clamp:1; -webkit-box-orient:vertical;
  overflow:hidden;
  margin-top:8px;letter-spacing: 0.8px;
  font-size:14px; opacity:.75;
  font-family:'Oswald',sans-serif; text-transform:uppercase;color:var(--trafic-dark);font-weight:400;}
/* Zoning desktop */
.at-col-A{ --x:66%; --y:36%; --w:52%; --ar:3/2; --rot:-0.8deg; z-index:1; }
.at-col-B{ --x:28%; --y:20%; --w:38%; --ar:16/9; --rot:1.2deg;  z-index:0; }
.at-col-C{ --x:22%; --y:78%; --w:28%; --ar:1/1;  --rot:-5deg;   z-index:2; }
.at-col-D{ --x:84%; --y:78%; --w:22%; --ar:3/4; --rot:2.2deg;  z-index:1; }
.at-col-E{ --x:54%; --y:67%; --w:24%; --ar:1/1;  --rot:-8deg;  z-index:3; }
/* ===== MEDIA-QUERIES TEAM / AGENCE ===== */
@media (prefers-reduced-motion: reduce){
  .at-team.v4.at-js-kpi .at-metric{ animation:none!important; transition:none !important; transform:none !important; opacity:1; }
  .at-metric::before{ transition:none; opacity:0; }}
@media (max-width: 991px){
.at-col-frame{/* ratio mobile par tuile ; retombe sur le ratio desktop si non défini */aspect-ratio: var(--ar-m, var(--ar, 1/1));}
.at-col-item img{/* cover par défaut, pilotable par variable */
  object-fit: var(--fit-m, var(--fit, cover));object-position: var(--focus-x, 50%) var(--focus-y, 50%);transform: scale(var(--img-scale-m, 1));
  transform-origin: var(--focus-x, 50%) var(--focus-y, 50%);}
.at-team.v4 .at-team-grid{ grid-template-columns:1fr; }
.at-col-A{ --ar-m: 4/3; --focus-y: 40%; }
.at-col-B{ --ar-m: 16/9; }
.at-col-C{ --ar-m: 1/1; --img-scale-m: .94; --focus-y: 45%; }
.at-col-D{ --ar-m: 3/4; --focus-x: 40%; --img-scale-m: 1; --fit-m: cover; }
.at-col-E{ --ar-m: 1/1; --img-scale-m: .95; --focus-y: 55%; }
.at-team.v4{overflow-x: clip;overflow-y: visible;padding-right: max(20px, env(safe-area-inset-right));}
.at-team.v4 .at-team-grid{ overflow: visible; }
.at-metrics-strip{width: 100%;max-width: 100vw;box-sizing: border-box;overflow-x: clip;overflow-y: visible;contain: paint;}
.at-col-item::before{ inset: -2.5%; } 
.at-col-frame::before{ padding: 1px; }  /* anneau bleu un chouïa plus fin en mobile */
.at-team.v4 .at-team-left,
.at-team.v4 .at-team-right{ min-width: 0; }
.at-team-actions{ justify-content:center; }
.at-collage.v2{display:grid;grid-template-columns: 1fr 1fr;gap:12px;min-height:auto;overflow: visible;--parallax-factor: 0.05;}
.at-col-item{position:relative; left:auto; top:auto; width:auto;transform:none; opacity:1; filter:drop-shadow(0 8px 18px rgba(0,0,0,.10));}
.at-col-A{ grid-column: span 2; --ar:3/2; }
.at-col-B{ --ar:16/9; }
.at-col-C{ --ar:1/1; }
.at-col-D{ --ar:3/4; }
.at-col-E{ --ar:1/1; }
.at-metrics{max-width: 100%;min-width: 0;margin-top: 0px;margin-bottom: 0px;}
.at-metric::after{ right:-12px; top:-12px; width:120px; height:120px; }
.at-collage.v2.is-slider{display:flex; gap:12px; overflow-x:auto; overflow-y:hidden;-webkit-overflow-scrolling:touch; scroll-snap-type:x proximity;
  touch-action: pan-x;overscroll-behavior-x: contain;padding:0 12px 10px; mask-image:linear-gradient(to right, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%);--ar-mobile: 4/3;}
.at-collage.v2.is-slider .at-col-item{position: relative;left: auto; top: auto;width: auto;flex: 0 0 82vw;scroll-snap-align: center;
  filter: drop-shadow(0 8px 18px rgba(0,0,0,.10));transform: none; opacity: 1;display: flex; flex-direction: column;}
.at-collage.v2.is-slider .at-col-frame{width: 100%;aspect-ratio: var(--ar-mobile, 4/3);flex: 0 0 auto;}
.at-collage.v2.is-slider .at-col-A{ flex-basis: 82vw; }
.at-collage.v2.is-slider .at-col-item img{object-fit: cover;object-position: var(--focus-x,50%) var(--focus-y,50%);}
.at-collage.v2.is-slider [data-nudge="right"]{ position:relative; }
.at-collage.v2.is-slider [data-nudge="right"]::after{content:"";position:absolute; top:50%; right:-8px; transform:translateY(-50%);
  width:38px; height:38px; border-radius:999px; pointer-events:none; z-index:4;background:#fff;box-shadow:0 8px 20px rgba(0,0,0,.12);
  background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="%230078C8" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6-6 6"/></svg>');
  background-repeat:no-repeat; background-position:center; background-size:18px 18px;animation: at-nudge 1.8s ease-in-out infinite;}
@keyframes at-nudge{
  0%,100%{ transform: translateY(-50%) translateX(0); opacity:.95; }
  50%    { transform: translateY(-50%) translateX(4px); opacity:1; }}
@media (prefers-reduced-motion: reduce){.at-collage.v2.is-slider [data-nudge="right"]::after{ animation:none; }}
@supports not (overflow: clip){.at-team.v4{ overflow-x: hidden; }}}
@media (max-width: 767px){
    .at-logos-list{ gap: 40px; }
    .at-logos-list li{ flex: 0 0 auto; }
    .at-metrics{display: flex;gap: 12px;overflow-x: auto;overflow-y:hidden;touch-action:pan-x;overscroll-behavior-x:contain;
      -webkit-overflow-scrolling: touch;scroll-snap-type: x mandatory;padding: 2px 2px 8px;max-width: 100%;min-width: 0;
      height:auto;scrollbar-gutter:stable;}
    .at-metric{flex: 0 0 60%;scroll-snap-align: start;box-shadow: 0px 3px 10px rgba(0, 0, 0, .015);}
    .at-metrics{ position:relative; } 
    .at-metrics[data-nudge="right"]::before{content:"";
      position:absolute; inset:0 0 0 auto; width:64px; z-index:3; pointer-events:none;
      background:linear-gradient(90deg, rgba(255,255,255,0), rgba(255,255,255,.95));}
    .at-metrics[data-nudge="right"]::after{content:"";position:absolute; top:50%; right:10px; transform:translateY(-50%);
      width:34px; height:34px; border-radius:999px; z-index:4; pointer-events:none;background:#fff; box-shadow:0 8px 20px rgba(0,0,0,.12);
      background-image:url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="20" height="20" viewBox="0 0 24 24" fill="none" stroke="%230078C8" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M9 6l6 6-6 6"/></svg>');
      background-repeat:no-repeat; background-position:center; background-size:16px 16px;animation: at-nudge 1.8s ease-in-out infinite;}
    @media (prefers-reduced-motion: reduce){.at-metrics[data-nudge="right"]::after{ animation:none; }}}
/* ==========================================================================
                   SECTION AMOF
   ========================================================================== */
.at-amof{position: relative;padding: 78px 20px;
  background:
    radial-gradient(#00000018 1px, transparent 1px) 0 0 / 14px 14px,
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);
  overflow-x: clip;
    /* signale au UA: garde ce bloc en thème clair */
  color-scheme: light;
  forced-color-adjust: none;     /* évite les inversions/forçages */
  background-color: #fff;        /* fallback opaque si le UA efface le gradient */}
.at-amof::before{
  content:""; position:absolute; left:0; right:0; top:-1px; height:18px; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.12), transparent 70%),
    repeating-linear-gradient(90deg, transparent 0 14px, rgba(0,0,0,.08) 14px 15px);mask: linear-gradient(#000, transparent);}
.at-amof::after{
  content:"";position:absolute;left:0; right:0; bottom:-1px;height:18px; pointer-events:none;
  background:
    linear-gradient(180deg, rgba(0,0,0,.12), transparent 70%),
    repeating-linear-gradient(90deg, transparent 0 14px, rgba(0,0,0,.08) 14px 15px);
  mask: linear-gradient(#000, transparent);transform: scaleY(-1);transform-origin: center;}
.at-amof-grid{
  --col: minmax(250px, 1fr);
  display:grid; gap:26px;
  grid-template-columns: repeat(4, var(--col));
  grid-auto-rows:auto;color: var(--trafic-dark);
  margin-bottom:var(--at-margin); padding:0; list-style:none;text-align: left;}
.at-amof-card{
  position: relative; isolation: isolate; border-radius: 18px; height: 100%;display: flex; flex-direction: column;
  --mx: 50%; --my: 50%;
  background-image:
    radial-gradient(240px 160px at var(--mx) var(--my), rgba(0,120,200,.12), transparent 60%),
    linear-gradient(180deg, #ffffff, #ffffff);
  border: 1px solid rgba(0,0,0,.06);box-shadow: 0 8px 22px rgba(0,0,0,.06);
  transition: transform .28s ease, box-shadow .28s ease, background .28s ease;}
.at-amof-card:hover{ transform: translateY(-4px); box-shadow: 0 14px 34px rgba(0,0,0,.10); }
.at-amof-head{display:grid; grid-template-columns: auto 1fr; grid-auto-rows: min-content;gap:4px 12px; padding:18px 18px 12px; align-items:center;}
.at-amof-badge{display:inline-grid; place-items:center;width:36px; height:36px; border-radius:12px; font-weight:700;
  background: var(--trafic-primary); color: #fff;box-shadow: 0 6px 16px rgba(0,0,0,.18);}
.at-amof-title{
  margin: 0; font-family: 'Oswald', sans-serif; text-transform: uppercase; letter-spacing: .8px;
  font-size: 20px; color: var(--trafic-dark);}
.at-amof-tag{ grid-column: 2 / -1; margin:0; font-size: 14px; opacity:.7; }
.at-amof-card .at-logo-row{ display:flex; flex-wrap:wrap; gap:8px;     padding: 0px 18px 6px 18px; margin:0; list-style:none; }
.at-logo-chip,
.at-logo-entry{
  display:inline-flex; align-items:center; gap:8px;
  line-height:1; font-size:12px; padding:8px 10px; border-radius:999px; white-space:nowrap;
  background:#fff; border:1px solid rgba(0,0,0,.08); box-shadow:0 6px 16px rgba(0,0,0,.06);}
.at-logo-chip{ gap:6px; } /* puce texte un poil plus compacte */
.at-logo-entry .at-logo-img{ display:block; width:20px; height:20px; border-radius:4px; object-fit:contain; }
.at-amof-body{ padding: 6px 18px 18px; display:grid; gap: 14px; margin-top: auto; }
.at-amof-bullets{ margin:0; padding-left: 18px; display:grid; gap:12px; }
.at-amof-bullets li{ line-height: 1.45;font-size: 14px; }
.at-amof-cta{
  position: relative;border-radius: 18px; overflow: clip;
  border: 1px solid rgba(0,0,0,.06);
  background:
    radial-gradient(circle at 120% -20%, rgba(0,120,200,.15), transparent 45%),
    radial-gradient(circle at -20% 120%, rgba(255,160,0,.14), transparent 45%),
    linear-gradient(180deg, rgba(255,255,255,.92), rgba(255,255,255,.98));
  box-shadow:
    inset 0 0 0 1px rgba(0,0,0,.06),
    0 10px 26px rgba(0,0,0,.08);
  display: grid; grid-template-columns: 1fr min(320px, 40%); align-items: stretch;text-align: left;}
.at-amof-cta-left{ padding: 26px; display: grid;}
.at-amof-cta-title{ margin:0 0 18px 0; font-family: 'Oswald', sans-serif; text-transform: uppercase; letter-spacing: .7px; font-size: clamp(20px, 3.2vw, 28px); }
.at-amof-cta-perks{list-style:none; padding-left:0;margin: 0 0 18px;display:grid; gap:8px;}
.at-amof-cta-perks li{ position:relative; padding-left:18px; }
.at-amof-cta-perks li::before{
  content:""; position:absolute; left:0; top:.55em; width:8px; height:8px; border-radius:50%;
  background: var(--trafic-cta);
  box-shadow: 0 0 0 2px color-mix(in srgb, var(--trafic-cta) 25%, transparent);}
.at-amof-cta-actions{ display:flex; gap:12px; flex-wrap: wrap; align-items:center; }
/* Mobile : bloc centré, boutons 185px, puces alignées à gauche */
.at-amof-cta-right{ position: relative; background: radial-gradient(#00000010 1px, transparent 1px) 0 0 / 14px 14px; }
.at-cta-orb{
  position:absolute; width: 180px; aspect-ratio: 1/1; border-radius: 999px; right: -40px; top: 40px;
  background:
    radial-gradient(circle at 30% 30%, rgba(0,120,200,.45), transparent 60%),
    radial-gradient(circle at 70% 70%, rgba(255,160,0,.45), transparent 60%);
  filter: blur(18px);}
.at-cta-grid{position:absolute; inset: 0; pointer-events: none;
background:
    linear-gradient(transparent, transparent 60%, rgba(0,0,0,.06)),
    repeating-linear-gradient(0deg, transparent 0 22px, rgba(0,0,0,.06) 22px 23px),
    repeating-linear-gradient(90deg, transparent 0 22px, rgba(0,0,0,.06) 22px 23px);
  mix-blend-mode: multiply;}
.at-cta-stamp{
  position: absolute; right: -15px; bottom: 30px;
  width: 140px; height: auto; transform: rotate(6deg);
  opacity: .9; filter: drop-shadow(0 8px 20px rgba(0,0,0,.15));
  pointer-events: none; user-select: none;}
/* Par sûreté, protège aussi la carte CTA (forte déco + mix-blend) */
.at-amof-cta{color-scheme: light;forced-color-adjust: none;background-color: #fff0;}
/* ===== MEDIA-QUERIES AMOF ===== */
@media (prefers-reduced-motion: reduce){
  .at-amof-card, .at-amof-card:hover{ animation:none!important; transition:none !important; transform:none !important; opacity:1; }}
@supports not (overflow: clip) {
    .at-amof{ overflow-x: hidden; }}
@media (prefers-color-scheme: dark){
  .at-amof{ color-scheme: light; /* on reste en “clair” pour ce bloc */ }
  .at-amof-cta{ color-scheme: light; }}
@media (max-width: 1200px) {
  .at-amof-grid{ grid-template-columns: repeat(2, var(--col)); grid-auto-rows: 1fr; }}
@media (max-width: 991px){
  .at-cta-stamp {right: -18px;bottom: 70px;}}
@media (max-width: 767px){
      .at-amof-grid{ grid-template-columns: repeat(1, var(--col));grid-auto-rows: auto;}
      .at-amof-cta{ grid-template-columns: 1fr; }
      .at-cta-stamp{ display: none; }
      .at-amof-card{height: auto;min-height: 0;}}
@media (min-width: 451px) and (max-width: 980px){
  .at-amof-cta-actions{display: grid; gap: 12px;grid-template-columns: auto auto;align-items: center;justify-content: start;justify-items: start;}
  .at-amof-cta-actions .at-button{ grid-column: 1 / -1; justify-self: start; }}
@media (max-width: 450px){
    .at-amof-cta-left{ text-align: center; }
    .at-amof-cta-perks{ text-align: left; margin: 12px auto; max-width: 320px; }
    .at-amof-cta-actions{display: grid; gap: 10px; justify-items: center;grid-template-columns: 1fr;}
    .at-amof-cta .at-button.at-button-primary,.at-amof-cta .at-cta-link{width: 185px; justify-content: center; text-align: center; box-sizing: border-box;}}
/* ==========================================================================
                   SECTION VALEURS
   ========================================================================== */
.at-values{position: relative;isolation: isolate;color: var(--trafic-dark);padding: 78px 20px;background:
    radial-gradient(48% 60% at 10% -10%, color-mix(in srgb, var(--trafic-primary) 10%, #ffffff) 0%, transparent 60%),
    radial-gradient(48% 60% at 90% 110%, color-mix(in srgb, var(--trafic-cta) 10%, #ffffff) 0%, transparent 60%),
    linear-gradient(180deg, #f7f9fc 0%, #f4f6fb 100%);box-shadow: none;--tags-opacity: .065; overflow-y: clip;color-scheme: light;forced-color-adjust: none; }
.at-values-inner{ position: relative; z-index: 1;}
/* Ligne de séparation en haut — apparition de DROITE vers GAUCHE */
.at-values::before{content:""; position:absolute; inset:-1px 0 auto 0; height:1px;background: color-mix(in srgb, var(--trafic-dark) 14%, #fff 0%);
  transform-origin: 100% 50%; transform: scaleX(0);}
.at-values.is-sep-play::before{transition: transform .9s cubic-bezier(.22,1,.36,1);transform: scaleX(1);}
/* rangée 1 (plus grande, plus lente) */
.at-values::after{content: "#implication.   #conseil.   #technicité.   #transparence.   #humains.   #traficants.   #webmarketing.";
  position: absolute; left: 0; right: 0; top: 160px; height: 1.2em;white-space: nowrap; pointer-events: none; z-index: 0;
  font-family: 'Oswald', sans-serif; text-transform: uppercase; letter-spacing: .08em;font-size: clamp(30px, 9vw, 100px); line-height: 1;
  color: var(--trafic-dark); opacity: var(--tags-opacity);transform: translateX(0) rotate(5deg);animation: at-marquee-x 36s linear infinite;
  animation-play-state: paused;}
/* rangée 2 (plus petite, plus rapide, autre Y) */
.at-values-inner::after{content: "#transparence.   #implication.   #technicité.   #conseil.   #humains.   #traficants.   #webmarketing";
  position: absolute; left: 0; right: 0; bottom: -60px; height: 1.2em;white-space: nowrap; pointer-events: none; z-index: -1;
  font-family: 'Oswald', sans-serif; text-transform: uppercase; letter-spacing: .08em;font-size: clamp(26px, 7vw, 80px); line-height: 1;
  color: var(--trafic-dark); opacity: calc(var(--tags-opacity) * .9);transform: translateX(0) rotate(-5deg);animation: at-marquee-x 24s linear infinite;
  animation-play-state: paused;}
/* démarrage uniquement quand la section est en vue */
.at-values.is-inview::after{ animation-play-state: running;}
.at-values.is-inview .at-values-inner::after{ animation-play-state: running;}
/* --- Grille & cartes --- */
.at-values-list{list-style: none; margin: 26px 0 0; padding: 0;display: grid; gap: 16px;}
.at-values .at-value{position: relative;background:
  radial-gradient(120% 80% at 10% -20%, rgba(0,120,200,.06), transparent 60%),
  radial-gradient(100% 80% at 110% 120%, rgba(255,160,0,.05), transparent 60%),
  linear-gradient(180deg, rgba(255,255,255,.82), rgba(255,255,255,.94));  border: 1px solid rgba(10,13,26,.08);
  border-radius: 16px;box-shadow:0 10px 26px rgba(10,13,26,.08),inset 0 0 0 1px rgba(255,255,255,.45);
  text-align:left;overflow: clip;opacity: 0 !important;transform: translateY(18px) !important;
  transition: opacity .35s ease, transform .35s ease, box-shadow .2s ease, border-color .2s ease;
   will-change: opacity, transform;color-scheme: light;forced-color-adjust: none;}
/* Neutralise le reveal global sur les cartes Valeurs : on attend .is-visible */
.at-values .at-value.is-visible{opacity:1 !important;transform:none !important;transition-delay: var(--d, 0ms);}
.at-value:hover{ box-shadow: 0 14px 34px rgba(10,13,26,.12), inset 0 0 0 1px rgba(255,255,255,.5);transform: translateY(-1px); border-color: rgba(10,13,26,.14); }
/* Liseré haut */
.at-value::before{content:""; position:absolute; inset:0 0 auto 0; height:2px;
  background: linear-gradient(90deg, var(--trafic-primary), color-mix(in srgb, var(--trafic-primary) 35%, var(--trafic-cta) 65%));opacity:.95;}
/* En-tête */
.at-value-head{ padding: 16px 18px 12px; }
.at-value-toggle{appearance: none; border: 0; background: transparent; width: 100%;display:flex; align-items:center; gap: 14px; padding: 0; text-align: left;}
.at-value-toggle:focus-visible{outline: 2px solid color-mix(in srgb, var(--trafic-primary) 65%, #fff 35%);
  outline-offset: 2px;border-radius: 10px;box-shadow: 0 0 0 6px color-mix(in srgb, var(--trafic-primary) 12%, transparent);}
.at-values-sep-bottom{position: absolute;left: 0; right: 0; bottom: 0;height: 4px;z-index: 10;
  background-image: linear-gradient(90deg,
    color-mix(in srgb, var(--trafic-primary) 72%, #fff) 0%,
    color-mix(in srgb, var(--trafic-primary) 40%, transparent) 100%);
  background-repeat: no-repeat;background-size: var(--sep-b, 0%) 100%;  /* largeur contrôlée en JS */
  background-position: 100% 0;             /* ancrée à DROITE → remplit vers la GAUCHE */opacity: .95;}
.at-values-sep-bottom::after{content:"";position:absolute; inset:0; pointer-events:none;
box-shadow: 0 0 18px color-mix(in srgb, var(--trafic-primary) 35%, transparent);opacity:.65;}
.at-value-badge{width: 42px; height: 42px; border-radius: 50%;display:grid; place-items:center; font-size:20px; flex:0 0 auto;
  border: 1px solid rgba(10,13,26,.10);background:
  radial-gradient(120% 120% at 30% 25%, color-mix(in srgb, var(--trafic-primary) 28%, #fff) 0%, transparent 55%),
  linear-gradient(180deg, color-mix(in srgb, var(--trafic-primary) 18%, #fff) 0%, rgba(10,13,26,.02) 100%);box-shadow:
  inset 0 0 0 1px rgba(255,255,255,.55),0 6px 16px rgba(10,13,26,.12);transition: transform .2s ease, box-shadow .2s ease;}
.at-value-title{line-height: 30px;margin: 0;font-family: 'Oswald', sans-serif;text-transform: uppercase;
letter-spacing: .8px;font-size: 20px;color: color-mix(in srgb, var(--trafic-dark) 92%, var(--trafic-primary) 8%);font-weight: 700;
text-shadow: 0 0 0.35px rgba(0,0,0,.18);transition: opacity .2s ease, transform .2s ease;}
/* Chevron mobile — très minimal (plus harmonieux) */
.at-toggle-icon{margin-left: auto; flex: 0 0 auto; width: 32px; height: 32px; position: relative; display: inline-block;}
.at-toggle-icon::before{
  content:""; position:absolute; top:50%; left:50%; width: 10px; height:10px;border-right: 2px solid currentColor; border-bottom: 2px solid currentColor;
  transform: translate(-50%, -50%) rotate(45deg);opacity:.55; transition: transform .2s ease, opacity .2s ease;}
.at-value[aria-expanded="true"] .at-toggle-icon::before{transform: translate(-50%, -50%) rotate(225deg); opacity:.8;}
/* Corps — Phrase > Bulles > "Notre commandement" (dans la citation) > Citation */
.at-value-body{position: relative;padding: 8px 18px 16px;gap: 12px;  display: grid;}
.at-value-tagline{ margin: 0; font-size: 15px;line-height: 1.6;color: color-mix(in srgb, var(--trafic-dark) 86%, #000 14%);opacity: .98; }
/* conteneur des chips (styles des puces => classes existantes .at-chip) */
.at-value-chips{ margin: 0; padding: 0; display: flex; gap: 8px; flex-wrap: wrap; }
.at-value-chips .at-chip{background:
    linear-gradient(180deg, #fff, #fff) padding-box,
    radial-gradient(120% 120% at 10% -10%, color-mix(in srgb, var(--trafic-primary) 18%, transparent) 0%, transparent 60%) border-box;
  border: 1px solid rgba(10,13,26,.08);box-shadow: 0 6px 16px rgba(10,13,26,.06);}
.at-commandment{display:block;font-family: 'Oswald', sans-serif;text-transform: uppercase;letter-spacing: .8px;
font-weight: 500;font-style: normal;color: #0078C8;font-size: 12px;line-height: 1;margin-bottom:8px;}
.at-value-quote{margin:0 0 18px 0; padding: 18px;font-family: Georgia, "Times New Roman", serif;font-size: 14px; line-height: 1.55; opacity:.95; border-radius: 4px;
  background:radial-gradient(120% 140% at -10% 0%, color-mix(in srgb, var(--trafic-primary) 8%, transparent) 0%, transparent 60%),
  linear-gradient(180deg, rgba(10,13,26,.03), rgba(10,13,26,.02));border-left: 2px solid color-mix(in srgb, var(--trafic-primary) 78%, #fff 22%);
font-style: italic;color: color-mix(in srgb, var(--trafic-dark) 84%, #000 16%);position: relative;}
.at-value-quote::before{content: "“";position: absolute; left: 0px; top: 0px;font-family: Georgia, "Times New Roman", serif;
  font-size: 60px; line-height: 1; opacity: .2;color: var(--trafic-primary);}
/* ===== MEDIA-QUERIES VALEURS ===== */
@keyframes at-marquee-x { to { transform: translateX(-50%); } }
@media (prefers-reduced-motion: reduce){
  .at-values::after,
  .at-values-inner::after{ animation: none !important; }
  .at-values::before{ transform: none !important; transition: none !important; }
  .at-value{ opacity:1 !important; transform:none !important; transition:none !important; }
  .at-value-body{ transition:none !important; }}
@media (hover:hover){
  .at-value-toggle:hover .at-value-title{ opacity:.95; transform: translateY(-0.5px); }
  .at-value-toggle:hover .at-value-badge{ transform: translateY(-1px) scale(1.02); }}
@media (forced-colors: active) {
  .at-values { --tags-opacity: .03; }}
@media (min-width: 1160px){
  .at-values-list{ gap: 22px; }}
@media (min-width: 760px){
  .at-value-toggle{ cursor: default; }
  .at-toggle-icon{ display:none; }
  .at-values-list{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 18px; }}
@media (max-width: 767px){
      .at-values::after {top:20px;}}
@media (max-width: 759.98px){
  .at-value-body{max-height: 0; overflow: hidden; padding: 0 16px;transition: max-height .28s ease, padding-bottom .28s ease;}
  .at-value[aria-expanded="true"] .at-value-body{ padding-bottom: 20px; }}
/* ==========================================================================
                 SECTION LIVRE BLANC
   ========================================================================== */
.at-whitepaper{position: relative;padding: clamp(56px, 7vw, 88px) 20px;
  background: none;overflow: clip;
  --wp-next: #f8fafc; /* dominante de la section suivante */}
.at-whitepaper::before{content:"";position:absolute; inset:0; z-index:0; pointer-events:none;
  background:
    conic-gradient(from 210deg at 85% -5%, rgba(0,120,200,.08), transparent 25% 75%, rgba(255,160,0,.08)),
    radial-gradient(#00000014 1px, transparent 1px) 0 0 / 14px 14px,
    linear-gradient(180deg,#ffffff 0%, #f8fafc 100%);}
.at-whitepaper::after{content:"";
  position:absolute; left:0; right:0; top:0; height:1px; z-index:1;background: color-mix(in srgb, var(--trafic-dark) 12%, #fff 0%);opacity:.75; pointer-events:none;}
.at-wp-sep{position:absolute; left:0; right:0; bottom:0; height:0; z-index:2; pointer-events:none;}
.at-wp-sep::before{content:"";position:absolute; left:0; right:0; bottom:0; height:2px;
  background: linear-gradient(90deg, var(--trafic-primary), var(--trafic-cta));box-shadow: 0 8px 18px rgba(0,120,200,.12);}
.at-whitepaper-inner{position:relative; z-index:2;display:grid; grid-template-columns:minmax(320px,520px) 1fr;
  gap:clamp(22px,4vw,48px); align-items:center; text-align:left;}
.at-wp-media{ margin:0; position:relative; }
.at-wp-book{display:block; width:100%; height:auto; object-fit:contain;filter:drop-shadow(0 18px 40px rgba(0,0,0,.15));
  transform:perspective(1000px) rotateY(-6deg) rotateX(1deg);transition:transform .25s ease, filter .25s ease;}
.at-wp-media:hover .at-wp-book{ transform:perspective(1000px) rotateY(-3deg) rotateX(0deg) translateY(-2px); }
.at-wp-badge{position:absolute; top:10px; left:10px; display:inline-grid; place-items:center;
  padding:6px 10px; border-radius:999px; font-size:12px; font-weight:700; color:#fff;background:linear-gradient(90deg, var(--trafic-primary), var(--trafic-cta));
  box-shadow:0 6px 16px rgba(0,0,0,.18);z-index:2;}
.at-wp-cap{ margin-top:10px; font-size:14px; opacity:.75; }
.at-wp-benefits{ list-style:none; margin:0 0 6px; padding:0; display:flex; gap:8px; flex-wrap:wrap;margin-bottom: var(--at-margin); }
.at-wp-benefits li{ list-style:none; }
.at-wp-benefits li::marker{ content:""; }
.at-whitepaper .at-chip{background:#fff;border:1px solid color-mix(in srgb, var(--trafic-primary) 30%, #000 0%);
  box-shadow:0 6px 16px rgba(0,0,0,.06);letter-spacing:.3px;}
.at-wp-cta-wrap{ display:flex; align-items:center; gap:12px; margin-top:14px; flex-wrap:wrap; }
.at-wp-trust{ font-size:13px; opacity:.85; }
.at-wp-dialog{ position:fixed; inset:0; z-index:1006; display:block; }
.at-wp-dialog[aria-hidden="true"]{ opacity:0; pointer-events:none; visibility:hidden; }
.at-wp-dialog[aria-hidden="false"]{ opacity:1; pointer-events:auto; visibility:visible; }
.at-wp-backdrop{ position:absolute; inset:0; background:rgba(8,2,31,.45); -webkit-backdrop-filter:blur(6px); backdrop-filter:blur(6px); }
.at-wp-panel{position:absolute; left:50%; top:10%; transform:translateX(-50%);width:min(92vw, 720px);
  background: linear-gradient(180deg,#ffffff,#f8fafc);border:1px solid rgba(0,0,0,.06); border-radius:12px;
  box-shadow:0 24px 70px rgba(0,0,0,.18);  padding:40px; max-height:80vh; overflow:auto;}
.at-wp-panel::before{
  content:""; position:absolute; left:0; top:0; bottom:0; width:6px; border-radius:12px 0 0 12px;
  background: linear-gradient(180deg, var(--trafic-primary), var(--trafic-cta));opacity:.92;}
.at-wp-close{
  position:absolute; right:12px; top:12px; width:36px; height:36px; border:0;border-radius:10px; background:var(--trafic-grey); cursor:pointer;
  box-shadow:0 6px 16px rgba(0,0,0,.08);}
.at-wp-head{ text-align:center; }
.at-wp-sub{ margin:0px 0 14px; opacity:.9; }
.at-wp-grid{ display:grid; grid-template-columns:1fr 1fr; gap:10px; margin-top:10px; }
.at-wp-field--full{ grid-column:1 / -1; }
.at-wp-label{ font-family:'Oswald', sans-serif; font-size:12px; font-weight:800; letter-spacing:.45px; text-transform:uppercase; opacity:.78;color: #07031f; }
.at-wp-panel .w-input,
.at-wp-panel .w-select{
  width:100%;border:1px solid rgba(0,0,0,.12);border-radius:6px;padding:10px 12px;
  background:#fff;box-shadow:0 6px 16px rgba(0,0,0,.05);transition: border-color .15s ease, box-shadow .15s ease;}
.at-wp-panel .w-input:focus,
.at-wp-panel .w-select:focus{outline:none;border-color: color-mix(in srgb, var(--trafic-primary) 55%, #fff 45%);
  box-shadow:0 0 0 3px color-mix(in srgb, var(--trafic-primary) 18%, transparent);}
.at-wp-check.w-checkbox{display: flex;align-items: center;gap: 10px;margin-top: 10px;}
.at-wp-check .w-checkbox-input{float: none;margin: 0;flex: 0 0 auto;width: 18px;height: 18px;
  border: 1px solid rgba(0,0,0,.25);border-radius: 4px;background: #fff;box-shadow: inset 0 2px 6px rgba(0,0,0,.06);}
.at-wp-check .w-checkbox-input.w--redirected-checked{
  border-color: var(--trafic-primary);background: var(--trafic-primary);
  background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='14' height='14' viewBox='0 0 24 24' fill='none' stroke='white' stroke-width='3' stroke-linecap='round' stroke-linejoin='round'><path d='M20 6L9 17l-5-5'/></svg>");
  background-repeat: no-repeat;  background-position: center;}
.at-wp-panel .w-checkbox-input--inputType-custom{display: none !important;}
.at-wp-check .w-form-label,
.at-wp-check .w-checkbox-label{margin: 0;line-height: 1.4;flex: 1 1 auto;min-width: 0;white-space: normal;}
.at-wp-privacy{ font-size:12px; opacity:.76; }
.at-wp-actions{ display:flex; align-items:center; gap:10px; margin-top:16px; flex-wrap:wrap; justify-content:center; }
/* États Webflow */
.at-wp-done, .at-wp-fail{border-radius:12px; padding:14px; background:#fff;
  border:1px solid rgba(0,0,0,.06); box-shadow:0 10px 24px rgba(0,0,0,.08);}
/* Honeypot invisible */
.at-wp-hp{position:absolute !important; left:-10000px !important; top:auto !important;
  width:1px !important; height:1px !important; opacity:0 !important;pointer-events:none !important; overflow:hidden !important;}
/* A11y focus */
html.mod-keyboard .at-wp-close:focus,
html.mod-keyboard .at-wp-panel .w-input:focus,
html.mod-keyboard .at-wp-panel .w-select:focus,
html.mod-keyboard .at-wp-actions .w-button:focus{
  outline:2px solid color-mix(in srgb, var(--trafic-primary) 65%, #fff 35%);
  outline-offset:2px; border-radius:10px;}
/* ===== MEDIA-QUERIES LIVRE BLANC ===== */
@media (max-width: 991px){
  .at-whitepaper-inner{ grid-template-columns:1fr; text-align:center; }
  .at-wp-content{ display:grid; justify-items:center; }
  .at-wp-benefits{ justify-content:center; }
  .at-wp-cta-wrap{ justify-content:center; }
  .at-wp-cap, .at-wp-trust{ text-align:center; }}
@media (max-width: 767px){
  .at-wp-grid{ grid-template-columns:1fr; }}
/* ==========================================================================
                   SECTION SEO
   ========================================================================== */
.at-seo{position: relative; isolation:isolate;
  padding: clamp(48px, 7vw, 84px) 20px;color: var(--trafic-dark);
  background:
    radial-gradient(46% 60% at 10% -10%, color-mix(in srgb, var(--trafic-primary) 10%, #fff) 0%, transparent 60%),
    radial-gradient(46% 60% at 90% 110%, color-mix(in srgb, var(--trafic-cta) 10%, #fff) 0%, transparent 60%),
    linear-gradient(180deg, #ffffff 0%, #f8fafc 100%);overflow: clip;}
.at-seo-head{ max-width: 980px; margin: 0 auto 22px; text-align: center; }
.at-seo-intro{opacity: .92; }
.at-seo-prose{max-width: 1000px; margin: 0 auto; text-align: left;}
.at-seo-prose p{ line-height: 1.5; font-size: 14px; margin: 0 0 12px; }
.at-seo-prose h3{font-family:'Oswald',sans-serif; font-size: 16px; letter-spacing:.6px; text-transform:uppercase;
  margin: 0 0 10px; line-height:1.2; color: var(--trafic-dark);}
.at-seo-prose blockquote{
  margin: 12px 0 14px; padding: 14px 16px; border-left: 3px solid color-mix(in srgb, var(--trafic-primary) 75%, #fff 25%);
  background: linear-gradient(180deg, rgba(10,13,26,.035), rgba(10,13,26,.02)); border-radius: 6px; font-size: 14px;}
.at-seo-prose .at-list{ margin: 0 0 12px 0; padding: 0 0 0 18px; display:grid; gap:8px; }
.at-seo-prose .at-steps{ margin: 0 0 12px 0; padding: 0 0 0 20px; }
.at-seo-prose li{ line-height: 1.5; font-size:14px; }
.at-seo-accordion details{
  position: relative; border: 1px solid rgba(10,13,26,.08); border-radius: 14px; overflow: clip;
  background: linear-gradient(135deg, rgba(255,255,255,.94), rgba(255,255,255,.99));
  box-shadow: 0 8px 22px rgba(10,13,26,.06);
  transition: box-shadow .2s ease, border-color .2s ease, transform .2s ease;}
.at-seo-accordion details + details{ margin-top: 12px; }
.at-seo-accordion details[open]{ transform: translateY(-1px); box-shadow: 0 14px 34px rgba(10,13,26,.10); border-color: rgba(10,13,26,.14); }
.at-seo-accordion details::before{
  content:""; position:absolute; inset:0 0 auto 0; height:2px; z-index:1;
  background: linear-gradient(90deg, var(--trafic-primary), color-mix(in srgb, var(--trafic-primary) 35%, var(--trafic-cta) 65%));opacity:.95;}
.at-seo-accordion summary{
  list-style:none; cursor:pointer; display:flex; align-items:center; gap:12px;padding: 14px 16px; font-weight:600; user-select:none; outline:none;}
.at-seo-accordion summary::-webkit-details-marker{ display:none; }
.at-seo-badge{
  flex:0 0 auto; width:34px; height:34px; border-radius:50%;display:grid; place-items:center; font-weight:700; font-size:13px; color:#fff;
  background: var(--trafic-primary);box-shadow: 0 6px 16px rgba(0,0,0,.18);}
.at-seo-sum{ flex:1 1 auto; letter-spacing:.3px; }
.at-seo-accordion summary::after{
  content:""; width:22px; height:22px; margin-left:auto; border-radius:999px; flex:0 0 auto;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" width="22" height="22" viewBox="0 0 24 24" fill="none" stroke="%230078C8" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"><path d="M6 9l6 6 6-6"/></svg>');
  background-repeat:no-repeat; background-position:center; background-size:18px 18px; opacity:.7; transition: transform .2s ease, opacity .2s ease;}
.at-seo-accordion details[open] > summary::after{ transform: rotate(180deg); opacity:.95; }
.at-seo-panel{padding: 2px 16px 16px; display:grid; gap:10px;}
/* ===== MEDIA-QUERIES SEO ===== */
@media (max-width: 767px){
  .at-seo{ padding: 48px 16px; }
  .at-seo-prose{ --fz: 15px; --lead: 1.55; }
  .at-seo-accordion summary{ padding: 13px 14px; }
  .at-seo-panel{ padding: 2px 14px 14px; }}
