/* Alsace Soudure — Styles */


  :root {
    --font-titre: Georgia, 'Times New Roman', serif;
    --font-corps: Arial, Helvetica, sans-serif;
  }

/* ---- RGPD BANNIÈRE ---- */
.cookie-banner{position:fixed;bottom:0;left:0;right:0;background:rgba(20,20,20,0.98);border-top:2px solid var(--orange);z-index:500;padding:1.25rem 2rem;backdrop-filter:blur(8px);transform:translateY(0);transition:transform 0.4s ease}
.cookie-banner.hidden{transform:translateY(100%)}
.cookie-banner-inner{max-width:1280px;margin:0 auto;display:flex;gap:2rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.cookie-banner-text{}
.cookie-banner-text p{font-size:0.8rem;color:rgba(255,255,255,0.7);line-height:1.6}
.cookie-banner-text a{color:var(--orange);text-decoration:underline}
.cookie-banner-actions{display:flex;gap:0.75rem;flex-shrink:0;flex-wrap:wrap}
.cookie-btn-accept{background:var(--gradient-feu);color:var(--noir);border:none;padding:10px 24px;font-family:var(--font-corps);font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;transition:var(--transition)}
.cookie-btn-accept:hover{opacity:0.9}
.cookie-btn-refuse{background:transparent;color:rgba(255,255,255,0.5);border:1px solid rgba(255,255,255,0.2);padding:10px 24px;font-family:var(--font-corps);font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;transition:var(--transition)}
.cookie-btn-refuse:hover{border-color:rgba(255,255,255,0.5);color:var(--blanc)}
@media(max-width:768px){.cookie-banner-inner{flex-direction:column;gap:1rem}.cookie-banner-actions{width:100%}.cookie-btn-accept,.cookie-btn-refuse{flex:1;text-align:center}}


/* ══════════════════════════════════════════════════════
   OPTIMISATIONS MOBILE & TABLETTE — améliorations v2
   ══════════════════════════════════════════════════════ */

/* Tablette large (≤1280px) */
@media(max-width:1280px){
  .container{padding-left:1.5rem;padding-right:1.5rem}
  .hero-inner{gap:2rem}
  .hero-logo-wrap{width:300px;height:300px}
  .hero-logo-img{width:240px;height:240px}
}

/* Tablette (≤1024px) — déjà géré, on complète */
@media(max-width:1024px){
  section{padding:4rem 1.5rem}
  .hero{padding-top:70px}
  .hero-inner{padding:3rem 1.5rem}
  .de-cta-bloc{flex-direction:column;gap:1.5rem}
  .droits-grid{grid-template-columns:1fr}
}

/* Mobile large (≤768px) */
@media(max-width:768px){
  /* ── Nav dropdown Centre : intégré dans le menu mobile ── */
  .nav-item{width:100%}
  .nav-dropdown-btn{width:100%;justify-content:space-between;font-size:0.85rem;padding:0}
  .nav-dropdown{position:static;transform:none;opacity:1;pointer-events:auto;background:rgba(255,255,255,0.04);border:none;box-shadow:none;min-width:auto;display:none;padding-left:1rem}
  .nav-item.open .nav-dropdown{display:block}
  .nav-dropdown a{font-size:0.82rem;padding:8px 12px;border-bottom:1px solid rgba(255,255,255,0.03)}

  /* ── Hero stats : 2 col + 1 centré ── */
  .hero-stats{grid-template-columns:1fr 1fr;gap:1px}
  .hero-stat:last-child{grid-column:1/-1;border-top:1px solid rgba(255,255,255,0.06)}

  /* ── Titres : taille réduite ── */
  .section-title{font-size:1.8rem}
  .hero-title{font-size:2.5rem}
  h2.section-title{font-size:1.8rem}

  /* ── Onglets formations : wrap sur 2 lignes, pas de scroll ── */
  .formations-tabs{
    overflow-x:visible;
    flex-wrap:wrap;
    scrollbar-width:auto;
    scroll-snap-type:none;
  }
  .tab-btn,.centre-tab,.temoignage-tab{
    scroll-snap-align:start;
    flex-shrink:0;
    white-space:nowrap;
  }

  /* ── Modales : plein écran sur mobile ── */
  .modal-overlay{padding:0;align-items:flex-end}
  .modal{max-height:92vh;border-radius:12px 12px 0 0;width:100%}
  .modal-header{padding:1.5rem}
  .modal-body{padding:1.5rem}

  /* ── Carte de visite : pas de padding latéral ── */
  .formation-card,.membre-card,.approche-card,.certif-card{margin-left:0;margin-right:0}

  /* ── Cartes équipe ── */
  .equipe-grid{grid-template-columns:1fr}

  /* ── Hero actions : empilés ── */
  .hero-actions{flex-direction:column;gap:0.75rem}
  .hero-actions .btn-primary,.hero-actions .btn-outline{width:100%;text-align:center;justify-content:center}

  /* ── Contact form ── */
  .contact-grid{gap:2rem}

  /* ── Footer bottom ── */
  .footer-bottom{flex-direction:column;gap:0.75rem;text-align:center}
  .footer-bottom p{font-size:0.68rem;line-height:1.6}

  /* ── Taille de police minimum ── */
  .section-label,.card-code,.card-duree,.membre-role,.certif-type{font-size:0.68rem}

  /* ── PSH grid ── */
  .psh-referent{flex-direction:column;gap:1rem}

  /* ── Parcours steps ── */
  .step{padding:1.5rem}
  .step-num{font-size:3rem}
}

/* Mobile strict (≤480px) */
@media(max-width:480px){
  .hero-stats{grid-template-columns:1fr}
  .hero-stat:last-child{grid-column:auto;border-top:none;border-left:none}

  .hero-actions .btn-primary,.hero-actions .btn-outline{padding:14px 20px;font-size:0.75rem}

  .hero-title{font-size:2rem}
  .section-title{font-size:1.6rem}

  /* Modale plein écran strict */
  .modal{max-height:100vh;border-radius:0}

  /* Indicateurs qualité */
  .indicateurs-grid{grid-template-columns:1fr}
  .indicateur-valeur{font-size:1.5rem}

  /* Tags soudeur industriel */
  .si-partenaires{flex-direction:column;gap:0.5rem}
  .si-cta-actions{width:100%}
  .si-cta-actions .btn-primary,
  .si-cta-actions .btn-outline{width:100%;text-align:center;justify-content:center;display:flex}

  /* Footer brand */
  .footer-inner{gap:2rem}
  .footer-brand p{display:none}

  /* Carte maps */
  .map-frame{height:220px}

  /* Onglets scroll : taille des boutons */
  .tab-btn,.centre-tab{padding:10px 16px;font-size:0.7rem}
}

/* Très petit mobile (≤375px — iPhone SE) */
@media(max-width:375px){
  .nav-inner{padding:0 1rem}
  .hero-inner{padding:2.5rem 1rem}
  section{padding:3.5rem 1rem}
  .hero-title{font-size:1.8rem}
  .hero-eyebrow{font-size:0.58rem}
  .hero-desc{font-size:0.9rem}
  .btn-primary,.btn-outline{font-size:0.72rem;padding:12px 16px}
}

/* ── Touch : supprimer les effets hover sur tactile ── */
@media(hover:none){
  .formation-card:hover,.membre-card:hover{transform:none;box-shadow:none}
  .btn-primary:hover{transform:none;box-shadow:none}
  .modal-cta:hover{transform:none}
  .nav-dropdown a:hover{padding-left:20px}
}

/* ── Orientation paysage mobile ── */
@media(max-width:768px) and (orientation:landscape){
  .hero{min-height:auto;padding:2rem 1.5rem 3rem}
  .hero-stats{margin-top:1.5rem}
  .modal{max-height:96vh}
}

/* ── Préférence reduced-motion ── */
@media(prefers-reduced-motion:reduce){
  .hero-ring,.hero-ring-2{animation:none}
  .reveal{transition:none;opacity:1;transform:none}
  .indicateur-barre{transition:none}
}


/* ---- RECONVERSION PROFESSIONNELLE ---- */
.reconv-hero{background:var(--noir);padding:3rem;margin-bottom:3rem;position:relative;overflow:hidden}
.reconv-hero::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(232,137,10,0.03) 0,rgba(232,137,10,0.03) 1px,transparent 1px,transparent 50px);pointer-events:none}
.reconv-hero::after{content:'';position:absolute;top:-30%;right:-5%;width:350px;height:350px;background:radial-gradient(circle,rgba(232,137,10,0.12) 0%,transparent 70%);pointer-events:none}
.reconv-hero-inner{position:relative;z-index:1}
.reconv-badge{display:inline-flex;align-items:center;gap:10px;padding:7px 16px;border:1px solid rgba(232,137,10,0.35);margin-bottom:1.5rem}
.reconv-badge span{font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700}
.reconv-hero h3{font-family:var(--font-titre);font-size:clamp(1.4rem,3vw,2rem);color:var(--blanc);line-height:1.2;margin-bottom:1rem}
.reconv-hero h3 em{color:var(--orange);font-style:normal}
.reconv-hero p{color:rgba(255,255,255,0.6);font-size:0.9rem;line-height:1.8;max-width:750px}

