/* ══ HERO ══ */
#hero{
  padding:8rem 0 0;
  background:linear-gradient(150deg, #0f172a 0%, #1e3a8a 55%, #1e40af 100%);
  position:relative;overflow:hidden;
}
.hero-glow-1{position:absolute;width:500px;height:500px;border-radius:50%;background:rgba(59,130,246,.15);top:-100px;right:-80px;filter:blur(80px);pointer-events:none;}
.hero-glow-2{position:absolute;width:350px;height:350px;border-radius:50%;background:rgba(249,115,22,.08);bottom:80px;left:-80px;filter:blur(70px);pointer-events:none;}
.hero-content{position:relative;z-index:1;padding-bottom:4rem;}
.hero-breadcrumb{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:rgba(255,255,255,.4);margin-bottom:2rem;}
.hero-breadcrumb a{color:rgba(255,255,255,.4);text-decoration:none;transition:color .2s;}
.hero-breadcrumb a:hover{color:var(--orange);}
.hero-breadcrumb span{color:rgba(255,255,255,.2);}
.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;}
.hero-titre{font-family:var(--font-titre);font-size:clamp(2.6rem,5vw,3.8rem);font-weight:900;line-height:1.07;letter-spacing:-.035em;color:#fff;margin:1.25rem 0 1.5rem;}
.hero-sous{color:rgba(255,255,255,.65);font-size:1.05rem;max-width:480px;margin-bottom:2.5rem;line-height:1.7;}
.hero-ctas{display:flex;flex-wrap:wrap;gap:.85rem;margin-bottom:2.5rem;}
.hero-badges{display:flex;gap:.75rem;flex-wrap:wrap;}
.hero-badge-item{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:10px;padding:.6rem 1rem;display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:rgba(255,255,255,.8);font-weight:600;}
.hero-badge-item span{font-size:.95rem;}

/* Hero visual */
.hero-visual{display:flex;flex-direction:column;gap:1rem;position:relative;z-index:1;}
.hv-main{background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.12);border-radius:18px;padding:1.6rem;backdrop-filter:blur(10px);}
.hv-row{display:flex;align-items:center;gap:.85rem;margin-bottom:1rem;}
.hv-icon{width:44px;height:44px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;flex-shrink:0;background:rgba(37,99,235,.2);}
.hv-titre{font-family:var(--font-titre);font-weight:700;font-size:.95rem;color:#fff;}
.hv-sous{font-size:.75rem;color:rgba(255,255,255,.45);}
.hv-prog{display:flex;flex-direction:column;gap:.5rem;}
.hv-prog-item{display:flex;align-items:center;gap:.6rem;font-size:.78rem;color:rgba(255,255,255,.65);}
.hv-prog-item::before{content:'▸';color:var(--bleu-2);flex-shrink:0;}
.hv-prog-divider{height:1px;background:rgba(255,255,255,.08);margin:.35rem 0;}
.hv-footer{margin-top:1rem;padding-top:1rem;border-top:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;}
.hv-prix{font-family:var(--font-titre);font-weight:800;color:#fff;font-size:1rem;}
.hv-opco{background:rgba(34,197,94,.15);border:1px solid rgba(34,197,94,.25);color:#86efac;font-size:.72rem;font-weight:700;padding:.25rem .7rem;border-radius:6px;}
.hv-mini-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;}
.hv-mini{background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:.85rem;text-align:center;}
.hv-mini-icon{font-size:1.1rem;margin-bottom:.3rem;}
.hv-mini-val{font-family:var(--font-titre);font-weight:700;font-size:.88rem;color:#fff;}
.hv-mini-label{font-size:.68rem;color:rgba(255,255,255,.4);margin-top:.1rem;}

/* ══ BANDE OPCO ══ */
#opco-bande{padding:0;background:var(--blanc);}
.opco-inner{background:linear-gradient(135deg,var(--vert),#16a34a);border-radius:0;padding:2.5rem 3rem;display:flex;align-items:center;justify-content:space-between;gap:2rem;flex-wrap:wrap;}
.opco-left{display:flex;align-items:center;gap:1.5rem;}
.opco-icon{width:56px;height:56px;border-radius:14px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;font-size:1.6rem;flex-shrink:0;}
.opco-titre{font-family:var(--font-titre);font-weight:800;font-size:1.1rem;color:#fff;margin-bottom:.2rem;}
.opco-desc{color:rgba(255,255,255,.75);font-size:.85rem;}
.opco-logos{display:flex;gap:.75rem;flex-wrap:wrap;align-items:center;}
.opco-logo{background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.2);border-radius:8px;padding:.4rem .85rem;font-size:.75rem;font-weight:700;color:#fff;}

/* ══ CHIFFRES ══ */
#chiffres{padding:4rem 0;background:var(--blanc-2);}
.chiffres-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1.5rem;align-items:center;}
.chiffre-item{text-align:center;}
.chiffre-num{font-family:var(--font-titre);font-size:2.2rem;font-weight:900;color:var(--bleu);line-height:1;}
.chiffre-label{color:var(--gris);font-size:.78rem;margin-top:.3rem;}
.chiffre-sep{width:1px;height:50px;background:var(--bordure);margin:0 auto;}

/* ══ CATALOGUE ══ */
#catalogue{padding:6rem 0;background:var(--blanc);}
.catalogue-header{display:flex;justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:1rem;margin-bottom:2.5rem;}
.metiers-tabs{display:flex;gap:.4rem;flex-wrap:wrap;margin-bottom:2.5rem;}
.mtab{padding:.5rem 1.2rem;border-radius:100px;font-size:.84rem;font-weight:600;cursor:pointer;border:1.5px solid var(--bordure);background:#fff;color:var(--gris);transition:all .2s;font-family:var(--font-corps);display:flex;align-items:center;gap:.4rem;}
.mtab.active{background:var(--bleu);color:#fff;border-color:var(--bleu);}
.mtab .mtab-count{background:rgba(255,255,255,.2);border-radius:100px;padding:.1rem .45rem;font-size:.68rem;}
.mtab:not(.active) .mtab-count{background:var(--blanc-3);color:var(--gris-clair);}

.formations-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.fc{background:#fff;border:1.5px solid var(--bordure);border-radius:18px;overflow:hidden;transition:all .25s;display:flex;flex-direction:column;cursor:pointer;}
.fc:hover{border-color:var(--bleu);transform:translateY(-4px);box-shadow:var(--ombre-lg);}
.fc-top{padding:1.75rem 1.75rem 1.25rem;}
.fc-metier-badge{display:inline-flex;align-items:center;gap:.35rem;font-size:.65rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;padding:.25rem .7rem;border-radius:6px;margin-bottom:.9rem;}
.fc-metier-badge.marketing{background:#fef3c7;color:#d97706;}
.fc-metier-badge.rh{background:#fce7f3;color:#db2777;}
.fc-metier-badge.direction{background:#ede9fe;color:#7c3aed;}
.fc-metier-badge.digital{background:var(--bleu-pale);color:var(--bleu);}
.fc-metier-badge.transverse{background:var(--vert-pale);color:#16a34a;}
.fc-titre{font-family:var(--font-titre);font-weight:800;font-size:1.02rem;line-height:1.3;margin-bottom:.5rem;color:var(--noir);}
.fc-desc{color:var(--gris);font-size:.83rem;line-height:1.6;margin-bottom:1rem;}
.fc-highlights{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1rem;}
.fc-highlight{display:flex;align-items:center;gap:.5rem;font-size:.8rem;color:var(--gris-fonce);}
.fc-highlight::before{content:'✓';color:var(--bleu);font-weight:700;flex-shrink:0;}
.fc-mid{padding:1rem 1.75rem;border-top:1px solid var(--bordure);border-bottom:1px solid var(--bordure);background:var(--blanc-2);}
.fc-programme-label{font-size:.65rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;color:var(--gris-clair);margin-bottom:.5rem;}
.fc-programme{list-style:none;display:flex;flex-direction:column;gap:.3rem;}
.fc-programme li{font-size:.78rem;color:var(--gris);display:flex;align-items:flex-start;gap:.4rem;}
.fc-programme li::before{content:'→';color:var(--bleu);font-weight:700;flex-shrink:0;font-size:.7rem;margin-top:.1rem;}
.fc-bottom{padding:1.25rem 1.75rem;margin-top:auto;display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:.75rem;}
.fc-meta{display:flex;flex-direction:column;gap:.2rem;}
.fc-prix{font-family:var(--font-titre);font-weight:800;color:var(--bleu);font-size:1rem;}
.fc-duree{font-size:.76rem;color:var(--gris);}
.fc-opco{background:var(--vert-pale);color:var(--vert);font-size:.68rem;font-weight:700;padding:.22rem .6rem;border-radius:6px;border:1px solid rgba(34,197,94,.2);}

/* ══ PROGRAMME TYPE ══ */
#programme{padding:6rem 0;background:var(--blanc-2);}
.programme-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:4rem;align-items:start;margin-top:3rem;}
.programme-selector{display:flex;flex-direction:column;gap:.6rem;margin-bottom:2rem;}
.prog-sel-item{background:#fff;border:1.5px solid var(--bordure);border-radius:12px;padding:1rem 1.25rem;cursor:pointer;transition:all .2s;display:flex;align-items:center;gap:.85rem;}
.prog-sel-item:hover{border-color:var(--bleu);}
.prog-sel-item.active{border-color:var(--bleu);background:var(--bleu-pale);}
.prog-sel-icon{font-size:1.25rem;width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:var(--blanc-2);border-radius:10px;transition:all .2s;}
.prog-sel-item.active .prog-sel-icon{background:var(--bleu);color:#fff;}
.prog-sel-titre{font-family:var(--font-titre);font-weight:700;font-size:.92rem;color:var(--noir);}
.prog-sel-item.active .prog-sel-titre{color:var(--bleu);}
.prog-sel-sous{font-size:.75rem;color:var(--gris);}

.prog-detail{background:#fff;border:1.5px solid var(--bordure);border-radius:24px;padding:2.5rem;box-shadow:var(--ombre-lg);position:sticky;top:100px;}
.pd-header{margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:1px solid var(--bordure);}
.pd-titre{font-family:var(--font-titre);font-weight:800;font-size:1.3rem;margin-bottom:.5rem;color:var(--bleu);}
.pd-sous{font-size:.9rem;color:var(--gris);line-height:1.5;}
.pd-chips{display:flex;gap:.5rem;margin-top:1rem;flex-wrap:wrap;}
.pd-chip{font-size:.7rem;font-weight:700;background:var(--blanc-2);padding:.25rem .7rem;border-radius:6px;color:var(--gris-fonce);}
.pd-body{display:flex;flex-direction:column;gap:2rem;}
.pd-section-label{font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--gris-clair);margin-bottom:1rem;}
.pd-jour{margin-bottom:1.5rem;}
.pd-jour-label{font-family:var(--font-titre);font-weight:700;font-size:.85rem;color:var(--noir);margin-bottom:.75rem;}
.pd-items{list-style:none;display:flex;flex-direction:column;gap:.35rem;}
.pd-items li{display:flex;align-items:flex-start;gap:.5rem;font-size:.82rem;color:var(--gris-fonce);}
.pd-items li::before{content:'▸';color:var(--bleu-2);flex-shrink:0;}
.pd-objectifs{display:flex;flex-direction:column;gap:.5rem;}
.pd-obj{display:flex;align-items:flex-start;gap:.6rem;font-size:.83rem;color:var(--gris-fonce);}
.pd-obj-check{width:18px;height:18px;border-radius:5px;background:var(--bleu-pale);display:flex;align-items:center;justify-content:center;font-size:.6rem;color:var(--bleu);flex-shrink:0;margin-top:.1rem;}
.pd-livrables{display:flex;gap:.5rem;flex-wrap:wrap;}
.pd-livrable{background:var(--bleu-pale);color:var(--bleu);font-size:.73rem;font-weight:600;padding:.3rem .7rem;border-radius:7px;}

/* ══ OPCO SECTION ══ */
#financement{padding:6rem 0;background:var(--blanc);}
.financement-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center;margin-top:3rem;}
.fin-steps{display:flex;flex-direction:column;gap:1.25rem;}
.fin-step{display:flex;gap:1rem;align-items:flex-start;}
.fin-step-num{width:36px;height:36px;border-radius:50%;background:var(--bleu);color:#fff;font-family:var(--font-titre);font-weight:800;font-size:.85rem;display:flex;align-items:center;justify-content:center;flex-shrink:0;box-shadow:0 0 0 5px var(--bleu-pale);}
.fin-step-titre{font-family:var(--font-titre);font-weight:700;font-size:.92rem;margin-bottom:.2rem;}
.fin-step-desc{color:var(--gris);font-size:.83rem;line-height:1.55;}
.fin-opcos{background:var(--blanc-2);border:1.5px solid var(--bordure);border-radius:20px;padding:2rem;}
.fin-opcos-titre{font-family:var(--font-titre);font-weight:700;font-size:1rem;margin-bottom:.35rem;}
.fin-opcos-sous{color:var(--gris);font-size:.83rem;margin-bottom:1.5rem;}
.fin-opcos-grid{display:grid;grid-template-columns:1fr 1fr;gap:.6rem;margin-bottom:1.5rem;}
.fin-opco-item{background:#fff;border:1.5px solid var(--bordure);border-radius:10px;padding:.75rem 1rem;font-size:.82rem;font-weight:600;color:var(--gris-fonce);display:flex;align-items:center;gap:.5rem;}
.fin-opco-item::before{content:'✓';color:var(--vert);font-weight:700;}
.fin-cta-box{background:linear-gradient(135deg,var(--bleu),var(--bleu-2));border-radius:14px;padding:1.5rem;color:#fff;text-align:center;}
.fin-cta-box-titre{font-family:var(--font-titre);font-weight:700;margin-bottom:.4rem;}
.fin-cta-box-desc{color:rgba(255,255,255,.7);font-size:.83rem;margin-bottom:1rem;}

/* ══ PARCOURS ══ */
#parcours{padding:6rem 0;background:var(--blanc-2);}
.parcours-intro{text-align:center;max-width:580px;margin:0 auto 3.5rem;}
.parcours-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;}
.parcours-card{background:#fff;border:1.5px solid var(--bordure);border-radius:18px;overflow:hidden;transition:all .25s;}
.parcours-card:hover{border-color:var(--bleu);transform:translateY(-4px);box-shadow:var(--ombre-lg);}
.pc-header{padding:2rem;position:relative;overflow:hidden;}
.pc-header.debutant{background:linear-gradient(135deg,#f0f9ff,#e0f2fe);}
.pc-header.intermediaire{background:linear-gradient(135deg,var(--bleu-pale),var(--bleu-mid));}
.pc-header.avance{background:linear-gradient(135deg,#1e3a8a,var(--bleu));}
.pc-niveau{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:.5rem;}
.pc-header.debutant .pc-niveau{color:#0284c7;}
.pc-header.intermediaire .pc-niveau{color:var(--bleu);}
.pc-header.avance .pc-niveau{color:rgba(255,255,255,.65);}
.pc-titre{font-family:var(--font-titre);font-weight:800;font-size:1.15rem;margin-bottom:.3rem;}
.pc-header.avance .pc-titre{color:#fff;}
.pc-sous{font-size:.82rem;}
.pc-header.debutant .pc-sous{color:#0284c7;}
.pc-header.intermediaire .pc-sous{color:var(--bleu-2);}
.pc-header.avance .pc-sous{color:rgba(255,255,255,.6);}
.pc-body{padding:1.75rem;}
.pc-formations{display:flex;flex-direction:column;gap:.6rem;margin-bottom:1.25rem;}
.pc-formation{display:flex;align-items:center;gap:.6rem;font-size:.83rem;color:var(--gris-fonce);}
.pc-f-num{width:20px;height:20px;border-radius:6px;background:var(--bleu-pale);color:var(--bleu);font-size:.65rem;font-weight:800;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
.pc-arrow{display:flex;justify-content:center;color:var(--gris-clair);font-size:.8rem;margin:.25rem 0;}
.pc-footer{padding:1.25rem 1.75rem;border-top:1px solid var(--bordure);display:flex;align-items:center;justify-content:space-between;}
.pc-prix-total{font-family:var(--font-titre);font-weight:800;color:var(--bleu);}
.pc-prix-label{font-size:.72rem;color:var(--gris);}
.pc-duree-total{font-size:.78rem;color:var(--gris);}

/* ══ FORMATEURS ══ */
#formateurs{padding:6rem 0;background:var(--blanc);}
.formateurs-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem;margin-top:3rem;}
.formateur-card{background:#fff;border:1.5px solid var(--bordure);border-radius:18px;padding:2rem;transition:all .25s;text-align:center;}
.formateur-card:hover{border-color:var(--bleu);transform:translateY(-3px);box-shadow:var(--ombre-md);}
.formateur-avatar{width:72px;height:72px;border-radius:50%;background:linear-gradient(135deg,var(--bleu),var(--bleu-2));display:flex;align-items:center;justify-content:center;font-family:var(--font-titre);font-weight:800;font-size:1.4rem;color:#fff;margin:0 auto 1rem;}
.formateur-nom{font-family:var(--font-titre);font-weight:700;font-size:1rem;margin-bottom:.2rem;}
.formateur-role{color:var(--bleu);font-size:.8rem;font-weight:600;margin-bottom:.75rem;}
.formateur-desc{color:var(--gris);font-size:.82rem;line-height:1.6;margin-bottom:1rem;}
.formateur-tags{display:flex;gap:.4rem;flex-wrap:wrap;justify-content:center;}
.formateur-tag{background:var(--bleu-pale);color:var(--bleu);font-size:.68rem;font-weight:700;padding:.2rem .6rem;border-radius:6px;}

/* ══ CTA FINAL ══ */
#cta-final{padding:8rem 0;background:linear-gradient(135deg, #0f172a 0%, #1e3a8a 100%);position:relative;overflow:hidden;}
.cta-glow{position:absolute;width:400px;height:400px;border-radius:50%;filter:blur(100px);opacity:.2;}
.cta-glow-1{background:var(--bleu);top:-100px;right:-100px;}
.cta-glow-2{background:var(--orange);bottom:-100px;left:-100px;}
.cta-final-inner{position:relative;z-index:1;text-align:center;max-width:800px;margin:0 auto;}
.cta-form{background:#fff;border-radius:30px;padding:3.5rem;margin-top:3.5rem;text-align:left;box-shadow:var(--ombre-xl);}
.cta-form-titre{font-family:var(--font-titre);font-weight:800;font-size:1.2rem;margin-bottom:2rem;text-align:center;color:var(--noir);}

@media (max-width: 992px) {
  .hero-grid,.programme-grid,.financement-grid{grid-template-columns:1fr;}
  .formations-grid{grid-template-columns:1fr 1fr;}
  .formateurs-grid{grid-template-columns:1fr 1fr;}
  .cta-form{padding:2rem;}
}
@media (max-width: 768px) {
  .chiffres-grid{grid-template-columns:1fr 1fr;gap:2rem;}
  .chiffre-sep{display:none;}
  .formations-grid{grid-template-columns:1fr;}
  .parcours-grid{grid-template-columns:1fr;}
  .formateurs-grid{grid-template-columns:1fr;}
  .pd-objectifs{grid-template-columns:1fr;}
}
