  /* ============ 01 HERO ============ */
  .approche-hero{ background:var(--navy); }
  .approche-hero__inner{ max-width:900px; padding:clamp(110px,15vw,180px) 0 clamp(90px,12vw,130px); }
  .approche-hero h1{
    font-size:clamp(30px,4.4vw,50px);
    line-height:1.16;
    color:#fff;
    font-weight:500;
    max-width:19ch;
  }
  .approche-hero__accent{
    display:block;
    font-family:var(--display);
    font-style:italic;
    font-weight:420;
    color:var(--terracotta);
    margin-top:10px;
  }
  .approche-hero__lead{
    margin-top:clamp(48px,6vw,72px);
    font-size:16px;
    line-height:1.8;
    color:var(--mist);
    max-width:52ch;
  }
  .approche-hero__lead p + p{ margin-top:20px; }

  /* ============ 02 AVANT LA FORMATION ============ */
  .before h2{
    font-size:clamp(24px,3vw,32px);
    color:var(--navy);
    font-weight:520;
    max-width:20ch;
  }
  .before__questions{
    margin-top:clamp(64px,9vw,104px);
    display:flex;
    flex-direction:column;
    gap:clamp(30px,4vw,44px);
    max-width:820px;
  }
  .before__q{ display:flex; align-items:baseline; gap:16px; }
  .before__q-index{
    font-family:var(--mono);
    font-size:12px;
    color:var(--terracotta);
    flex-shrink:0;
  }
  .before__q-text{
    font-family:var(--display);
    color:var(--navy);
    line-height:1.3;
  }
  .before__q--1{ margin-left:0; }
  .before__q--1 .before__q-text{ font-size:clamp(22px,2.8vw,29px); font-weight:500; }
  .before__q--2{ margin-left:clamp(20px,9vw,140px); }
  .before__q--2 .before__q-text{ font-size:clamp(17px,1.9vw,20px); font-weight:400; color:var(--ink-soft); font-style:italic; }
  .before__q--3{ margin-left:clamp(10px,4vw,64px); }
  .before__q--3 .before__q-text{ font-size:clamp(19px,2.3vw,24px); font-weight:500; }
  .before__q--4{ margin-left:clamp(30px,13vw,200px); }
  .before__q--4 .before__q-text{ font-size:clamp(25px,3.4vw,36px); font-weight:520; }
  .before__body{
    margin-top:clamp(64px,8vw,100px);
    padding-top:36px;
    border-top:1px solid var(--line-dark);
    font-size:16px;
    line-height:1.8;
    color:var(--ink-soft);
    max-width:54ch;
  }
  .before__body p + p{ margin-top:18px; }
  .before__conclusion{
    margin-top:40px;
    font-family:var(--display);
    font-style:italic;
    font-size:19px;
    color:var(--navy);
    max-width:44ch;
  }
  @media(max-width:640px){
    .before__q--2, .before__q--3, .before__q--4{ margin-left:clamp(8px,6vw,40px); }
  }

  /* ============ 03 DU TERRAIN AU TERRAIN ============ */
  .path-section h2{
    font-size:clamp(26px,3.4vw,38px);
    color:#fff;
    font-weight:500;
    max-width:16ch;
  }
  .path{
    position:relative;
    margin-top:clamp(60px,8vw,100px);
  }
  .path svg{ width:100%; height:auto; overflow:visible; }
  .path-line{ fill:none; stroke:var(--terracotta); stroke-width:1.6; stroke-linecap:round; }
  .path-dot{ fill:var(--navy); }
  .path-dot--end{ fill:var(--terracotta); }
  .path__legend{
    display:flex;
    justify-content:space-between;
    gap:16px;
    margin-top:24px;
  }
  .path__legend-item{ max-width:170px; }
  .path__legend-item .path__label{
    display:block;
    font-family:var(--mono);
    font-size:11px;
    letter-spacing:.1em;
    text-transform:uppercase;
    color:var(--mist-dim);
    margin-bottom:12px;
  }
  .path__legend-item.is-key .path__label{ color:var(--terracotta); }
  .path__legend-item p{
    font-size:13.5px;
    line-height:1.65;
    color:var(--mist);
  }
  .path__close{
    margin-top:clamp(64px,8vw,96px);
    padding-top:34px;
    border-top:1px solid var(--navy-line);
    font-family:var(--display);
    font-style:italic;
    font-size:clamp(19px,2.2vw,24px);
    color:#fff;
    max-width:36ch;
  }
  .path__close p + p{ margin-top:6px; }
  @media(max-width:820px){
    .path__legend{ flex-wrap:wrap; }
    .path__legend-item{ max-width:44%; }
  }
  @media(max-width:520px){
    .path__legend{ flex-direction:column; gap:22px; }
    .path__legend-item{ max-width:100%; }
  }

  /* ============ 04 EXPÉRIMENTER ============ */
  .experiment h2{
    font-size:clamp(24px,3vw,32px);
    color:var(--navy);
    font-weight:520;
    max-width:22ch;
  }
  .experiment__loop{
    margin-top:clamp(56px,7vw,80px);
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:10px 14px;
    padding:22px 0;
    border-top:1px solid var(--line-dark);
    border-bottom:1px solid var(--line-dark);
  }
  .experiment__loop span{
    font-family:var(--mono);
    font-size:12.5px;
    letter-spacing:.06em;
    text-transform:uppercase;
    color:var(--navy);
  }
  .experiment__loop .arrow{ color:var(--terracotta); font-family:var(--body); }
  .experiment__body{
    margin-top:clamp(44px,6vw,64px);
    font-size:16px;
    line-height:1.8;
    color:var(--ink-soft);
    max-width:56ch;
  }
  .experiment__body p + p{ margin-top:18px; }
  .experiment__strong{
    margin-top:clamp(56px,7vw,84px);
    font-family:var(--display);
    font-size:clamp(21px,2.6vw,29px);
    line-height:1.35;
    color:var(--navy);
    max-width:26ch;
  }
  .experiment__strong p + p{ margin-top:2px; }

  /* ============ 05 AUTONOMIE ============ */
  .autonomy{
    text-align:center;
  }
  .autonomy__inner{ max-width:680px; margin:0 auto; }
  .autonomy h2{
    font-size:clamp(34px,5.4vw,64px);
    color:#fff;
    font-weight:500;
    line-height:1.1;
  }
  .autonomy__body{
    margin-top:clamp(48px,6vw,68px);
    font-size:16px;
    line-height:1.85;
    color:var(--mist);
    max-width:50ch;
    margin-left:auto;
    margin-right:auto;
    text-align:left;
  }
  .autonomy__body p + p{ margin-top:18px; }
  .autonomy__mantra{
    margin-top:clamp(60px,8vw,90px);
    font-family:var(--mono);
    font-size:13px;
    letter-spacing:.16em;
    text-transform:uppercase;
    color:var(--terracotta);
  }
  .autonomy__mantra p + p{ margin-top:8px; }

  /* ============ 06 CTA FINAL ============ */