.reconv-section{margin-bottom:3rem}
.reconv-section-title{font-family:var(--font-titre);font-size:1.2rem;color:var(--noir);margin-bottom:1.25rem;display:flex;align-items:center;gap:12px}
.reconv-section-title::before{content:'';width:4px;height:1.2rem;background:var(--gradient-feu);flex-shrink:0}
.reconv-intro{font-size:0.88rem;color:var(--texte-muted);line-height:1.85;margin-bottom:1.5rem}

.reconv-motivations{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-bottom:1.5rem}
.reconv-motiv{display:flex;gap:12px;align-items:flex-start;padding:1.25rem;background:var(--blanc);border:1px solid var(--gris-bord);border-left:3px solid var(--orange)}
.reconv-motiv-icon{font-size:1.2rem;flex-shrink:0}
.reconv-motiv p{font-size:0.85rem;color:var(--texte-muted);line-height:1.5;margin:0}

.reconv-partner{background:var(--gris-fond);border:1px solid var(--gris-bord);padding:2.5rem;margin-bottom:3rem;display:grid;grid-template-columns:1fr 2fr;gap:3rem;align-items:center}
.reconv-partner-logo{display:flex;flex-direction:column;align-items:center;gap:1rem;text-align:center}
.reconv-partner-logo .logo-badge{width:100px;height:100px;background:var(--gradient-feu);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);display:flex;align-items:center;justify-content:center;font-family:var(--font-titre);font-size:0.7rem;font-weight:700;color:var(--noir);text-align:center;line-height:1.3;padding:1rem}
.reconv-partner-logo span{font-size:0.65rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--texte-muted);font-weight:700}
.reconv-partner-text h4{font-family:var(--font-titre);font-size:1.1rem;margin-bottom:0.75rem;color:var(--noir)}
.reconv-partner-text p{font-size:0.87rem;color:var(--texte-muted);line-height:1.8;margin-bottom:0.75rem}
.reconv-partner-avantages{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
.reconv-partner-avantages li{font-size:0.85rem;color:var(--texte-muted);padding-left:1.3rem;position:relative;line-height:1.5}
.reconv-partner-avantages li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.75rem}

.reconv-dispositifs{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}
.reconv-dispositif{background:var(--blanc);border:1px solid var(--gris-bord);overflow:hidden}
.reconv-dispositif-header{background:var(--noir);padding:1.5rem 2rem;position:relative}
.reconv-dispositif-header::after{content:'';position:absolute;bottom:0;right:0;width:60px;height:60px;background:var(--gradient-feu);opacity:0.15;clip-path:polygon(100% 0,100% 100%,0 100%)}
.reconv-dispositif-header .tag{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.5rem}
.reconv-dispositif-header h4{font-family:var(--font-titre);color:var(--blanc);font-size:1rem;line-height:1.3}
.reconv-dispositif-body{padding:1.75rem 2rem}
.reconv-dispositif-body p{font-size:0.85rem;color:var(--texte-muted);line-height:1.75;margin-bottom:1rem}
.reconv-dispositif-body ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
.reconv-dispositif-body ul li{font-size:0.84rem;color:var(--texte-muted);padding-left:1.3rem;position:relative;line-height:1.5}
.reconv-dispositif-body ul li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.72rem}
.reconv-dispositif-body .gratuit-badge{display:inline-flex;align-items:center;gap:6px;padding:4px 12px;background:rgba(232,137,10,0.1);border:1px solid rgba(232,137,10,0.3);font-size:0.65rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange);margin-bottom:0.75rem}

.reconv-etapes{counter-reset:etapes;display:flex;flex-direction:column;gap:0;margin-bottom:3rem}
.reconv-etape{display:flex;gap:1.5rem;align-items:flex-start;padding:1.25rem 1.5rem;background:var(--blanc);border:1px solid var(--gris-bord);border-top:none;position:relative}
.reconv-etape:first-child{border-top:1px solid var(--gris-bord)}
.reconv-etape::before{counter-increment:etapes;content:counter(etapes);width:36px;height:36px;background:var(--gradient-feu);color:var(--noir);font-family:var(--font-titre);font-size:1rem;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0}
.reconv-etape p{font-size:0.87rem;color:var(--texte-muted);line-height:1.6;margin:0;padding-top:6px}

