:root{--blue:#1768ad;--blue-dark:#092d50;--navy:#061d32;--sky:#eaf5fc;--ink:#14202b;--muted:#627181;--line:#dce6ed;--white:#fff;--orange:#ef7d22;--max:1180px;--radius:18px;--shadow:0 24px 70px rgba(7,43,75,.16)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:var(--ink);background:#fff;line-height:1.65}img{display:block;max-width:100%}a{color:inherit}.container{width:min(calc(100% - 40px),var(--max));margin-inline:auto}.narrow{max-width:850px}.skip-link{position:absolute;left:-9999px}.skip-link:focus{left:20px;top:20px;background:#fff;padding:10px;z-index:99}.site-header{position:sticky;top:0;z-index:50;background:linear-gradient(180deg,#0b1220 0%,#0d1728 100%);box-shadow:0 6px 20px rgba(0,0,0,.25)}.header-inner{min-height:128px;display:grid;grid-template-columns:1fr;align-items:center;padding:12px 0 0}.brand{display:flex;align-items:center;justify-content:center;gap:14px;text-decoration:none;padding:6px 0 14px}.brand img{width:420px;max-width:100%;height:auto;display:block}.archive-badge{display:none}.main-nav{display:flex;justify-content:center;align-items:center;gap:0;list-style:none;margin:0;padding:0 12px 0;overflow-x:auto;white-space:nowrap;border-top:1px solid rgba(255,255,255,.10);background:linear-gradient(180deg,#111b2c 0%,#0d1624 100%)}.main-nav a{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;font-size:.93rem;color:#eaf1f7;padding:15px 16px;border-bottom:3px solid transparent;transition:.18s ease}.main-nav a:hover{color:#fff;background:rgba(255,255,255,.04);border-bottom-color:var(--orange)}.menu-button{display:none}.hero{overflow:hidden;background:linear-gradient(135deg,#f8fcff 0%,#e9f5fc 50%,#fff 100%);padding:96px 0 110px;border-bottom:1px solid var(--line)}.hero-grid{display:grid;grid-template-columns:.92fr 1.08fr;gap:70px;align-items:center}.eyebrow,.section-kicker{text-transform:uppercase;letter-spacing:.16em;font-size:.76rem;font-weight:850;color:var(--blue);margin:0 0 18px}.hero h1{font-size:clamp(3rem,6vw,5.9rem);line-height:.94;letter-spacing:-.065em;color:var(--blue-dark);margin:0 0 28px}.lead{font-size:1.24rem;font-weight:650;color:#324f66}.hero-copy>p:not(.eyebrow){max-width:660px}.hero-actions{display:flex;gap:14px;margin-top:34px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:center;text-decoration:none;font-weight:800;border-radius:10px;padding:13px 19px}.button-primary{background:var(--blue);color:#fff;box-shadow:0 10px 25px rgba(23,104,173,.22)}.button-secondary{border:1px solid #a9bfd0;color:var(--blue-dark);background:#fff}.history-collage{position:relative;height:540px;isolation:isolate}.shot{position:absolute;margin:0;border:8px solid #fff;background:#fff;border-radius:12px;box-shadow:var(--shadow);overflow:hidden}.shot img{width:100%;height:100%;object-fit:cover;object-position:top}.shot figcaption{position:absolute;right:8px;bottom:8px;background:rgba(6,29,50,.88);color:#fff;padding:5px 9px;border-radius:6px;font-size:.72rem;font-weight:800}.shot-2001{width:44%;height:42%;left:0;top:5%;transform:rotate(-6deg)}.shot-2005{width:55%;height:46%;right:1%;top:0;transform:rotate(5deg)}.shot-2012{width:56%;height:49%;left:2%;bottom:1%;transform:rotate(3deg)}.shot-2017{width:51%;height:48%;right:0;bottom:7%;transform:rotate(-4deg);z-index:2}.section{padding:100px 0}.intro{text-align:center}.intro h2,.section h2{font-size:clamp(2rem,4vw,3.7rem);line-height:1.08;letter-spacing:-.045em;color:var(--blue-dark);margin:0 0 24px}.intro p:last-child{font-size:1.12rem;color:var(--muted)}.eras-section{background:#f6fafc}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:40px}.section-heading h2{margin-bottom:0}.text-link{font-weight:800;color:var(--blue);text-decoration:none}.era-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.era-card{background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 35px rgba(7,43,75,.07)}.era-card img{width:100%;height:190px;object-fit:cover;object-position:top;border-bottom:1px solid var(--line)}.era-content{padding:24px}.era-content time{font-size:.76rem;font-weight:850;letter-spacing:.12em;color:var(--orange)}.era-content h3{font-size:1.35rem;margin:8px 0;color:#092d50;font-weight:850}.era-content p{color:#45596b;margin:0}.stats-section{background:var(--blue-dark);color:#fff}.stats-section h2{color:#fff}.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid rgba(255,255,255,.18);border-bottom:1px solid rgba(255,255,255,.18)}.stat{padding:35px 25px;border-right:1px solid rgba(255,255,255,.18)}.stat:last-child{border-right:0}.stat strong{display:block;font-size:clamp(2.3rem,5vw,4.8rem);line-height:1;color:#fff;letter-spacing:-.06em}.stat span{display:block;color:#c8d8e5;margin-top:10px}.stats-note{color:#9fb5c6;font-size:.86rem}.archive-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.archive-card{text-decoration:none;padding:30px;border:1px solid var(--line);border-radius:var(--radius);min-height:260px;display:flex;flex-direction:column;background:#fff;transition:.2s ease}.archive-card:hover{transform:translateY(-4px);box-shadow:0 15px 38px rgba(7,43,75,.11);border-color:#a8c8df}.archive-icon{width:42px;height:42px;border-radius:11px;background:var(--sky);display:grid;place-items:center;color:var(--blue);font-weight:900}.archive-card h3{font-size:1.45rem;margin:25px 0 8px}.archive-card p{color:var(--muted);margin:0 0 25px}.archive-card>span:last-child{margin-top:auto;color:var(--blue);font-weight:850}.timeline-section{background:#edf6fb;overflow:hidden}.timeline-strip{display:grid;grid-auto-flow:column;grid-auto-columns:minmax(245px,1fr);gap:18px;overflow-x:auto;padding:18px 2px 24px;scroll-snap-type:x mandatory}.timeline-strip figure{scroll-snap-align:start;margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;overflow:hidden}.timeline-strip img{height:185px;width:100%;object-fit:cover;object-position:top}.timeline-strip figcaption{display:flex;justify-content:space-between;gap:14px;padding:17px}.timeline-strip span{color:var(--muted);font-size:.86rem}.thanks-section{background:linear-gradient(125deg,#0b3458,#1768ad);color:#fff}.thanks-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:90px;align-items:start}.thanks-section h2{color:#fff}.thanks-section p{color:#d6e4ef;font-size:1.08rem}.button-light{background:#fff;color:var(--blue-dark);margin-top:16px}.site-footer{background:var(--navy);color:#aec1d0;padding:42px 0}.footer-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.site-footer img{width:300px;max-width:100%;display:block}.site-footer p{font-size:.82rem;margin:8px 0 0}.footer-links{display:flex;gap:24px}.footer-links a{text-decoration:none;font-weight:700;font-size:.85rem}
@media(max-width:920px){.header-inner{min-height:86px;grid-template-columns:1fr auto;grid-template-areas:"brand button" "nav nav";padding:10px 0 0}.brand{grid-area:brand;justify-content:flex-start;padding:0 0 10px}.brand img{width:280px}.menu-button{grid-area:button;display:block;border:1px solid rgba(255,255,255,.22);background:#101a2a;color:#fff;border-radius:8px;padding:9px 12px;font-weight:800;margin-bottom:10px}.main-nav{grid-area:nav;display:none;position:static;padding:0;flex-direction:column;align-items:stretch;background:#0d1624;border-top:1px solid rgba(255,255,255,.10)}.main-nav a{justify-content:flex-start;padding:14px 10px;border-bottom:1px solid rgba(255,255,255,.08)}.main-nav.is-open{display:flex}.hero{padding-top:65px}.hero-grid{grid-template-columns:1fr}.history-collage{height:470px}.era-grid{grid-template-columns:repeat(2,1fr)}.archive-grid{grid-template-columns:repeat(2,1fr)}.stats-grid{grid-template-columns:repeat(2,1fr)}.stat:nth-child(2){border-right:0}.stat:nth-child(-n+2){border-bottom:1px solid rgba(255,255,255,.18)}.thanks-grid{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){.container{width:min(calc(100% - 28px),var(--max))}.header-inner{min-height:78px}.brand img{width:220px}.main-nav{top:auto}.hero{padding:48px 0 72px}.hero h1{font-size:3.2rem}.lead{font-size:1.08rem}.history-collage{height:390px}.shot{border-width:5px}.shot-2001{width:48%;height:38%}.shot-2005{width:58%;height:41%}.shot-2012{width:58%;height:43%}.shot-2017{width:56%;height:44%}.section{padding:72px 0}.section-heading{display:block}.text-link{display:inline-block;margin-top:8px}.era-grid,.archive-grid{grid-template-columns:1fr}.era-card img{height:220px}.stats-grid{grid-template-columns:1fr}.stat{border-right:0!important;border-bottom:1px solid rgba(255,255,255,.18)}.stat:last-child{border-bottom:0}.footer-inner{align-items:flex-start;flex-direction:column}.footer-links{flex-wrap:wrap}}
.main-nav{overflow:visible;white-space:nowrap}.main-nav a[aria-current="page"]{color:var(--blue);position:relative}.main-nav a[aria-current="page"]:after{content:"";position:absolute;left:0;right:0;bottom:-12px;height:2px;background:var(--blue)}
.page-hero{padding:92px 0 76px;background:linear-gradient(135deg,#f8fcff,#e9f5fc);border-bottom:1px solid var(--line)}.page-hero h1{font-size:clamp(3rem,7vw,6.4rem);line-height:.95;letter-spacing:-.065em;color:var(--blue-dark);margin:0 0 24px}.page-hero .lead{max-width:820px}.feature-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:24px}.feature-card{display:grid;grid-template-columns:44% 56%;min-height:330px;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff;box-shadow:0 12px 35px rgba(7,43,75,.07)}.feature-card img{width:100%;height:100%;object-fit:cover;object-position:top}.feature-card>div{padding:30px}.feature-card time,.editorial-list time{font-size:.75rem;letter-spacing:.13em;font-weight:850;color:var(--orange)}.feature-card h2{font-size:2rem;margin:8px 0 0}.feature-card h3{font-size:1rem;color:var(--blue);margin:3px 0 16px}.feature-card p{color:var(--muted)}.source-note,.callout{margin-top:40px;padding:28px 30px;border-radius:14px;background:var(--sky);border-left:4px solid var(--blue)}.source-note p,.callout p{margin-bottom:0;color:var(--muted)}.editorial-list{border-top:1px solid var(--line)}.editorial-list article{display:grid;grid-template-columns:90px 1fr;gap:30px;padding:40px 0;border-bottom:1px solid var(--line)}.list-index{font-size:2rem;color:#9db7ca;font-weight:900}.editorial-list h2{font-size:2rem;margin:8px 0 10px}.interview-grid{display:grid;gap:26px}.interview-card{display:grid;grid-template-columns:42% 58%;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.interview-image{position:relative;min-height:360px}.interview-image img{width:100%;height:100%;object-fit:cover;object-position:top}.interview-image span{position:absolute;left:18px;bottom:18px;background:var(--blue-dark);color:#fff;padding:7px 10px;border-radius:7px;font-weight:800}.interview-card>div:last-child{padding:42px}.interview-card h2{font-size:2.5rem}.info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}.info-grid article{padding:34px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.info-grid article>span{display:grid;place-items:center;width:44px;height:44px;background:var(--sky);border-radius:12px;color:var(--blue);font-weight:900}.info-grid h2{font-size:1.7rem;margin:24px 0 10px}.info-grid p{color:var(--muted)}.design-stack{display:grid;gap:40px}.design-stack figure{margin:0;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;background:#fff}.design-stack img{width:100%;max-height:680px;object-fit:cover;object-position:top}.design-stack figcaption{display:flex;justify-content:space-between;padding:22px 26px}.design-stack strong{font-size:1.35rem}.design-stack span{color:var(--muted)}.gallery-grid{columns:3 280px;column-gap:20px}.gallery-grid a{display:block;break-inside:avoid;margin-bottom:20px;border:1px solid var(--line);border-radius:14px;overflow:hidden;text-decoration:none;background:#fff}.gallery-grid img{width:100%}.gallery-grid span{display:block;padding:14px 16px;font-weight:800}.gallery-note{margin-top:30px;color:var(--muted)}.faq-list details{border-bottom:1px solid var(--line);padding:22px 0}.faq-list summary{font-size:1.18rem;font-weight:850;cursor:pointer;color:var(--blue-dark)}.faq-list p{color:var(--muted)}.legal-copy h2,.contact-panel h2{font-size:1.7rem;margin-top:38px}.contact-panel{padding:36px;border:1px solid var(--line);border-radius:var(--radius)}.placeholder{font-family:ui-monospace,monospace;padding:16px;background:#f4f7f9;border-radius:8px;color:var(--blue)}
@media(max-width:1100px){.main-nav{gap:18px;font-size:.82rem}.feature-grid{grid-template-columns:1fr}}
@media(max-width:920px){.main-nav{white-space:normal}.main-nav a[aria-current="page"]:after{display:none}.feature-card,.interview-card{grid-template-columns:1fr}.feature-card img{height:260px}.interview-image{min-height:280px}.info-grid{grid-template-columns:1fr}}
@media(max-width:600px){.page-hero{padding:56px 0}.page-hero h1{font-size:3.2rem}.editorial-list article{grid-template-columns:1fr;gap:8px}.feature-card>div,.interview-card>div:last-child{padding:24px}.interview-card h2{font-size:2rem}.design-stack figcaption{flex-direction:column;gap:4px}}
.archive-article { margin-top: 2rem; font-size: 1.05rem; line-height: 1.75; }
.archive-article h2 { margin-top: 2rem; }
.archive-article ul { padding-left: 1.25rem; }
.archive-article li + li { margin-top: .65rem; }

/* Équipe */
.staff-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.staff-card{display:flex;align-items:center;gap:18px;padding:20px;border:1px solid var(--line);border-radius:16px;background:#fff;box-shadow:0 8px 24px rgba(7,43,75,.06)}.staff-card img{width:74px;height:74px;flex:0 0 74px;object-fit:cover;border-radius:16px;background:var(--sky);image-rendering:auto}.staff-card h2{font-size:1.12rem;margin:0 0 4px;letter-spacing:-.02em}.staff-card p{font-size:.9rem;color:var(--muted);margin:0;line-height:1.4}.former-team-section{background:#f6fafc}.former-team-section>div>p:not(.section-kicker){max-width:800px;color:var(--muted)}.former-team-list{display:grid;grid-template-columns:repeat(5,1fr);gap:10px 20px;list-style:none;padding:0;margin:34px 0 0}.former-team-list li{padding:12px 14px;border:1px solid var(--line);border-radius:10px;background:#fff;font-weight:750;color:#30485d}.source-note{font-size:.9rem;color:var(--muted)}
@media(max-width:1100px){.staff-grid{grid-template-columns:repeat(3,1fr)}.former-team-list{grid-template-columns:repeat(4,1fr)}.header-inner{height:auto;min-height:78px;padding:12px 0}.main-nav{gap:14px}.main-nav a{font-size:.78rem}}
@media(max-width:820px){.staff-grid{grid-template-columns:repeat(2,1fr)}.former-team-list{grid-template-columns:repeat(2,1fr)}}
@media(max-width:520px){.staff-grid{grid-template-columns:1fr}.former-team-list{grid-template-columns:1fr}.staff-card img{width:64px;height:64px;flex-basis:64px}}


/* Correction navigation principale — conserve le graphisme du prototype */
@media (min-width: 921px) {
  .site-header .container {
    width: min(calc(100% - 32px), 1480px);
  }
  .header-inner {
    gap: 24px;
  }
  .brand {
    flex: 0 0 auto;
  }
  .main-nav {
    flex: 1 1 auto;
    min-width: 0;
    justify-content: flex-end;
    gap: clamp(10px, 1.1vw, 22px);
    overflow: visible;
    white-space: nowrap;
  }
  .main-nav a {
    flex: 0 0 auto;
    font-size: clamp(.72rem, .72vw, .86rem);
  }
}

/* Dès que la rangée ne tient plus, on utilise le menu compact plutôt qu'une barre de défilement. */
@media (min-width: 921px) and (max-width: 1140px) {
  .menu-button {
    display: block;
    border: 1px solid #b6c8d6;
    background: #fff;
    border-radius: 8px;
    padding: 9px 12px;
    font-weight: 800;
  }
  .main-nav {
    display: none;
    position: absolute;
    top: 90px;
    left: 0;
    right: 0;
    padding: 20px;
    background: #fff;
    border-bottom: 1px solid var(--line);
    flex-direction: column;
    align-items: flex-start;
    gap: 14px;
    white-space: normal;
    overflow: visible;
    box-shadow: 0 18px 35px rgba(7,43,75,.12);
  }
  .main-nav.is-open {
    display: flex;
  }
  .main-nav a {
    width: 100%;
    font-size: .9rem;
  }
}

/* ==========================================================
   En-tête compact et menu unifié depuis la page index.html
   ========================================================== */
.site-header{
  position:sticky;
  top:0;
  z-index:50;
  background:#0b1422;
  box-shadow:0 5px 18px rgba(0,0,0,.22);
}
.brand-strip{
  background:linear-gradient(180deg,#0c1727 0%,#0a1320 100%);
}
.brand-row{
  min-height:68px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  padding:5px 0;
}
.brand{
  display:flex;
  align-items:center;
  justify-content:flex-start;
  padding:0;
  text-decoration:none;
  line-height:0;
}
.brand img{
  width:286px;
  max-height:58px;
  max-width:100%;
  height:auto;
  object-fit:contain;
  object-position:left center;
}
.header-tools{
  display:flex;
  align-items:center;
  gap:12px;
  flex:0 0 auto;
}
.archive-badge{
  display:inline-flex;
  align-items:center;
  min-height:30px;
  padding:5px 10px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  color:#cbd8e3;
  font-size:.66rem;
  font-weight:800;
  letter-spacing:.09em;
  line-height:1;
  text-transform:uppercase;
}
.nav-strip{
  background:linear-gradient(180deg,#111c2d 0%,#0d1624 100%);
  border-top:1px solid rgba(255,255,255,.08);
  border-bottom:1px solid rgba(0,0,0,.25);
}
.nav-row{
  display:flex;
  align-items:center;
  justify-content:center;
  min-height:40px;
}
.main-nav{
  width:100%;
  display:flex;
  align-items:stretch;
  justify-content:center;
  gap:0;
  margin:0;
  padding:0;
  overflow:visible;
  white-space:nowrap;
  border:0;
  background:transparent;
}
.main-nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  flex:0 0 auto;
  min-height:40px;
  padding:8px clamp(9px,1vw,15px);
  border:0;
  border-bottom:2px solid transparent;
  color:#e8f0f6;
  font-size:clamp(.71rem,.72vw,.84rem);
  font-weight:800;
  line-height:1.1;
  text-decoration:none;
  transition:background-color .18s ease,color .18s ease,border-color .18s ease;
}
.main-nav a:hover,
.main-nav a:focus-visible{
  color:#fff;
  background:rgba(255,255,255,.045);
  border-bottom-color:var(--orange);
}
.main-nav a[aria-current="page"]{
  color:#fff;
  background:rgba(255,255,255,.035);
  border-bottom-color:var(--blue);
}
.main-nav a[aria-current="page"]::after{
  display:none;
}
.menu-button{
  display:none;
}

/* Le menu devient compact avant de pouvoir créer un défilement horizontal. */
@media (max-width:1120px){
  .brand-row{
    min-height:62px;
  }
  .brand img{
    width:250px;
    max-height:52px;
  }
  .archive-badge{
    display:none;
  }
  .menu-button{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:36px;
    padding:7px 12px;
    border:1px solid rgba(255,255,255,.23);
    border-radius:8px;
    background:#101c2d;
    color:#fff;
    font:inherit;
    font-size:.82rem;
    font-weight:800;
    cursor:pointer;
  }
  .nav-row{
    min-height:0;
  }
  .main-nav{
    display:none;
    flex-direction:column;
    align-items:stretch;
    justify-content:flex-start;
    white-space:normal;
  }
  .main-nav.is-open{
    display:flex;
  }
  .main-nav a{
    width:100%;
    min-height:42px;
    justify-content:flex-start;
    padding:10px 14px;
    border-bottom:1px solid rgba(255,255,255,.08);
    font-size:.86rem;
  }
  .main-nav a[aria-current="page"]{
    border-left:3px solid var(--blue);
    border-bottom-color:rgba(255,255,255,.08);
  }
}

@media (max-width:600px){
  .brand-row{
    min-height:56px;
    padding:4px 0;
  }
  .brand img{
    width:205px;
    max-height:47px;
  }
  .menu-button{
    min-height:34px;
    padding:6px 10px;
  }
}


/* ==========================================================
   Logo officiel exact de forever.vossey.com
   Le fichier PNG reste inchangé ; le recadrage se fait en CSS
   pour supprimer visuellement ses grandes marges transparentes.
   ========================================================== */
.brand{
  background:transparent;
  border-radius:0;
  box-shadow:none;
  padding:0;
  overflow:hidden;
  line-height:0;
}
.brand img{
  width:430px;
  height:86px;
  max-width:100%;
  max-height:none;
  object-fit:cover;
  object-position:center center;
  display:block;
  background:transparent;
  border-radius:0;
  box-shadow:none;
  filter:none;
}
.site-footer img{
  width:330px;
  height:74px;
  max-width:100%;
  object-fit:cover;
  object-position:center center;
  display:block;
  background:transparent;
  border-radius:0;
  box-shadow:none;
  padding:0;
  filter:none;
}
@media (max-width:920px){
  .brand img{
    width:320px;
    height:68px;
  }
}
@media (max-width:600px){
  .brand img{
    width:245px;
    height:54px;
  }
  .site-footer img{
    width:260px;
    height:58px;
  }
}

    :root {
      --vf-bg: #071726;
      --vf-bg-soft: #0b2135;
      --vf-panel: #0e2a42;
      --vf-panel-2: #12354f;
      --vf-paper: #f5f7fa;
      --vf-paper-2: #e8edf2;
      --vf-ink: #102132;
      --vf-muted: #708294;
      --vf-text: #f4f8fb;
      --vf-text-soft: #b9c9d6;
      --vf-blue: #3aa8ef;
      --vf-blue-2: #1a75ba;
      --vf-accent: #ff6f47;
      --vf-line: rgba(255,255,255,.13);
      --vf-shadow: 0 26px 70px rgba(0,0,0,.26);
      --vf-radius: 22px;
      --vf-max: 1180px;
    }

    * { box-sizing: border-box; }
    html { scroll-behavior: smooth; }
    body {
      margin: 0;
      color: var(--vf-text);
      background:
        radial-gradient(circle at 84% 9%, rgba(58,168,239,.12), transparent 28rem),
        linear-gradient(180deg, #071726 0%, #081b2c 56%, #06131f 100%);
      font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;
      line-height: 1.65;
      -webkit-font-smoothing: antialiased;
    }

    a { color: inherit; text-decoration: none; }
    img { display: block; max-width: 100%; }
    button { font: inherit; }

    .vf-shell { width: min(calc(100% - 40px), var(--vf-max)); margin-inline: auto; }
    .vf-kicker {
      margin: 0 0 .8rem;
      color: var(--vf-blue);
      font-size: .77rem;
      font-weight: 800;
      letter-spacing: .16em;
      text-transform: uppercase;
    }
    .vf-section-title {
      margin: 0;
      max-width: 850px;
      font-size: clamp(2rem, 5vw, 4.2rem);
      line-height: 1.03;
      letter-spacing: -.045em;
    }
    .vf-section-lead {
      max-width: 760px;
      margin: 1.15rem 0 0;
      color: var(--vf-text-soft);
      font-size: clamp(1rem, 2vw, 1.2rem);
    }

    /* Header — repris de la version /old/ */
    .vf-header {
      position: sticky;
      top: 0;
      z-index: 50;
      border-bottom: 1px solid #d9e1e8;
      background: rgba(255,255,255,.97);
      box-shadow: 0 10px 34px rgba(14,39,61,.10);
      backdrop-filter: blur(16px);
    }
    .vf-navrow {
      position: relative;
      display: flex;
      align-items: stretch;
      min-height: 86px;
    }
    .vf-logo {
      display: inline-flex;
      flex: 0 0 258px;
      align-items: center;
      align-self: center;
      margin-right: 22px;
      padding: 8px 0;
    }
    .vf-logo img {
      width: 258px;
      height: auto;
      object-fit: contain;
    }
    .vf-nav {
      display: flex;
      flex: 1 1 auto;
      align-items: stretch;
      justify-content: flex-end;
      min-width: 0;
      white-space: nowrap;
    }
    .vf-nav a {
      position: relative;
      display: inline-flex;
      align-items: center;
      justify-content: center;
      padding: 0 8px;
      border-bottom: 3px solid transparent;
      color: #3e5366;
      font-size: .72rem;
      font-weight: 760;
      letter-spacing: .01em;
      transition: color .18s ease, background .18s ease, border-color .18s ease;
    }
    .vf-nav a:hover {
      color: #102f49;
      background: #f1f6fa;
    }
    .vf-nav a[aria-current="page"] {
      color: #0e5f99;
      border-bottom-color: var(--vf-blue-2);
      background: #edf7fd;
    }
    .vf-menu-button {
      display: none;
      align-items: center;
      gap: 8px;
      align-self: center;
      padding: 10px 13px;
      border: 1px solid #cbd7e0;
      border-radius: 9px;
      color: #183b57;
      background: #f5f8fa;
      cursor: pointer;
    }

    /* Hero */
    .vf-hero {
      position: relative;
      overflow: hidden;
      padding: clamp(72px, 10vw, 130px) 0 72px;
    }
    .vf-hero::before {
      content: "";
      position: absolute;
      inset: 38px -12vw auto auto;
      width: 42vw;
      height: 42vw;
      min-width: 420px;
      min-height: 420px;
      border: 1px solid rgba(58,168,239,.18);
      border-radius: 50%;
      box-shadow: inset 0 0 0 54px rgba(58,168,239,.018), inset 0 0 0 110px rgba(58,168,239,.014);
      pointer-events: none;
    }
    .vf-hero-grid {
      position: relative;
      display: grid;
      grid-template-columns: minmax(0, 1.3fr) minmax(320px, .7fr);
      gap: 70px;
      align-items: end;
    }
    .vf-hero h1 {
      margin: 0;
      max-width: 820px;
      font-size: clamp(3.2rem, 8vw, 7.3rem);
      line-height: .91;
      letter-spacing: -.065em;
    }
    .vf-hero h1 span { color: var(--vf-blue); }
    .vf-hero-copy {
      border-left: 1px solid var(--vf-line);
      padding-left: 28px;
      color: var(--vf-text-soft);
      font-size: 1.08rem;
    }
    .vf-hero-copy strong { color: white; }
    .vf-hero-actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 28px; }
    .vf-button {
      display: inline-flex;
      align-items: center;
      justify-content: center;
      min-height: 46px;
      padding: 0 18px;
      border: 1px solid var(--vf-line);
      border-radius: 999px;
      color: white;
      font-size: .84rem;
      font-weight: 760;
      transition: .2s ease;
    }
    .vf-button:hover { transform: translateY(-2px); border-color: rgba(255,255,255,.32); }
    .vf-button--primary { border-color: transparent; background: var(--vf-blue-2); }

    /* Stats */
    .vf-stats { padding: 0 0 96px; }
    .vf-stats-grid {
      display: grid;
      grid-template-columns: repeat(4, 1fr);
      overflow: hidden;
      border: 1px solid var(--vf-line);
      border-radius: var(--vf-radius);
      background: rgba(255,255,255,.03);
      box-shadow: var(--vf-shadow);
    }
    .vf-stat { min-height: 180px; padding: 30px; border-right: 1px solid var(--vf-line); }
    .vf-stat:last-child { border-right: 0; }
    .vf-stat-number { display: block; font-size: clamp(2.2rem, 4vw, 4rem); font-weight: 850; letter-spacing: -.055em; line-height: 1; }
    .vf-stat-label { display: block; margin-top: 13px; color: var(--vf-text-soft); font-size: .86rem; }
    .vf-stat-source { display: block; margin-top: 14px; color: #6f899c; font-size: .7rem; text-transform: uppercase; letter-spacing: .1em; }

    /* Story */
    .vf-story { padding: 96px 0; border-top: 1px solid rgba(255,255,255,.07); }
    .vf-compare {
      display: grid;
      grid-template-columns: 1fr 1fr;
      gap: 20px;
      margin-top: 48px;
    }
    .vf-compare-card {
      position: relative;
      min-height: 350px;
      padding: 36px;
      overflow: hidden;
      border: 1px solid var(--vf-line);
      border-radius: var(--vf-radius);
      background: linear-gradient(145deg, rgba(255,255,255,.055), rgba(255,255,255,.018));
    }
    .vf-compare-card--blue { background: linear-gradient(145deg, rgba(30,124,190,.35), rgba(8,33,53,.76)); }
    .vf-compare-index { color: rgba(255,255,255,.42); font-size: .75rem; letter-spacing: .14em; text-transform: uppercase; }
    .vf-compare-card h3 { margin: 70px 0 6px; font-size: clamp(2rem, 4vw, 3.5rem); line-height: 1; letter-spacing: -.045em; }
    .vf-compare-big { font-size: clamp(2.8rem, 6vw, 5.6rem); font-weight: 860; letter-spacing: -.07em; line-height: .95; }
    .vf-compare-meta { margin-top: 18px; color: var(--vf-text-soft); }
    .vf-compare-note { position: absolute; right: 30px; top: 30px; width: 92px; height: 92px; display: grid; place-items: center; border: 1px solid var(--vf-line); border-radius: 50%; color: var(--vf-blue); font-size: .72rem; font-weight: 800; text-align: center; text-transform: uppercase; }

    /* Main cult topic */
    .vf-feature { padding: 96px 0; background: var(--vf-paper); color: var(--vf-ink); }
    .vf-feature .vf-kicker { color: var(--vf-blue-2); }
    .vf-feature-grid { display: grid; grid-template-columns: .85fr 1.15fr; gap: 68px; align-items: center; }
    .vf-feature-copy h2 { margin: 0; font-size: clamp(2.5rem, 6vw, 5.5rem); line-height: .94; letter-spacing: -.06em; }
    .vf-feature-copy p { color: #506274; font-size: 1.04rem; }
    .vf-number-row { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 30px; }
    .vf-mini-stat { padding-top: 18px; border-top: 1px solid #ccd5dd; }
    .vf-mini-stat strong { display: block; font-size: 1.55rem; letter-spacing: -.04em; }
    .vf-mini-stat span { color: #6f8090; font-size: .76rem; }

    .vf-forum-shot {
      position: relative;
      overflow: hidden;
      border: 1px solid #cad4dc;
      border-radius: 18px;
      background: white;
      box-shadow: 0 30px 70px rgba(20,45,67,.16);
      transform: rotate(.35deg);
    }
    .vf-shot-top { display: flex; align-items: center; gap: 7px; height: 38px; padding: 0 14px; background: #e9eef2; border-bottom: 1px solid #d5dde4; }
    .vf-dot { width: 9px; height: 9px; border-radius: 50%; background: #aab8c4; }
    .vf-shot-address { margin-left: 9px; color: #82919d; font-size: .66rem; overflow: hidden; white-space: nowrap; }
    .vf-shot-brand { padding: 16px 22px; color: white; background: #126aa8; font-weight: 800; letter-spacing: -.02em; }
    .vf-shot-breadcrumb { padding: 12px 22px; color: #7b8995; background: #f6f8fa; border-bottom: 1px solid #e5ebef; font-size: .7rem; }
    .vf-shot-content { padding: 28px 28px 34px; }
    .vf-shot-content h3 { margin: 0; font-size: clamp(1.5rem, 3vw, 2.25rem); line-height: 1.08; }
    .vf-shot-byline { margin: 8px 0 22px; color: #83909b; font-size: .76rem; }
    .vf-shot-post { display: grid; grid-template-columns: 106px 1fr; gap: 20px; padding-top: 20px; border-top: 1px solid #e2e8ed; }
    .vf-shot-user { color: #2a638a; font-size: .77rem; font-weight: 760; }
    .vf-shot-avatar { width: 44px; height: 44px; margin-bottom: 8px; display: grid; place-items: center; border-radius: 50%; color: white; background: #2d7caf; font-weight: 850; }
    .vf-shot-text { color: #435361; font-size: .88rem; }
    .vf-shot-text strong { color: #172a3b; }
    .vf-shot-footer { display: flex; justify-content: space-between; margin-top: 22px; padding-top: 14px; border-top: 1px solid #e2e8ed; color: #758594; font-size: .7rem; }

    /* Topic cards */
    .vf-topics { padding: 108px 0; }
    .vf-topic-list { margin-top: 52px; border-top: 1px solid var(--vf-line); }
    .vf-topic {
      display: grid;
      grid-template-columns: 82px 1fr 170px 32px;
      gap: 22px;
      align-items: center;
      min-height: 126px;
      padding: 22px 0;
      border-bottom: 1px solid var(--vf-line);
      transition: .2s ease;
    }
    .vf-topic:hover { padding-inline: 12px; background: rgba(255,255,255,.025); }
    .vf-topic-num { color: #577184; font-size: .74rem; letter-spacing: .12em; }
    .vf-topic h3 { margin: 0; font-size: clamp(1.2rem, 2.5vw, 2rem); line-height: 1.15; letter-spacing: -.03em; }
    .vf-topic p { margin: 7px 0 0; color: var(--vf-text-soft); font-size: .87rem; }
    .vf-topic-stats { color: #97a9b6; font-size: .77rem; text-align: right; }
    .vf-topic-stats strong { display: block; color: white; font-size: 1rem; }
    .vf-arrow { color: var(--vf-blue); font-size: 1.4rem; }

    /* News timeline */
    .vf-news { padding: 108px 0; background: #0b2236; }
    .vf-news-grid { display: grid; grid-template-columns: .72fr 1.28fr; gap: 80px; margin-top: 56px; }
    .vf-news-intro { position: sticky; top: 145px; align-self: start; }
    .vf-news-intro p { color: var(--vf-text-soft); }
    .vf-timeline { position: relative; }
    .vf-timeline::before { content: ""; position: absolute; left: 104px; top: 8px; bottom: 8px; width: 1px; background: rgba(255,255,255,.15); }
    .vf-event { display: grid; grid-template-columns: 78px 1fr; gap: 52px; padding: 0 0 48px; position: relative; }
    .vf-event::before { content: ""; position: absolute; left: 99px; top: 7px; width: 11px; height: 11px; border: 3px solid #0b2236; border-radius: 50%; background: var(--vf-blue); box-shadow: 0 0 0 1px rgba(255,255,255,.25); }
    .vf-event-year { color: #6e8ba1; font-size: .78rem; font-weight: 760; letter-spacing: .08em; }
    .vf-event-card { padding: 0 0 34px; border-bottom: 1px solid var(--vf-line); }
    .vf-event-card h3 { margin: 0; font-size: clamp(1.25rem, 2.7vw, 2.1rem); line-height: 1.15; letter-spacing: -.035em; }
    .vf-event-card p { margin: 10px 0 0; color: var(--vf-text-soft); font-size: .9rem; }
    .vf-event-numbers { display: flex; gap: 20px; margin-top: 16px; color: #7893a7; font-size: .75rem; }
    .vf-event-numbers strong { color: white; }

    /* Memory cards */
    .vf-memory { padding: 108px 0; background: var(--vf-paper-2); color: var(--vf-ink); }
    .vf-memory .vf-kicker { color: var(--vf-blue-2); }
    .vf-memory .vf-section-lead { color: #5c6e7d; }
    .vf-memory-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 16px; margin-top: 50px; }
    .vf-memory-card {
      min-height: 280px;
      display: flex;
      flex-direction: column;
      padding: 28px;
      border: 1px solid #ced7df;
      border-radius: 18px;
      background: rgba(255,255,255,.7);
      transition: .22s ease;
    }
    .vf-memory-card:hover { transform: translateY(-5px); box-shadow: 0 20px 50px rgba(29,57,80,.12); }
    .vf-memory-tag { color: var(--vf-blue-2); font-size: .7rem; font-weight: 800; letter-spacing: .1em; text-transform: uppercase; }
    .vf-memory-card h3 { margin: auto 0 12px; font-size: 1.5rem; line-height: 1.1; letter-spacing: -.035em; }
    .vf-memory-card p { margin: 0; color: #657582; font-size: .86rem; }
    .vf-memory-link { margin-top: 24px; color: #1d6fa9; font-size: .8rem; font-weight: 760; }

    /* Closing */
    .vf-closing { padding: 115px 0; }
    .vf-closing-box {
      display: grid;
      grid-template-columns: 1fr auto;
      gap: 50px;
      align-items: end;
      padding: 50px;
      border: 1px solid var(--vf-line);
      border-radius: var(--vf-radius);
      background: linear-gradient(120deg, rgba(27,117,183,.28), rgba(255,255,255,.025));
    }
    .vf-closing-box h2 { margin: 0; max-width: 800px; font-size: clamp(2.2rem, 5vw, 4.8rem); line-height: .98; letter-spacing: -.055em; }
    .vf-closing-box p { max-width: 720px; margin: 18px 0 0; color: var(--vf-text-soft); }

    /* Footer */
    .vf-footer { padding: 32px 0 46px; border-top: 1px solid var(--vf-line); color: #8097a8; font-size: .75rem; }
    .vf-footer-row { display: flex; align-items: center; justify-content: space-between; gap: 24px; }
    .vf-footer-links { display: flex; gap: 20px; }

    @media (max-width: 1120px) {
      .vf-navrow { min-height: 76px; align-items: center; justify-content: space-between; }
      .vf-logo { flex-basis: 230px; margin-right: 16px; }
      .vf-logo img { width: 230px; }
      .vf-menu-button { display: inline-flex; }
      .vf-nav {
        display: none;
        position: absolute;
        left: 0;
        right: 0;
        top: calc(100% + 1px);
        padding: 10px;
        flex-direction: column;
        align-items: stretch;
        border: 1px solid #d7e0e7;
        border-top: 0;
        border-radius: 0 0 14px 14px;
        background: #ffffff;
        box-shadow: var(--vf-shadow);
      }
      .vf-nav.is-open { display: flex; }
      .vf-nav a {
        min-height: 44px;
        justify-content: flex-start;
        padding: 0 13px;
        border-bottom: 0;
        border-left: 3px solid transparent;
        border-radius: 7px;
        font-size: .8rem;
      }
      .vf-nav a[aria-current="page"] { border-left-color: var(--vf-blue); }
    }
    @media (max-width: 860px) {
      .vf-shell { width: min(calc(100% - 28px), var(--vf-max)); }
      .vf-navrow { min-height: 72px; }
      .vf-logo { flex-basis: 210px; margin-right: 12px; padding-block: 10px; }
      .vf-logo img { width: 210px; }
      .vf-hero-grid, .vf-feature-grid, .vf-news-grid { grid-template-columns: 1fr; gap: 42px; }
      .vf-hero-copy { border-left: 0; border-top: 1px solid var(--vf-line); padding: 24px 0 0; }
      .vf-stats-grid { grid-template-columns: repeat(2, 1fr); }
      .vf-stat:nth-child(2) { border-right: 0; }
      .vf-stat:nth-child(-n+2) { border-bottom: 1px solid var(--vf-line); }
      .vf-compare { grid-template-columns: 1fr; }
      .vf-news-intro { position: static; }
      .vf-memory-grid { grid-template-columns: repeat(2, 1fr); }
      .vf-closing-box { grid-template-columns: 1fr; }
    }
    @media (max-width: 580px) {
      .vf-navrow { min-height: 66px; }
      .vf-logo { flex-basis: 178px; margin-right: 8px; }
      .vf-logo img { width: 178px; }
      .vf-menu-button { padding: 8px 10px; }
      .vf-menu-button span:last-child { font-size: 0; }
      .vf-menu-button span:last-child::after { content: "☰"; font-size: 1rem; }
      .vf-hero { padding-top: 62px; }
      .vf-stats-grid { grid-template-columns: 1fr; }
      .vf-stat { min-height: 145px; border-right: 0; border-bottom: 1px solid var(--vf-line); }
      .vf-stat:last-child { border-bottom: 0; }
      .vf-number-row { grid-template-columns: 1fr; }
      .vf-shot-post { grid-template-columns: 1fr; }
      .vf-topic { grid-template-columns: 48px 1fr 24px; }
      .vf-topic-stats { grid-column: 2; text-align: left; }
      .vf-memory-grid { grid-template-columns: 1fr; }
      .vf-event { grid-template-columns: 54px 1fr; gap: 30px; }
      .vf-timeline::before { left: 69px; }
      .vf-event::before { left: 64px; }
      .vf-closing-box { padding: 30px; }
      .vf-footer-row { align-items: flex-start; flex-direction: column; }
    }




/* === Référence visuelle commune : forum.html === */
.vf-header{
  position:sticky;
  top:0;
  z-index:50;
  border-bottom:1px solid #d9e1e8;
  background:rgba(255,255,255,.97);
  box-shadow:0 10px 34px rgba(14,39,61,.10);
  backdrop-filter:blur(16px);
}
.vf-shell{
  width:min(calc(100% - 40px),1180px);
  margin-inline:auto;
}
.vf-navrow{
  position:relative;
  display:flex;
  align-items:stretch;
  min-height:86px;
}
.vf-logo{
  display:inline-flex;
  flex:0 0 258px;
  align-items:center;
  align-self:center;
  margin-right:22px;
  padding:8px 0;
  line-height:0;
}
.vf-logo img{
  width:258px;
  height:auto;
  max-height:70px;
  object-fit:contain;
}
.vf-nav{
  display:flex;
  flex:1 1 auto;
  align-items:stretch;
  justify-content:flex-end;
  min-width:0;
  white-space:nowrap;
}
.vf-nav a{
  position:relative;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 8px;
  border-bottom:3px solid transparent;
  color:#3e5366;
  font-size:.72rem;
  font-weight:760;
  letter-spacing:.01em;
  text-decoration:none;
  transition:color .18s ease,background .18s ease,border-color .18s ease;
}
.vf-nav a:hover{
  color:#102f49;
  background:#f1f6fa;
}
.vf-nav a[aria-current="page"]{
  color:#0e5f99;
  border-bottom-color:#1a75ba;
  background:#edf7fd;
}
.vf-menu-button{
  display:none;
  align-items:center;
  gap:8px;
  align-self:center;
  padding:10px 13px;
  border:1px solid #cbd7e0;
  border-radius:9px;
  color:#183b57;
  background:#f5f8fa;
  cursor:pointer;
}
.vf-footer{
  padding:32px 0 46px;
  border-top:1px solid rgba(255,255,255,.13);
  color:#8097a8;
  background:#071726;
  font-size:.75rem;
}
.vf-footer-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
}
.vf-footer-links{
  display:flex;
  gap:20px;
}
.vf-footer a{
  color:inherit;
  text-decoration:none;
}
.vf-footer a:hover{color:#d8e4ed;}
@media(max-width:1120px){
  .vf-navrow{min-height:76px;align-items:center;justify-content:space-between;}
  .vf-logo{flex-basis:230px;margin-right:16px;}
  .vf-logo img{width:230px;}
  .vf-menu-button{display:inline-flex;}
  .vf-nav{
    display:none;
    position:absolute;
    left:0;
    right:0;
    top:calc(100% + 1px);
    padding:10px;
    flex-direction:column;
    align-items:stretch;
    border:1px solid #d7e0e7;
    border-top:0;
    border-radius:0 0 14px 14px;
    background:#fff;
    box-shadow:0 26px 70px rgba(0,0,0,.20);
  }
  .vf-nav.is-open{display:flex;}
  .vf-nav a{
    min-height:44px;
    justify-content:flex-start;
    padding:0 13px;
    border-bottom:0;
    border-left:3px solid transparent;
    border-radius:7px;
    font-size:.8rem;
  }
  .vf-nav a[aria-current="page"]{border-left-color:#3aa8ef;}
}
@media(max-width:860px){
  .vf-shell{width:min(calc(100% - 28px),1180px);}
  .vf-navrow{min-height:72px;}
  .vf-logo{flex-basis:210px;margin-right:12px;padding-block:10px;}
  .vf-logo img{width:210px;}
}
@media(max-width:580px){
  .vf-navrow{min-height:66px;}
  .vf-logo{flex-basis:178px;margin-right:8px;}
  .vf-logo img{width:178px;}
  .vf-menu-button{padding:8px 10px;}
  .vf-menu-button span:last-child{font-size:0;}
  .vf-menu-button span:last-child::after{content:"☰";font-size:1rem;}
  .vf-footer-row{align-items:flex-start;flex-direction:column;}
}


/* ==========================================================
   Page Équipe — annuaire patrimonial
   ========================================================== */
.team-hero{
  overflow:hidden;
  padding:88px 0 82px;
  border-bottom:1px solid #dce6ed;
  background:
    radial-gradient(circle at 85% 18%,rgba(43,151,221,.17),transparent 26%),
    linear-gradient(135deg,#f8fcff 0%,#eaf5fc 58%,#fff 100%);
}
.team-hero-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) 310px;
  align-items:center;
  gap:76px;
}
.team-hero h1{
  max-width:820px;
  margin:0 0 26px;
  color:var(--blue-dark);
  font-size:clamp(3.2rem,7vw,6.7rem);
  line-height:.9;
  letter-spacing:-.07em;
}
.team-hero .lead{max-width:790px;margin-bottom:20px;}
.team-hero-note{
  max-width:680px;
  margin:0;
  color:var(--muted);
  font-size:.96rem;
}
.team-count-card{
  position:relative;
  min-height:310px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:38px;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.35);
  border-radius:24px;
  color:#fff;
  background:linear-gradient(145deg,#0a3558,#1768ad);
  box-shadow:0 28px 65px rgba(9,45,80,.22);
}
.team-count-card::after{
  content:"";
  position:absolute;
  width:180px;
  height:180px;
  right:-68px;
  bottom:-80px;
  border:28px solid rgba(255,255,255,.08);
  border-radius:50%;
}
.team-count-card strong{
  position:relative;
  z-index:1;
  display:block;
  font-size:6.5rem;
  line-height:.85;
  letter-spacing:-.08em;
}
.team-count-card span{
  position:relative;
  z-index:1;
  max-width:170px;
  margin-top:18px;
  color:#d9eaf5;
  font-size:1.05rem;
  font-weight:750;
  line-height:1.35;
}
.team-count-divider{
  position:relative;
  z-index:1;
  width:72px;
  height:1px;
  margin:28px 0 18px;
  background:rgba(255,255,255,.35);
}
.team-count-card small{
  position:relative;
  z-index:1;
  color:#a8d2ec;
  font-size:.78rem;
  font-weight:850;
  letter-spacing:.16em;
}
.team-directory-section{padding:92px 0 104px;background:#fff;}
.directory-heading{
  display:flex;
  align-items:flex-end;
  justify-content:space-between;
  gap:44px;
  margin-bottom:48px;
  padding-bottom:32px;
  border-bottom:1px solid var(--line);
}
.directory-heading h2{
  margin:0 0 10px;
  color:var(--blue-dark);
  font-size:clamp(2.25rem,4vw,4rem);
  line-height:1;
  letter-spacing:-.05em;
}
.directory-heading p:last-child{margin:0;color:var(--muted);}
.alphabet-nav{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:7px;
  max-width:520px;
}
.alphabet-nav a{
  display:grid;
  width:34px;
  height:34px;
  place-items:center;
  border:1px solid #d7e4ed;
  border-radius:9px;
  color:#31536c;
  background:#f8fbfd;
  font-size:.76rem;
  font-weight:850;
  text-decoration:none;
  transition:.18s ease;
}
.alphabet-nav a:hover{
  border-color:#8fc7eb;
  color:#fff;
  background:var(--blue);
  transform:translateY(-2px);
}
.volunteer-directory{
  overflow:hidden;
  border:1px solid var(--line);
  border-radius:22px;
  background:#fff;
  box-shadow:0 18px 54px rgba(7,43,75,.07);
}
.letter-group{
  display:grid;
  grid-template-columns:118px minmax(0,1fr);
  min-height:132px;
  scroll-margin-top:110px;
  border-bottom:1px solid var(--line);
}
.letter-group:last-child{border-bottom:0;}
.letter-marker{
  display:grid;
  place-items:center;
  color:#1768ad;
  background:linear-gradient(135deg,#edf7fd,#f8fcff);
  font-size:3rem;
  font-weight:900;
  letter-spacing:-.06em;
}
.letter-content{padding:28px 32px;}
.letter-content h2{
  position:absolute;
  width:1px;
  height:1px;
  padding:0;
  margin:-1px;
  overflow:hidden;
  clip:rect(0,0,0,0);
  white-space:nowrap;
  border:0;
}
.name-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:10px 14px;
  margin:0;
  padding:0;
  list-style:none;
}
.name-grid li{
  min-width:0;
  padding:11px 13px;
  overflow-wrap:anywhere;
  border:1px solid #e2eaf0;
  border-radius:10px;
  color:#29465d;
  background:#fbfdfe;
  font-size:.91rem;
  font-weight:720;
  transition:.16s ease;
}
.name-grid li:hover{
  border-color:#b8d6e9;
  color:#0e5f99;
  background:#f1f9fe;
}
.team-archive-note{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:30px;
  margin-top:28px;
  padding:22px 26px;
  border-left:4px solid var(--orange);
  border-radius:12px;
  background:#fff8f1;
}
.team-archive-note strong{color:#6b3b12;}
.team-archive-note p{margin:0;color:#76583f;font-size:.92rem;}
@media(max-width:1000px){
  .team-hero-grid{grid-template-columns:1fr 250px;gap:42px;}
  .team-count-card{min-height:260px;padding:30px;}
  .team-count-card strong{font-size:5.3rem;}
  .name-grid{grid-template-columns:repeat(3,minmax(0,1fr));}
}
@media(max-width:760px){
  .team-hero{padding:64px 0;}
  .team-hero-grid{grid-template-columns:1fr;gap:30px;}
  .team-count-card{min-height:auto;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:25px 28px;}
  .team-count-card strong{font-size:4.5rem;}
  .team-count-card span{margin:0;}
  .team-count-divider{display:none;}
  .directory-heading{display:block;}
  .alphabet-nav{justify-content:flex-start;margin-top:25px;}
  .letter-group{grid-template-columns:76px minmax(0,1fr);}
  .letter-marker{font-size:2.35rem;}
  .letter-content{padding:22px;}
  .name-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .team-archive-note{align-items:flex-start;flex-direction:column;gap:6px;}
}
@media(max-width:500px){
  .team-hero h1{font-size:3.35rem;}
  .team-count-card{grid-template-columns:auto 1fr;}
  .team-count-card small{grid-column:2;}
  .letter-group{grid-template-columns:58px minmax(0,1fr);}
  .letter-marker{font-size:1.8rem;}
  .letter-content{padding:17px;}
  .name-grid{grid-template-columns:1fr;}
  .name-grid li{padding:10px 12px;}
}


/* Jeux : visuels plus représentatifs */
.feature-card img{object-position:center center;}


/* ==========================================================
   Passe de finition globale — août 2026
   ========================================================== */
.feature-card,.interview-card,.dossier-showcase-card,.archive-visual-card{transition:transform .22s ease,box-shadow .22s ease,border-color .22s ease}
.feature-card:hover,.interview-card:hover,.dossier-showcase-card:hover,.archive-visual-card:hover{transform:translateY(-4px);box-shadow:0 18px 46px rgba(7,43,75,.13);border-color:#b9d0df}
.feature-card img,.interview-image img,.dossier-showcase-card img{object-position:center}
.visual-hero{background:linear-gradient(135deg,#f8fcff 0%,#e7f3fa 55%,#fff 100%)}
.visual-intro-section{padding-bottom:58px}
.visual-intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center}
.visual-intro-grid h2{font-size:clamp(2rem,4vw,3.35rem)}
.visual-logo-panel{margin:0;padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 14px 38px rgba(7,43,75,.08)}
.visual-logo-panel img{width:100%;max-height:120px;object-fit:contain}
.visual-logo-panel figcaption{margin-top:14px;color:var(--muted);font-size:.88rem;text-align:center}
.visual-gallery-section{padding-top:58px;background:#f6fafc}
.visual-help{margin:0;color:var(--muted);font-size:.9rem}
.archive-visual-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:26px}
.archive-visual-card{display:block;text-decoration:none;background:#fff;border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 30px rgba(7,43,75,.07)}
.archive-visual-card img{width:100%;height:310px;object-fit:cover;object-position:top}
.archive-visual-card>div{padding:24px 26px 28px}
.archive-visual-card time{color:var(--orange);font-size:.76rem;font-weight:850;letter-spacing:.13em}
.archive-visual-card h3{font-size:1.55rem;color:var(--blue-dark);margin:7px 0 7px}
.archive-visual-card p{margin:0;color:var(--muted)}
.dossier-showcase-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.dossier-showcase-card{overflow:hidden;border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:0 10px 30px rgba(7,43,75,.07)}
.dossier-showcase-card img{width:100%;height:250px;object-fit:cover}
.dossier-showcase-card>div{padding:28px}
.dossier-showcase-card time{font-size:.75rem;letter-spacing:.13em;font-weight:850;color:var(--orange)}
.dossier-showcase-card h2{font-size:1.8rem;margin:8px 0 12px}
.dossier-showcase-card p{color:var(--muted)}
@media(max-width:920px){.visual-intro-grid,.archive-visual-grid,.dossier-showcase-grid{grid-template-columns:1fr}.archive-visual-card img{height:260px}}
@media(max-width:600px){.visual-intro-section,.visual-gallery-section{padding-top:54px;padding-bottom:54px}.archive-visual-card img{height:220px}.dossier-showcase-card img{height:210px}.dossier-showcase-card>div{padding:22px}}

/* Accueil renforcé et page Vossey en chiffres */
.stats-cta{margin:30px 0 0;text-align:center}.stats-cta .button{display:inline-flex}.numbers-hero{background:linear-gradient(135deg,#f7fbfe 0%,#e7f3fb 100%)}
.numbers-overview{padding-top:76px}.numbers-grid{display:grid;grid-template-columns:repeat(4,1fr);border:1px solid var(--line);border-radius:20px;overflow:hidden;background:#fff;box-shadow:0 20px 55px rgba(7,43,75,.08)}.numbers-grid article{padding:34px 28px;border-right:1px solid var(--line)}.numbers-grid article:last-child{border-right:0}.numbers-grid strong{display:block;color:var(--blue-dark);font-size:clamp(2.25rem,4vw,4rem);line-height:1;letter-spacing:-.055em}.numbers-grid h2{margin:14px 0 12px;font-size:1.05rem;color:var(--blue)}.numbers-grid p{margin:0;color:var(--muted);font-size:.92rem}
.numbers-detail{background:#f5f9fc}.metric-list{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}.metric-list article{display:grid;grid-template-columns:150px 1fr;gap:24px;align-items:start;padding:28px;border:1px solid var(--line);border-radius:16px;background:#fff}.metric-list>article>span{font-size:1.7rem;font-weight:900;letter-spacing:-.04em;color:var(--blue)}.metric-list h3{margin:0 0 6px;font-size:1.15rem}.metric-list p{margin:0;color:var(--muted)}
.two-column-copy{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;align-items:start}.two-column-copy h2{font-size:clamp(2.3rem,4vw,4.2rem);line-height:1.02;letter-spacing:-.05em;margin-top:8px;color:var(--blue-dark)}.two-column-copy p{font-size:1.05rem;color:var(--muted)}.small-note{padding:20px 22px;border-left:4px solid var(--orange);background:#fff8f2;border-radius:0 12px 12px 0;font-size:.9rem!important}
.numbers-future{background:var(--blue-dark);color:#fff}.numbers-future h2{font-size:clamp(2.3rem,4vw,4rem);line-height:1.05;letter-spacing:-.045em}.numbers-future p{color:#c6d5e1}.future-metrics{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.future-metrics span{padding:9px 13px;border:1px solid rgba(255,255,255,.25);border-radius:999px;color:#eaf4fb;font-size:.82rem;font-weight:750}
@media(max-width:960px){.numbers-grid{grid-template-columns:repeat(2,1fr)}.numbers-grid article{border-bottom:1px solid var(--line)}.numbers-grid article:nth-child(2){border-right:0}.numbers-grid article:nth-child(n+3){border-bottom:0}.metric-list{grid-template-columns:1fr}.two-column-copy{grid-template-columns:1fr;gap:20px}}
@media(max-width:600px){.numbers-grid{grid-template-columns:1fr}.numbers-grid article{border-right:0!important;border-bottom:1px solid var(--line)!important}.numbers-grid article:last-child{border-bottom:0!important}.metric-list article{grid-template-columns:1fr;gap:8px}.numbers-overview{padding-top:52px}}

/* Actualités — statistiques issues de l'export News */
.news-hero{background:linear-gradient(135deg,#f8fcff 0%,#e9f5fc 58%,#fff 100%)}
.news-overview{padding-top:76px}.news-kpis article{min-height:230px}.news-kpis article strong{font-size:clamp(2.1rem,4vw,3.8rem)}
.news-years{background:#f6fafc}.news-year-chart{display:grid;gap:11px;max-width:980px}.news-year-row{display:grid;grid-template-columns:54px 1fr 70px;gap:14px;align-items:center}.news-year-label{font-weight:850;color:var(--blue-dark)}.news-year-row strong{text-align:right;color:#35546b;font-variant-numeric:tabular-nums}.news-year-track{height:17px;border-radius:99px;background:#e3edf4;overflow:hidden}.news-year-track span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--blue),#65a8d6)}.news-callout{display:flex;flex-wrap:wrap;gap:8px 18px;margin-top:34px;padding:22px 24px;border:1px solid #c6dce9;border-radius:14px;background:#fff}.news-callout strong{color:var(--blue-dark)}.news-callout span{color:var(--muted)}
.news-heat-section{overflow:hidden}.heat-wrap{min-width:800px;display:grid;gap:6px;padding:18px;border:1px solid var(--line);border-radius:18px;background:#fff;box-shadow:0 12px 35px rgba(7,43,75,.06)}.news-heat-section .container{overflow-x:auto}.heat-head,.heat-row{display:grid;grid-template-columns:58px repeat(12,minmax(44px,1fr));gap:6px;align-items:center}.heat-head span,.heat-head strong{text-align:center;font-size:.72rem;color:var(--muted)}.heat-row>strong{font-size:.8rem;color:var(--blue-dark)}.heat-cell{display:grid;place-items:center;min-height:32px;border-radius:7px;font-size:.72rem;font-weight:800;font-variant-numeric:tabular-nums;border:1px solid rgba(23,104,173,.07)}.heat-cell.h0{background:#f4f7f9;color:#a8b6c1}.heat-cell.h1,.heat-legend .h1{background:#eaf4fa;color:#41657e}.heat-cell.h2,.heat-legend .h2{background:#d0e8f6;color:#2d5874}.heat-cell.h3,.heat-legend .h3{background:#9ccbea;color:#153f5d}.heat-cell.h4,.heat-legend .h4{background:#5ba5d5;color:#fff}.heat-cell.h5,.heat-legend .h5{background:#1768ad;color:#fff}.heat-legend{display:flex;align-items:center;justify-content:flex-end;gap:6px;margin:16px 2px 0;color:var(--muted);font-size:.75rem}.heat-legend i{display:block;width:23px;height:12px;border-radius:4px}
.news-records{background:#eef6fb}.news-record-grid article{min-height:145px}.news-scope .small-note{padding-top:12px;border-top:1px solid var(--line)}
@media(max-width:900px){.news-kpis{grid-template-columns:repeat(2,1fr)}.news-year-row{grid-template-columns:46px 1fr 58px;gap:10px}.news-year-chart{min-width:0}}
@media(max-width:600px){.news-overview{padding-top:52px}.news-kpis{grid-template-columns:1fr}.news-year-row{grid-template-columns:42px 1fr 52px;font-size:.82rem}.heat-wrap{min-width:730px}.news-callout{padding:18px}.news-record-grid article{min-height:0}}

/* Actualités — typologie éditoriale */
.news-taxonomy{background:#fff}
.news-type-summary{display:grid;gap:13px;margin:12px 0 42px}
.news-type-summary article{display:grid;grid-template-columns:minmax(210px,1.1fr) minmax(220px,2fr) 70px;gap:18px;align-items:center;padding:13px 16px;border:1px solid var(--line);border-radius:13px;background:#fbfdff}
.news-type-summary article>div:first-child{display:flex;justify-content:space-between;gap:16px;align-items:baseline}
.news-type-summary strong{color:var(--blue-dark);font-size:.98rem}
.news-type-summary span{color:var(--muted);font-size:.82rem}
.news-type-summary b{text-align:right;color:var(--blue);font-size:.9rem}
.news-type-track{height:10px;border-radius:99px;background:#e5eef4;overflow:hidden}
.news-type-track i{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,var(--blue),#65a8d6)}
.news-ranking-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}
.news-ranking-card{padding:28px;border:1px solid var(--line);border-radius:18px;background:#f9fcfe;box-shadow:0 12px 32px rgba(7,43,75,.05)}
.news-ranking-card h3{margin:4px 0 20px;color:var(--blue-dark);font-size:1.35rem}
.news-ranking{margin:0;padding:0;list-style:none;counter-reset:newsrank}
.news-ranking li{counter-increment:newsrank;display:grid;grid-template-columns:28px 1fr auto;gap:10px;align-items:center;padding:9px 0;border-bottom:1px solid #e6eef3}
.news-ranking li:last-child{border-bottom:0}
.news-ranking li:before{content:counter(newsrank);display:grid;place-items:center;width:22px;height:22px;border-radius:50%;background:#e5f1f8;color:var(--blue);font-size:.72rem;font-weight:900}
.news-ranking li span{min-width:0;color:#28475d;font-size:.9rem}
.news-ranking li strong{color:var(--blue-dark);font-variant-numeric:tabular-nums}
.news-ranking-wide{grid-column:1/-1}
.news-topic-pills{display:flex;flex-wrap:wrap;gap:10px}
.news-topic-pills span{padding:10px 13px;border:1px solid #d5e4ed;border-radius:999px;background:#fff;color:#496578;font-size:.86rem}
.news-topic-pills strong{color:var(--blue-dark);margin-right:5px}
.news-taxonomy .news-callout{margin-top:26px}
@media(max-width:900px){.news-type-summary article{grid-template-columns:1fr 1.3fr 60px}.news-type-summary article>div:first-child{display:block}.news-type-summary span{display:block;margin-top:3px}.news-ranking-grid{grid-template-columns:1fr}.news-ranking-wide{grid-column:auto}}
@media(max-width:600px){.news-type-summary article{grid-template-columns:1fr 52px}.news-type-track{grid-column:1/-1;grid-row:2}.news-type-summary b{grid-column:2;grid-row:1}.news-ranking-card{padding:20px}.news-ranking li{grid-template-columns:24px 1fr auto;gap:8px}}

/* Archive statique intégrale des actualités */
.news-archive-hero{padding-bottom:42px}.news-archive-meta{margin-top:18px;color:#526a7b;font-weight:700}
.news-archive-section{background:#fff}.news-archive-layout{display:grid;grid-template-columns:minmax(0,2.25fr) minmax(250px,.75fr);gap:42px;align-items:start}
.news-archive-article{max-width:840px;color:#243f53;font-size:1rem;line-height:1.78}.news-archive-article p{margin:0 0 1.25em}
.news-archive-article h2,.news-archive-article h3,.news-archive-article h4{color:#092d50;margin:1.8em 0 .65em}
.news-archive-article ul,.news-archive-article ol{padding-left:1.5rem;margin:0 0 1.4em}.news-archive-article blockquote{margin:1.5em 0;padding:16px 20px;border-left:4px solid var(--blue);background:#f4f9fc}
.news-archive-article a{color:var(--blue);text-decoration:underline;text-underline-offset:2px}.news-archive-article .archive-dead-link{color:inherit;text-decoration:none;border-bottom:1px dotted #9aaab5;cursor:help}
.archive-missing-media{display:block;margin:18px 0;padding:18px;border:1px dashed #b8cbd7;border-radius:10px;background:#f7fafc;color:#69808f;font-size:.88rem}
.news-archive-source{margin-top:36px;padding-top:20px;border-top:1px solid var(--line);font-size:.9rem}
.news-archive-aside{position:sticky;top:24px;padding:24px;border:1px solid var(--line);border-radius:16px;background:#f7fafc;font-size:.88rem;color:#536b7d}
.news-archive-aside dl{margin:22px 0;display:grid;grid-template-columns:auto 1fr;gap:8px 14px}.news-archive-aside dt{font-weight:800;color:#24465d}.news-archive-aside dd{margin:0}
.news-archive-pagination{padding-top:20px}.news-archive-nav{display:grid;grid-template-columns:1fr 1fr;gap:20px}.news-archive-nav>div:last-child{text-align:right}
.news-archive-navlink{display:inline-block;color:var(--blue-dark);font-weight:800;text-decoration:none}
.news-original-source{max-width:1120px;margin:0 auto 52px;padding:0 20px;color:#647987;font-size:.78rem}.news-original-source summary{cursor:pointer;font-weight:700}
.news-original-source pre{white-space:pre-wrap;overflow-wrap:anywhere;padding:16px;background:#f5f7f9;border-radius:10px;max-height:420px;overflow:auto}
.news-year-back{margin-bottom:24px}.news-year-back a{font-weight:800;text-decoration:none;color:var(--blue)}
.news-archive-list{display:grid;gap:0;border-top:1px solid var(--line)}.news-archive-list-item{display:grid;grid-template-columns:160px 1fr;gap:22px;padding:19px 0;border-bottom:1px solid var(--line)}
.news-archive-list-item time{color:#718695;font-size:.82rem;font-weight:800}.news-archive-list-item h2{margin:0;font-size:1.04rem;line-height:1.35}.news-archive-list-item h2 a{color:#143c59;text-decoration:none}
.news-archive-list-item p{margin:6px 0 0;color:#627887;font-size:.86rem;line-height:1.5}
.news-search-box{display:grid;grid-template-columns:auto minmax(260px,1fr) auto;gap:14px;align-items:center;max-width:850px;padding:18px;border:1px solid var(--line);border-radius:14px;background:#f8fbfd}
.news-search-box label{font-weight:800;color:#27465c}.news-search-box input{width:100%;padding:12px 14px;border:1px solid #c7d7e1;border-radius:9px;background:#fff;font:inherit}
.news-search-box span{min-width:120px;color:#738794;font-size:.8rem;text-align:right}.news-search-results{display:grid;gap:7px;max-width:850px;margin-top:12px}
.news-search-results a{display:grid;grid-template-columns:1fr auto;gap:20px;padding:11px 14px;border:1px solid var(--line);border-radius:9px;text-decoration:none;background:#fff}.news-search-results strong{color:#143c59}.news-search-results span{color:#788b98;font-size:.78rem}
.news-years-heading{margin-top:48px}.news-year-cards{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.news-year-card{display:flex;flex-direction:column;gap:3px;padding:15px;border:1px solid var(--line);border-radius:11px;background:#fff;text-decoration:none}
.news-year-card strong{font-size:1.15rem;color:#092d50}.news-year-card span{font-size:.75rem;color:#758995}
@media(max-width:980px){.news-archive-layout{grid-template-columns:1fr}.news-archive-aside{position:static}.news-year-cards{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(max-width:680px){.news-archive-list-item{grid-template-columns:1fr;gap:5px}.news-search-box{grid-template-columns:1fr}.news-search-box span{text-align:left}.news-year-cards{grid-template-columns:repeat(2,minmax(0,1fr))}.news-archive-nav{grid-template-columns:1fr}.news-archive-nav>div:last-child{text-align:left}}

/* Correctif contraste — index des actualités archivées */
.news-archive-browser .section-heading h2,
.news-archive-browser .news-years-heading h2{
  color:#092d50 !important;
}
.news-archive-browser .section-heading .small-note,
.news-archive-browser .small-note{
  color:#45596b !important;
}
.news-archive-browser .section-kicker{
  color:#1768ad !important;
}

/* Correctif contraste — libellés des records Actualités */
.news-record-card span,
.news-record-card p,
.news-record-card .label,
.news-records span,
.news-records p,
.news-callout span{
  color:#45596b !important;
}
.news-record-card strong,
.news-records strong{
  color:#092d50 !important;
}

/* Correctif contraste — note de typologie Actualités */
.news-taxonomy .section-heading .small-note{
  color:#45596b !important;
}

/* Correctif contraste — bloc archives complètes Actualités */
.numbers-future h2{
  color:#092d50 !important;
}
.numbers-future p{
  color:#45596b !important;
}

/* Correctif contraste — accueil */
.hero .hero-copy > p:not(.eyebrow){
  color:#45596b !important;
}
.hero .hero-copy > p.lead{
  color:#263f53 !important;
}
.intro h2{
  color:#092d50 !important;
}
.intro p:last-child{
  color:#45596b !important;
}

/* Correctif contraste — titres des records Actualités */
.news-records .news-record-grid h3{
  color:#092d50 !important;
}
.news-records .news-record-grid p{
  color:#45596b !important;
}

/* Correctif contraste — texte explicatif de la heatmap Actualités */
.news-heat-section .section-heading .small-note,
.news-heat-section .small-note{
  color:#45596b !important;
}


/* Accueil — contraste renforcé et mise en avant des Actualités */
.intro h2{
  color:#061d32 !important;
  font-weight:900 !important;
}
.intro p:last-child{
  color:#344b5d !important;
}
.archive-section .section-heading h2{
  color:#061d32 !important;
}
.archive-card h3{
  color:#061d32 !important;
  font-weight:900 !important;
}
.archive-card p{
  color:#344b5d !important;
}
.archive-card > span:last-child{
  color:#125f9e !important;
}
.archive-card-featured{
  position:relative;
  border:2px solid #1768ad !important;
  background:#f0f7fc !important;
  box-shadow:0 14px 34px rgba(23,104,173,.10);
}
.archive-card-featured .archive-icon{
  background:#1768ad !important;
  color:#fff !important;
}
.archive-card-featured h3{
  color:#061d32 !important;
}
.archive-badge{
  display:inline-flex;
  align-self:flex-start;
  margin-top:16px;
  padding:6px 9px;
  border-radius:999px;
  background:#dceef9;
  color:#0b568f !important;
  font-size:.72rem;
  font-weight:900;
  letter-spacing:.02em;
}

/* Continuité communautaire — Discord */
.discord-continuity{
  background:#eef6fb;
}
.discord-continuity-home{
  padding-top:58px;
  padding-bottom:58px;
}
.discord-continuity-box{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:38px;
  align-items:center;
  padding:32px 36px;
  border:1px solid #b8d6e8;
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 32px rgba(9,45,80,.07);
}
.discord-continuity-box h2{
  margin:4px 0 12px;
  color:#061d32 !important;
  font-size:clamp(1.8rem,3vw,2.9rem);
  line-height:1.08;
  letter-spacing:-.035em;
}
.discord-continuity-box p{
  max-width:780px;
  margin:0;
  color:#344b5d !important;
  line-height:1.7;
}
.discord-continuity-note{
  margin-top:12px !important;
  color:#52697a !important;
  font-size:.84rem;
}
.discord-button{
  white-space:nowrap;
}
@media(max-width:760px){
  .discord-continuity-box{
    grid-template-columns:1fr;
    padding:26px;
  }
  .discord-button{
    justify-self:start;
    white-space:normal;
  }
}

/* Archive statique — sélection du forum */
.forum-archive-hero .small-note{color:#45596b!important}
.forum-topic-meta{color:#344b5d;font-weight:700}
.forum-public-note{margin-top:18px;line-height:1.6}
.forum-archive-category{margin-bottom:52px}
.forum-archive-category h2{color:#061d32;font-size:clamp(1.7rem,3vw,2.7rem);letter-spacing:-.035em}
.forum-archive-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.forum-archive-card{display:block;padding:22px;border:1px solid var(--line);border-radius:14px;background:#fff;text-decoration:none}
.forum-archive-card>span{color:#1768ad;font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.forum-archive-card h3{margin:8px 0;color:#061d32;font-size:1.08rem;line-height:1.35}
.forum-archive-card p{margin:0;color:#45596b;font-size:.84rem}
.forum-topic-back{margin-bottom:20px}.forum-topic-back a{color:#125f9e;font-weight:800;text-decoration:none}
.forum-page-nav{display:grid;grid-template-columns:1fr auto 1fr;gap:16px;align-items:center;margin:18px 0;padding:14px 0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.forum-page-nav a{color:#125f9e;font-weight:800;text-decoration:none}.forum-page-nav a:last-child{text-align:right}
.forum-page-nav strong{color:#344b5d;font-size:.82rem}
.forum-archive-posts{display:grid;gap:14px}
.forum-archive-post{border:1px solid var(--line);border-radius:14px;background:#fff;overflow:hidden}
.forum-archive-post header{display:flex;justify-content:space-between;gap:18px;padding:13px 18px;background:#f4f8fb;border-bottom:1px solid var(--line)}
.forum-archive-post header strong{color:#092d50}.forum-archive-post header span{color:#647987;font-size:.78rem}
.forum-archive-post-content{padding:20px;color:#263f53;line-height:1.65;overflow-wrap:anywhere}
.forum-archive-post-content p:first-child{margin-top:0}.forum-archive-post-content p:last-child{margin-bottom:0}
.forum-archive-post-content blockquote{margin:16px 0;padding:14px 18px;border-left:4px solid #9bc5df;background:#f7fafc}
.forum-archive-post-content img{max-width:100%;height:auto}
.forum-media-placeholder{display:inline-block;padding:2px 6px;border-radius:5px;background:#edf3f7;color:#667d8c;font-size:.82rem;font-style:italic}
.forum-redacted{padding:14px;border-radius:8px;background:#f4f7f9;color:#667782;font-style:italic}
@media(max-width:760px){
 .forum-archive-cards{grid-template-columns:1fr}
 .forum-page-nav{grid-template-columns:1fr;text-align:left}
 .forum-page-nav a:last-child{text-align:left}
 .forum-archive-post header{flex-direction:column;gap:3px}
}


/* ================================================================
   Recette contraste globale — septembre 2026
   Couleurs secondaires renforcées pour les textes de petite taille.
   ================================================================ */

/* Pages claires : titres et textes secondaires */
.page-hero .lead,
.intro p:last-child,
.section-heading .small-note,
.source-note,
.gallery-note,
.visual-help,
.feature-card p,
.info-grid p,
.faq-list p,
.staff-card p,
.former-team-section>div>p:not(.section-kicker),
.archive-visual-card p,
.dossier-showcase-card p,
.metric-list p,
.two-column-copy p,
.news-callout span,
.news-records .news-record-grid p,
.news-taxonomy .small-note,
.news-heat-section .small-note,
.directory-heading p:last-child{
  color:#45596b !important;
}

.intro h2,
.archive-section .section-heading h2,
.archive-card h3,
.metric-list h3,
.news-records .news-record-grid h3{
  color:#061d32 !important;
}

/* Index / numérotation claire */
.list-index{
  color:#59758c !important;
}

/* Archive complète des actualités : petits textes auparavant trop pâles */
.archive-missing-media{
  color:#52697a !important;
}
.news-archive-list-item time,
.news-search-box span,
.news-search-results span,
.news-year-card span{
  color:#52697a !important;
}
.news-original-source{
  color:#52697a !important;
}
.forum-archive-post header span,
.forum-media-placeholder{
  color:#52697a !important;
}

/* Le bloc final Actualités est sombre : annule d'anciens correctifs
   qui avaient forcé du texte sombre sur fond sombre. */
.numbers-future{
  color:#fff !important;
}
.numbers-future h2{
  color:#fff !important;
}
.numbers-future p{
  color:#d8e6ef !important;
}
.numbers-future .section-kicker{
  color:#8fd0fb !important;
}

/* Sections sombres de l'accueil */
.stats-section .stats-note{
  color:#b7cad8 !important;
}
.stats-section .stat span{
  color:#d3e1eb !important;
}
.thanks-section p{
  color:#e2edf5 !important;
}

/* Navigation / footer principal */
.site-footer{
  color:#c0d0dc !important;
}

/* Archive du forum : petits libellés sur fonds sombres */
.vf-stat-source,
.vf-topic-num{
  color:#8ca5b8 !important;
}
.vf-event-year{
  color:#8ea9bd !important;
}
.vf-event-numbers{
  color:#93afc3 !important;
}

/* Archive du forum : petits libellés sur fonds clairs */
.vf-mini-stat span,
.vf-shot-address,
.vf-shot-breadcrumb,
.vf-shot-byline,
.vf-shot-footer,
.vf-memory .vf-section-lead,
.vf-memory-card p{
  color:#45596b !important;
}

/* Cartes de l'accueil */
.archive-card p{
  color:#344b5d !important;
}
.archive-card > span:last-child{
  color:#125f9e !important;
}


/* ================================================================
   Page 404 patrimoniale
   ================================================================ */
.archive-404-hero{
  padding:92px 0 82px;
  background:
    radial-gradient(circle at 80% 20%,rgba(23,104,173,.10),transparent 28%),
    linear-gradient(180deg,#f8fbfd 0%,#eef5f9 100%);
  border-bottom:1px solid #d9e5ec;
}
.archive-404-code{
  margin:8px 0 6px;
  color:#1768ad;
  font-size:clamp(5rem,14vw,10rem);
  font-weight:950;
  line-height:.82;
  letter-spacing:-.08em;
  opacity:.16;
}
.archive-404-hero h1{
  max-width:850px;
  margin:-10px 0 18px;
  color:#061d32;
  font-size:clamp(2.7rem,6vw,5.7rem);
  line-height:.97;
  letter-spacing:-.055em;
}
.archive-404-hero .lead{
  max-width:810px;
  color:#344b5d !important;
  font-size:1.15rem;
  line-height:1.7;
}
.archive-404-copy{
  max-width:810px;
  margin-top:18px;
  color:#45596b;
  line-height:1.7;
}
.archive-404-copy strong{color:#092d50}
.archive-404-actions{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:30px;
}
.archive-404-secondary{
  border:1px solid #9eb9ca;
  background:#fff;
  color:#0c527e !important;
}
.archive-404-paths{background:#fff}
.archive-404-grid{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.archive-404-card{
  display:block;
  padding:28px;
  border:1px solid #cbdce7;
  border-radius:16px;
  background:#fff;
  text-decoration:none;
}
.archive-404-card--featured{
  border:2px solid #1768ad;
  background:#f0f7fc;
}
.archive-404-card>span{
  color:#1768ad;
  font-size:.75rem;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.05em;
}
.archive-404-card h3{
  margin:9px 0;
  color:#061d32;
  font-size:1.35rem;
}
.archive-404-card p{
  margin:0 0 18px;
  color:#45596b;
  line-height:1.6;
}
.archive-404-card strong{color:#125f9e}
.archive-404-note{
  padding:70px 0;
  background:#082842;
}
.archive-404-note h2{
  margin:0 0 14px;
  color:#fff;
  font-size:clamp(1.8rem,3vw,2.8rem);
}
.archive-404-note p{
  color:#d8e6ef;
  line-height:1.7;
}
.archive-404-note a{
  color:#a9dcff;
  font-weight:800;
}
@media(max-width:700px){
  .archive-404-hero{padding:68px 0 60px}
  .archive-404-grid{grid-template-columns:1fr}
  .archive-404-actions{align-items:stretch}
}


/* Correction contraste accueil — phrase génération */
.intro p:last-child{
  color:#1f3a4d !important;
  font-weight:700 !important;
}


/* Correction contraste accueil — titre Archives */
.archive-section .section-heading h2{
  color:#061d32 !important;
  font-weight:900 !important;
}


/* Accueil — contraste très clair demandé */
.intro p:last-child{
  color:#f4f8fb !important;
  font-weight:800 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.22) !important;
}

.archive-section .section-heading h2{
  color:#ffffff !important;
  font-weight:950 !important;
  text-shadow:0 1px 2px rgba(0,0,0,.22) !important;
}


/* Correction définitive des deux titres de l'accueil */
#histoire h2{
  color:#031727 !important;
  font-weight:950 !important;
  text-shadow:none !important;
  opacity:1 !important;
}

#archives .section-heading h2{
  color:#031727 !important;
  font-weight:950 !important;
  text-shadow:none !important;
  opacity:1 !important;
}


/* Ajustement demandé : titres de l'accueil en bleu très clair / quasi blanc */
#histoire h2{
  color:#eef6ff !important;
  font-weight:950 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.45) !important;
}

#archives .section-heading h2{
  color:#eef6ff !important;
  font-weight:950 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.45) !important;
}


/* ================================================================
   Bibliothèque patrimoniale VosseyFTP
   ================================================================ */
.ftp-hero .lead strong{color:inherit}
.ftp-highlights{background:#f4f9fc}
.ftp-feature-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.ftp-feature-card{display:block;padding:22px;border:1px solid #cbdce7;border-radius:14px;background:#fff;text-decoration:none}
.ftp-feature-card>span,.ftp-result-card>div:first-child>span{color:#1768ad;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.ftp-feature-card h3,.ftp-result-card h3{margin:8px 0;color:#061d32;line-height:1.3}
.ftp-feature-card p,.ftp-result-card p{margin:0;color:#45596b}
.ftp-search-panel{padding:24px;border:1px solid #cbdce7;border-radius:16px;background:#f8fbfd}
.ftp-search-panel label{display:block;margin-bottom:9px;color:#061d32;font-size:1.05rem;font-weight:900}
#ftp-search{width:100%;padding:15px 16px;border:1px solid #9db7c8;border-radius:10px;background:#fff;color:#061d32;font:inherit}
.ftp-filters{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.ftp-filters select{padding:11px;border:1px solid #b4c8d5;border-radius:9px;background:#fff;color:#17384d}
.ftp-count{margin:12px 0 0;color:#45596b;font-size:.85rem}
.ftp-results{display:grid;gap:10px;margin-top:18px}
.ftp-result-card{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:18px 20px;border:1px solid #d2e0e8;border-radius:12px;background:#fff;text-decoration:none}
.ftp-result-card:hover{border-color:#8ab9d6;box-shadow:0 8px 24px rgba(8,40,66,.06)}
.ftp-result-card h3{font-size:1.05rem}
.ftp-result-card p{font-size:.82rem;overflow-wrap:anywhere}
.ftp-result-meta{text-align:right}
.ftp-result-meta strong{display:block;color:#092d50}
.ftp-result-meta span{display:block;margin-top:4px;color:#52697a;font-size:.76rem}
.ftp-limit-note{padding:15px;text-align:center;color:#52697a}
.ftp-warning{padding:70px 0;background:#082842}
.ftp-warning h2{color:#fff}.ftp-warning p:not(.section-kicker){color:#d8e6ef;line-height:1.7}
.ftp-detail-layout{display:grid;grid-template-columns:minmax(0,1fr) 330px;gap:28px;align-items:start}
.ftp-description{color:#263f53;line-height:1.7}
.ftp-download-box{margin-top:28px;padding:22px;border:1px solid #bad2e0;border-radius:14px;background:#f4f9fc}
.ftp-download-box code{display:block;margin:8px 0 16px;color:#17384d;overflow-wrap:anywhere}
.ftp-download-disabled{margin-bottom:12px}
.ftp-meta-card{padding:22px;border:1px solid #cbdce7;border-radius:14px;background:#fff}
.ftp-meta-card h2{margin-top:0;color:#061d32}
.ftp-meta-card dl{margin:0}.ftp-meta-card dt{margin-top:14px;color:#52697a;font-size:.72rem;font-weight:900;text-transform:uppercase;letter-spacing:.04em}
.ftp-meta-card dd{margin:3px 0 0;color:#17384d;overflow-wrap:anywhere}
.ftp-meta-card code{font-size:.78rem}
.ftp-security-status,.ftp-history-note{margin-top:20px;padding:13px;border-radius:9px;background:#fff7df;color:#644b08;line-height:1.5}
@media(max-width:860px){
 .ftp-feature-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .ftp-detail-layout{grid-template-columns:1fr}
}
@media(max-width:640px){
 .ftp-feature-grid,.ftp-filters{grid-template-columns:1fr}
 .ftp-result-card{grid-template-columns:1fr}
 .ftp-result-meta{text-align:left}
}


/* Téléchargements — présentation éditoriale */
.ftp-about .section-heading{max-width:860px}
.ftp-summary-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px;
  margin-top:26px;
}
.ftp-summary-card{
  padding:22px;
  border:1px solid #cbdce7;
  border-radius:14px;
  background:#fff;
}
.ftp-summary-card strong{
  display:block;
  color:#1768ad;
  font-size:1.8rem;
  line-height:1;
}
.ftp-summary-card h3{
  margin:9px 0 7px;
  color:#061d32;
}
.ftp-summary-card p{
  margin:0;
  color:#45596b;
  line-height:1.55;
}
@media(max-width:800px){
  .ftp-summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:560px){
  .ftp-summary-grid{grid-template-columns:1fr}
}


/* Accueil — contraste final des titres sur fonds sombres */
#histoire h2{
  color:#eef6ff !important;
  font-weight:950 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.45) !important;
}
#archives .section-heading h2{
  color:#eef6ff !important;
  font-weight:950 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.45) !important;
}

/* Téléchargements — contraste note d'introduction */
.ftp-hero .ftp-hero-note{
  color:#17384d !important;
  font-weight:700 !important;
  opacity:1 !important;
}
.ftp-hero .ftp-hero-note strong{
  color:#061d32 !important;
  font-weight:900 !important;
}

/* Fiches téléchargements — contraste texte et chemin */
.ftp-description{
  color:#6f8798 !important;
  font-weight:500 !important;
}
.ftp-download-box code,
.ftp-meta-card code{
  color:#061d32 !important;
  font-weight:800 !important;
}

/* VosseyFTP — disponibilité réelle */
.ftp-result-topline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.ftp-presence-badge{
  display:inline-flex;align-items:center;padding:3px 8px;border-radius:999px;
  font-size:.69rem;font-weight:850;letter-spacing:.02em
}
.ftp-presence-badge.is-available{
  background:#e8f5ee;color:#205c3b;border:1px solid #bedfcd
}
.ftp-presence-badge.is-missing{
  background:#f4f0ed;color:#6d5141;border:1px solid #ddcec5
}
.ftp-download-disabled{opacity:.6;cursor:not-allowed;pointer-events:none}


/* Accueil — bannière temporaire transition archives */
.archive-transition-banner{
  position:relative;
  z-index:2;
  padding:22px 0;
  background:#edf6fb;
  border-top:1px solid #c8dbe7;
  border-bottom:1px solid #c8dbe7;
}
.archive-transition-inner{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:28px;
  align-items:center;
}
.archive-transition-copy{max-width:860px}
.archive-transition-kicker{
  margin:0 0 4px;
  color:#1768ad;
  font-size:.74rem;
  font-weight:900;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.archive-transition-copy h2{
  margin:.1rem 0 .45rem;
  color:#061d32;
  font-size:clamp(1.25rem,2.2vw,1.7rem);
  line-height:1.2;
}
.archive-transition-copy p{
  margin:0;
  color:#45596b;
  line-height:1.6;
}
.archive-transition-copy strong{color:#17384d}
.archive-transition-actions{
  display:flex;
  gap:10px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.archive-transition-actions .vf-button{white-space:nowrap}
@media(max-width:850px){
  .archive-transition-inner{
    grid-template-columns:1fr;
    gap:16px;
  }
  .archive-transition-actions{justify-content:flex-start}
}
@media(max-width:540px){
  .archive-transition-banner{padding:18px 0}
  .archive-transition-actions{
    display:grid;
    grid-template-columns:1fr;
  }
  .archive-transition-actions .vf-button{
    width:100%;
    text-align:center;
  }
}

/* Consolidation accueil / communauté / FAQ */
.archive-transition-oldsite{color:#061d32!important}
.archive-transition-old-button{color:#061d32!important;border-color:#7895a8!important;background:#fff!important}
.archive-transition-old-button:hover{color:#061d32!important;background:#e4eef4!important}
.timeline-year,.visual-timeline .year,.timeline-item time,.timeline-item .year{color:#061d32!important;font-weight:950!important}
.explorer-download-card strong{display:block;margin-top:12px;color:#1768ad;font-size:.82rem;font-weight:900}

.community-hero .lead{max-width:820px}
.community-intro h2,.community-forum h2,.community-access h2,.community-play h2,.community-discord h2,.community-links h2{color:#061d32}
.community-intro p,.community-forum p,.community-access p,.community-play p,.community-discord p{color:#45596b;line-height:1.75}
.community-data-note{margin:22px 0 0;color:#627989;font-size:.88rem;line-height:1.6}
.community-split{display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:42px;align-items:center}
.community-split-reverse{grid-template-columns:minmax(320px,.9fr) minmax(0,1.1fr)}
.community-quote-card,.community-highlight-card{padding:28px;border-radius:16px;border:1px solid #c8dbe7;background:#edf6fb}
.community-quote-card blockquote{margin:8px 0 0;color:#17384d;font-size:1.3rem;line-height:1.55;font-weight:750}
.community-highlight-card h2{margin-top:.2rem}
.community-discord{background:#082842}
.community-discord-inner{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:30px;align-items:center}
.community-discord .section-kicker{color:#8fd0fb}.community-discord h2{color:#fff}.community-discord p{color:#d8e6ef}
.community-link-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.community-link-grid a{display:block;padding:22px;border:1px solid #cbdce7;border-radius:13px;background:#f8fbfd;text-decoration:none}
.community-link-grid strong{display:block;color:#061d32;font-size:1.08rem}
.community-link-grid span{display:block;margin-top:7px;color:#52697a;line-height:1.5}

.faq-section{background:#f6f9fb}.faq-list{display:grid;gap:14px}
.faq-item{padding:22px 24px;border:1px solid #c6d8e4;border-radius:14px;background:#fff;box-shadow:0 5px 18px rgba(6,29,50,.05)}
.faq-item h2{margin:0 0 10px;color:#061d32!important;font-size:clamp(1.08rem,2vw,1.35rem);line-height:1.3;font-weight:900!important}
.faq-item p{margin:.55rem 0 0;color:#334d60!important;line-height:1.72;font-weight:500}
.faq-item strong{color:#17384d!important;font-weight:900}.faq-item a:not(.vf-button){color:#125f9e;font-weight:800}
@media(max-width:850px){.community-split,.community-split-reverse,.community-discord-inner{grid-template-columns:1fr}.community-link-grid{grid-template-columns:1fr}}
@media(max-width:640px){.faq-item{padding:18px}}


/* Communauté — contraste renforcé final */

/* Hero */
.community-hero .section-kicker{
  color:#125f9e !important;
  font-weight:900 !important;
}
.community-hero h1{
  color:#061d32 !important;
}
.community-hero .lead{
  color:#243f54 !important;
  font-weight:650 !important;
}

/* Toutes les sections claires */
.community-intro,
.community-numbers,
.community-forum,
.community-access,
.community-play,
.community-links{
  color:#253f52 !important;
}
.community-intro h2,
.community-numbers h2,
.community-forum h2,
.community-access h2,
.community-play h2,
.community-links h2,
.community-numbers h3{
  color:#061d32 !important;
  font-weight:900 !important;
}
.community-intro p,
.community-numbers p,
.community-forum p,
.community-access p,
.community-play p,
.community-links p{
  color:#304b5e !important;
  opacity:1 !important;
}
.community-intro .section-kicker,
.community-numbers .section-kicker,
.community-forum .section-kicker,
.community-access .section-kicker,
.community-play .section-kicker,
.community-links .section-kicker{
  color:#125f9e !important;
  font-weight:900 !important;
}

/* Bloc de chiffres */
.community-numbers .numbers-grid strong{
  color:#061d32 !important;
  font-weight:950 !important;
}
.community-numbers .numbers-grid h3{
  color:#125f9e !important;
  font-weight:900 !important;
}
.community-numbers .numbers-grid p{
  color:#304b5e !important;
  font-weight:550 !important;
}
.community-data-note{
  color:#3a5365 !important;
  font-weight:550 !important;
}

/* Encarts */
.community-quote-card,
.community-highlight-card{
  background:#edf6fb !important;
}
.community-quote-card .section-kicker,
.community-highlight-card .section-kicker{
  color:#125f9e !important;
}
.community-quote-card blockquote{
  color:#17384d !important;
  font-weight:800 !important;
}
.community-highlight-card h2{
  color:#061d32 !important;
}
.community-highlight-card p{
  color:#29475c !important;
}
.community-highlight-card strong{
  color:#061d32 !important;
}

/* Liens de fin de page */
.community-link-grid strong{
  color:#061d32 !important;
  font-weight:900 !important;
}
.community-link-grid span{
  color:#304b5e !important;
  font-weight:550 !important;
}
.community-play .text-link{
  color:#0d5b98 !important;
  font-weight:900 !important;
}

/* Bloc sombre Discord : contraste inverse */
.community-discord{
  color:#fff !important;
}
.community-discord .section-kicker{
  color:#9ed8ff !important;
  font-weight:900 !important;
}
.community-discord h2{
  color:#ffffff !important;
}
.community-discord p{
  color:#e4eff6 !important;
  opacity:1 !important;
}


/* Communauté — titres de sections plus clairs */
.community-intro h2,
.community-numbers .section-heading h2,
.community-forum h2,
.community-access > .container > div:not(.community-highlight-card) h2{
  color:#eef6ff !important;
  font-weight:950 !important;
  text-shadow:0 2px 10px rgba(0,0,0,.38) !important;
}

/* L'encart Counter-Strike reste sur fond clair : titre foncé */
.community-highlight-card h2{
  color:#061d32 !important;
  text-shadow:none !important;
}
