/* Page « À propos » (templates/about_us.html). */
:root{
  --red:#DE1F65;--red-d:#86133D;--red-a:rgba(222,31,101,.08);--red-b:rgba(222,31,101,.2);
  --mst:#DC953E;--blu:#3F87AF;--grn:#22c55e;
  --t1:#0f1117;--t2:#434960;--t3:#666f8a;
  --s1:#ffffff;--s2:#f7f8fc;--s3:#eef0f7;
  --l1:#e8eaf4;--l2:#d4d7ec;
  --display:'Bebas Neue',sans-serif;
  --mono:'JetBrains Mono',monospace;
  --body:'Outfit',sans-serif;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}

.reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reveal.left{transform:translateX(-22px)}.reveal.right{transform:translateX(22px)}
.reveal.visible{opacity:1;transform:none}
.reveal-d1{transition-delay:.1s}.reveal-d2{transition-delay:.2s}.reveal-d3{transition-delay:.3s}

/* ══ HERO ══════════════════════════════════════════════════════ */
/* MOBILE: bg image on top with fade, text below */
.about-hero{
  position:relative;
  display:flex;
  flex-direction:column;
  background:var(--s1);
}
.ah-bg{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  overflow:hidden;
  flex-shrink:0;
  background-size:cover;
  background-position:center top;
  background-image:url('../images/dev_expo/bg-hero-960.jpg');
}
/* Fade bottom edge of image into white on mobile */
.ah-bg::after{
  content:'';position:absolute;
  bottom:0;left:0;right:0;height:50%;z-index:2;pointer-events:none;
  background:linear-gradient(to bottom,transparent 0%,rgba(255,255,255,1) 100%);
}
.ah-overlay{display:none}
.ah-inner{
  position:relative;z-index:2;
  background:var(--s1);
  padding:24px 20px 48px;
  width:100%;
}

/* DESKTOP: full viewport background, text centered */
@media(min-width:641px){
  .about-hero{
    min-height:100dvh;
    overflow:hidden;
    background:transparent;
    align-items:center;
    justify-content:center;
    flex-direction:row;
  }
  .ah-bg{
    position:absolute;inset:0;
    width:100%;height:100%;
    aspect-ratio:unset;flex-shrink:unset;
    background-size:cover;background-position:center top;
    background-image:url('../images/dev_expo/bg-hero-960.jpg');
  }
  .ah-bg::after{display:none}
  @media(min-width:961px){
    .ah-bg{background-image:url('../images/dev_expo/bg-hero-1440.jpg');}
  }
  @media(min-width:1441px){
    .ah-bg{background-image:url('../images/dev_expo/bg-hero-1920.jpg');}
  }
  .ah-overlay{
    display:block;
    position:absolute;inset:0;
    background:
      linear-gradient(to bottom, rgba(255,255,255,.72) 0%, rgba(255,255,255,.55) 50%, rgba(255,255,255,.25) 100%),
      linear-gradient(to top, rgba(255,255,255,.88) 0%, transparent 50%);
  }
  .ah-inner{
    position:relative;z-index:2;
    background:transparent;
    max-width:1200px;margin:0 auto;
    padding:0 40px;
    width:100%;
  }
}
.ah-date{
  font-family:var(--mono);font-size:10px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--red);margin-bottom:16px;display:flex;align-items:center;gap:10px;
}
.ah-date-line{width:32px;height:1px;background:var(--red)}
.ah-h1{
  font-family:var(--display);
  font-size:clamp(44px,7vw,80px);
  line-height:.92;letter-spacing:.04em;
  color:var(--t1);
  margin-bottom:20px;
}
.ah-h1 .r{color:var(--red)}
.ah-sub{
  font-size:15px;color:var(--t2);
  line-height:1.75;max-width:500px;
  margin-bottom:36px;
}
.ah-founders{display:flex;flex-wrap:wrap;gap:10px}
.ah-fp{
  display:flex;align-items:center;gap:8px;
  background:rgba(255,255,255,.75);
  border:1px solid var(--l1);
  border-radius:8px;padding:8px 14px;
  font-size:13px;color:var(--t1);
  font-weight:500;
}
.ah-fp span{
  width:28px;height:28px;border-radius:6px;
  background:var(--red-a);border:1px solid var(--red-b);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--display);font-size:15px;color:var(--red);flex-shrink:0;
}
.ah-scroll-hint{
  display:none; /* hidden on mobile */
}
@media(min-width:641px){
  .ah-scroll-hint{
    position:absolute;bottom:32px;right:40px;z-index:2;
    display:flex;align-items:center;gap:10px;
    font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;
    color:var(--t3);
  }
}
.ah-scroll-line{width:40px;height:1px;background:var(--l2)}