.reconv-cta{background:var(--noir);padding:2.5rem;display:flex;gap:3rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.reconv-cta-text .label{font-size:0.62rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.75rem}
.reconv-cta-text h4{font-family:var(--font-titre);color:var(--blanc);font-size:1.15rem;margin-bottom:0.5rem}
.reconv-cta-text p{font-size:0.82rem;color:rgba(255,255,255,0.45);line-height:1.6}

@media(max-width:768px){
  .reconv-motivations{grid-template-columns:1fr}
  .reconv-partner{grid-template-columns:1fr}
  .reconv-dispositifs{grid-template-columns:1fr}
  .reconv-cta{flex-direction:column;gap:1.5rem}
}



*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
:root{
  --noir:#1A1A1A;
  --gris-fond:#F2F0EC;
  --gris-clair:#E8E6E1;
  --gris-bord:#CECBC4;
  --orange:#E8890A;
  --or:#F5C518;
  --blanc:#FFFFFF;
  --texte-muted:#5A5A5A;
  --gradient-feu:linear-gradient(135deg,#E8890A 0%,#F5C518 100%);
  --font-titre:'Playfair Display',Georgia,serif;
  --font-corps:'Montserrat',sans-serif;
  --transition:0.3s cubic-bezier(.4,0,.2,1);
}
html{scroll-behavior:smooth;scroll-padding-top:80px}
body{font-family:var(--font-corps);background:var(--gris-fond);color:var(--noir);font-size:16px;line-height:1.7;overflow-x:hidden}

/* ---- NAV ---- */
nav{position:fixed;top:0;left:0;right:0;z-index:100;background:rgba(26,26,26,0.96);backdrop-filter:blur(12px);border-bottom:1px solid rgba(232,137,10,0.2)}
.nav-inner{max-width:1280px;margin:0 auto;padding:0 2rem;display:flex;align-items:center;justify-content:space-between;height:70px}
.nav-logo{display:flex;align-items:center;gap:12px;text-decoration:none}
.nav-logo img{height:44px;width:44px;object-fit:contain;background:var(--blanc);border-radius:50%;padding:3px}
.nav-logo-text{display:flex;flex-direction:column;line-height:1.1}
.nav-logo-text .brand{font-family:var(--font-titre);color:var(--blanc);font-size:1.05rem;font-weight:700;letter-spacing:0.01em}
.nav-logo-text .sub{font-size:0.6rem;color:var(--orange);letter-spacing:0.2em;text-transform:uppercase;font-weight:600}
.nav-links{display:flex;gap:2rem;align-items:center}
.nav-links a{color:rgba(255,255,255,0.75);text-decoration:none;font-size:0.8rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;transition:var(--transition)}
.nav-links a:hover{color:var(--orange)}
.nav-cta{background:var(--gradient-feu);color:var(--noir)!important;padding:8px 20px;border-radius:2px;font-weight:700!important}
.nav-cta:hover{opacity:0.9;color:var(--noir)!important}
.menu-btn{display:none;background:none;border:none;cursor:pointer;flex-direction:column;gap:5px;padding:4px}
.menu-btn span{display:block;width:24px;height:2px;background:var(--blanc);transition:var(--transition)}

/* ---- HERO ---- */
.hero{min-height:100vh;background:var(--noir);display:flex;align-items:center;position:relative;overflow:hidden;padding-top:70px}
.hero-bg-texture{position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(232,137,10,0.03) 0,rgba(232,137,10,0.03) 1px,transparent 1px,transparent 60px);pointer-events:none}
.hero-glow{position:absolute;top:20%;right:-5%;width:600px;height:600px;background:radial-gradient(circle,rgba(232,137,10,0.12) 0%,transparent 70%);pointer-events:none}
.hero-inner{max-width:1280px;margin:0 auto;padding:4rem 2rem;display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}
.hero-eyebrow{font-size:0.7rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:1.5rem;display:flex;align-items:center;gap:12px}
.hero-eyebrow::before{content:'';width:40px;height:1px;background:var(--orange)}
.hero-title{font-family:var(--font-titre);font-size:clamp(2.5rem,5vw,4.2rem);color:var(--blanc);line-height:1.1;margin-bottom:0.3rem}
.hero-title em{color:var(--orange);font-style:normal}
.hero-subtitle{font-size:0.75rem;letter-spacing:0.35em;text-transform:uppercase;color:var(--gris-bord);margin-bottom:1.5rem;font-weight:600}
.hero-desc{color:rgba(255,255,255,0.65);font-size:1rem;max-width:480px;line-height:1.8;margin-bottom:2.5rem}
.hero-baseline{font-family:var(--font-titre);font-style:italic;color:var(--orange);font-size:1.1rem;margin-bottom:2.5rem;opacity:0.9}
.hero-actions{display:flex;gap:1rem;flex-wrap:wrap}
.btn-primary{background:var(--gradient-feu);color:var(--noir);padding:14px 32px;border:none;font-family:var(--font-corps);font-size:0.8rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;text-decoration:none;display:inline-block;transition:var(--transition);clip-path:polygon(0 0,calc(100% - 12px) 0,100% 12px,100% 100%,12px 100%,0 calc(100% - 12px))}
.btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(232,137,10,0.4)}
.btn-outline{border:1px solid rgba(232,137,10,0.5);color:var(--orange);padding:14px 32px;font-family:var(--font-corps);font-size:0.8rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;text-decoration:none;display:inline-block;transition:var(--transition);background:transparent}
.btn-outline:hover{background:rgba(232,137,10,0.08);border-color:var(--orange)}
.hero-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:rgba(255,255,255,0.08);margin-top:3rem;border-top:1px solid rgba(255,255,255,0.08)}
.hero-stat{padding:1.5rem 1rem;text-align:center;background:var(--noir)}
.hero-stat .num{font-family:var(--font-titre);font-size:2rem;color:var(--orange);display:block}
.hero-stat .lab{font-size:0.65rem;letter-spacing:0.15em;text-transform:uppercase;color:rgba(255,255,255,0.45);margin-top:4px}
.hero-visual{position:relative;display:flex;justify-content:center;align-items:center}
.hero-logo-wrap{position:relative;width:380px;height:380px;display:flex;align-items:center;justify-content:center}
.hero-ring{position:absolute;inset:0;border-radius:50%;border:1px solid rgba(232,137,10,0.2);animation:spinSlow 20s linear infinite}
.hero-ring-2{position:absolute;inset:20px;border-radius:50%;border:1px solid rgba(232,137,10,0.1);animation:spinSlow 30s linear infinite reverse}
.hero-logo-img{width:300px;height:300px;object-fit:contain;position:relative;z-index:2;background:var(--blanc);border-radius:50%;padding:12px;box-shadow:0 0 60px rgba(232,137,10,0.25)}
@keyframes spinSlow{to{transform:rotate(360deg)}}
@keyframes fadeUp{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}
.hero-eyebrow{animation:fadeUp 0.6s ease both}
.hero-title{animation:fadeUp 0.7s 0.1s ease both}
.hero-subtitle{animation:fadeUp 0.7s 0.15s ease both}
.hero-desc{animation:fadeUp 0.7s 0.2s ease both}
.hero-baseline{animation:fadeUp 0.7s 0.25s ease both}
.hero-actions{animation:fadeUp 0.7s 0.3s ease both}
.hero-stats{animation:fadeUp 0.7s 0.4s ease both}

