/* ==========================================================================
   Agence B-LIGHT — Smart City (Lacroix · Tegis · SensyCity)
   Charte propre à cette page : nuit connectée (marine / cyan / vert).
   Chargée après css/site.css : surcharge les tokens, le header et le footer.
   ========================================================================== */

:root{
  --cta-bg:linear-gradient(160deg,#0f2536,#0a1320);
  --cta-border:rgba(52,194,227,.3);
  --cta-glow:rgba(52,194,227,.2);
  --cta-eyebrow:var(--cyan);
  --card-bg:var(--bg-3);
  --card-shadow:none;

  --mark-glow:rgba(52,194,227,.7);
  --subnav-bg:rgba(7,13,22,.86);
  --subnav-active:rgba(255,255,255,.07);

  /* lot 3 : bandeau chiffres (.stats de site.css) */
  --stats-bg:var(--bg-2);--stats-line:rgba(52,194,227,.12);--stat-label:var(--dim);
  --accent:var(--cyan);
  --accent-ink:var(--cyan-ink);
  --accent-hover:var(--cyan-hover);
  --accent-text:var(--cyan);
  --btn-shadow:0 0 30px -6px rgba(52,194,227,.7);
  --mark-bg:#0f1d2e;

  --focus-ring:var(--cyan);
  --focus-ring-dark:var(--cyan);

  --bg:#070D16;
  --bg-2:#0a1320;
  --bg-3:#0c1825;
  --cyan:#34C2E3;
  --cyan-hover:#52d0ee;
  --cyan-2:#7fdcf2;
  --cyan-ink:#04141c;
  --mint:#5BD89A;
  --mint-2:#7fe6b0;
  --mint-ink:#06140f;
  --ink:#E6EEF5;
  --ink-strong:#F1F7FB;
  --ink-green:#EAF6EF;
  --muted:#9fb3c5;
  --muted-green:#a6c4b6;
  --dim:#6f8499;
  --dim-2:#6b829a;          /* lot 1 : #5a6f82 → #6b829a (4.5:1 sur --bg) */
  --dim-3:#637d96;          /* lot 1 : #4a5d70 → #637d96 (4.5:1 sur --bg) */
  --text-2:#c2d0dd;
  --text-green-2:#c4d8cd;
  --nav:#a8bccd;
  --line:rgba(52,194,227,.16);
  --line-green:rgba(91,216,154,.18);
  --r-btn:11px;
}

body{background:var(--bg);color:var(--ink)}
::selection{background:var(--cyan);color:var(--cyan-ink)}

/* --------------------------------------------------------------------------
   Animations
   -------------------------------------------------------------------------- */
@keyframes pulseDot{0%,100%{opacity:.45;transform:scale(.85)}50%{opacity:1;transform:scale(1.15)}}
@keyframes scanline{0%{transform:translateX(-120%)}100%{transform:translateX(120%)}}
@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important}
}

/* --------------------------------------------------------------------------
   Header (surcharge sombre)
   -------------------------------------------------------------------------- */
.site-header{background:rgba(7,13,22,.8);border-bottom-color:var(--line)}
.site-nav a{color:var(--nav)}
.nav-toggle{border-color:var(--line);color:var(--ink)}

/* --------------------------------------------------------------------------
   Boutons
   -------------------------------------------------------------------------- */

/* --------------------------------------------------------------------------
   En-têtes de section centrés
   -------------------------------------------------------------------------- */
.intro--tight{margin-bottom:42px}
.intro--reals{margin-bottom:40px}
.intro__title--md{font-size:clamp(28px,3.6vw,44px)}
.intro__title--sm{font-size:clamp(28px,3.6vw,42px)}
.intro__title--spaced{margin-bottom:14px}
.intro__title--green{color:var(--ink-green)}
.intro__lead--wide{max-width:60ch}
.intro__lead--green{color:var(--muted-green)}

/* --------------------------------------------------------------------------
   Listes à puces ▸ et étiquettes
   -------------------------------------------------------------------------- */