/* ══ QUI SOMMES-NOUS ════════════════════════════════════════════ */
.qui-section{background:var(--s1);padding:100px 0;overflow:hidden}
.qui-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.qui-inner{padding:0 20px}}

.qui-top{margin-bottom:72px}
.qui-big{
  font-family:var(--display);
  font-size:clamp(60px,8vw,100px);
  line-height:.88;letter-spacing:.04em;
  color:var(--t1);
}
.qui-big .r{color:var(--red)}
.qui-intro{
  margin-top:28px;
  display:grid;grid-template-columns:1fr 1fr;gap:48px;
  align-items:start;
}
@media(max-width:800px){.qui-intro{grid-template-columns:1fr;gap:24px}}
.qui-p{font-size:16px;color:var(--t2);line-height:1.85}
.qui-p strong{color:var(--t1);font-weight:600}

/* Stats strip */
.qui-stats{
  display:grid;grid-template-columns:repeat(3,1fr);
  border:1px solid var(--l1);border-radius:14px;
  margin-top:64px;overflow:hidden;background:var(--s2);
}
@media(max-width:600px){.qui-stats{grid-template-columns:1fr}}
.qs-cell{padding:32px 28px;border-right:1px solid var(--l1);text-align:center}
.qs-cell:last-child{border-right:none}
@media(max-width:600px){.qs-cell{border-right:none;border-bottom:1px solid var(--l1)}.qs-cell:last-child{border-bottom:none}}
.qs-n{font-family:var(--display);font-size:clamp(48px,6vw,72px);line-height:1;letter-spacing:.04em}
.qs-n.r{color:var(--red)}.qs-n.m{color:var(--mst)}.qs-n.b{color:var(--blu)}
.qs-l{font-family:var(--mono);font-size:10px;color:var(--t3);text-transform:uppercase;letter-spacing:.1em;margin-top:8px}

/* ══ MISSION + VISION ════════════════════════════════════════ */
.mv-section{background:var(--s2);padding:96px 0}
.mv-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.mv-inner{padding:0 20px}}
.mv-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:768px){.mv-grid{grid-template-columns:1fr}}

.mv-card{
  background:var(--s1);border:1px solid var(--l1);
  border-radius:16px;padding:40px;
}
.mv-card.mission{border-top:3px solid var(--red)}
.mv-card.vision{border-top:3px solid var(--blu)}
.mv-label{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  margin-bottom:14px;
}
.mv-card.mission .mv-label{color:var(--red)}
.mv-card.vision .mv-label{color:var(--blu)}
.mv-h{
  font-family:var(--display);font-size:clamp(32px,4vw,48px);
  letter-spacing:.04em;line-height:.92;margin-bottom:18px;color:var(--t1);
}
.mv-p{font-size:14px;color:var(--t2);line-height:1.8}

/* ══ VIDEO SECTION ═══════════════════════════════════════════ */
.video-section{background:var(--s1);padding:100px 0;overflow:hidden}
.video-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.video-inner{padding:0 20px}}

.video-h{
  font-family:var(--display);
  font-size:clamp(40px,5.5vw,64px);
  line-height:.92;letter-spacing:.04em;
  color:var(--t1);margin-bottom:16px;
}
.video-h .r{color:var(--red)}
.video-p{font-size:15px;color:var(--t2);line-height:1.8;max-width:560px;margin-bottom:40px}

/* Full-width responsive iframe embed */
.yt-embed-wrap{
  position:relative;
  aspect-ratio:16/9;
  border-radius:16px;overflow:hidden;
  box-shadow:0 32px 80px rgba(0,0,0,.14),0 2px 8px rgba(0,0,0,.06);
  background:#000;
}
.yt-embed-wrap iframe{
  position:absolute;inset:0;
  width:100%;height:100%;
  border:none;
}