/* ---- SECTIONS ---- */
section{padding:6rem 2rem;scroll-margin-top:70px}
.container{max-width:1280px;margin:0 auto}
.section-label{font-size:0.65rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:1rem;display:flex;align-items:center;gap:10px}
.section-label::before{content:'';width:30px;height:1px;background:var(--orange)}
.section-title{font-family:var(--font-titre);font-size:clamp(2rem,4vw,3rem);color:var(--noir);line-height:1.15;margin-bottom:1rem}
.section-lead{color:var(--texte-muted);font-size:1rem;max-width:600px;line-height:1.8}

/* ---- APROPOS ---- */
#apropos{background:var(--blanc)}
.apropos-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:center}
.apropos-piliers{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:3rem}
.pilier{padding:1.5rem;background:var(--gris-fond);border-left:3px solid var(--orange)}
.pilier-icon{width:36px;height:36px;background:var(--gradient-feu);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);margin-bottom:1rem;display:flex;align-items:center;justify-content:center}
.pilier h4{font-family:var(--font-titre);font-size:0.95rem;margin-bottom:0.4rem;color:var(--noir)}
.pilier p{font-size:0.82rem;color:var(--texte-muted);line-height:1.6}
.apropos-right{display:flex;flex-direction:column;gap:1.5rem}
.valeur{display:flex;gap:1.5rem;align-items:flex-start;padding:1.5rem;background:var(--gris-fond);border-radius:2px}
.valeur-num{font-family:var(--font-titre);font-size:2.5rem;color:var(--orange);line-height:1;flex-shrink:0;width:64px}
.valeur h4{font-family:var(--font-titre);font-size:1rem;margin-bottom:0.3rem}
.valeur p{font-size:0.82rem;color:var(--texte-muted);line-height:1.6}

/* ---- FORMATIONS ---- */
#formations{background:var(--gris-fond)}
.formations-tabs{display:flex;flex-wrap:wrap;gap:0;margin:3rem 0 2.5rem;border-bottom:1px solid var(--gris-bord);overflow-x:visible}
.tab-btn{padding:12px 24px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:var(--font-corps);font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--texte-muted);cursor:pointer;transition:var(--transition);white-space:nowrap}
.tab-btn.active{color:var(--orange);border-bottom-color:var(--orange)}
.tab-btn:hover:not(.active){color:var(--noir)}
.tab-panel{display:none}
.tab-panel.active{display:block}
.formations-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}
.formation-card{background:var(--blanc);border:1px solid var(--gris-bord);transition:var(--transition);cursor:pointer;position:relative;overflow:hidden}
.formation-card::before{content:'';position:absolute;top:0;left:0;right:0;height:3px;background:var(--gradient-feu)}
.formation-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(26,26,26,0.1);border-color:rgba(232,137,10,0.4)}
.card-head{padding:1.5rem 1.5rem 1rem}
.card-code{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.5rem}
.card-title{font-family:var(--font-titre);font-size:1.1rem;color:var(--noir);line-height:1.3;margin-bottom:0.75rem}
.card-duree{display:inline-flex;align-items:center;gap:6px;font-size:0.72rem;font-weight:700;color:var(--texte-muted);letter-spacing:0.06em}
.card-duree::before{content:'';width:16px;height:1px;background:var(--gris-bord)}
.card-body{padding:1rem 1.5rem 1.5rem;border-top:1px solid var(--gris-clair)}
.card-public-label{font-size:0.65rem;text-transform:uppercase;letter-spacing:0.12em;color:var(--texte-muted);font-weight:700;margin-bottom:0.5rem}
.card-public{font-size:0.82rem;color:var(--noir);line-height:1.5}
.card-tag{display:inline-block;padding:3px 10px;background:rgba(232,137,10,0.1);color:var(--orange);font-size:0.65rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;border-radius:1px;margin-top:0.75rem}
.card-qs-warning{display:inline-flex;align-items:center;gap:5px;font-size:0.7rem;color:var(--orange);font-weight:600;margin-top:0.5rem;padding:4px 10px;border:1px solid rgba(232,137,10,0.3);background:rgba(232,137,10,0.06)}
.card-qs-warning::before{content:'⚠';font-size:0.8rem}

/* ---- MODAL ---- */
.modal-overlay{position:fixed;inset:0;background:rgba(26,26,26,0.85);z-index:200;display:none;align-items:center;justify-content:center;padding:1rem;backdrop-filter:blur(4px)}
.modal-overlay.open{display:flex}
.modal{background:var(--blanc);max-width:700px;width:100%;max-height:90vh;overflow-y:auto;position:relative}
.modal-header{background:var(--noir);padding:2rem;position:sticky;top:0;z-index:10}
.modal-code{font-size:0.6rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.5rem}
.modal-title{font-family:var(--font-titre);font-size:1.5rem;color:var(--blanc);line-height:1.2;margin-bottom:0.75rem}
.modal-duree{font-size:0.75rem;font-weight:600;letter-spacing:0.1em;color:var(--gris-bord)}
.modal-body{padding:2rem}
.modal-section{margin-bottom:2rem}
.modal-section-title{font-size:0.65rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:1rem;padding-bottom:0.5rem;border-bottom:1px solid var(--gris-clair)}
.modal-section ul{list-style:none;display:flex;flex-direction:column;gap:0.4rem}
.modal-section ul li{font-size:0.875rem;color:var(--texte-muted);padding-left:1.2rem;position:relative;line-height:1.5}
.modal-section ul li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.75rem}
.modal-section p{font-size:0.875rem;color:var(--texte-muted);line-height:1.7}
.modal-close{position:absolute;top:1.5rem;right:1.5rem;background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.2);color:var(--blanc);width:36px;height:36px;cursor:pointer;font-size:1rem;display:flex;align-items:center;justify-content:center;transition:var(--transition)}
.modal-close:hover{background:var(--orange);border-color:var(--orange)}
.modal-actions{display:flex;flex-direction:column;gap:0.75rem;margin-top:1.5rem}
.modal-cta{padding:14px 32px;background:var(--gradient-feu);color:var(--noir);border:none;font-family:var(--font-corps);font-size:0.8rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;text-decoration:none;transition:var(--transition)}
.modal-cta:hover{opacity:0.9;transform:translateY(-1px)}
.modal-cta-pdf{padding:14px 32px;background:transparent;color:var(--noir);border:1px solid var(--gris-bord);font-family:var(--font-corps);font-size:0.8rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:10px;text-align:center;text-decoration:none;transition:var(--transition)}
.modal-cta-pdf:hover{border-color:var(--orange);color:var(--orange);background:rgba(232,137,10,0.05)}
.modal-cta-pdf.disabled{opacity:0.4;cursor:not-allowed;pointer-events:none;position:relative}.modal-cta-pdf.disabled::after{content:"À venir";font-size:0.6rem;margin-left:6px;background:rgba(232,137,10,0.15);padding:2px 6px;border-radius:2px}
.modal-cta-pdf svg{width:16px;height:16px;flex-shrink:0}