.points{display:flex;flex-direction:column;gap:10px}
.points--grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px}
.points__item{display:flex;align-items:flex-start;gap:10px}
.points__bullet{color:var(--cyan);font-size:var(--fs-15);line-height:1.3;flex:none}
.points__text{font-size:var(--fs-14);color:var(--text-2);line-height:1.45}

.tags{display:flex;gap:8px;flex-wrap:wrap}
.tag{
  font-family:var(--mono);font-size:var(--fs-11);color:#cfe0ec;
  background:rgba(52,194,227,.08);border:1px solid rgba(52,194,227,.24);
  padding:6px 12px;border-radius:var(--r-tag);
}
.tag--lg{font-size:var(--fs-12);padding:8px 12px;border-radius:var(--r-tag)}

/* --------------------------------------------------------------------------
   Hero
   -------------------------------------------------------------------------- */
.hero{
  position:relative;overflow:hidden;min-height:720px;
  background:radial-gradient(120% 80% at 70% 0%,#102a3e 0%,#0a1626 38%,#070D16 72%);
}
.hero__net{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:1}
.hero__glow{position:absolute;inset:0;background:radial-gradient(60% 50% at 50% 110%,rgba(52,194,227,.16),transparent 70%);pointer-events:none;z-index:2}
.hero__content{position:relative;z-index:5;padding-top:128px;padding-bottom:110px}
.hero__inner{max-width:780px}
.hero__badge{
  display:inline-flex;align-items:center;gap:10px;
  font-family:var(--mono);font-size:var(--fs-12);letter-spacing:.22em;color:var(--cyan-2);
  border:1px solid rgba(52,194,227,.35);border-radius:var(--r-pill);padding:8px 18px;margin-bottom:28px;
  background:rgba(52,194,227,.06);
}
.hero__dot{
  width:6px;height:6px;border-radius:50%;background:var(--cyan);flex:none;
  box-shadow:0 0 10px 2px rgba(52,194,227,.9);animation:pulseDot 2s ease-in-out infinite;
}
.hero__title{
  font-family:var(--display);font-weight:900;font-size:clamp(40px,6.6vw,88px);
  line-height:.98;letter-spacing:-.03em;margin:0 0 24px;text-transform:uppercase;color:var(--ink-strong);
}
.hero__title-grad{
  background:linear-gradient(120deg,var(--cyan),var(--mint));
  -webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;
}
.hero__lead{max-width:54ch;font-size:var(--fs-18);line-height:1.65;color:var(--muted)}
.hero__actions{display:flex;flex-wrap:wrap;gap:14px;margin-top:36px}

/* --------------------------------------------------------------------------
   Enjeux — 5 leviers
   -------------------------------------------------------------------------- */
.levers{position:relative;z-index:5;padding:var(--section-y) 0}
.levers__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.lever{
  position:relative;border-radius:var(--r-card-sm);border:1px solid var(--line);
  background:linear-gradient(168deg,#0e1c2c,#0a131f);padding:28px 24px;overflow:hidden;
  transition:transform .3s,border-color .3s;
}
.lever:hover{transform:translateY(-5px);border-color:rgba(52,194,227,.45)}
.lever__scan{
  position:absolute;top:0;bottom:0;left:0;width:36%;pointer-events:none;
  background:linear-gradient(90deg,transparent,rgba(52,194,227,.07),transparent);
  animation:scanline 7s ease-in-out infinite;
}
.lever__body{position:relative}
.lever__head{display:flex;align-items:center;gap:12px;margin-bottom:16px}
.lever__icon{
  width:44px;height:44px;border-radius:var(--r-btn-sm);flex:none;font-size:var(--fs-22);
  background:rgba(52,194,227,.12);border:1px solid rgba(52,194,227,.3);
  display:flex;align-items:center;justify-content:center;
}
.lever__kpi{font-family:var(--mono);font-size:var(--fs-11);color:var(--cyan-2);letter-spacing:.06em}
.lever__title{font-family:var(--display);font-weight:700;font-size:var(--fs-20);color:var(--ink-strong);letter-spacing:-.01em;margin-bottom:8px;line-height:1.15}
.lever__desc{font-size:var(--fs-14);line-height:1.6;color:var(--muted)}

/* --------------------------------------------------------------------------
   Deux modes
   -------------------------------------------------------------------------- */
.modes{position:relative;z-index:5;padding:var(--section-y) 0}
.modes__grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.mode{position:relative;border-radius:var(--r-card);overflow:hidden;border:1px solid;padding:36px 32px}
.mode--cyan{border-color:rgba(52,194,227,.3);background:linear-gradient(165deg,#0e2030,#0a1320)}
.mode--green{border-color:rgba(91,216,154,.3);background:linear-gradient(165deg,#0c1f1a,#0a1514)}
.mode__glow{position:absolute;inset:0;pointer-events:none}
.mode--cyan .mode__glow{background:radial-gradient(70% 60% at 100% 0%,rgba(52,194,227,.18),transparent 60%)}
.mode--green .mode__glow{background:radial-gradient(70% 60% at 100% 0%,rgba(91,216,154,.16),transparent 60%)}
.mode__body{position:relative}
.mode__tag{font-family:var(--mono);font-size:var(--fs-11);letter-spacing:.16em;margin-bottom:12px}
.mode--cyan .mode__tag,.mode--cyan .points__bullet{color:var(--cyan)}
.mode--green .mode__tag,.mode--green .points__bullet{color:var(--mint)}
.mode__title{font-family:var(--display);font-weight:800;font-size:var(--fs-28);color:var(--ink-strong);margin:0 0 12px;letter-spacing:-.01em}
.mode__desc{font-size:var(--fs-15);line-height:1.65;color:var(--muted);margin:0 0 20px;max-width:44ch}

/* --------------------------------------------------------------------------
   Produits — chaîne connectée
   -------------------------------------------------------------------------- */
.chain{position:relative;z-index:5;padding:var(--section-y) 0}
.chain__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.product{
  position:relative;border-radius:var(--r-card-sm);border:1px solid var(--line);background:var(--bg-3);
  padding:24px 24px;transition:transform .3s,border-color .3s;
}
.product:hover{transform:translateY(-5px);border-color:rgba(52,194,227,.45)}
.product__head{display:flex;align-items:center;justify-content:space-between;margin-bottom:16px}
.product__icon{
  width:46px;height:46px;border-radius:12px;font-size:var(--fs-22);
  background:rgba(52,194,227,.12);border:1px solid rgba(52,194,227,.3);
  display:flex;align-items:center;justify-content:center;
}
.product__range{
  font-family:var(--mono);font-size:var(--fs-11);color:var(--mint);letter-spacing:.06em;
  border:1px solid rgba(91,216,154,.3);padding:3px 8px;border-radius:var(--r-tag);
}
.product__title{font-family:var(--display);font-weight:700;font-size:var(--fs-18);color:var(--ink-strong);letter-spacing:-.01em;margin-bottom:8px;line-height:1.2}
.product__desc{font-size:var(--fs-13);line-height:1.55;color:var(--muted)}

/* --------------------------------------------------------------------------
   Encarts vedettes — Tegis / SensyCity
   -------------------------------------------------------------------------- */
.features{position:relative;z-index:5;padding:var(--section-y) 0}
.feature{position:relative;border-radius:var(--r-panel);overflow:hidden;border:1px solid}
.feature--tegis{border-color:rgba(52,194,227,.28);background:linear-gradient(150deg,#0f2233,#0a1422);margin-bottom:24px}
.feature--sensy{border-color:rgba(91,216,154,.3);background:linear-gradient(150deg,#0c2019,#0a1614)}
.feature__glow{position:absolute;inset:0;pointer-events:none}
.feature--tegis .feature__glow{background:radial-gradient(60% 80% at 0% 30%,rgba(52,194,227,.16),transparent 58%)}
.feature--sensy .feature__glow{background:radial-gradient(60% 80% at 100% 30%,rgba(91,216,154,.16),transparent 58%)}
.feature__grid{position:relative;display:grid;grid-template-columns:380px 1fr}
.feature__grid--reverse{grid-template-columns:1fr 380px}
.feature__media{position:relative;min-height:330px;overflow:hidden;background:#0b1826;border-right:1px solid var(--line)}
.feature__media--right{background:#0a1714;border-right:0;border-left:1px solid rgba(91,216,154,.16)}
.feature__media img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.feature__media--right img{object-position:60% center}
.feature__veil{position:absolute;inset:0;pointer-events:none;background:linear-gradient(160deg,rgba(15,34,51,.45),rgba(10,20,34,.78))}
.feature__media--right .feature__veil{background:linear-gradient(200deg,rgba(12,32,25,.35),rgba(10,20,18,.7))}
.feature__fig{
  position:absolute;top:18px;left:20px;
  font-family:var(--mono);font-size:var(--fs-11);letter-spacing:.14em;color:#cfeefb;
  background:rgba(7,13,22,.4);padding:4px 8px;border-radius:var(--r-tag);
  -webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);
}
.feature__fig--right{left:auto;right:20px;color:#bdf0d4}
.feature__body{padding:40px}
.feature__head{display:flex;align-items:center;gap:12px;margin-bottom:14px;flex-wrap:wrap}
.feature__brand{
  font-family:var(--display);font-weight:900;font-size:var(--fs-13);letter-spacing:.18em;
  color:var(--cyan-ink);background:var(--cyan);padding:6px 14px;border-radius:var(--r-tag);
}
.feature--sensy .feature__brand{letter-spacing:.14em;color:var(--mint-ink);background:var(--mint)}
.feature__kicker{font-family:var(--mono);font-size:var(--fs-11);color:var(--cyan-2);letter-spacing:.08em}
.feature--sensy .feature__kicker{color:var(--mint-2)}
.feature__title{font-family:var(--display);font-weight:800;font-size:var(--fs-28);color:var(--ink-strong);margin:0 0 12px;letter-spacing:-.01em;line-height:1.1}
.feature--sensy .feature__title{color:var(--ink-green)}
.feature__desc{font-size:var(--fs-15);line-height:1.7;color:var(--muted);margin:0 0 24px;max-width:56ch}
.feature--sensy .feature__desc{color:var(--muted-green)}
.feature--sensy .points__bullet{color:var(--mint)}
.feature--sensy .points__text{color:var(--text-green-2)}
.feature--sensy .tag{color:#d4e7db;background:rgba(91,216,154,.08);border-color:rgba(91,216,154,.26)}

/* --------------------------------------------------------------------------
   Écosystème SensyCity — 5 briques
   -------------------------------------------------------------------------- */
/* L'écosystème SensyCity : fond photo voilé, vidéo, 3 étapes, 4 dispositifs, schéma en accordéon, bénéfices */
.sensy{position:relative;z-index:5;padding:var(--section-y) 0;overflow:hidden}
.sensy__bg{position:absolute;left:0;right:0;top:0;height:min(1100px,100%);pointer-events:none}
.sensy__bg img{width:100%;height:100%;object-fit:cover;object-position:center 40%;display:block;opacity:.7}
.sensy__veil{position:absolute;inset:0;background:linear-gradient(180deg,rgba(7,13,22,.55) 0%,rgba(7,13,22,.72) 45%,var(--bg) 100%)}
.sensy > .container{position:relative}
.sensy__sub{font-family:var(--mono);font-size:var(--fs-12);letter-spacing:.16em;text-transform:uppercase;color:var(--mint-2);margin:56px 0 20px;display:flex;align-items:center;gap:12px}
.sensy__sub::after{content:"";flex:1;height:1px;background:var(--line-green)}
.sensy__video{max-width:960px;margin:0 auto}
.yt-lite{position:relative;aspect-ratio:16/9;border-radius:var(--r-card);overflow:hidden;background:#000;border:1px solid var(--line-green);box-shadow:var(--shadow-media)}
.yt-lite__thumb{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.yt-lite::after{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(60% 60% at 50% 50%,rgba(4,8,13,.15),rgba(4,8,13,.45))}
.yt-lite__play{
  position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;width:76px;height:76px;border-radius:50%;
  border:0;cursor:pointer;background:var(--mint);color:var(--mint-ink);display:flex;align-items:center;justify-content:center;
  box-shadow:0 0 0 10px rgba(91,216,154,.22),0 20px 40px -12px rgba(0,0,0,.8);transition:transform .2s,box-shadow .2s;
}
.yt-lite__play svg{margin-left:4px}
.yt-lite:hover .yt-lite__play{transform:translate(-50%,-50%) scale(1.07);box-shadow:0 0 0 14px rgba(91,216,154,.28),0 24px 44px -12px rgba(0,0,0,.85)}
.yt-lite iframe{position:absolute;inset:0;width:100%;height:100%;border:0;z-index:3}
.yt-lite.is-playing::after,.yt-lite.is-playing .yt-lite__play,.yt-lite.is-playing .yt-lite__thumb{display:none}
.sensy__videocap{margin-top:10px;text-align:center;font-family:var(--mono);font-size:var(--fs-11);letter-spacing:.06em;color:var(--dim)}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;counter-reset:step}
.step{position:relative;border-radius:var(--r-card-sm);border:1px solid var(--line-green);background:linear-gradient(168deg,#0e201a,#0a1513);padding:24px}
.step:not(:last-child)::after{content:"→";position:absolute;right:-16px;top:50%;transform:translateY(-50%);width:32px;height:32px;border-radius:50%;background:var(--bg);border:1px solid var(--line-green);color:var(--mint);display:flex;align-items:center;justify-content:center;font-size:var(--fs-16);z-index:1}
.step__ico{width:44px;height:44px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:rgba(91,216,154,.12);border:1px solid rgba(91,216,154,.32);color:var(--mint-2);margin-bottom:16px}
.step__ico .pi{width:22px;height:22px}
.step__title{font-family:var(--display);font-weight:700;font-size:var(--fs-18);color:var(--ink-green);margin-bottom:8px}
.step__num{color:var(--mint)}
.step__text{font-size:var(--fs-14);line-height:1.6;color:var(--muted-green)}
.devices{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.device{display:flex;flex-direction:column;border-radius:var(--r-card-sm);border:1px solid var(--line-green);background:linear-gradient(168deg,#0e201a,#0a1513);overflow:hidden;transition:transform .3s,border-color .3s}
.device:hover{transform:translateY(-5px);border-color:rgba(91,216,154,.45)}
.device__media{aspect-ratio:4/3;overflow:hidden;background:#0a1513}
.device__media img{width:100%;height:100%;object-fit:cover;display:block}
.device__body{position:relative;display:flex;flex-direction:column;gap:8px;padding:20px 20px 24px;flex:1}
.device__ref{position:absolute;top:-22px;right:16px;width:44px;height:44px;border-radius:12px;background:#0e201a;border:1px solid rgba(91,216,154,.32);display:flex;align-items:center;justify-content:center;font-family:var(--display);font-weight:900;font-size:var(--fs-13);color:var(--mint-2)}
.device__title{font-family:var(--display);font-weight:700;font-size:var(--fs-18);color:var(--ink-green);line-height:1.2;padding-right:56px}
.device__desc{font-size:var(--fs-14);line-height:1.6;color:var(--muted-green)}
.device__chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto;padding-top:8px}
.device__chips .tag{color:#d4e7db;background:rgba(91,216,154,.08);border-color:rgba(91,216,154,.3);font-size:var(--fs-11);padding:4px 8px}
.sensy__credit{margin-top:12px;font-family:var(--mono);font-size:var(--fs-11);color:var(--dim);text-align:right}
.schema{margin-top:24px;border-radius:var(--r-card-sm);border:1px solid var(--line-green);background:rgba(91,216,154,.04)}
.schema__summary{cursor:pointer;list-style:none;display:flex;align-items:center;gap:12px;padding:16px 20px;font-family:var(--display);font-weight:700;font-size:var(--fs-15);color:var(--ink-green)}
.schema__summary::-webkit-details-marker{display:none}
.schema__chev{width:10px;height:10px;border-right:2px solid var(--mint);border-bottom:2px solid var(--mint);transform:rotate(-45deg);transition:transform .2s;flex:none;margin-left:4px}
.schema[open] .schema__chev{transform:rotate(45deg)}
.schema__fig{margin:0;padding:0 20px 20px}
.schema__fig img{width:100%;height:auto;border-radius:var(--r-tag);display:block}
.schema__cap{margin-top:8px;font-family:var(--mono);font-size:var(--fs-11);color:var(--dim)}
.benefits{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}
.benefit{display:flex;gap:12px;align-items:flex-start;border-radius:var(--r-card-sm);border:1px solid var(--line-green);background:rgba(91,216,154,.05);padding:18px 20px}
.benefit__ico{flex:none;width:28px;height:28px;border-radius:50%;background:rgba(91,216,154,.14);color:var(--mint);display:flex;align-items:center;justify-content:center}
.benefit__ico .pi{width:16px;height:16px;stroke-width:2.2}
.benefit__title{font-family:var(--display);font-weight:700;font-size:var(--fs-15);color:var(--ink-green);margin-bottom:4px}
.benefit__text{font-size:var(--fs-13);line-height:1.55;color:var(--muted-green)}
.sensy__tool{margin-top:28px;text-align:center}
.sensy__tool .link-more{color:var(--mint-2);font-size:var(--fs-15);white-space:normal}

/* --------------------------------------------------------------------------
   Signature LACROIX
   -------------------------------------------------------------------------- */
.signature{position:relative;z-index:5;padding:var(--section-y) 0}
.signature__panel{
  position:relative;border-radius:var(--r-panel);overflow:hidden;border:1px solid rgba(52,194,227,.2);
  background:linear-gradient(160deg,#0f2030,#0a1320);
  display:grid;grid-template-columns:330px 1fr;
}
.signature__logo-box{
  position:relative;display:flex;flex-direction:column;gap:16px;align-items:center;justify-content:center;padding:40px;
  background:linear-gradient(160deg,#13283a,#0c1a28);border-right:1px solid rgba(52,194,227,.14);
}
.signature__logo-glow{position:absolute;inset:0;background:radial-gradient(70% 70% at 50% 30%,rgba(52,194,227,.16),transparent 62%)}
.signature__logo-box .made-fr{position:relative}
.signature__logo{position:relative;max-height:72px;max-width:74%;object-fit:contain}
.signature__body{padding:40px}
.signature__kicker{font-family:var(--mono);font-size:var(--fs-11);letter-spacing:.16em;color:var(--cyan-2);margin-bottom:12px}
.signature__title{font-family:var(--display);font-weight:800;font-size:clamp(24px,3vw,34px);margin:0 0 14px;letter-spacing:-.02em;color:var(--ink-strong)}
.signature__desc{font-size:var(--fs-15);line-height:1.65;color:var(--muted);margin:0 0 20px;max-width:54ch}

/* --------------------------------------------------------------------------
   Biodiversité — trame noire
   -------------------------------------------------------------------------- */
.bio{position:relative;z-index:5;padding:var(--section-y) 0}
.bio__panel{
  position:relative;border-radius:var(--r-panel);overflow:hidden;border:1px solid rgba(91,216,154,.26);
  background:linear-gradient(160deg,#0a1d18,#081413);padding:48px 44px;
}
.bio__halo{
  position:absolute;top:-40px;right:-20px;width:220px;height:220px;border-radius:50%;pointer-events:none;
  background:radial-gradient(circle,rgba(91,216,154,.22),transparent 68%);
}
.bio__grid{position:relative;display:grid;grid-template-columns:1.3fr 1fr;gap:36px;align-items:center}
.bio__kicker{font-family:var(--mono);font-size:var(--fs-12);letter-spacing:.2em;color:var(--mint-2);margin-bottom:14px}
.bio__title{font-family:var(--display);font-weight:800;font-size:clamp(26px,3.4vw,40px);margin:0 0 16px;letter-spacing:-.02em;color:var(--ink-green);text-transform:uppercase;line-height:1.1}
.bio__desc{font-size:var(--fs-16);line-height:1.7;color:var(--muted-green);max-width:52ch}
.bio__facts{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.fact{border-radius:12px;background:rgba(255,255,255,.03);border:1px solid rgba(91,216,154,.2);padding:18px}
.fact__value{font-family:var(--display);font-size:var(--fs-22);font-weight:900;color:var(--mint);letter-spacing:-.02em}
.fact__label{font-size:var(--fs-13);color:var(--muted-green);margin-top:4px;line-height:1.4}

/* --------------------------------------------------------------------------
   Références — Ils nous font confiance (logos blancs, sans cadre)
   -------------------------------------------------------------------------- */
.trust{position:relative;z-index:5;padding:var(--section-y) 0;background:var(--bg-2);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.intro--trust{margin-bottom:40px}
.trust__logos{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;align-items:center;justify-content:center;column-gap:clamp(36px,5vw,72px);row-gap:32px}
.trust__item{display:flex;align-items:center;justify-content:center}
.trust__break{display:none}
.trust__logo{display:block;height:calc(56px * var(--k,1));width:auto;max-width:100%;opacity:.75;transition:opacity .35s ease}
/* équilibrage optique : les logos compacts (carrés) sont un peu plus hauts, le logo très large un peu plus bas */
.trust__item--compact{--k:1.3}
.trust__item--wide{--k:.92}
.trust__item:hover .trust__logo{opacity:1}
/* --------------------------------------------------------------------------
   Contact
   -------------------------------------------------------------------------- */

/* Équipe : surcharge des blocs communs .team / .person / .assistant */

/* --------------------------------------------------------------------------
   Footer (surcharge sombre)
   -------------------------------------------------------------------------- */
.site-footer{position:relative;z-index:5;background:transparent;border-top:1px solid rgba(52,194,227,.14);color:var(--dim)}
.site-footer__copy{color:var(--dim-3)}

/* --------------------------------------------------------------------------
   Responsive
   -------------------------------------------------------------------------- */
@media (max-width:900px){
  .trust__logo{height:calc(48px * var(--k,1))}
  .site-nav{background:var(--bg-2);border-bottom-color:var(--line);box-shadow:0 24px 40px -24px rgba(0,0,0,.6)}
  .site-nav a{border-top-color:var(--line)}

  .hero{min-height:0}
  .hero__content{padding-top:96px;padding-bottom:80px}
  .levers{padding-top:48px}
  .signature{padding-top:64px}
  .levers__grid,.chain__grid,.reals__grid{grid-template-columns:repeat(2,1fr)}
  .devices,.benefits{grid-template-columns:repeat(2,1fr)}
  .steps{grid-template-columns:1fr}
  .step:not(:last-child)::after{content:"↓";right:auto;left:50%;top:auto;bottom:-16px;transform:translateX(-50%)}
  .sensy__bg{height:min(900px,100%)}
  .yt-lite__play{width:60px;height:60px;box-shadow:0 0 0 8px rgba(91,216,154,.22),0 16px 32px -12px rgba(0,0,0,.8)}
  .yt-lite__play svg{width:24px;height:24px}
  .modes__grid{grid-template-columns:1fr}
  .feature__grid,.feature__grid--reverse{grid-template-columns:1fr}
  .feature__media{min-height:240px;border-right:0;border-bottom:1px solid var(--line)}
  .feature__media--right{order:-1;border-left:0;border-bottom-color:rgba(91,216,154,.16)}
  .feature__body{padding:30px 24px}
  .points--grid{grid-template-columns:1fr}
  .signature__panel{grid-template-columns:1fr}
  .signature__logo-box{border-right:0;border-bottom:1px solid rgba(52,194,227,.14);padding:32px}
  .signature__body{padding:30px 24px}
  .bio__panel{padding:36px 28px}
  .bio__grid{grid-template-columns:1fr;gap:28px}
}
@media (max-width:560px){
  .trust__logos{column-gap:24px;row-gap:24px}
  .trust__break{display:block;flex-basis:100%;height:0}
  .trust__logo{height:calc(40px * var(--k,1))}
  .hero__content{padding-top:72px;padding-bottom:64px}
  .hero__badge{letter-spacing:.14em;font-size:var(--fs-11)}
  .levers__grid,.chain__grid,.reals__grid,.bio__facts{grid-template-columns:1fr}
  .devices,.benefits{grid-template-columns:1fr}
  .sensy__credit{text-align:left}
  .mode{padding:28px 24px}
  .feature__body,.signature__body{padding:24px 20px}
}

/* Pictogrammes (lot 1) */
.lever__icon,.product__icon{color:var(--cyan)}
.lever__icon .pi,.product__icon .pi{width:22px;height:22px}