/* ══ PROBLÈME / SOLUTION ════════════════════════════════════ */
.ps-section{background:var(--s2);padding:96px 0}
.ps-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.ps-inner{padding:0 20px}}
.ps-header{margin-bottom:56px}
.ps-h{
  font-family:var(--display);font-size:clamp(44px,6vw,72px);
  letter-spacing:.04em;line-height:.9;color:var(--t1);margin-bottom:10px;
}
.ps-h .r{color:var(--red)}
.ps-sub{font-size:15px;color:var(--t2);line-height:1.75;max-width:520px}
.ps-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
@media(max-width:768px){.ps-grid{grid-template-columns:1fr}}
.ps-card{background:var(--s1);border:1px solid var(--l1);border-radius:14px;padding:36px}
.ps-card.prob{border-top:3px solid var(--mst)}
.ps-card.sol{border-top:3px solid var(--grn)}
.ps-card-label{
  font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;margin-bottom:16px;
}
.ps-card.prob .ps-card-label{color:var(--mst)}
.ps-card.sol .ps-card-label{color:#22c55e}
.ps-card-h{font-family:var(--display);font-size:32px;letter-spacing:.04em;color:var(--t1);margin-bottom:14px;line-height:.95}
.ps-card-p{font-size:14px;color:var(--t2);line-height:1.8}

/* ══ COMMENT ÇA MARCHE ══════════════════════════════════════ */
.how-section{background:var(--s1);padding:96px 0}
.how-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.how-inner{padding:0 20px}}
.how-h{
  font-family:var(--display);font-size:clamp(44px,6vw,72px);
  letter-spacing:.04em;line-height:.9;color:var(--t1);margin-bottom:64px;
}
.how-h .r{color:var(--red)}
.how-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--l1);border:1px solid var(--l1);border-radius:14px;overflow:hidden}
@media(max-width:800px){.how-steps{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.how-steps{grid-template-columns:1fr}}
.how-step{
  background:var(--s1);padding:28px 24px;
  display:flex;flex-direction:column;gap:12px;
}
.how-step-n{font-family:var(--display);font-size:64px;letter-spacing:.04em;line-height:1;color:var(--l2)}
.how-step-h{font-size:15px;font-weight:700;color:var(--t1)}
.how-step-p{font-size:13px;color:var(--t2);line-height:1.65}

/* ══ TIMELINE ═══════════════════════════════════════════════ */
.tl-section{background:var(--s2);padding:96px 0}
.tl-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.tl-inner{padding:0 20px}}
.tl-h{
  font-family:var(--display);font-size:clamp(44px,6vw,72px);
  letter-spacing:.04em;line-height:.9;color:var(--t1);margin-bottom:64px;
}
.tl-h .r{color:var(--red)}

.tl-list{display:flex;flex-direction:column;gap:0}
.tl-item{
  display:grid;grid-template-columns:120px 1px 1fr;
  gap:0 32px;align-items:start;min-height:80px;
}
@media(max-width:600px){.tl-item{grid-template-columns:80px 1px 1fr;gap:0 16px}}
.tl-date-col{
  text-align:right;padding-top:3px;padding-bottom:32px;
}
.tl-date-val{
  font-family:var(--display);font-size:22px;letter-spacing:.04em;color:var(--red);line-height:1
}
.tl-date-sub{font-family:var(--mono);font-size:9px;color:var(--t3);text-transform:uppercase;letter-spacing:.08em;margin-top:3px}
.tl-line-col{display:flex;flex-direction:column;align-items:center}
.tl-dot-outer{
  width:14px;height:14px;border-radius:50%;
  border:2px solid var(--red);background:var(--s2);
  flex-shrink:0;margin-top:4px;
}
.tl-item.done .tl-dot-outer{background:var(--red)}
.tl-connector{flex:1;width:2px;background:var(--l1);margin-top:4px}
.tl-item:last-child .tl-connector{display:none}
.tl-content{padding-bottom:36px}
.tl-content-h{font-size:15px;font-weight:700;color:var(--t1);margin-bottom:6px}
.tl-content-p{font-size:13px;color:var(--t2);line-height:1.65;max-width:480px}