/* ---- PARCOURS ---- */
#parcours{background:var(--noir)}
#parcours .section-title{color:var(--blanc)}
#parcours .section-lead{color:rgba(255,255,255,0.55)}
.parcours-steps{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:rgba(255,255,255,0.06);margin-top:3rem}
.step{background:var(--noir);padding:2.5rem 2rem;position:relative;transition:var(--transition)}
.step:hover{background:#222}
.step-num{font-family:var(--font-titre);font-size:4rem;color:rgba(232,137,10,0.15);line-height:1;margin-bottom:1rem;display:block}
.step-tag{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.75rem}
.step h4{font-family:var(--font-titre);color:var(--blanc);font-size:1.1rem;margin-bottom:0.75rem;line-height:1.3}
.step p{font-size:0.82rem;color:rgba(255,255,255,0.45);line-height:1.7}
.step-codes{margin-top:1rem;display:flex;flex-wrap:wrap;gap:6px}
.step-code{padding:3px 8px;border:1px solid rgba(232,137,10,0.3);font-size:0.6rem;font-weight:700;letter-spacing:0.1em;color:var(--orange)}

/* ---- APPROCHE ---- */
#approche{background:var(--blanc)}
.approche-grid{display:grid;grid-template-columns:1fr 1fr 1fr;gap:2rem;margin-top:3rem}
.approche-card{border:1px solid var(--gris-bord);padding:2rem}
.approche-icon{width:48px;height:48px;background:var(--gradient-feu);margin-bottom:1.5rem;display:flex;align-items:center;justify-content:center;font-size:1.2rem}
.approche-card h4{font-family:var(--font-titre);font-size:1.1rem;margin-bottom:0.75rem}
.approche-card ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
.approche-card ul li{font-size:0.82rem;color:var(--texte-muted);padding-left:1.2rem;position:relative}
.approche-card ul li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.75rem}

/* ---- CONTACT ---- */
#contact{background:var(--gris-fond)}
.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:5rem;align-items:start;margin-top:3rem}
.contact-form{background:var(--blanc);padding:2.5rem;border:1px solid var(--gris-bord)}
.form-group{margin-bottom:1.5rem}
.form-group label{display:block;font-size:0.7rem;letter-spacing:0.15em;text-transform:uppercase;font-weight:700;color:var(--texte-muted);margin-bottom:0.5rem}
.form-group input,.form-group select,.form-group textarea{width:100%;padding:12px 16px;background:var(--gris-fond);border:1px solid var(--gris-bord);font-family:var(--font-corps);font-size:0.9rem;color:var(--noir);transition:var(--transition);outline:none;-webkit-appearance:none}
.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:var(--orange);background:var(--blanc)}
.form-group textarea{resize:vertical;min-height:120px}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.form-submit{width:100%;padding:16px;background:var(--gradient-feu);color:var(--noir);border:none;font-family:var(--font-corps);font-size:0.8rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;cursor:pointer;transition:var(--transition);margin-top:0.5rem}
.form-submit:hover{opacity:0.9;transform:translateY(-1px)}
.form-success{display:none;background:rgba(232,137,10,0.1);border:1px solid rgba(232,137,10,0.3);padding:1rem;text-align:center;font-size:0.85rem;color:var(--orange);font-weight:600;margin-top:1rem}
.contact-infos{display:flex;flex-direction:column;gap:2rem}
.contact-bloc{display:flex;gap:1.5rem;align-items:flex-start}
.contact-bloc-icon{width:44px;height:44px;background:var(--noir);display:flex;align-items:center;justify-content:center;flex-shrink:0}
.contact-bloc-icon svg{width:20px;height:20px;stroke:var(--orange);fill:none}
.contact-bloc h4{font-family:var(--font-titre);font-size:0.95rem;margin-bottom:0.3rem}
.contact-bloc p{font-size:0.85rem;color:var(--texte-muted);line-height:1.6}
.contact-bloc a{color:var(--orange);text-decoration:none}
.contact-engagement{background:var(--noir);padding:2rem;margin-top:2rem}
.contact-engagement h4{font-family:var(--font-titre);color:var(--blanc);margin-bottom:1rem;font-size:1rem}
.contact-engagement p{font-size:0.82rem;color:rgba(255,255,255,0.55);line-height:1.7;font-style:italic}

/* ---- FOOTER ---- */
footer{background:#111;padding:3rem 2rem 2rem;border-top:1px solid rgba(232,137,10,0.15)}
.footer-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr;gap:3rem}
.footer-brand{display:flex;flex-direction:column;gap:1rem}
.footer-brand img{height:50px;width:50px;object-fit:contain;background:var(--blanc);border-radius:50%;padding:3px}
.footer-brand .brand-name{font-family:var(--font-titre);font-size:1.1rem;color:var(--blanc)}
.footer-brand .brand-name em{color:var(--orange);font-style:normal}
.footer-brand p{font-size:0.82rem;color:rgba(255,255,255,0.35);line-height:1.7;max-width:280px;font-style:italic;font-family:var(--font-titre)}
.footer-col h5{font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:1.2rem}
.footer-col a{display:block;font-size:0.82rem;color:rgba(255,255,255,0.4);text-decoration:none;margin-bottom:0.6rem;transition:var(--transition)}
.footer-col a:hover{color:var(--orange)}
.footer-bottom{max-width:1280px;margin:2rem auto 0;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,0.05);display:flex;align-items:center;justify-content:space-between}
.footer-bottom p{font-size:0.72rem;color:rgba(255,255,255,0.2)}

/* ---- SCROLL REVEAL ---- */
.reveal{opacity:0;transform:translateY(30px);transition:opacity 0.7s ease,transform 0.7s ease}
.reveal.visible{opacity:1;transform:none}

/* ---- RESPONSIVE ---- */
@media(max-width:1024px){
  .hero-inner{grid-template-columns:1fr}
  .hero-visual{display:none}
  .apropos-grid{grid-template-columns:1fr}
  .parcours-steps{grid-template-columns:1fr 1fr}
  .approche-grid{grid-template-columns:1fr 1fr}
  .footer-inner{grid-template-columns:1fr 1fr}
}
@media(max-width:768px){
  .nav-links{display:none;position:fixed;top:70px;left:0;right:0;background:var(--noir);flex-direction:column;padding:2rem;gap:1.5rem;border-top:1px solid rgba(232,137,10,0.2)}
  .nav-links.open{display:flex}
  .menu-btn{display:flex}
  .apropos-piliers{grid-template-columns:1fr}
  .parcours-steps{grid-template-columns:1fr}
  .approche-grid{grid-template-columns:1fr}
  .contact-grid{grid-template-columns:1fr}
  .footer-inner{grid-template-columns:1fr}
  .hero-stats{grid-template-columns:1fr 1fr 1fr}
  .form-row{grid-template-columns:1fr}
}

