
  * { box-sizing: border-box; }
  html { scroll-behavior: smooth; }
  body {
    margin: 0;
    background: var(--white);
    color: var(--ink);
    font-family: 'Public Sans', system-ui, sans-serif;
    font-size: 16px;
    line-height: 1.5;
  }
  h1, h2, h3, .serif { font-family: 'Libre Caslon Text', Georgia, serif; font-weight: 400; }
  a { color: inherit; }
  img { max-width: 100%; /*display: block;*/ }
  .wrap { max-width: 1160px; margin: 0 auto; padding-left: 32px; padding-right: 32px; }
  .btn {
    display: inline-block;
    font-family: 'Public Sans', sans-serif;
    font-weight: 600;
    font-size: 15px;
    padding: 15px 28px;
    border: 1px solid transparent;
    text-decoration: none;
  }
  .btn-gold { background: var(--gold); color: var(--navy-dark); }
  .btn-gold:hover { background: var(--gold-dark); }
  .btn-outline { background: transparent; color: var(--white); border-color: rgba(255,255,255,0.4); }
  .btn-outline:hover { border-color: var(--white); }
  .link-quiet { text-decoration: underline; text-decoration-color: var(--line); text-underline-offset: 4px; }
  .link-quiet:hover { text-decoration-color: currentColor; }
  a:focus-visible, button:focus-visible { outline: 2px solid var(--gold); outline-offset: 2px; }

  /* Nav */
  .nav { background: var(--navy); border-bottom: 1px solid var(--line-dark); position: sticky; top: 0; z-index: 30; }
  .nav .wrap { display: flex; align-items: center; justify-content: space-between; padding-top: 18px; padding-bottom: 18px; gap: 24px; }
  .brand { display: inline-flex; align-items: center; }
  .nav-links { display: flex; align-items: center; gap: 28px; }
  .nav-links a:not(.btn) { color: #D8DCE1; font-size: 14px; text-decoration: none; }
  .nav-links a:not(.btn):hover { color: var(--white); }
  .nav-toggle { display: none; background: none; border: 0; cursor: pointer; padding: 8px; }
  .nav-toggle span { display: block; width: 24px; height: 2px; background: #fff; margin: 5px 0; }

  /* Hero */
  .hero { background: var(--navy); color: var(--white); }
  .hero .wrap { padding-top: 88px; padding-bottom: 88px; display: grid; grid-template-columns: 1.1fr 0.9fr; gap: 56px; align-items: center; }
  .hero .badge { display: inline-flex; align-items: center; gap: 8px; border: 1px solid var(--gold); padding: 7px 14px; font-size: 13px; font-weight: 600; color: var(--gold); text-decoration: none; margin-bottom: 24px; }
  .hero .badge:hover { background: rgba(169,129,46,0.1); }
  .hero h1 { font-size: 44px; line-height: 1.18; margin: 0 0 22px; max-width: 15ch; }
  .hero p.lede { font-size: 17px; line-height: 1.65; color: #C7CCD3; max-width: 46ch; margin: 0 0 32px; }
  .hero .ctas { display: flex; align-items: center; gap: 24px; flex-wrap: wrap; }
  .video-frame { border: 1px solid var(--line-dark); aspect-ratio: 16/10; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 16px; text-align: center; padding: 32px; }
  .play-circle { width: 56px; height: 56px; border-radius: 50%; border: 1px solid var(--gold); display: flex; align-items: center; justify-content: center; }
  .video-frame p { margin: 0; font-size: 14px; color: #B9BEC6; max-width: 26ch; }

  /* Neurosciences highlight */
  .neuro { background: var(--navy); color: var(--white); }
  .neuro .wrap { padding-top: 64px; padding-bottom: 64px; display: grid; grid-template-columns: 1fr 1fr; gap: 48px; align-items: center; }
  .neuro .tag { display: inline-block; font-size: 13px; font-weight: 600; color: var(--gold); border-bottom: 1px solid var(--gold); padding-bottom: 4px; margin-bottom: 18px; }
  .neuro h2 { font-size: 30px; margin: 0 0 16px; max-width: 16ch; }
  .neuro p.desc { font-size: 15.5px; color: #C7CCD3; line-height: 1.65; margin: 0 0 24px; max-width: 46ch; }
  .neuro blockquote { margin: 0 0 28px; padding-left: 18px; border-left: 2px solid var(--gold); font-family: 'Libre Caslon Text', serif; font-style: italic; font-size: 17px; color: #E7E9EC; }
  .neuro blockquote cite { display: block; margin-top: 10px; font-family: 'Public Sans', sans-serif; font-style: normal; font-size: 13px; color: #9BA3AD; }
  .neuro-panel { border: 1px solid var(--line-dark); padding: 36px; }
  .neuro-panel .big { font-family: 'Libre Caslon Text', serif; font-size: 22px; color: var(--gold); margin-bottom: 6px; }
  .neuro-panel ul { margin: 20px 0 0; padding: 0; list-style: none; }
  .neuro-panel li { font-size: 14.5px; padding: 12px 0; border-top: 1px solid var(--line-dark); color: #D8DCE1; }
  .neuro-panel li:first-child { border-top: none; }

  /* Stats */
  .stats { background: var(--parchment); border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  .stats .wrap { padding-top: 40px; padding-bottom: 40px; display: grid; grid-template-columns: repeat(3, 1fr); }
  .stat { text-align: center; padding: 0 24px; border-left: 1px solid var(--line); }
  .stat:first-child { border-left: none; }
  .stat .num { font-family: 'Libre Caslon Text', serif; font-size: 38px; color: var(--navy); }
  .stat .label { font-size: 13.5px; color: var(--muted); margin-top: 6px; }

  /* Section basics */
  section { padding: 76px 0; }
  .section-head { max-width: 620px; margin-bottom: 40px; }
  .section-head h2 { font-size: 28px; margin: 0 0 12px; color: var(--navy); }
  .section-head p { font-size: 15px; color: var(--muted); margin: 0; }
  .alt-bg { background: var(--parchment); }

  /* Fit-for-you */
  .fit { display: grid; grid-template-columns: 0.85fr 1.15fr; gap: 48px; }
  .fit ul { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: 1fr 1fr; gap: 1px; background: var(--line); border: 1px solid var(--line); }
  .fit li { background: var(--white); padding: 22px; font-size: 14.5px; line-height: 1.5; }

  /* Parcours */
  .parcours-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
  .parcours-grid a { background: var(--white); padding: 26px 20px; text-decoration: none; font-size: 14.5px; font-weight: 600; color: var(--navy); display: flex; align-items: center; min-height: 84px; }
  .parcours-grid a.highlight { background: var(--navy); color: var(--white); }
  .parcours-grid a:hover:not(.highlight) { background: var(--parchment); }

  /* Etapes */
  .etapes { border-top: 1px solid var(--line); }
  .etape { display: grid; grid-template-columns: 64px 1fr; gap: 20px; padding: 20px 0; border-bottom: 1px solid var(--line); }
  .etape .n { font-family: 'Libre Caslon Text', serif; font-style: italic; font-size: 20px; color: var(--gold-dark); }
  .etape p { margin: 0; font-size: 15px; padding-top: 2px; }

  /* Accreditation */
  .accred { background: var(--navy); color: var(--white); }
  .accred .wrap { padding: 64px 32px; display: grid; grid-template-columns: 1fr auto; gap: 32px; align-items: center; }
  .accred h2 { font-size: 25px; margin: 0 0 14px; max-width: 26ch; }
  .accred p { margin: 0; font-size: 15px; color: #C7CCD3; max-width: 52ch; line-height: 1.6; }

  /* Temoignages */
  .temoignages-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
  .temoignage { background: var(--white); text-decoration: none; color: var(--ink); }
  .temoignage .thumb { aspect-ratio: 4/3; background: var(--parchment); display: flex; align-items: center; justify-content: center; }
  .temoignage .name { padding: 13px 15px; font-size: 14px; font-weight: 600; }

  /* Academies */
  .academies-grid { display: grid; grid-template-columns: repeat(4, 1fr); gap: 1px; background: var(--line); border: 1px solid var(--line); }
  .academie { background: var(--white); padding: 22px; }
  .academie .city { font-family: 'Libre Caslon Text', serif; font-size: 17px; color: var(--navy); margin-bottom: 6px; }
  .academie .addr { font-size: 13px; color: var(--muted); line-height: 1.6; }

  /* Final CTA */
  .final-cta { background: var(--gold); text-align: center; }
  .final-cta .wrap { max-width: 640px; padding-top: 64px; padding-bottom: 64px; }
  .final-cta h2 { font-size: 27px; color: var(--navy-dark); margin: 0 0 14px; }
  .final-cta p { font-size: 15px; color: #4A3A16; margin: 0 0 28px; }
  .final-cta .btn-gold { background: var(--navy); color: var(--white); }
  .final-cta .btn-gold:hover { background: var(--navy-dark); }

  /* Mid-page CTA strip */
  .mid-cta { border-top: 1px solid var(--line); border-bottom: 1px solid var(--line); }
  .mid-cta .wrap { padding-top: 32px; padding-bottom: 32px; display: flex; align-items: center; justify-content: space-between; gap: 24px; flex-wrap: wrap; }
  .mid-cta p { margin: 0; font-size: 16px; color: var(--navy); max-width: 46ch; }
  .mid-cta.on-navy { background: var(--navy); border-color: var(--line-dark); }
  .mid-cta.on-navy p { color: var(--white); }

  /* Footer */
  footer { background: var(--navy-dark); color: #AEB4BC; }
  footer .wrap { padding: 44px 32px; display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 20px; font-size: 13px; }
  footer .brand-foot { font-family: 'Libre Caslon Text', serif; color: var(--white); font-size: 16px; }
  footer .cols { display: flex; gap: 20px; flex-wrap: wrap; }
  footer a { text-decoration: none; }
  footer a:hover { color: var(--white); }

  @media (max-width: 900px) {
    .hero .wrap { grid-template-columns: 1fr; padding-top: 56px; padding-bottom: 56px; }
    .hero h1 { font-size: 34px; }
    .neuro .wrap { grid-template-columns: 1fr; }
    .stats .wrap { grid-template-columns: 1fr; gap: 24px; }
    .stat { border-left: none; border-top: 1px solid var(--line); padding-top: 20px; }
    .stat:first-child { border-top: none; padding-top: 0; }
    .fit { grid-template-columns: 1fr; }
    .fit ul { grid-template-columns: 1fr; }
    .parcours-grid { grid-template-columns: 1fr 1fr; }
    .temoignages-grid { grid-template-columns: 1fr 1fr; }
    .academies-grid { grid-template-columns: 1fr 1fr; }
    .nav .wrap { position: relative; }
    .nav-toggle { display: block; }
    .nav-links { display: none; position: absolute; top: 100%; left: 0; right: 0; flex-direction: column; align-items: flex-start; gap: 16px; padding: 20px; z-index: 40; }
    .nav-links.open { display: flex; }
    .nav-links a:not(.btn) { display: block; }
    .accred .wrap { grid-template-columns: 1fr; text-align: left; }
    section { padding: 52px 0; }
    .wrap { padding-left: 20px; padding-right: 20px; }
  }
  @media (max-width: 560px) {
    .parcours-grid, .temoignages-grid, .academies-grid { grid-template-columns: 1fr; }
  }
  @media (prefers-reduced-motion: reduce) {
    html { scroll-behavior: auto; }
  }

  /* --- Charte AEC — harmonisée avec le site et la brochure 2026 --- */
  :root{
    --navy:#12486F;
    --navy-dark:#083653;
    --aec-blue:#386FB3;
    --aec-blue-deep:#245C9F;
    --aec-orange:#F28A00;
    --aec-yellow:#FDBD2B;
    --aec-cyan:#09AFD5;
    --parchment:#F7F8FA;
    --white:#FFFFFF;
    --gold:var(--aec-orange);
    --gold-dark:#D87300;
    --ink:#17364C;
    --muted:#5D7080;
    --line:#D9E2E9;
    --line-dark:rgba(255,255,255,.26);
  }
  body{font-family:'Montserrat',Arial,sans-serif;background:#fff;color:var(--ink);}
  h1,h2,h3,.serif{font-family:'Oswald','Arial Narrow',Arial,sans-serif;font-weight:500;letter-spacing:.01em;}
  .wrap{width:1200px;}
  .nav{background:var(--aec-blue);border:0;box-shadow:0 4px 18px rgba(14,58,101,.14);}
  .nav .wrap{padding-top:15px;padding-bottom:15px;}
  .brand{display:inline-flex;align-items:center;padding:4px 16px;border-radius:6px;}
  .brand-logo{height:42px;width:auto;display:block;}
  .nav-links a:not(.btn){color:#fff;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.03em;}
  .btn{border-radius:2px;font-family:'Montserrat',sans-serif;font-size:13px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;transition:transform .2s ease,box-shadow .2s ease,background .2s ease;}
  .btn:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(8,54,83,.18);}
  .btn-gold{background:var(--aec-orange);color:#fff;}
  .btn-gold:hover{background:#dc7900;}
  .hero{position:relative;overflow:hidden;background:linear-gradient(135deg,var(--aec-blue-deep),#4580C4);}
  .hero::before{content:'';position:absolute;inset:0;opacity:.17;background:repeating-radial-gradient(ellipse at 82% 35%,transparent 0 34px,rgba(255,255,255,.36) 36px 40px,transparent 42px 64px);transform:rotate(-7deg) scale(1.25);}
  .hero::after{content:'';position:absolute;right:-65px;bottom:-90px;width:440px;height:260px;background:var(--aec-orange);clip-path:polygon(100% 0,100% 100%,0 72%);opacity:.96;}
  .hero .wrap{position:relative;z-index:1;padding-top:84px;padding-bottom:92px;grid-template-columns:1.3fr .7fr;}
  .hero .badge{border:0;background:#fff;color:var(--aec-blue-deep);box-shadow:inset 5px 0 0 var(--aec-orange);text-transform:uppercase;font-size:12px;letter-spacing:.035em;padding:10px 16px;}
  .hero h1{font-size:clamp(31px,3vw,38px);line-height:1.18;text-transform:uppercase;max-width:none;text-shadow:0 2px 0 rgba(0,0,0,.05);}
  .hero-title-line{display:inline;white-space:nowrap;}
  .hero p.lede{color:#fff;font-size:17px;max-width:54ch;}
  .hero .link-quiet{color:#fff!important;text-decoration-color:rgba(255,255,255,.75);}
  .video-frame{border:3px solid #fff;background:rgba(255,255,255,.08);box-shadow:18px 18px 0 rgba(9,62,102,.22);backdrop-filter:blur(2px);}
  .play-circle{width:66px;height:66px;border:0;background:var(--aec-orange);box-shadow:0 0 0 10px rgba(255,255,255,.15);}
  .play-circle path{fill:#fff;}
  .video-frame p{color:#fff;font-weight:600;}
  .neuro{position:relative;overflow:hidden;background:#fff;color:var(--ink);}
  .neuro::after{content:'';position:absolute;right:-90px;top:0;width:320px;height:100%;background:linear-gradient(145deg,transparent 0 44%,rgba(9,175,213,.08) 44% 57%,transparent 57% 64%,rgba(242,138,0,.08) 64% 74%,transparent 74%);}
  .neuro .wrap{position:relative;z-index:1;}
  .neuro .tag{color:var(--aec-orange);border-color:var(--aec-orange);text-transform:uppercase;letter-spacing:.08em;}
  .neuro h2{color:var(--aec-blue-deep);font-size:38px;line-height:1.12;text-transform:uppercase;max-width:30ch;}
  .neuro p.desc{color:var(--muted);}
  .neuro blockquote{font-family:'Montserrat',Arial,sans-serif;font-style:normal;color:var(--ink);border-left:5px solid var(--aec-orange);background:#F4FAFC;padding:18px 22px;}
  .neuro blockquote cite{color:var(--muted);}
  .caution-scientifique{margin:0 0 28px;padding:22px 24px;background:#F4FAFC;border-left:5px solid var(--aec-orange);}
  .cs-tag{display:block;font-size:12px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--aec-orange);margin-bottom:8px;}
  .cs-headline{font-family:'Oswald','Arial Narrow',sans-serif;font-size:18px;color:var(--ink);margin:0 0 16px;line-height:1.3;}
  .cs-profile{display:flex;align-items:center;gap:16px;margin-bottom:14px;}
  .cs-photo{width:180px;height:180px;border-radius:50%;object-fit:cover;flex-shrink:0;border:2px solid #fff;box-shadow:0 3px 10px rgba(11,61,96,.15);}
  .cs-name{margin:0;font-family:'Oswald','Arial Narrow',sans-serif;font-size:16px;color:var(--aec-blue-deep);}
  .cs-credentials{margin:4px 0 0;font-size:13px;color:var(--muted);line-height:1.5;}
  .cs-note{margin:0;font-size:14.5px;font-style:italic;color:var(--ink);}
  @media(max-width:560px){.cs-profile{flex-direction:column;align-items:flex-start;}}
  .neuro-panel{position:relative;overflow:hidden;border:0;background:linear-gradient(145deg,var(--aec-blue-deep),var(--aec-blue));color:#fff;padding:42px;box-shadow:12px 12px 0 #E8F5F8;}
  .neuro-panel::before{content:'';position:absolute;right:-45px;top:-45px;width:170px;height:170px;border:24px solid rgba(255,255,255,.12);transform:rotate(45deg);}
  .neuro-panel .big{position:relative;color:#fff;font-family:'Oswald','Arial Narrow',sans-serif;font-size:31px;text-transform:uppercase;}
  .neuro-panel>div:nth-child(2){position:relative;color:#C9F4FB!important;}
  .neuro-panel ul{position:relative;}
  .neuro-panel li{color:#fff;border-color:rgba(255,255,255,.23);}
  .stats{background:#F3F8FB;border-top:1px solid #DCE8EF;border-bottom:1px solid #DCE8EF;color:var(--aec-blue-deep);}
  .stat{border-color:#CBDDE8;}
  .stat .num{font-family:'Oswald','Arial Narrow',sans-serif;color:var(--aec-blue-deep);font-size:48px;font-weight:600;}
  .stat .label{color:var(--aec-blue-deep);font-weight:500;}
  section{padding:82px 0;}
  .section-head{position:relative;padding-left:22px;}
  .section-head::before{content:'';position:absolute;left:0;top:3px;bottom:3px;width:6px;background:linear-gradient(var(--aec-orange) 0 50%,var(--aec-cyan) 50%);}
  .section-head h2,.fit h2{color:var(--aec-blue-deep)!important;text-transform:uppercase;font-size:34px!important;line-height:1.12;}
  .alt-bg{background:#F3F7FA;}
  .fit ul{border:0;background:transparent;gap:14px;}
  .fit li{position:relative;border:1px solid #DFE8EF;border-top:4px solid var(--aec-cyan);box-shadow:0 5px 15px rgba(16,71,111,.06);padding:24px 22px 24px 50px;}
  .fit li::before{content:'+';position:absolute;left:20px;top:18px;color:var(--aec-orange);font-size:25px;font-weight:700;}
  .parcours-grid{border:0;background:transparent;gap:14px;}
  .parcours-grid a{position:relative;min-height:105px;border:1px solid #D9E5EC;border-left:7px solid var(--aec-orange);box-shadow:0 5px 14px rgba(12,68,105,.05);font-family:'Oswald','Arial Narrow',sans-serif;font-size:17px;text-transform:uppercase;}
  .parcours-grid a.highlight{background:var(--aec-blue);border-color:var(--aec-blue);border-left-color:var(--aec-yellow);}
  .mid-cta{border:0;background:#EFF6FA;}
  .mid-cta p{font-family:'Oswald','Arial Narrow',sans-serif;font-size:21px;text-transform:uppercase;}
  .mid-cta.results-cta{background:var(--aec-blue);}
  .mid-cta.results-cta p{color:#fff;}
  .etapes{display:grid;grid-template-columns:1fr 1fr;gap:15px;border:0;counter-reset:steps;}
  .etape{position:relative;grid-template-columns:70px 1fr;align-items:center;border:1px solid #D9E5EC;background:#fff;padding:18px 22px;min-height:86px;}
  .etape .n{width:52px;height:52px;display:grid;place-items:center;border-radius:50%;background:var(--aec-orange);color:#fff;font-family:'Oswald','Arial Narrow',sans-serif;font-size:0;font-style:normal;}
  .etape:nth-child(1) .n::after{content:'1';}.etape:nth-child(2) .n::after{content:'2';}.etape:nth-child(3) .n::after{content:'3';}.etape:nth-child(4) .n::after{content:'4';}.etape:nth-child(5) .n::after{content:'5';}.etape:nth-child(6) .n::after{content:'6';}.etape:nth-child(7) .n::after{content:'7';}.etape:nth-child(8) .n::after{content:'8';}
  .etape .n::after{font-size:23px;font-weight:600;}
  .mid-cta.on-navy,.accred{background:var(--aec-blue);}
  .btn-outline{border:2px solid #fff;color:#fff;background:transparent;}
  .accred .wrap{padding-top:72px;padding-bottom:72px;}
  .accred h2{font-size:31px;text-transform:uppercase;}
  .temoignages-grid{border:0;background:transparent;gap:16px;}
  .temoignage{border:1px solid #D9E5EC;box-shadow:0 5px 16px rgba(11,61,96,.06);}
  .temoignage .thumb{background:linear-gradient(145deg,#E8F3F8,#fff);border-bottom:5px solid var(--aec-orange);}
  .temoignage .thumb svg{width:24px;height:28px;}
  .temoignage .thumb path{fill:var(--aec-blue);}
  .temoignage .name{color:var(--aec-blue-deep);font-weight:700;}
  .academies-grid{border:0;background:transparent;gap:14px;}
  .academie{border:1px solid #DCE6ED;border-top:5px solid var(--aec-orange);box-shadow:0 4px 14px rgba(11,61,96,.05);}
  .academie .city{font-family:'Oswald','Arial Narrow',sans-serif;text-transform:uppercase;font-size:20px;color:var(--aec-blue-deep);}
  .final-cta{position:relative;overflow:hidden;background:var(--aec-orange);}
  .final-cta::before,.final-cta::after{content:'';position:absolute;width:300px;height:300px;border:40px solid rgba(255,255,255,.14);border-radius:48% 52% 55% 45%;}
  .final-cta::before{left:-170px;top:-160px}.final-cta::after{right:-170px;bottom:-180px}
  .final-cta .wrap{position:relative;z-index:1;}
  .final-cta h2{color:#fff;font-size:35px;text-transform:uppercase;}
  .final-cta p{color:#fff;font-weight:600;}
  .final-cta .btn-gold{background:var(--aec-blue);}
  footer{background:#073B5B;border-top:6px solid var(--aec-orange);}
  footer .brand-foot{font-family:'Oswald','Arial Narrow',sans-serif;text-transform:uppercase;}
  @media(max-width:900px){
    .hero .wrap{grid-template-columns:1fr;padding-top:58px;padding-bottom:68px}.hero h1{font-size:clamp(27px,4.7vw,38px);max-width:none}.hero::after{width:250px;height:170px;opacity:.55}.nav .wrap{padding-top:12px;padding-bottom:12px}.nav-links.open{background:var(--aec-blue);box-shadow:0 12px 18px rgba(14,58,101,.18);}.etapes{grid-template-columns:1fr}.neuro h2{font-size:34px}.section-head h2,.fit h2{font-size:30px!important}
  }
  @media(max-width:560px){
    .wrap{padding-left:18px;padding-right:18px}.brand{padding:6px 12px}.brand-logo{height:32px}.nav-links .btn{padding:11px 13px;font-size:11px}.hero .wrap{padding-top:46px;padding-bottom:54px}.hero h1{font-size:clamp(18px,5.6vw,27px)}.hero p.lede{font-size:15px}.hero .ctas{align-items:flex-start;flex-direction:column;gap:18px}.video-frame{box-shadow:9px 9px 0 rgba(9,62,102,.22)}.neuro-panel{padding:30px 24px}.stats .wrap{gap:18px}.stat .num{font-size:42px}.parcours-grid,.temoignages-grid,.academies-grid{grid-template-columns:1fr}.etape{grid-template-columns:58px 1fr;padding:15px}.etape .n{width:44px;height:44px}.accred .wrap{padding-left:18px;padding-right:18px}.final-cta h2{font-size:30px}
  }
  /* Optimisations responsive mobile et tablette */
  body{overflow-x:hidden;}
  iframe{max-width:100%;}
  .btn,.link-quiet{-webkit-tap-highlight-color:transparent;}
  .differenciateurs-grid{min-width:0;}
  .differenciateurs-grid>li{min-width:0;overflow-wrap:anywhere;word-break:normal;}
  .differenciateurs-grid p{max-width:100%;}
  .temoignages-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:28px;}
  .temoignages-heading .section-head{margin-bottom:0;}
  .carousel-controls{display:flex;gap:10px;flex:0 0 auto;}
  .carousel-arrow{width:46px;height:46px;border:2px solid var(--aec-blue);background:#fff;color:var(--aec-blue);font-size:25px;line-height:1;cursor:pointer;display:grid;place-items:center;transition:.2s ease;}
  .carousel-arrow:hover,.carousel-arrow:focus-visible{background:var(--aec-blue);color:#fff;outline:none;}
  .temoignages-grid{display:flex!important;grid-template-columns:none!important;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;gap:16px!important;background:transparent!important;border:0!important;padding:2px 2px 18px;scrollbar-width:thin;scrollbar-color:var(--aec-blue) #DCE6ED;}
  .temoignages-grid>.temoignage{flex:0 0 calc((100% - 48px)/4);scroll-snap-align:start;min-width:0;}
  section.neuro{padding-top:0!important;padding-bottom:0!important;}
  .mid-cta + section.neuro .wrap{padding-top:22px!important;padding-bottom:28px!important;}
  section.neuro + section{padding-top:24px!important;}

  @media(max-width:900px){
    section{padding:62px 0;}
    .nav{position:sticky;top:0;}
    .nav-toggle{display:block;margin-left:auto;}
    .nav-links{background:var(--aec-blue);border-top:1px solid rgba(255,255,255,.18);max-height:calc(100vh - 70px);overflow-y:auto;}
    .nav-links a,.nav-links .btn{width:100%;padding:12px 4px;}
    .hero .wrap{gap:38px;}
    .hero> .wrap>div:first-child{min-width:0;}
    .hero-title-line{display:inline!important;white-space:nowrap!important;}
    .video-frame{width:100%;max-width:720px;margin:0 auto;}
    .mid-cta .wrap{align-items:flex-start;}
    .accred .btn{justify-self:start;}
    .differenciateurs-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
    .temoignages-grid>.temoignage{flex-basis:calc((100% - 16px)/2);}
  }

  @media(max-width:560px){
    section{padding:48px 0;}
    section.neuro{padding-top:0!important;padding-bottom:0!important;}
    .mid-cta + section.neuro .wrap{padding-top:18px!important;padding-bottom:22px!important;}
    section.neuro + section{padding-top:20px!important;}
    .wrap{width:100%;}
    .nav .wrap{gap:10px;}
    .brand-logo{max-width:190px;object-fit:contain;}
    .hero{min-height:0;}
    .hero::before{opacity:.1;}
    .hero .wrap{gap:30px;}
    .hero .badge{font-size:10px;line-height:1.3;padding:9px 12px;margin-bottom:18px;}
    .hero h1{font-size:clamp(15px,5vw,23px);line-height:1.25;letter-spacing:-.01em;margin-bottom:18px;}
    .hero-title-line{display:inline!important;white-space:nowrap!important;}
    .hero p.lede{line-height:1.55;margin-bottom:25px;}
    .hero .ctas{width:100%;gap:12px;}
    .hero .ctas .btn{display:flex;width:100%;justify-content:center;text-align:center;padding:14px 16px;}
    .hero .ctas .link-quiet{display:block;width:100%;text-align:center;padding:10px;}
    .video-frame{width:calc(100% - 9px);margin-right:9px;}
    .stats .wrap{padding-top:28px;padding-bottom:28px;}
    .stat{padding:14px 8px;border-right:0;border-bottom:1px solid #CBDDE8;}
    .stat:last-child{border-bottom:0;}
    .section-head{margin-bottom:28px;}
    .section-head h2,.fit h2,.neuro h2,.accred h2{font-size:28px!important;line-height:1.15;}
    .neuro .wrap{padding-top:48px;padding-bottom:48px;gap:30px;}
    .neuro-panel{box-shadow:8px 8px 0 #E8F5F8;}
    .fit{gap:28px;}
    .fit ul{gap:1px;}
    .parcours-grid{gap:10px;background:transparent;border:0;}
    .parcours-grid a{border:1px solid var(--line);min-height:58px;display:flex;align-items:center;}
    .etapes{gap:10px;}
    .etape{min-height:74px;gap:12px;}
    .mid-cta .wrap{padding-top:28px;padding-bottom:28px;gap:16px;}
    .mid-cta .btn,.accred .btn,.final-cta .btn{display:flex;width:100%;justify-content:center;text-align:center;}
    .accred .wrap{padding-top:48px;padding-bottom:48px;gap:24px;}
    .temoignages-heading{align-items:center;margin-bottom:22px;}
    .carousel-arrow{width:42px;height:42px;}
    .temoignages-grid{gap:14px!important;padding:2px 2px 16px;}
    .temoignages-grid>.temoignage{flex:0 0 84%;}
    .academies-grid{gap:10px;}
    .differenciateurs-grid{grid-template-columns:minmax(0,1fr)!important;gap:12px!important;}
    .differenciateurs-grid>li{padding:20px 18px!important;}
    .academie{min-height:0;padding:20px;}
    .final-cta .wrap{padding-top:48px;padding-bottom:48px;}
    footer .wrap{padding:34px 18px;display:grid;grid-template-columns:1fr;align-items:start;}
    footer .cols{display:grid;grid-template-columns:1fr;gap:10px;}
  }

  @media(max-width:360px){
    .brand-logo{max-width:160px;}
    .hero h1{font-size:14px;letter-spacing:-.025em;}
    .hero .badge{font-size:9px;}
  }
  /* Carrousel témoignages premium */
  .temoignages-heading{display:block;margin-bottom:26px;}
  .temoignages-grid{gap:22px!important;padding:6px 4px 12px;scrollbar-width:none;overscroll-behavior-x:contain;}
  .temoignages-grid::-webkit-scrollbar{display:none;}
  .temoignages-grid>.temoignage{flex:0 0 calc((100% - 44px)/3);border:1px solid #D8E4EC;border-radius:8px;box-shadow:0 10px 28px rgba(9,62,102,.09);overflow:hidden;transition:transform .25s ease,box-shadow .25s ease;}
  .temoignages-grid>.temoignage:hover{transform:translateY(-4px);box-shadow:0 14px 32px rgba(9,62,102,.14);}
  .carousel-footer{display:flex;align-items:center;justify-content:center;gap:20px;margin-top:24px;}
  .carousel-controls{display:flex;align-items:center;gap:12px;}
  .carousel-arrow{width:48px;height:48px;border:0;border-radius:50%;background:var(--aec-orange);color:#fff;box-shadow:0 6px 16px rgba(242,138,0,.25);}
  .carousel-arrow:hover,.carousel-arrow:focus-visible{background:var(--aec-blue);}
  .carousel-dots{display:flex;align-items:center;justify-content:center;gap:7px;min-width:118px;}
  .carousel-dot{width:8px;height:8px;border:0;border-radius:50%;padding:0;background:#B9CBD7;cursor:pointer;transition:.2s ease;}
  .carousel-dot.active{width:24px;border-radius:10px;background:var(--aec-orange);}
  @media(max-width:900px){.temoignages-grid>.temoignage{flex-basis:calc((100% - 18px)/2);}}
  @media(max-width:560px){
    .temoignages-grid{gap:12px!important;padding-left:0;padding-right:0;}
    .temoignages-grid>.temoignage{flex:0 0 100%;}
    .carousel-footer{gap:12px;margin-top:18px;}
    .carousel-arrow{width:44px;height:44px;}
    .carousel-dots{gap:5px;min-width:104px;}
  }
  /* Témoignages : 4 cartes par page sur ordinateur, 2 sur mobile. */
  .carousel-css{position:relative;}
  .carousel-css>input{position:absolute;opacity:0;pointer-events:none;}
  .carousel-shell{overflow:hidden;border-radius:8px;}
  .carousel-css .temoignages-grid{display:flex!important;gap:0!important;overflow:visible!important;padding:6px 0 14px;transform:translateX(0);transition:transform .45s ease;scroll-behavior:auto;}
  .carousel-css .temoignages-grid>.temoignage{box-sizing:border-box;flex:0 0 calc(25% - 12px)!important;width:calc(25% - 12px);max-width:none;margin:0 6px;scroll-snap-align:none;}
  .carousel-css-controls{margin-top:22px;}
  .carousel-state-controls{display:none;align-items:center;justify-content:center;gap:18px;}
  .carousel-css-arrow{width:48px;height:48px;border-radius:50%;background:var(--aec-orange);color:#fff;display:grid;place-items:center;font-size:25px;line-height:1;cursor:pointer;box-shadow:0 6px 16px rgba(242,138,0,.25);user-select:none;}
  .carousel-css-arrow:hover{background:var(--aec-blue);}
  .carousel-counter{min-width:80px;text-align:center;color:var(--aec-blue-deep);font-weight:700;font-size:14px;}
  #tem-slide-1:checked~.carousel-shell .temoignages-grid{transform:translateX(0);}
  #tem-slide-2:checked~.carousel-shell .temoignages-grid{transform:translateX(-100%);}
  #tem-slide-1:checked~.carousel-css-controls .state-1,
  #tem-slide-2:checked~.carousel-css-controls .state-2{display:flex;}
  .mobile-only{display:none;}
  @media(max-width:700px){
    .carousel-css .temoignages-grid>.temoignage{flex-basis:calc(50% - 8px)!important;width:calc(50% - 8px);margin:0 4px;}
    #tem-slide-3:checked~.carousel-shell .temoignages-grid{transform:translateX(-200%);}
    #tem-slide-4:checked~.carousel-shell .temoignages-grid{transform:translateX(-300%);}
    #tem-slide-3:checked~.carousel-css-controls .state-3,
    #tem-slide-4:checked~.carousel-css-controls .state-4{display:flex;}
    .desktop-only{display:none;}.mobile-only{display:contents;}
  }
  @media(max-width:560px){.carousel-css-arrow{width:44px;height:44px;}.carousel-css-controls{margin-top:16px;}}
  .video-overlay-text{
    position:absolute;
    left:50%;
    top:50%;
    transform:translate(-50%,-50%);
    z-index:3;
    width:max-content;
    max-width:86%;
    margin:0;
    padding:10px 16px;
    border-radius:3px;
    background:rgba(7,59,91,.82);
    color:#fff!important;
    font-family:'Montserrat',Arial,sans-serif;
    font-size:14px!important;
    font-weight:700!important;
    line-height:1.3;
    text-align:center;
    text-transform:uppercase;
    letter-spacing:.035em;
    box-shadow:0 5px 18px rgba(0,0,0,.22);
    pointer-events:none;
  }
  .video-holder{position:relative;width:100%;aspect-ratio:16/10;overflow:hidden;background:linear-gradient(135deg,#0E4771,#4580C4);}
  #temoignages .carousel-css{max-width:960px;margin:0 auto;}
  #temoignages .carousel-shell{box-shadow:0 10px 30px rgba(9,62,102,.1);}
  #temoignages .temoignage .thumb{aspect-ratio:auto;height:210px;min-height:0;}
  #temoignages .temoignage .name{font-size:15px;padding:14px 18px 8px;}
  #temoignages .temoignage .role{padding:0 18px 17px!important;}
  @media(max-width:560px){
    #temoignages .carousel-css{max-width:100%;}
    #temoignages .temoignage .thumb{height:145px;}
  }

  @media(max-width:560px){.video-overlay-text{font-size:11px!important;padding:8px 11px;max-width:90%;}}

  /* --- Version plus vivante et incarnée --- */
  body{overflow-x:hidden;}
  section{position:relative;}
  .nav-links .btn{box-shadow:0 8px 20px rgba(8,54,83,.18);}
  .hero .wrap{grid-template-columns:1.05fr .95fr;gap:64px;min-height:650px;}
  .hero::before{opacity:.24;background:
    radial-gradient(circle at 11% 20%,rgba(255,255,255,.17) 0 3px,transparent 4px),
    radial-gradient(circle at 18% 32%,rgba(255,255,255,.13) 0 4px,transparent 5px),
    linear-gradient(118deg,transparent 0 48%,rgba(255,255,255,.08) 48% 49%,transparent 49% 100%);background-size:82px 82px,118px 118px,100% 100%;transform:none;}
  .hero::after{right:-90px;bottom:-120px;width:520px;height:330px;border-radius:52% 0 0 0;clip-path:none;transform:rotate(-7deg);}
  .hero h1{text-transform:none;font-size:clamp(34px,3.25vw,46px);line-height:1.08;letter-spacing:-.025em;max-width:none;}
  .hero-title-line{display:block!important;white-space:nowrap!important;}
  .hero .badge{border-radius:999px;box-shadow:none;padding:10px 17px;}
  .hero .lede{font-size:18px!important;line-height:1.65!important;}
  .hero .ctas .link-quiet{padding:14px 4px;}
  .video-frame{border-radius:0 38px 0 38px;transform:rotate(1deg);box-shadow:20px 22px 0 rgba(8,54,83,.22),-12px -12px 0 rgba(255,189,43,.25);}
  .video-holder{border-radius:0 34px 0 34px;overflow:hidden;}
  .human-note{display:flex;align-items:center;gap:13px;margin-top:28px;color:#fff;font-size:13px;font-weight:600;}
  .human-note .faces{display:flex;}
  .human-note .face{width:35px;height:35px;border-radius:50%;border:2px solid #fff;background:linear-gradient(135deg,var(--aec-yellow),var(--aec-orange));display:grid;place-items:center;margin-right:-8px;color:#fff;font-size:11px;}
  .practical-strip{background:#fff;box-shadow:0 16px 36px rgba(13,66,105,.12);position:relative;z-index:4;}
  .practical-strip .wrap{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:16px;padding-top:22px;padding-bottom:22px;}
  .practical-item{padding:5px 24px;border-left:1px solid var(--line);}
  .practical-item:nth-child(3n+1){border-left:0;}
  .practical-item strong{display:block;color:var(--aec-blue-deep);font-family:'Oswald','Arial Narrow',sans-serif;font-size:18px;}
  .practical-item span{font-size:12.5px;color:var(--muted);}
  .stats .wrap{padding-top:48px;padding-bottom:48px;}
  .stat .num{font-size:50px;color:var(--aec-blue-deep);}
  .stat .label{color:var(--aec-blue-deep);opacity:.86;}
  .neuro::before,.differenciateurs::before,#parcours::after{content:'';position:absolute;border-radius:50%;pointer-events:none;}
  .neuro::before{width:220px;height:220px;background:rgba(253,189,43,.12);left:-105px;top:70px;}
  .neuro .wrap{gap:70px;}
  .neuro .tag,.eyebrow{display:inline-flex;align-items:center;gap:9px;border:0!important;color:var(--aec-orange);font-size:12px;font-weight:800;text-transform:uppercase;letter-spacing:.11em;}
  .neuro .tag::before,.eyebrow::before{content:'';width:34px;height:3px;background:var(--aec-orange);}
  .neuro-panel{border-radius:0 42px 0 42px;box-shadow:16px 16px 0 #dff4f8;transform:rotate(1deg);}
  .neuro-panel .big{color:var(--aec-yellow);}
  .caution-scientifique{border:0;border-radius:0 28px 0 28px;background:linear-gradient(135deg,#f4fafc,#fff8ed);box-shadow:0 14px 36px rgba(16,71,111,.09);padding:26px;}
  .cs-photo{border:5px solid #fff;box-shadow:0 8px 24px rgba(11,61,96,.2);}
  .differenciateurs{background:linear-gradient(180deg,#fff 0,#f5faff 100%);}
  .differenciateurs::before{width:360px;height:360px;right:-220px;top:40px;border:46px solid rgba(9,175,213,.08);}
  .differenciateurs-grid{gap:24px!important;}
  .differenciateurs-grid li{border:0!important;border-radius:0 26px 0 26px;padding:32px 27px!important;box-shadow:0 16px 36px rgba(16,71,111,.10)!important;transition:transform .25s ease,box-shadow .25s ease;background:#fff;}
  .differenciateurs-grid li:nth-child(2){transform:translateY(-16px);background:var(--aec-blue-deep);}
  .differenciateurs-grid li:nth-child(2) p{color:#fff!important;}
  .differenciateurs-grid li:nth-child(3){background:#fff8ed;}
  .differenciateurs-grid li:hover{transform:translateY(-8px);box-shadow:0 22px 44px rgba(16,71,111,.15)!important;}
  .differenciateurs-grid li:nth-child(2):hover{transform:translateY(-24px);}
  .fit{align-items:center;gap:70px;}
  .fit>div:first-child{position:relative;}
  .fit>div:first-child::before{content:'“';position:absolute;right:8px;top:-45px;font-family:Georgia,serif;font-size:130px;line-height:1;color:rgba(242,138,0,.13);}
  .fit .caution-scientifique{background:var(--aec-blue-deep);color:#fff;}
  .fit .cs-name,.fit .cs-note{color:#fff;}
  .fit .cs-credentials{color:#bfeef7;}
  .fit ul{gap:14px;background:transparent;border:0;}
  .fit li{border:1px solid var(--line);border-radius:0 20px 0 20px;box-shadow:0 10px 24px rgba(16,71,111,.08);padding:27px 24px 27px 58px;position:relative;}
  .fit li::before{content:'✓';position:absolute;left:22px;top:25px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:var(--aec-orange);color:#fff;font-weight:800;}
  #parcours{overflow:hidden;background:linear-gradient(135deg,#f5f9fc,#fff);}
  #parcours::after{width:260px;height:260px;right:-100px;bottom:-130px;background:rgba(242,138,0,.11);}
  .parcours-grid{gap:16px;background:transparent;border:0;}
  .parcours-grid a{min-height:118px;border-radius:0 22px 0 22px;border:1px solid var(--line);box-shadow:0 9px 24px rgba(16,71,111,.07);padding:30px 22px;position:relative;overflow:hidden;}
  .parcours-grid a::after{ font: var(--fa-font-solid); content:'\f061';position:absolute;right:18px;bottom:14px;color:var(--aec-orange);font-size:22px;}
  /*.parcours-grid a:nth-child(2),.parcours-grid a:nth-child(6){background:var(--aec-blue);color:#fff;}*/
  .etapes{display:grid;grid-template-columns:1fr 1fr;gap:14px;border:0;}
  .etape{border:0;border-radius:0 20px 0 20px;padding:22px;background:#f5f9fc;align-items:center;transition:transform .2s ease;}
  .etape:nth-child(4n+2),.etape:nth-child(4n+3){background:#fff5e8;}
  .etape:hover{transform:translateX(5px);}
  .etape .n{background:var(--aec-orange);color:#fff;border-radius:50%;width:48px;height:48px;display:grid;place-items:center;font-size:13px;font-family:'Montserrat',sans-serif;font-style:normal;font-weight:700;text-transform:uppercase;}
  .accred{background:linear-gradient(125deg,var(--aec-blue-deep),var(--aec-blue));overflow:hidden;}
  .accred::after{content:'CECP';position:absolute;right:4%;top:50%;transform:translateY(-50%);font-family:'Oswald',sans-serif;font-size:150px;color:rgba(255,255,255,.055);}
  #temoignages{background:linear-gradient(180deg,#fff8ed,#f6fafc);}
  #temoignages .carousel-shell{border-radius:0 30px 0 30px;overflow:hidden;}
  .academie{border-radius:0 18px 0 18px;border-top:4px solid var(--aec-cyan);box-shadow:0 8px 22px rgba(16,71,111,.07);}
  .academies-grid{gap:15px;background:transparent;border:0;}
  .academies-cities{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 18px;}
  .academies-cities span{padding:10px 16px;border:1px solid #DCE6ED;border-radius:999px;background:#fff;color:var(--aec-blue-deep);font-weight:700;}
  .academies-details summary{display:inline-flex;align-items:center;gap:8px;cursor:pointer;color:var(--aec-blue-deep);font-weight:700;text-decoration:underline;text-underline-offset:4px;}
  .academies-details summary:focus-visible{outline:3px solid var(--aec-cyan);outline-offset:4px;}
  .academies-details[open] .academies-grid{margin-top:22px;}
  .final-cta{position:relative;overflow:hidden;background:linear-gradient(125deg,var(--aec-orange),var(--aec-yellow));}
  .final-cta::before,.final-cta::after{content:'';position:absolute;border-radius:50%;border:28px solid rgba(255,255,255,.18);}
  .final-cta::before{width:170px;height:170px;left:-70px;top:-90px;}.final-cta::after{width:240px;height:240px;right:-100px;bottom:-150px;}
  .final-cta .wrap{position:relative;z-index:1;}
  @media(max-width:900px){
    .hero .wrap{min-height:0;grid-template-columns:1fr;}.hero h1{max-width:none;}.practical-strip .wrap{grid-template-columns:1fr 1fr;}.practical-item:nth-child(3){border-left:0;border-top:1px solid var(--line);padding-top:18px}.practical-item:nth-child(4){border-top:1px solid var(--line);padding-top:18px}.differenciateurs-grid{grid-template-columns:1fr!important}.differenciateurs-grid li:nth-child(2){transform:none}.differenciateurs-grid li:nth-child(2):hover{transform:translateY(-8px)}.etapes{grid-template-columns:1fr}.video-frame{transform:none}.fit{gap:38px}
  }
  @media(max-width:560px){
    .hero h1{font-size:clamp(14px,4.5vw,22px)!important;line-height:1.18!important;letter-spacing:-.02em!important}.hero .wrap{padding-top:45px}.human-note{align-items:flex-start}.practical-strip .wrap{grid-template-columns:1fr}.practical-item,.practical-item:nth-child(3),.practical-item:nth-child(4){border-left:0;border-top:1px solid var(--line);padding:15px 4px}.practical-item:first-child{border-top:0}.etape{grid-template-columns:48px 1fr}.neuro-panel{transform:none}.fit li{padding-left:54px}
  }

  .hero-facts{display:flex;flex-wrap:wrap;gap:8px;margin:18px 0 20px;max-width:720px;}
  .hero-facts span{display:inline-flex;align-items:center;padding:8px 11px;border:1px solid rgba(255,255,255,.48);border-radius:5px;color:#fff;background:rgba(255,255,255,.10);font-size:12px;font-weight:600;line-height:1.35;}
  @media(max-width:560px){.hero-facts{gap:7px;margin:16px 0 18px}.hero-facts span{font-size:11px;padding:7px 9px}}
  /* Titre principal : trois lignes réelles, sans recoupure */
  .hero .wrap{grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);gap:32px;}
  .hero h1{font-size:33px!important;line-height:1.14!important;max-width:none!important;}
  .hero h1 .hero-title-line{display:block!important;white-space:nowrap!important;}
  @media(max-width:1120px){
    .hero .wrap{grid-template-columns:1fr;}
    .video-frame{max-width:720px;margin-left:auto;margin-right:auto;}
  }
  @media(max-width:560px){
    .hero h1{font-size:clamp(14px,4vw,20px)!important;letter-spacing:-.03em!important;}
  }
  .faq-compact{padding:68px 0;background:#fff;}
  .faq-heading{margin-bottom:26px;}
  .faq-heading h2{margin-bottom:0;}
  .faq-list{max-width:900px;margin:0 auto;}
  .faq-item{border-bottom:1px solid rgba(20,48,73,.18);}
  .faq-item:first-child{border-top:1px solid rgba(20,48,73,.18);}
  .faq-item summary{list-style:none;cursor:pointer;padding:18px 4px;display:flex;align-items:center;justify-content:space-between;gap:22px;font-weight:700;color:var(--navy);}
  .faq-item summary::-webkit-details-marker{display:none;}
  .faq-plus{position:relative;flex:0 0 22px;width:22px;height:22px;border:1.5px solid var(--gold);border-radius:50%;}
  .faq-plus::before,.faq-plus::after{content:"";position:absolute;background:var(--gold);left:5px;right:5px;top:50%;height:1.5px;transform:translateY(-50%);}
  .faq-plus::after{left:50%;right:auto;top:5px;bottom:5px;width:1.5px;height:auto;transform:translateX(-50%);}
  .faq-item[open] .faq-plus::after{display:none;}
  .faq-answer{padding:0 46px 18px 4px;color:var(--muted);font-size:15px;line-height:1.65;max-width:78ch;}
  .faq-answer p{margin:0;}
  #parcours .section-head{max-width:760px;}
  #parcours .keep-question{white-space:nowrap;}
  @media(max-width:700px){
    .faq-compact{padding:50px 0;}
    .faq-heading{margin-bottom:18px;}
    .faq-item summary{padding:16px 0;font-size:15px;}
    .faq-answer{padding:0 36px 16px 0;font-size:14px;}
  }
  /* Emplacements prévus pour les photos de l'Académie. Remplacer chaque masque par une image dans un <picture>. */
  .photo-story { background: #f4f8fa; }
  .photo-story .section-head { max-width: 760px; }
  .photo-story-grid { display: grid; grid-template-columns: 1.15fr .85fr; gap: 22px; align-items: start; }
  .photo-story figure { margin: 0; }
  .photo-mask { aspect-ratio: 4 / 3; display: grid; place-items: center; position: relative; overflow: hidden; border: 1px solid #cadce7; border-radius: 18px; background: linear-gradient(145deg,#dcebf2,#f7fafb 60%,#e8f1f5); color: #245574; }
  .photo-mask:before { content: ''; position: absolute; inset: 18px; border: 2px dashed #a2c1d2; border-radius: 10px; }
  .photo-mask-inner { position: relative; z-index: 1; text-align: center; padding: 24px; max-width: 34ch; }
  .photo-mask-icon { display: block; font-size: 32px; line-height: 1; margin-bottom: 14px; }
  .photo-mask strong { display: block; font-size: 17px; line-height: 1.3; color: #10476f; }
  .photo-mask small { display: block; font-size: 13px; line-height: 1.4; margin-top: 8px; }
  .photo-story figcaption { margin-top: 13px; color: var(--navy); font-size: 15px; font-weight: 600; }
  .photo-story figure:nth-child(2) .photo-mask { aspect-ratio: 4 / 3; }
  .photo-mask.has-photo { aspect-ratio: 1400 / 740; display: block; border: 0; background: #e8f1f5; }
  .photo-mask.has-photo:before { content: none; }
  .photo-story figure:first-child .photo-mask.has-photo { aspect-ratio: 3 / 2; }
  .photo-mask.has-photo img { display: block; width: 100%; height: 100%; object-fit: cover; object-position: center; }
  @media (max-width: 700px) {
    .photo-story-grid { grid-template-columns: 1fr; gap: 30px; }
    .photo-story figure:nth-child(2) .photo-mask { aspect-ratio: 4 / 3; }
  }

  /* Portraits au sein du bloc CECP */
  .accred .wrap { grid-template-columns: minmax(0,1fr) minmax(300px,.9fr); gap: 42px; }
  .accred-content { position: relative; z-index: 1; }
  .accred-content .btn { margin-top: 25px; }
  .accred-portrait { margin: 0; position: relative; z-index: 1; border-radius: 16px; overflow: hidden; border: 0; box-shadow: 0 18px 38px rgba(3,35,60,.25); }
  .accred-portrait img { display: block; width: 100%; height: auto; aspect-ratio: 4/3; object-fit: contain; background: #e8edf0; }
  @media (max-width: 800px) {
    .accred .wrap { grid-template-columns: 1fr; gap: 28px; }
    .accred-portrait { max-width: 650px; }
  }

  /* Sigle CECP visible dans son propre espace, au-dessus des portraits. */
  .accred .wrap { padding-top: 152px; }
  .accred::after {
    top: 20px; right: max(32px, calc((100vw - 1160px) / 2 + 32px));
    transform: none; z-index: 2; pointer-events: none;
    font-size: clamp(78px, 9vw, 118px); line-height: 1;
    letter-spacing: .035em; color: rgba(255,255,255,.18);
  }
  @media (max-width: 800px) {
    .accred .wrap { padding-top: 112px; }
    .accred::after { top: 18px; right: 22px; font-size: clamp(64px, 13vw, 86px); }
  }

  .differenciateurs-intro { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:36px; align-items:center; margin-bottom:44px; }
  .differenciateurs-intro .section-head { margin-bottom:0; }
  .differenciateurs-video { position:relative; aspect-ratio:16/9; min-width:0; overflow:hidden; border-radius:0 24px 0 24px; background:#103f60; box-shadow:0 14px 34px rgba(16,71,111,.18); }
  .differenciateurs-video iframe { position:absolute; inset:0; width:100%; height:100%; border:0; }
  @media (max-width:800px) {
    .differenciateurs-intro { grid-template-columns:1fr; gap:22px; margin-bottom:36px; }
  }

  /* Titre lisible et adaptable sans débordement sur les petits écrans */
  .hero h1{font-size:clamp(30px,3.15vw,46px)!important;line-height:1.15!important;max-width:30ch!important;overflow-wrap:normal;}
  .hero h1 .hero-title-line{white-space:normal!important;}
  .parcours-grid a{display:flex;flex-direction:column;align-items:flex-start;justify-content:center;gap:7px;min-height:112px;}
  .parcours-grid a strong{font-size:15px;line-height:1.3;}
  .parcours-grid a span{font-size:12.5px;line-height:1.45;font-weight:400;color:var(--muted);}
  .parcours-grid a.highlight span{color:#e3eaf0;}
  .stats-source{font-size:12px;color:var(--muted);text-align:center;margin:0 auto;padding:0 20px 18px;max-width:800px;}
  @media(max-width:560px){.hero h1{font-size:clamp(28px,7.5vw,36px)!important;max-width:100%!important;}.parcours-grid a{min-height:104px;}}

  /* Trois photographies de mêmes dimensions dans la section pratique */
  .photo-story-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;align-items:stretch;}
  .photo-story-grid figure{min-width:0;display:flex;flex-direction:column;}
  .photo-story-grid .photo-mask.has-photo,
  .photo-story-grid figure:first-child .photo-mask.has-photo,
  .photo-story-grid figure:nth-child(2) .photo-mask{aspect-ratio:4 / 3;width:100%;}
  .photo-story-grid figcaption{line-height:1.4;}
  @media(max-width:850px){.photo-story-grid{grid-template-columns:1fr;max-width:560px;}.photo-story-grid figure:nth-child(2) .photo-mask{aspect-ratio:4 / 3;}}

  .coach-platforms{margin-top:34px;padding:26px 30px;background:#fff;border:1px solid #dce7ef;border-radius:0 22px 0 22px;box-shadow:0 12px 30px rgba(16,71,111,.08)}
  .coach-platforms h3{margin:0 0 8px;color:var(--navy);font-size:24px}
  .coach-platforms p{margin:0 0 20px;color:var(--muted);line-height:1.55}
  .coach-platforms-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
  .coach-platforms-list a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:10px;min-height:120px;padding:15px;border:1px solid #dce7ef;border-radius:12px;background:#fff;color:var(--navy);font-weight:700;text-align:center;text-decoration:none}
  .coach-platforms-list a:hover,.coach-platforms-list a:focus-visible{border-color:var(--aec-cyan);box-shadow:0 7px 20px rgba(16,71,111,.12)}
  .coach-platforms-list img{display:block;max-width:100%;width:auto;height:64px;object-fit:contain}
  .coach-platforms-list .platform-logo{display:block;width:min(100%,190px);height:auto;min-height:0;flex:none}
  .coach-platforms-list .platform-wordmark{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:64px;line-height:1.04;color:#10476f;font-family:Arial,sans-serif;letter-spacing:-.04em}.platform-wordmark strong{font-size:clamp(19px,2vw,26px);font-weight:800}.platform-wordmark em{font-size:15px;font-style:normal;font-weight:700;color:#28a8c9;letter-spacing:0}
  @media(max-width:650px){.coach-platforms{padding:22px 18px}.coach-platforms-list{grid-template-columns:1fr}.coach-platforms-list a{min-height:92px}.coach-platforms-list img{height:54px}}

  /* Navigation compacte sur tous les écrans */
  .nav .wrap{position:relative;}
  .nav-actions{display:flex;align-items:center;gap:12px;margin-left:auto;}
  .nav .nav-toggle{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;gap:6px;padding:11px 16px;border:1px solid rgba(255,255,255,.55);border-radius:5px;background:transparent;color:#fff;font:700 14px 'Public Sans',sans-serif;cursor:pointer;margin:0;}
  .nav .nav-toggle:hover,.nav .nav-toggle[aria-expanded="true"]{background:rgba(255,255,255,.13);}
  .nav .nav-links{display:none;position:absolute;top:100%;right:32px;left:auto;width:min(340px,calc(100vw - 36px));padding:12px;background:var(--aec-blue,#0e4771);border:1px solid rgba(255,255,255,.2);box-shadow:0 14px 30px rgba(3,35,60,.23);z-index:50;max-height:calc(100vh - 80px);overflow-y:auto;flex-direction:column;align-items:stretch;gap:0;}
  .nav .nav-links.open{display:flex;}
  .nav .nav-links a:not(.btn){display:block;width:100%;padding:12px 14px;color:#fff;font-size:14px;text-decoration:none;}
  .nav .nav-links a:hover,.nav .nav-links a:focus-visible{background:rgba(255,255,255,.12);}
  .nav .nav-links .nav-mobile-brochure{display:none!important;}
  .nav .nav-actions .btn{white-space:nowrap;}
  @media(max-width:700px){
    .nav .wrap{gap:8px;}.nav .brand-logo{max-width:145px;}.nav-actions{gap:7px;}
    .nav .nav-toggle{font-size:12px;padding:9px 10px;}
    .nav .nav-actions .nav-brochure{display:none;}
    .nav .nav-actions .nav-rdv{padding:10px 11px;font-size:11px;}
    .nav .nav-links{right:18px;}
    .nav .nav-links .nav-mobile-brochure{display:block!important;}
  }
  @media(max-width:390px){.nav .brand-logo{max-width:115px;}.nav .nav-toggle{padding:8px 7px;}}

  /* Quatre étapes alignées sur ordinateur, sans décalage de carte. */
  .differenciateurs .differenciateurs-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;align-items:stretch;gap:16px!important;}
  .differenciateurs .differenciateurs-grid>li,
  .differenciateurs .differenciateurs-grid>li:nth-child(2),
  .differenciateurs .differenciateurs-grid>li:hover,
  .differenciateurs .differenciateurs-grid>li:nth-child(2):hover{transform:none!important;min-width:0;height:100%;padding:25px 20px!important;}
  @media(max-width:1000px){.differenciateurs .differenciateurs-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}}
  @media(max-width:650px){.differenciateurs .differenciateurs-grid{grid-template-columns:1fr!important;}}