/* ══ DEV EXPO ══════════════════════════════════════════════ */
.expo-section{background:var(--s1);padding:96px 0;overflow:hidden}
.expo-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.expo-inner{padding:0 20px}}
.expo-top{
  display:grid;grid-template-columns:1fr 1fr;gap:40px;
  align-items:end;margin-bottom:48px;
}
@media(max-width:768px){.expo-top{grid-template-columns:1fr;gap:16px}}
.expo-h{
  font-family:var(--display);
  font-size:clamp(60px,8vw,100px);
  letter-spacing:.04em;line-height:.88;color:var(--t1);
}
.expo-h span{color:var(--red)}
.expo-date{
  font-family:var(--mono);font-size:9.5px;letter-spacing:.12em;text-transform:uppercase;
  color:var(--red);margin-bottom:8px;
}
.expo-p{font-size:15px;color:var(--t2);line-height:1.8;align-self:end}

/* Masonry-like gallery */
.expo-gallery{
  display:grid;
  grid-template-columns:2fr 1fr 1fr;
  grid-template-rows:340px 340px;
  gap:14px;
}
@media(max-width:900px){
  .expo-gallery{
    grid-template-columns:1fr 1fr;
    grid-template-rows:repeat(3,220px);
  }
}
@media(max-width:520px){
  .expo-gallery{grid-template-columns:1fr;grid-template-rows:repeat(5,220px)}
}
.eg-cell{
  border-radius:10px;overflow:hidden;
  background:var(--s2);
}
.eg-cell.tall{grid-row:1/3}
@media(max-width:900px){.eg-cell.tall{grid-row:auto}}
.eg-cell img{
  width:100%;height:100%;
  object-fit:cover;display:block;
  transition:transform .5s ease;
}
.eg-cell:hover img{transform:scale(1.04)}

/* ══ VALEURS ════════════════════════════════════════════════ */
.val-section{background:var(--s2);padding:96px 0}
.val-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.val-inner{padding:0 20px}}
.val-layout{display:grid;grid-template-columns:1fr 1fr;gap:72px;align-items:center}
@media(max-width:900px){.val-layout{grid-template-columns:1fr;gap:40px}}
.val-copy{display:block}
.val-h{
  font-family:var(--display);
  font-size:clamp(52px,7vw,80px);
  letter-spacing:.04em;line-height:.88;
  color:var(--t1);margin-bottom:20px;
}
.val-h span{color:var(--red)}
.val-deviz{
  border-left:3px solid var(--red);padding-left:20px;margin:28px 0;
}
.val-deviz-q{
  font-family:var(--display);font-size:32px;letter-spacing:.04em;
  color:var(--t1);line-height:1.1;margin-bottom:6px;
}
.val-deviz-attr{font-family:var(--mono);font-size:9px;color:var(--t3);letter-spacing:.08em;text-transform:uppercase}

.val-cards{display:flex;flex-direction:column;gap:16px}
.val-card{
  background:var(--s1);border:1px solid var(--l1);
  border-radius:12px;padding:24px 28px;
  display:grid;grid-template-columns:auto 1fr;gap:16px;align-items:center;
  transition:border-color .2s;
}
.val-card:hover{border-color:var(--red-b)}
.val-ico{
  width:48px;height:48px;border-radius:10px;
  display:flex;align-items:center;justify-content:center;flex-shrink:0;
  font-family:var(--display);font-size:28px;color:var(--red);
  background:var(--red-a);border:1px solid var(--red-b);
}
.val-card-h{font-size:16px;font-weight:700;color:var(--t1);margin-bottom:4px}
.val-card-p{font-size:13px;color:var(--t2);line-height:1.6}

/* ══ ÉQUIPE ══════════════════════════════════════════════════ */
.team-section{background:var(--s1);padding:96px 0}
.team-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.team-inner{padding:0 20px}}