/* ---- NAV DROPDOWN ---- */
.nav-item{position:relative}
.nav-dropdown-btn{color:rgba(255,255,255,0.75);text-decoration:none;font-size:0.8rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;transition:var(--transition);background:none;border:none;cursor:pointer;font-family:var(--font-corps);display:flex;align-items:center;gap:5px;padding:0}
.nav-dropdown-btn:hover{color:var(--orange)}
.nav-dropdown-btn::after{content:'';width:5px;height:5px;border-right:1.5px solid currentColor;border-bottom:1.5px solid currentColor;transform:rotate(45deg);transition:var(--transition);margin-top:-3px;display:inline-block}
.nav-item.open .nav-dropdown-btn::after{transform:rotate(-135deg);margin-top:2px}
.nav-dropdown{position:absolute;top:calc(100% + 16px);left:50%;transform:translateX(-50%);background:#1a1a1a;border:1px solid rgba(232,137,10,0.25);min-width:230px;opacity:0;pointer-events:none;transition:var(--transition);z-index:300;box-shadow:0 20px 60px rgba(0,0,0,0.5)}
.nav-item.open .nav-dropdown{opacity:1;pointer-events:auto}
.nav-dropdown a{display:flex;align-items:center;gap:10px;padding:12px 20px;color:rgba(255,255,255,0.65);text-decoration:none;font-size:0.75rem;font-weight:600;letter-spacing:0.08em;text-transform:uppercase;transition:var(--transition);border-bottom:1px solid rgba(255,255,255,0.05)}
.nav-dropdown a:last-child{border-bottom:none}
.nav-dropdown a:hover{color:var(--orange);background:rgba(232,137,10,0.07);padding-left:26px}

/* ---- SECTION CENTRE ---- */
#centre{background:var(--blanc)}
.centre-tabs{display:flex;gap:0;margin:3rem 0 3rem;border-bottom:1px solid var(--gris-bord);overflow-x:auto}
.centre-tab{padding:12px 28px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:var(--font-corps);font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--texte-muted);cursor:pointer;transition:var(--transition);white-space:nowrap}
.centre-tab.active{color:var(--orange);border-bottom-color:var(--orange)}
.centre-tab:hover:not(.active){color:var(--noir)}
.centre-panel{display:none}.centre-panel.active{display:block}
.equipe-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:2rem}
.membre-card{background:var(--gris-fond);border:1px solid var(--gris-bord);overflow:hidden;transition:var(--transition)}
.membre-card:hover{transform:translateY(-4px);box-shadow:0 12px 40px rgba(26,26,26,0.08);border-color:rgba(232,137,10,0.35)}
.membre-photo{width:100%;aspect-ratio:1;background:var(--noir);display:flex;align-items:center;justify-content:center;flex-direction:column;gap:1rem}
.membre-initiales{width:80px;height:80px;background:var(--gradient-feu);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);display:flex;align-items:center;justify-content:center;font-family:var(--font-titre);font-size:1.4rem;color:var(--noir);font-weight:700}
.membre-photo-label{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:rgba(255,255,255,0.25);font-weight:600}
.membre-info{padding:1.5rem}
.membre-nom{font-family:var(--font-titre);font-size:1.05rem;margin-bottom:0.2rem}
.membre-role{font-size:0.65rem;letter-spacing:0.15em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:1rem}
.membre-desc{font-size:0.82rem;color:var(--texte-muted);line-height:1.6;margin-bottom:1.2rem}
.membre-contact{display:flex;flex-direction:column;gap:0.4rem;border-top:1px solid var(--gris-bord);padding-top:1rem}
.membre-contact a{font-size:0.78rem;color:var(--texte-muted);text-decoration:none;transition:var(--transition);display:flex;align-items:center;gap:6px}
.membre-contact a:hover{color:var(--orange)}
.membre-contact a::before{content:'→';color:var(--orange);font-size:0.65rem}
.psh-hero{background:var(--noir);padding:3rem;margin-bottom:3rem;position:relative;overflow:hidden}
.psh-hero::before{content:'';position:absolute;top:0;right:0;width:200px;height:100%;background:var(--gradient-feu);opacity:0.05}
.psh-hero h3{font-family:var(--font-titre);font-size:1.5rem;color:var(--blanc);margin-bottom:1rem}
.psh-hero p{color:rgba(255,255,255,0.6);font-size:0.9rem;line-height:1.8;max-width:700px}
.psh-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border:1px solid rgba(232,137,10,0.4);color:var(--orange);font-size:0.7rem;font-weight:700;letter-spacing:0.12em;text-transform:uppercase;margin-bottom:1.5rem}
.psh-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem;margin-bottom:3rem}
.psh-bloc{padding:2rem;border:1px solid var(--gris-bord);border-left:3px solid var(--orange)}
.psh-bloc h4{font-family:var(--font-titre);font-size:1rem;margin-bottom:0.75rem;display:flex;align-items:center;gap:10px}
.psh-bloc ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
.psh-bloc ul li{font-size:0.83rem;color:var(--texte-muted);padding-left:1.2rem;position:relative;line-height:1.5}
.psh-bloc ul li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.7rem}
.psh-referent{background:var(--gris-fond);padding:2rem;display:flex;gap:2rem;align-items:flex-start;border:1px solid var(--gris-bord)}
.psh-referent-icon{width:56px;height:56px;background:var(--gradient-feu);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:1.4rem}
.psh-referent h4{font-family:var(--font-titre);font-size:1rem;margin-bottom:0.3rem}
.psh-referent p{font-size:0.83rem;color:var(--texte-muted);line-height:1.6;margin-bottom:0.5rem}
.psh-referent a{font-size:0.83rem;color:var(--orange);text-decoration:none;font-weight:600}
.psh-note{margin-top:1.5rem;padding:1rem 1.5rem;background:rgba(232,137,10,0.07);border-left:3px solid var(--orange);font-size:0.82rem;color:var(--texte-muted);font-style:italic;line-height:1.7}
.localisation-grid{display:grid;grid-template-columns:1fr 1fr;gap:3rem;align-items:start}
.map-frame{width:100%;height:420px;border:0;display:block}
.map-infos{display:flex;flex-direction:column;gap:1.5rem}
.map-adresse{padding:2rem;background:var(--noir)}
.map-adresse .map-flag{font-size:0.6rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.75rem}
.map-adresse h4{font-family:var(--font-titre);color:var(--blanc);font-size:1.2rem;margin-bottom:0.5rem}
.map-adresse p{font-size:0.85rem;color:rgba(255,255,255,0.5);line-height:1.7}
.map-detail{display:flex;gap:1rem;align-items:flex-start;padding:1.2rem;background:var(--gris-fond);border-left:2px solid var(--orange)}
.map-detail-icon{width:36px;height:36px;background:var(--gradient-feu);flex-shrink:0;display:flex;align-items:center;justify-content:center;font-size:0.9rem}
.map-detail h5{font-size:0.75rem;font-weight:700;letter-spacing:0.08em;text-transform:uppercase;color:var(--noir);margin-bottom:0.2rem}
.map-detail p{font-size:0.82rem;color:var(--texte-muted);line-height:1.5}
.map-detail a{color:var(--orange);text-decoration:none;font-weight:600}
.map-itineraire{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;background:var(--gradient-feu);color:var(--noir);text-decoration:none;font-size:0.75rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;transition:var(--transition);margin-top:1rem}
.map-itineraire:hover{opacity:0.9}
@media(max-width:768px){.psh-grid{grid-template-columns:1fr}.localisation-grid{grid-template-columns:1fr}.map-frame{height:280px}}
@media(max-width:1024px){.localisation-grid{grid-template-columns:1fr}}


