/* ═══════════════════════════════════════════════════════════
   STYLE PAGE COURSES — nouveau style dark, cohérent avec landing.css
   Basé sur le modèle segly_page_courses.html
════════════════════════════════════════════════════════════ */

/* ═══════════ BASE PARTAGÉE (cohérent avec les autres pages) ═══════════ */
:root {
  --vp: #764ba2; --vb: #667eea; --vc: #a78bfa;
  --g: linear-gradient(135deg, #764ba2, #667eea);
  --bg: #0a0a14; --bg2: #0f0e1a;
  --muted: rgba(255,255,255,.5); --border: rgba(255,255,255,.1);
}
* { margin: 0; padding: 0; box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { font-family: 'Outfit', sans-serif; color: #fff; background: var(--bg); line-height: 1.5; overflow-x: hidden; }

.header { position: sticky; top: 0; z-index: 50; background: rgba(10,10,20,.75); backdrop-filter: blur(14px); border-bottom: 1px solid rgba(255,255,255,.06); display: flex; align-items: center; gap: 16px; padding: 14px 24px; }
.logo a { font-family: 'Bebas Neue', sans-serif; font-size: 1.4rem; letter-spacing: .18em; background: var(--g); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; display: flex; align-items: center; gap: 10px; text-decoration: none; }
#imgLogo { width: 28px; height: 28px; border-radius: 6px; }
.header nav { flex: 1; display: flex; align-items: center; justify-content: center; gap: 28px; font-size: .85rem; color: var(--muted); }
.header nav a { color: inherit; text-decoration: none; transition: color .15s; }
.header nav a:hover { color: #fff; }
#lang-buttons { display: flex; gap: 6px; }
.lang-btn { background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.12); color: rgba(255,255,255,.55); font-size: .72rem; padding: 5px 9px; border-radius: 6px; cursor: pointer; font-family: 'DM Mono', monospace; transition: all .15s; }
.lang-btn.active, .lang-btn:hover { background: rgba(167,139,250,.2); border-color: rgba(167,139,250,.4); color: var(--vc); }
.hamburger-btn { display: none; background: none; border: none; color: #fff; font-size: 1.4rem; cursor: pointer; padding: 4px; flex-shrink: 0; }

footer.footer { padding: 48px 0; border-top: 1px solid rgba(255,255,255,.06); }
.footer-content { max-width: 1140px; margin: 0 auto; padding: 0 24px; display: flex; justify-content: space-between; align-items: center; flex-wrap: wrap; gap: 16px; }
.footer-logo { font-family: 'Bebas Neue', sans-serif; font-size: 1.2rem; letter-spacing: .16em; color: rgba(255,255,255,.4); }
.footer-links { display: flex; gap: 24px; font-size: .82rem; color: var(--muted); }
.footer-links a { color: inherit; text-decoration: none; transition: color .15s; }
.footer-links a:hover { color: #fff; }
.footer-social { display: flex; gap: 14px; }
.footer-social a { color: rgba(255,255,255,.4); transition: color .15s; }
.footer-social a:hover { color: #fff; }
.footer-copy { font-family: 'DM Mono', monospace; font-size: .75rem; color: var(--muted); }

/* ═══════════ HERO ═══════════ */
.courses-hero{padding:90px 0 70px;position:relative;overflow:hidden;text-align:center}
.courses-hero .g1{position:absolute;width:600px;height:600px;background:rgba(118,75,162,.35);border-radius:50%;filter:blur(120px);top:-200px;left:50%;transform:translateX(-50%);pointer-events:none}
.courses-hero .wrap{position:relative;z-index:2;max-width:1140px;margin:0 auto;padding:0 24px}
.ch-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(167,139,250,.1);border:1px solid rgba(167,139,250,.25);border-radius:99px;padding:8px 18px;font-family:'DM Mono',monospace;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:#a78bfa;margin-bottom:22px}
.ch-title{font-family:'Bebas Neue',sans-serif;font-size:3.4rem;letter-spacing:.03em;line-height:1;color:#fff;margin-bottom:16px}
.ch-title .accent{background:linear-gradient(135deg,#764ba2,#667eea);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}
.ch-sub{font-size:1.05rem;color:rgba(255,255,255,.6);line-height:1.65;max-width:620px;margin:0 auto 32px}
.ch-sub strong{color:#fff}

/* ANCHORS NAV */
.events-nav{display:flex;justify-content:center;gap:12px;flex-wrap:wrap;margin-bottom:0}
.ev-anchor{display:inline-flex;align-items:center;gap:8px;background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:10px 20px;font-size:.86rem;font-weight:600;color:rgba(255,255,255,.8);text-decoration:none;transition:all .15s}
.ev-anchor:hover{background:rgba(118,75,162,.2);border-color:rgba(167,139,250,.4);color:#fff}

/* SECTIONS EVENTS */
.event-section{padding:80px 0;border-top:1px solid rgba(255,255,255,.06)}
.event-section:first-of-type{border-top:none}
.event-section .wrap{max-width:1140px;margin:0 auto;padding:0 24px}

/* Event header */
.event-header{display:flex;align-items:flex-start;gap:24px;margin-bottom:40px;flex-wrap:wrap}
.event-logo{width:64px;height:64px;border-radius:16px;display:flex;align-items:center;justify-content:center;font-size:1.8rem;flex-shrink:0}
.event-meta .event-eyebrow{font-family:'DM Mono',monospace;font-size:.6rem;letter-spacing:.18em;text-transform:uppercase;color:#a78bfa;display:block;margin-bottom:6px}
.event-meta h2{font-family:'Bebas Neue',sans-serif;font-size:2.4rem;letter-spacing:.04em;color:#fff;line-height:.95;margin-bottom:8px}
.event-meta .event-desc{font-size:.92rem;color:rgba(255,255,255,.55);line-height:1.6;max-width:600px}
.event-dates{margin-left:auto;text-align:right;flex-shrink:0}
.event-dates .date-val{font-family:'Bebas Neue',sans-serif;font-size:1.4rem;color:#fff;display:block}
.event-dates .date-lbl{font-family:'DM Mono',monospace;font-size:.58rem;color:rgba(255,255,255,.4);text-transform:uppercase;letter-spacing:.08em}

/* Formats grid */
.formats-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:16px}
.format-card{background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:22px;display:flex;flex-direction:column;gap:14px;transition:border-color .15s,transform .15s}
.format-card:hover{border-color:rgba(167,139,250,.3);transform:translateY(-2px)}
.format-card.flagship{background:linear-gradient(160deg,rgba(118,75,162,.15),rgba(102,126,234,.08));border-color:rgba(167,139,250,.3)}

.format-top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}
.format-name{font-family:'Syne',sans-serif;font-weight:800;font-size:1.02rem;color:#fff}
.format-date-pill{font-family:'DM Mono',monospace;font-size:.6rem;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.1);border-radius:99px;padding:4px 10px;color:rgba(255,255,255,.5);white-space:nowrap;flex-shrink:0}

.format-stats{display:flex;gap:10px}
.fs{flex:1;background:rgba(255,255,255,.05);border-radius:10px;padding:10px 8px;text-align:center}
.fs-val{font-family:'Bebas Neue',sans-serif;font-size:1.3rem;color:#fff;line-height:1;letter-spacing:.02em}
.fs-lbl{font-family:'DM Mono',monospace;font-size:.52rem;color:rgba(255,255,255,.4);text-transform:uppercase;margin-top:3px}

.format-desc{font-size:.8rem;color:rgba(255,255,255,.5);line-height:1.55}

.format-cta{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:linear-gradient(135deg,#764ba2,#667eea);
  color:#fff;font-family:'Outfit',sans-serif;font-weight:700;font-size:.88rem;
  padding:12px 20px;border-radius:12px;text-decoration:none;
  transition:opacity .15s;
}
.format-cta:hover{opacity:.88}
.format-cta-ghost{
  display:flex;align-items:center;justify-content:center;gap:8px;
  background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.14);
  color:rgba(255,255,255,.8);font-family:'Outfit',sans-serif;font-weight:600;font-size:.86rem;
  padding:11px 20px;border-radius:12px;text-decoration:none;
  transition:background .15s;
}
.format-cta-ghost:hover{background:rgba(255,255,255,.1)}

.format-note{font-family:'DM Mono',monospace;font-size:.58rem;color:rgba(255,255,255,.3);text-align:center;letter-spacing:.04em}

/* SEO content */
.seo-section{padding:60px 0 80px;background:var(--bg2);border-top:1px solid rgba(255,255,255,.06)}
.seo-section .wrap{max-width:760px;margin:0 auto;padding:0 24px}
.seo-section h2{font-family:'Bebas Neue',sans-serif;font-size:1.8rem;color:#fff;margin-bottom:14px;margin-top:40px;letter-spacing:.03em}
.seo-section h2:first-child{margin-top:0}
.seo-section p{font-size:.92rem;color:rgba(255,255,255,.55);line-height:1.75;margin-bottom:14px}
.seo-section p strong{color:#fff}
.seo-section a{color:#a78bfa;text-decoration:none}

/* Final CTA */
.courses-final-cta{padding:70px 0;text-align:center;background:var(--bg);border-top:1px solid rgba(255,255,255,.06)}
.courses-final-cta h2{font-family:'Bebas Neue',sans-serif;font-size:2.2rem;color:#fff;margin-bottom:14px}
.courses-final-cta p{color:rgba(255,255,255,.5);font-size:.98rem;margin-bottom:28px}
.btn-primary-lg{display:inline-flex;align-items:center;gap:10px;background:var(--g);color:#fff;font-family:'Outfit',sans-serif;font-weight:700;font-size:1rem;padding:16px 40px;border-radius:99px;text-decoration:none;box-shadow:0 8px 30px rgba(118,75,162,.4);transition:transform .15s,box-shadow .15s}
.btn-primary-lg:hover{transform:translateY(-2px);box-shadow:0 12px 40px rgba(118,75,162,.55)}

/* ═══════════ RESPONSIVE ═══════════ */
@media (max-width: 760px) {
  .hamburger-btn { display: block; }
  .header nav { display: none; position: absolute; top: 57px; left: 0; right: 0; background: rgba(10,10,20,.97); backdrop-filter: blur(14px); flex-direction: column; align-items: flex-start; padding: 20px 24px; gap: 16px; border-bottom: 1px solid rgba(255,255,255,.08); }
  .header nav.nav-open { display: flex; }
  #lang-buttons { flex-wrap: wrap; }

  .ch-title{font-size:2.2rem}
  .event-header{flex-direction:column}
  .event-dates{margin-left:0;text-align:left}
  .formats-grid{grid-template-columns:1fr}
}