/* Team full name list */
.team-names-grid{
  display:grid;grid-template-columns:repeat(3,1fr);
  gap:10px;margin-bottom:24px;
}
@media(max-width:768px){.team-names-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:480px){.team-names-grid{grid-template-columns:1fr}}
.tn-cell{
  border:1px solid var(--l1);border-radius:10px;
  padding:14px 16px;display:flex;align-items:center;gap:12px;
  transition:border-color .2s;
}
.tn-cell:hover{border-color:var(--red-b)}
.tn-init{
  width:34px;height:34px;border-radius:7px;flex-shrink:0;
  background:var(--red-a);border:1px solid var(--red-b);
  display:flex;align-items:center;justify-content:center;
  font-family:var(--display);font-size:17px;color:var(--red);
}
.tn-name{font-size:13px;font-weight:600;color:var(--t1);line-height:1.3}
.tn-role{font-family:var(--mono);font-size:9px;color:var(--t3);text-transform:uppercase;letter-spacing:.06em;margin-top:2px}
.team-h{
  font-family:var(--display);font-size:clamp(52px,7vw,80px);
  letter-spacing:.04em;line-height:.88;color:var(--t1);
  margin-bottom:14px;
}
.team-h span{color:var(--red)}
.team-sub{font-size:15px;color:var(--t2);line-height:1.75;max-width:520px;margin-bottom:56px}

.founders-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:24px}
@media(max-width:768px){.founders-grid{grid-template-columns:1fr;gap:12px}}
.fc{
  border:1px solid var(--l1);border-radius:14px;
  padding:32px 28px;position:relative;overflow:hidden;
  background:linear-gradient(145deg,rgba(222,31,101,.02) 0%,transparent 60%);
  transition:border-color .2s,transform .2s;
}
.fc:hover{border-color:var(--red-b);transform:translateY(-3px)}
.fc-tag{
  position:absolute;top:16px;right:16px;
  font-family:var(--mono);font-size:8px;letter-spacing:.12em;
  color:var(--red);opacity:.5;text-transform:uppercase;
}
.fc-photo{
  width:100%;aspect-ratio:3/4;
  border-radius:10px;overflow:hidden;
  margin-bottom:20px;
  background:var(--s3);
}
.fc-photo img{
  width:100%;height:100%;
  object-fit:cover;object-position:top center;
  display:block;
  transition:transform .5s ease;
}
.fc:hover .fc-photo img{transform:scale(1.04)}
.fc-name{font-size:17px;font-weight:700;color:var(--t1);margin-bottom:5px}
.fc-role{
  font-family:var(--mono);font-size:9px;color:var(--red);
  background:var(--red-a);border:1px solid var(--red-b);
  border-radius:4px;padding:2px 8px;display:inline-block;margin-bottom:12px;
}
.fc-bio{font-size:13px;color:var(--t2);line-height:1.65}
.fc-links{display:flex;gap:8px;margin-top:16px;flex-wrap:wrap}
.fc-link{
  display:inline-flex;align-items:center;gap:6px;
  padding:6px 12px;border-radius:7px;font-size:11px;font-weight:600;
  text-decoration:none;transition:all .18s;border:1px solid transparent;
}
.fc-link svg{width:13px;height:13px;flex-shrink:0}
.fc-link.li{
  background:rgba(10,102,194,.07);color:#0A66C2;border-color:rgba(10,102,194,.18);
}
.fc-link.li:hover{background:rgba(10,102,194,.14);border-color:rgba(10,102,194,.35)}
.fc-link.em{
  background:var(--red-a);color:var(--red);border-color:var(--red-b);
}
.fc-link.em:hover{background:rgba(222,31,101,.15);border-color:rgba(222,31,101,.4)}

.team-counter{
  background:var(--s2);border:1px solid var(--l1);border-radius:14px;
  padding:28px 32px;display:flex;align-items:center;gap:24px;flex-wrap:wrap;
}
.tc-n{font-family:var(--display);font-size:56px;color:var(--red);line-height:1;letter-spacing:.04em}
.tc-text{font-size:14px;color:var(--t2);line-height:1.65;max-width:440px}
.tc-text strong{color:var(--t1);font-weight:600}