/* ---- INDICATEURS QUALITÉ ---- */
.indicateurs{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--gris-bord)}
.indicateurs-label{font-size:0.65rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:2rem;display:flex;align-items:center;gap:10px}
.indicateurs-label::before{content:'';width:30px;height:1px;background:var(--orange)}
.indicateurs-grid{display:grid;grid-template-columns:1fr 1fr;gap:2rem}
.indicateur{position:relative}
.indicateur-header{display:flex;justify-content:space-between;align-items:baseline;margin-bottom:0.6rem}
.indicateur-nom{font-size:0.8rem;font-weight:700;color:var(--noir);letter-spacing:0.02em}
.indicateur-valeur{font-family:var(--font-titre);font-size:1.8rem;color:var(--orange);line-height:1;font-weight:700}
.indicateur-valeur sup{font-size:1rem}
.indicateur-piste{height:6px;background:var(--gris-clair);border-radius:0;overflow:hidden;position:relative}
.indicateur-barre{height:100%;background:var(--gradient-feu);border-radius:0;width:0;transition:width 1.4s cubic-bezier(.4,0,.2,1)}
.indicateur-barre.abandon{background:linear-gradient(90deg,#CECBC4,#1A1A1A)}
.indicateur-note{font-size:0.72rem;color:var(--texte-muted);margin-top:0.5rem;line-height:1.5}
.indicateur-annee{font-size:0.65rem;letter-spacing:0.1em;color:var(--gris-bord);font-weight:600}
@media(max-width:640px){.indicateurs-grid{grid-template-columns:1fr}}


/* ---- TÉMOIGNAGES ---- */
.temoignages{margin-top:4rem;padding-top:3rem;border-top:1px solid var(--gris-bord);grid-column:1/-1}
.temoignages-label{font-size:0.65rem;letter-spacing:0.3em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:2rem;display:flex;align-items:center;gap:10px}
.temoignages-label::before{content:'';width:30px;height:1px;background:var(--orange)}
.temoignages-tabs{display:flex;gap:0;margin-bottom:2rem;border-bottom:1px solid var(--gris-bord)}
.temoignage-tab{padding:9px 22px;background:none;border:none;border-bottom:2px solid transparent;margin-bottom:-1px;font-family:var(--font-corps);font-size:0.72rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--texte-muted);cursor:pointer;transition:var(--transition)}
.temoignage-tab.active{color:var(--orange);border-bottom-color:var(--orange)}
.temoignage-tab:hover:not(.active){color:var(--noir)}
.temoignages-panel{display:none}.temoignages-panel.active{display:block}
.temoignages-slider{position:relative;overflow:hidden}
.temoignages-track{display:flex;gap:1.5rem;transition:transform 0.5s cubic-bezier(.4,0,.2,1)}
.temoignage-card{flex:0 0 calc(50% - 0.75rem);background:var(--gris-fond);border:1px solid var(--gris-bord);padding:2rem;position:relative;border-left:3px solid var(--orange)}
.temoignage-card::before{content:'C';font-family:var(--font-titre);font-size:4rem;color:var(--orange);opacity:0.18;position:absolute;top:0.5rem;left:1.2rem;line-height:1}
.temoignage-texte{font-family:var(--font-titre);font-style:italic;font-size:0.95rem;color:var(--noir);line-height:1.7;margin-bottom:1.5rem;padding-top:1rem;position:relative;z-index:1}
.temoignage-auteur{display:flex;align-items:center;gap:12px}
.temoignage-avatar{width:40px;height:40px;background:var(--gradient-feu);clip-path:polygon(50% 0%,100% 25%,100% 75%,50% 100%,0% 75%,0% 25%);display:flex;align-items:center;justify-content:center;font-size:0.75rem;font-weight:700;color:var(--noir);font-family:var(--font-corps);flex-shrink:0}
.temoignage-meta{}
.temoignage-nom{font-weight:700;font-size:0.82rem;color:var(--noir)}
.temoignage-role{font-size:0.72rem;color:var(--texte-muted);margin-top:2px}
.temoignage-note{display:flex;gap:3px;margin-top:4px}
.temoignage-note span{color:var(--orange);font-size:0.75rem}
.temoignages-nav{display:flex;gap:8px;margin-top:1.5rem;align-items:center;justify-content:flex-end}
.temoignages-nav button{width:32px;height:32px;background:none;border:1px solid var(--gris-bord);cursor:pointer;font-size:0.9rem;display:flex;align-items:center;justify-content:center;transition:var(--transition);color:var(--noir)}
.temoignages-nav button:hover{background:var(--orange);border-color:var(--orange);color:var(--blanc)}
.temoignages-nav .dots{display:flex;gap:6px;margin:0 0.75rem}
.temoignages-nav .dot{width:6px;height:6px;background:var(--gris-bord);border-radius:50%;transition:var(--transition);cursor:pointer}
.temoignages-nav .dot.active{background:var(--orange);width:18px;border-radius:3px}
@media(max-width:768px){.temoignage-card{flex:0 0 100%}}


@media(max-width:768px){
}


/* ---- CERTIFICATIONS ---- */
.certif-grid{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem}
.certif-card{border:1px solid var(--gris-bord);overflow:hidden}
.certif-card-header{background:var(--noir);padding:2rem;position:relative;overflow:hidden;display:flex;align-items:center;gap:1.5rem}
.certif-card-header::before{content:'';position:absolute;inset:0;background:var(--gradient-feu);opacity:0.06}
.certif-logo-wrap{width:72px;height:72px;background:var(--blanc);border-radius:4px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative;z-index:1;padding:8px}
.certif-logo-qualiopi{font-family:var(--font-titre);font-size:0.75rem;font-weight:700;color:var(--noir);text-align:center;line-height:1.2}
.certif-logo-qualiopi span{display:block;font-size:1.4rem;font-weight:900;letter-spacing:-0.02em;color:#0055A4}
.certif-logo-certimetal{font-family:var(--font-titre);font-size:0.7rem;font-weight:700;color:var(--noir);text-align:center;line-height:1.2}
.certif-logo-certimetal span{display:block;font-size:1rem;font-weight:900;letter-spacing:0.02em;color:#B5892A}
.certif-card-header-text{position:relative;z-index:1}
.certif-card-header h4{font-family:var(--font-titre);color:var(--blanc);font-size:1.2rem;margin-bottom:0.25rem}
.certif-card-header .certif-type{font-size:0.62rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700}
.certif-card-body{padding:2rem;background:var(--blanc)}
.certif-card-body p{font-size:0.85rem;color:var(--texte-muted);line-height:1.8;margin-bottom:1.25rem}
.certif-points{list-style:none;display:flex;flex-direction:column;gap:0.5rem;margin-bottom:1.5rem}
.certif-points li{font-size:0.83rem;color:var(--texte-muted);padding-left:1.3rem;position:relative;line-height:1.5}
.certif-points li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.72rem}
.certif-badge{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;background:rgba(232,137,10,0.08);border:1px solid rgba(232,137,10,0.25);font-size:0.68rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:var(--orange)}
.certif-badge::before{content:'✓';font-size:0.85rem}
.certif-note{margin-top:1rem;padding:1rem 1.25rem;background:var(--gris-fond);border-left:3px solid var(--orange);font-size:0.78rem;color:var(--texte-muted);font-style:italic;line-height:1.6}
@media(max-width:768px){.certif-grid{grid-template-columns:1fr}}


/* ---- CARTE SOUDEUR INDUSTRIEL ---- */
.si-hero{background:var(--noir);padding:3rem;position:relative;overflow:hidden;margin-bottom:3rem}
.si-hero::before{content:'';position:absolute;inset:0;background:repeating-linear-gradient(45deg,rgba(232,137,10,0.03) 0,rgba(232,137,10,0.03) 1px,transparent 1px,transparent 50px);pointer-events:none}
.si-hero::after{content:'';position:absolute;top:-20%;right:-5%;width:380px;height:380px;background:radial-gradient(circle,rgba(232,137,10,0.13) 0%,transparent 70%);pointer-events:none}
.si-hero-inner{position:relative;z-index:1;display:flex;gap:3rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.si-hero-left{}
.si-hero-badge{display:inline-flex;align-items:center;gap:8px;padding:7px 16px;border:1px solid rgba(232,137,10,0.35);margin-bottom:1.5rem}
.si-hero-badge .badge-code{background:var(--gradient-feu);color:var(--noir);font-size:0.65rem;font-weight:900;padding:3px 8px;letter-spacing:0.05em}
.si-hero-badge span{font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700}
.si-hero h3{font-family:var(--font-titre);font-size:clamp(1.6rem,3vw,2.4rem);color:var(--blanc);line-height:1.15;margin-bottom:0.5rem}
.si-hero h3 em{color:var(--orange);font-style:normal}
.si-hero-duree{font-size:0.78rem;color:rgba(255,255,255,0.45);letter-spacing:0.08em;margin-top:0.5rem}
.si-hero-duree strong{color:var(--or)}
.si-hero-right{display:flex;flex-direction:column;gap:1rem;flex-shrink:0}
.si-stat{text-align:center;padding:1rem 1.5rem;border:1px solid rgba(232,137,10,0.2)}
.si-stat .val{font-family:var(--font-titre);font-size:2rem;color:var(--orange);display:block;line-height:1}
.si-stat .lab{font-size:0.62rem;letter-spacing:0.12em;text-transform:uppercase;color:rgba(255,255,255,0.4);margin-top:4px;display:block}
.si-partenaires{display:flex;gap:1rem;margin-top:1rem;flex-wrap:wrap}
.si-partenaire{padding:6px 14px;background:rgba(255,255,255,0.07);border:1px solid rgba(255,255,255,0.1);font-size:0.65rem;font-weight:700;letter-spacing:0.1em;text-transform:uppercase;color:rgba(255,255,255,0.5)}

.si-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem;margin-bottom:3rem}
.si-bloc{padding:2rem;background:var(--blanc);border:1px solid var(--gris-bord);border-top:3px solid var(--orange)}
.si-bloc h4{font-family:var(--font-titre);font-size:1rem;margin-bottom:1rem;color:var(--noir)}
.si-bloc ul{list-style:none;display:flex;flex-direction:column;gap:0.5rem}
.si-bloc ul li{font-size:0.82rem;color:var(--texte-muted);padding-left:1.2rem;position:relative;line-height:1.5}
.si-bloc ul li::before{content:'→';position:absolute;left:0;color:var(--orange);font-size:0.7rem}

.si-contenu{background:var(--blanc);border:1px solid var(--gris-bord);padding:2.5rem;margin-bottom:3rem}
.si-contenu h4{font-family:var(--font-titre);font-size:1.1rem;margin-bottom:1.5rem;padding-bottom:0.75rem;border-bottom:1px solid var(--gris-clair)}
.si-contenu-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}
.si-contenu-col h5{font-size:0.65rem;letter-spacing:0.2em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.75rem}
.si-contenu-col ul{list-style:none;display:flex;flex-direction:column;gap:0.4rem}
.si-contenu-col ul li{font-size:0.8rem;color:var(--texte-muted);padding-left:1rem;position:relative;line-height:1.5}
.si-contenu-col ul li::before{content:'·';position:absolute;left:0;color:var(--orange);font-weight:900}

.si-cta{background:var(--noir);padding:2.5rem;display:flex;gap:3rem;align-items:center;justify-content:space-between;flex-wrap:wrap}
.si-cta-text .label{font-size:0.62rem;letter-spacing:0.25em;text-transform:uppercase;color:var(--orange);font-weight:700;margin-bottom:0.75rem}
.si-cta-text h4{font-family:var(--font-titre);color:var(--blanc);font-size:1.15rem;margin-bottom:0.5rem}
.si-cta-text p{font-size:0.82rem;color:rgba(255,255,255,0.45);line-height:1.6}
.si-cta-actions{display:flex;flex-direction:column;gap:0.75rem;flex-shrink:0}

@media(max-width:1024px){.si-grid{grid-template-columns:1fr 1fr}.si-contenu-grid{grid-template-columns:1fr 1fr}}
@media(max-width:768px){.si-hero-inner{flex-direction:column}.si-grid{grid-template-columns:1fr}.si-contenu-grid{grid-template-columns:1fr}.si-cta{flex-direction:column;gap:1.5rem}.si-hero-right{flex-direction:row;width:100%}}