/* ══ LEV'ELLE UP ════════════════════════════════════════════ */
.lvl-section{background:var(--s1);padding:100px 0;overflow:hidden}
.lvl-inner{max-width:1200px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.lvl-inner{padding:0 20px}}
.lvl-tag{
  display:inline-flex;align-items:center;gap:7px;
  font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;
  color:var(--red);background:var(--red-a);border:1px solid var(--red-b);
  border-radius:20px;padding:4px 12px;margin-bottom:16px;
}
.lvl-tag-dot{width:5px;height:5px;border-radius:50%;background:var(--red)}
.lvl-layout{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
@media(max-width:900px){.lvl-layout{grid-template-columns:1fr;gap:40px}}
.lvl-h{
  font-family:var(--display);
  font-size:clamp(48px,6vw,80px);
  letter-spacing:.04em;line-height:.88;
  color:var(--t1);margin-bottom:20px;
}
.lvl-h span{color:var(--red)}
.lvl-quote{
  border-left:3px solid var(--red);padding-left:20px;margin:24px 0 28px;
}
.lvl-quote-text{
  font-size:16px;font-style:italic;color:var(--t2);line-height:1.7;
}
.lvl-p{font-size:15px;color:var(--t2);line-height:1.82;margin-bottom:16px}
.lvl-p strong{color:var(--t1);font-weight:600}
.lvl-badge{
  display:inline-flex;align-items:center;gap:8px;
  background:var(--red-a);border:1px solid var(--red-b);border-radius:8px;
  padding:8px 16px;margin-top:8px;
  font-family:var(--mono);font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--red);
}
/* Photo gallery */
.lvl-gallery{display:grid;grid-template-columns:1fr 1fr;gap:14px}
@media(max-width:520px){.lvl-gallery{grid-template-columns:1fr;gap:10px}}
.lvl-img-wrap{
  border-radius:12px;overflow:hidden;
  background:var(--s2);
  aspect-ratio:3/4;
}
.lvl-img-wrap img{
  width:100%;height:100%;
  object-fit:cover;display:block;
  transition:transform .5s ease;
}
.lvl-img-wrap:hover img{transform:scale(1.04)}

/* ══ CTA ═════════════════════════════════════════════════════ */
.cta-section{background:var(--t1);padding:96px 0;text-align:center;position:relative;overflow:hidden}
.cta-bg{position:absolute;inset:0;background:radial-gradient(ellipse 60% 60% at 50% 50%,rgba(222,31,101,.08) 0%,transparent 65%)}
.cta-inner{position:relative;z-index:2;max-width:700px;margin:0 auto;padding:0 40px}
@media(max-width:640px){.cta-inner{padding:0 20px}}
.cta-h{
  font-family:var(--display);font-size:clamp(52px,8vw,88px);
  letter-spacing:.04em;line-height:.88;color:#fff;margin-bottom:20px;
}
.cta-h span{color:var(--red)}
.cta-p{font-size:15px;color:rgba(255,255,255,.45);line-height:1.78;max-width:480px;margin:0 auto 40px}
.cta-btns{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}
.btn{display:inline-flex;align-items:center;gap:8px;padding:13px 26px;border-radius:9px;font-family:var(--mono);font-size:12px;font-weight:500;letter-spacing:.04em;transition:all .18s;cursor:pointer;text-decoration:none;border:none}
.btn svg{width:14px;height:14px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.btn-red{background:var(--red);color:#fff}.btn-red:hover{background:var(--red-d);box-shadow:0 4px 24px rgba(222,31,101,.35);transform:translateY(-1px)}
.btn-ghost{background:rgba(255,255,255,.07);color:rgba(255,255,255,.65);border:1px solid rgba(255,255,255,.12)}.btn-ghost:hover{background:rgba(255,255,255,.12);color:#fff}

@media(max-width:640px){
  .qui-section,.mv-section,.video-section,.ps-section,.how-section,
  .tl-section,.expo-section,.val-section,.team-section,.cta-section{padding:64px 0}
}

/* Anciens styles en ligne du gabarit. */
.qs-n.qs-n--team{color:var(--t2)}
.ap-mb40{margin-bottom:40px}
.ap-mt32{margin-top:32px}
.ap-note{font-size:14px;color:var(--t2);line-height:1.8}
.val-ico.val-ico--blu{color:var(--blu);background:rgba(63,135,175,.1);border-color:rgba(63,135,175,.2)}
