:root{--bg:#07070b;--panel:#101019;--text:#ede2ff;--muted:#aaa5b6;--violet:#501f95;--blue:#087cff;--line:#282334}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif}body:before{content:"";position:fixed;inset:0;pointer-events:none;background:radial-gradient(circle at 78% 15%,#501f9530,transparent 28%),radial-gradient(circle at 20% 35%,#087cff18,transparent 25%)}header{height:88px;padding:10px max(5vw,24px);display:flex;align-items:center;justify-content:space-between;position:fixed;z-index:10;width:100%;top:0;background:#07070bd9;backdrop-filter:blur(16px);border-bottom:1px solid #ffffff10}.brand img{width:70px;height:70px;object-fit:contain}nav{display:flex;gap:28px}nav a,.actions a{color:var(--text);text-decoration:none;font-size:14px;font-weight:700}nav a:hover,nav a.active{color:#8ec6ff}.menu{display:none;background:none;border:0;color:white;font-size:28px}.hero{min-height:100vh;display:grid;grid-template-columns:1fr 1.2fr;align-items:center;gap:5vw;padding:130px 7vw 70px;position:relative;overflow:hidden}.hero-logo{width:min(42vw,620px);filter:drop-shadow(0 0 45px #711eff55)}.hero-copy{position:relative;z-index:2}.eyebrow,.kicker{font-size:12px;letter-spacing:.3em;font-weight:800;color:#8abfff}.hero h1,.section h2,.page-hero h1{font-size:clamp(42px,5vw,82px);line-height:.93;margin:18px 0 24px;letter-spacing:-.045em}.hero h1 span,.gradient{background:linear-gradient(90deg,#36a3ff,#b83cff);-webkit-background-clip:text;color:transparent}.lead{max-width:720px;color:#c4becd;font-size:18px;line-height:1.65}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:32px}.actions a,.button{padding:15px 22px;border:1px solid #ffffff25;border-radius:8px;text-decoration:none;color:var(--text);font-weight:700;display:inline-block}.actions .primary,.button.primary{background:linear-gradient(100deg,#087cff,#7028c8);border:0}.page-hero{padding:165px 7vw 75px;border-bottom:1px solid var(--line);min-height:48vh;display:flex;flex-direction:column;justify-content:end}.page-hero p{max-width:760px}.section{padding:90px 7vw;border-top:1px solid var(--line)}.section h2{font-size:clamp(34px,4vw,60px)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.cards article,.info-card{background:linear-gradient(145deg,#13131d,#0c0c13);border:1px solid #ffffff12;border-radius:16px;padding:30px;min-height:210px}.cards span,.tag{font-size:11px;color:#9b7cff;font-weight:bold;letter-spacing:.15em}.cards h3,.info-card h3{font-size:25px;margin:15px 0}.cards p,.info-card p,.bodycopy{color:#b4afbc;line-height:1.7}.cards a,.textlink{color:#75baff;text-decoration:none;font-weight:bold}.split{display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:center}.split>div:last-child{font-size:18px;line-height:1.8;color:#bbb5c3}.preview-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.preview{padding:28px;border:1px solid #ffffff12;border-radius:16px;background:#101018}.preview h3{font-size:24px}.preview p{color:#aaa5b6;line-height:1.6}.rig-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:38px}.rig-card{background:linear-gradient(145deg,#13131d,#0c0c13);border:1px solid #ffffff12;border-radius:16px;padding:28px}.rig-card h3{margin:8px 0 18px;font-size:23px}.rig-card ul{margin:0;padding-left:18px;color:#b8b2c0;line-height:1.85}.logos{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;margin-top:40px}.partner-logo{height:160px;border:1px solid #ffffff12;border-radius:14px;background:#101018;display:flex;align-items:center;justify-content:center;padding:24px;transition:.2s transform,.2s border-color}.partner-logo:hover{transform:translateY(-3px);border-color:#6b47a8}.partner-logo img{max-width:100%;max-height:100px;object-fit:contain}.partner-logo.skins{padding:8px}.partner-logo.skins img{max-height:145px;max-width:145px}.partner-list{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:40px}.partner{display:grid;grid-template-columns:180px 1fr;gap:25px;align-items:center;background:#101018;border:1px solid #ffffff12;border-radius:18px;padding:25px}.partner .visual{height:130px;display:flex;align-items:center;justify-content:center}.partner .visual img{max-width:100%;max-height:100px;object-fit:contain}.partner.skins .visual img{max-height:130px}.partner h3{font-size:25px;margin:0 0 10px}.partner p{color:#aaa5b6;line-height:1.6}.contact{text-align:center;background:radial-gradient(circle at center,#501f9533,transparent 45%)}.mail{font-size:clamp(24px,4vw,50px);color:#8bc7ff;text-decoration:none;font-weight:800}footer{padding:42px 7vw;display:flex;align-items:center;gap:20px;color:#77717f;border-top:1px solid var(--line);font-size:12px}footer img{width:55px}.note{padding:18px 20px;border-left:3px solid var(--violet);background:#ffffff08;color:#aaa5b6;border-radius:0 10px 10px 0}.muted{color:#77717f;font-size:13px}@media(max-width:900px){header{height:74px}.brand img{width:55px;height:55px}.menu{display:block}nav{display:none;position:absolute;top:74px;left:0;right:0;padding:25px;background:#0b0b12;flex-direction:column}nav.open{display:flex}.hero{grid-template-columns:1fr;text-align:center;padding-top:120px}.hero-logo{width:min(70vw,420px);margin:auto}.lead{margin-left:auto;margin-right:auto}.actions{justify-content:center}.cards,.split,.preview-grid,.rig-grid,.partner-list{grid-template-columns:1fr}.logos{grid-template-columns:repeat(2,1fr)}.partner{grid-template-columns:1fr;text-align:center}.section{padding:70px 7vw}.page-hero{padding-top:135px}}


/* V14 — Harmonisation des pages internes */
body:not(.home-page) .page-hero{
  min-height:0;
  padding:88px 7vw 68px;
  display:block;
}
body:not(.home-page) .page-hero .kicker{margin:0 0 24px}
body:not(.home-page) .page-hero h1{margin:0 0 26px}
body:not(.home-page) .page-hero .lead{margin:0}
@media(max-width:900px){
  body:not(.home-page) .page-hero{min-height:0;padding:74px 7vw 54px}
}

/* V20 — accueil + réseaux sociaux */
header{gap:18px}
.social-nav{display:flex;align-items:center;gap:9px;margin-left:auto;margin-right:8px}
.social-nav a{width:31px;height:31px;border:1px solid #ffffff18;border-radius:8px;display:grid;place-items:center;color:#d9d4e7;background:#ffffff05;transition:.18s ease}
.social-nav a:hover{color:#fff;border-color:#7c55d8;background:#ffffff0d;transform:translateY(-1px)}
.social-nav svg{width:16px;height:16px;fill:currentColor}
.home-hero{min-height:680px;height:76vh;max-height:820px;padding:88px 7vw 0;display:block;position:relative;isolation:isolate;border-bottom:1px solid var(--line)}
.home-hero .hero-backdrop{position:absolute;inset:88px 0 0;background-image:linear-gradient(90deg,rgba(5,7,14,.18),rgba(7,7,11,.42) 48%,rgba(7,7,11,.72)),linear-gradient(0deg,rgba(7,7,11,.82) 0%,transparent 35%),url('assets/accueil-circuit.webp');background-size:cover;background-position:center 54%;z-index:-2}
.home-hero:after{content:"";position:absolute;inset:88px 0 0;background:radial-gradient(circle at 26% 48%,rgba(42,126,255,.12),transparent 30%),radial-gradient(circle at 70% 45%,rgba(112,40,200,.15),transparent 34%);z-index:-1;pointer-events:none}
.hero-inner{height:100%;max-width:1650px;margin:0 auto;display:grid;grid-template-columns:minmax(360px,.85fr) minmax(520px,1.15fr);align-items:center;gap:7vw;padding-bottom:20px}
.home-hero .hero-logo{width:min(31vw,500px);justify-self:center;filter:drop-shadow(0 0 42px #711eff66)}
.home-hero .hero-copy{padding:34px 38px;border:1px solid #ffffff14;border-radius:20px;background:linear-gradient(135deg,rgba(7,8,14,.68),rgba(14,10,22,.55));backdrop-filter:blur(8px);box-shadow:0 22px 70px #0000003d}
.home-hero h1{font-size:clamp(44px,4.35vw,74px);margin:14px 0 18px}
.home-hero .lead{font-size:17px;max-width:690px;margin:0}
.home-hero .actions{margin-top:24px}
.home-page .section{padding-top:66px;padding-bottom:66px}
@media(max-width:1100px){nav{gap:18px}.social-nav{gap:6px}.social-nav a{width:29px;height:29px}.hero-inner{grid-template-columns:.8fr 1.2fr;gap:4vw}.home-hero .hero-copy{padding:28px}}
@media(max-width:900px){header{gap:10px}.social-nav{margin-left:auto;margin-right:4px}.social-nav a{width:28px;height:28px}.social-nav svg{width:14px;height:14px}.home-hero{height:auto;min-height:0;padding:74px 0 0}.home-hero .hero-backdrop,.home-hero:after{inset:74px 0 0}.hero-inner{grid-template-columns:1fr;gap:20px;padding:48px 7vw 54px}.home-hero .hero-logo{width:min(56vw,330px)}.home-hero .hero-copy{padding:24px;text-align:center}.home-hero .actions{justify-content:center}}
@media(max-width:560px){.social-nav{gap:4px}.social-nav a{width:25px;height:25px;border-radius:6px}.brand img{width:48px;height:48px}.home-hero h1{font-size:38px}}

/* V22 — Accueil */
.preview-grid{grid-template-columns:repeat(4,1fr)}
.home-page .partner-logo.tfs{padding:10px;overflow:hidden}
.home-page .partner-logo.tfs img{max-width:135%;max-height:132px;transform:scale(1.22)}

/* V84 — Compteurs calendrier : plus courts et mieux proportionnés aux miniatures */
.next-live-countdown{
  width:min(860px, calc(100% - 24px));
  box-sizing:border-box;
  margin:0 auto 34px;
  padding:20px 22px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border:1px solid rgba(126,87,255,.34);
  border-radius:18px;
  background:
    radial-gradient(circle at 10% 0%,rgba(45,135,255,.15),transparent 34%),
    radial-gradient(circle at 92% 100%,rgba(145,64,255,.16),transparent 36%),
    rgba(12,12,20,.90);
  box-shadow:0 16px 40px rgba(0,0,0,.22);
  position:relative;
  overflow:hidden;
}
.next-live-countdown::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;width:4px;
  background:linear-gradient(180deg,#35a7ff,#8e4dff);
}
.countdown-copy{
  min-width:0;
  flex:1;
}
.countdown-kicker{
  margin:0 0 6px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.16em;
  color:#a689ff;
}
.countdown-event{
  margin:0;
  font-size:clamp(21px,2vw,28px);
  line-height:1.12;
  font-weight:850;
  color:#f6f2ff;
}
.countdown-date{
  margin-top:7px;
  font-size:14px;
  line-height:1.35;
  color:#aaa4b7;
}
.countdown-time{
  display:grid;
  grid-template-columns:repeat(4,72px);
  gap:8px;
  flex:0 0 auto;
}
.countdown-time span{
  padding:11px 7px 9px;
  text-align:center;
  border-radius:11px;
  background:rgba(255,255,255,.05);
  border:1px solid rgba(255,255,255,.075);
}
.countdown-time strong{
  display:block;
  font-size:25px;
  line-height:1;
  color:#fff;
  font-variant-numeric:tabular-nums;
}
.countdown-time small{
  display:block;
  margin-top:6px;
  font-size:9px;
  font-weight:900;
  letter-spacing:.10em;
  color:#9a95a6;
}
.next-live-countdown.is-live{
  border-color:rgba(255,55,80,.48);
}
.next-live-countdown.is-live::before{background:#ff3750}
.next-live-countdown.is-live .countdown-kicker{color:#ff6578}

/* Compte à rebours individuel dans chaque carte :
   plus lisible par rapport à la taille des miniatures */
.event-countdown{
  display:inline-flex;
  align-items:center;
  gap:10px;
  max-width:100%;
  margin:2px 0 16px;
  padding:9px 13px;
  border-radius:10px;
  border:1px solid rgba(126,87,255,.24);
  background:linear-gradient(90deg,rgba(35,126,255,.08),rgba(139,71,255,.10));
  white-space:nowrap;
}
.event-countdown-label{
  color:#9b92ad;
  font-size:10px;
  line-height:1;
  font-weight:900;
  letter-spacing:.13em;
}
.event-countdown-value{
  color:#eee8fb;
  font-size:14px;
  line-height:1;
  font-weight:850;
  font-variant-numeric:tabular-nums;
}
.event-card.is-live .event-countdown{
  border-color:rgba(255,55,80,.40);
  background:rgba(255,55,80,.08);
}
.event-card.is-live .event-countdown-label,
.event-card.is-live .event-countdown-value{color:#ff6b7c}
.event-card.is-past .event-countdown{display:none}

@media(max-width:900px){
  .next-live-countdown{
    width:min(680px, calc(100% - 20px));
    align-items:flex-start;
    flex-direction:column;
    gap:14px;
  }
  .countdown-time{
    width:100%;
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
}
@media(max-width:520px){
  .next-live-countdown{
    width:calc(100% - 20px);
    padding:16px 16px 17px;
    margin-bottom:26px;
  }
  .countdown-event{
    font-size:19px;
  }
  .countdown-date{
    font-size:12px;
  }
  .countdown-time{
    gap:6px;
  }
  .countdown-time span{
    padding:9px 3px 8px;
  }
  .countdown-time strong{
    font-size:20px;
  }
  .event-countdown{
    white-space:normal;
    flex-wrap:wrap;
    padding:8px 10px;
  }
  .event-countdown-label{
    font-size:9px;
  }
  .event-countdown-value{
    font-size:13px;
  }
}


/* V89 — Mon coéquipier : reconstruction éditoriale complète */
.jerome-page{overflow:hidden}
.jerome-page .section,.jerome-hero-inner,.jerome-duo-inner{max-width:1180px;margin-left:auto;margin-right:auto}

.jerome-hero{
  min-height:520px;display:flex;align-items:center;
  background:
    radial-gradient(circle at 18% 25%,rgba(35,132,255,.13),transparent 34%),
    radial-gradient(circle at 82% 70%,rgba(126,54,255,.11),transparent 32%);
  border-bottom:1px solid rgba(255,255,255,.06)
}
.jerome-hero-inner{width:100%;padding-top:75px;padding-bottom:70px}
.jerome-kicker{
  display:block;margin-bottom:13px;font-size:11px;font-weight:900;
  letter-spacing:.21em;color:#62aaff
}
.jerome-hero h1{
  margin:0;font-size:clamp(58px,8vw,104px);line-height:.82;
  letter-spacing:-.045em;color:#eee8ff
}
.jerome-hero h1 span{
  background:linear-gradient(90deg,#35a7ff,#a63cff);
  -webkit-background-clip:text;background-clip:text;color:transparent
}
.jerome-hero p{
  max-width:720px;margin:35px 0 22px;font-size:18px;line-height:1.7;color:#aaa5b5
}
.jerome-signature{font-size:11px;font-weight:900;letter-spacing:.16em;color:#777181}

.jerome-editorial{
  display:grid;grid-template-columns:190px minmax(0,1fr);gap:75px;
  padding-top:100px;padding-bottom:100px
}
.jerome-index{padding-top:8px}
.jerome-index span{
  display:block;font-size:42px;font-weight:900;line-height:1;
  color:rgba(126,87,255,.36)
}
.jerome-index strong{
  display:block;margin-top:10px;font-size:10px;letter-spacing:.17em;color:#716b7d
}
.jerome-copy{max-width:820px}
.jerome-copy h2,.jerome-racing h2,.jerome-duo h2{
  margin:0 0 27px;font-size:clamp(31px,4vw,51px);line-height:1.04;color:#eee9fb
}
.jerome-copy p,.jerome-racing-copy p,.jerome-duo-columns p{
  font-size:16px;line-height:1.82;color:#aaa5b4
}
.jerome-copy p+p,.jerome-racing-copy p+p{margin-top:18px}

.jerome-racing{
  display:grid;grid-template-columns:minmax(0,1.25fr) minmax(290px,.75fr);
  gap:75px;align-items:center;padding-top:80px;padding-bottom:90px
}
.jerome-racing-copy{max-width:750px}
.jerome-pullquote{
  padding:35px 32px;border-radius:0 24px 24px 24px;
  border:1px solid rgba(126,87,255,.25);
  background:linear-gradient(145deg,rgba(32,116,255,.07),rgba(131,53,255,.10))
}
.jerome-pullquote span,.jerome-taste>span,.jerome-final>span{
  font-size:9px;font-weight:900;letter-spacing:.17em;color:#7f72a1
}
.jerome-pullquote blockquote{
  margin:17px 0 0;font-size:23px;line-height:1.5;font-weight:750;
  font-style:italic;color:#e9e3f5
}

.jerome-tastes{
  display:grid;grid-template-columns:190px minmax(0,1fr);gap:75px;
  padding-top:95px;padding-bottom:110px
}
.jerome-tastes-content{
  display:grid;grid-template-columns:1fr 1fr;gap:0;
  border-top:1px solid rgba(255,255,255,.09)
}
.jerome-taste{
  padding:31px 30px 34px 0;border-bottom:1px solid rgba(255,255,255,.09)
}
.jerome-taste:nth-child(2){padding-left:35px;border-left:1px solid rgba(255,255,255,.09)}
.jerome-taste-wide{grid-column:1/-1;padding-right:15%;padding-top:38px}
.jerome-taste h3{
  margin:9px 0 13px;font-size:27px;line-height:1.05;color:#eee8fa
}
.jerome-taste p{max-width:700px;margin:0;font-size:14px;line-height:1.7;color:#918c9d}

.jerome-duo{
  padding:105px 24px 100px;
  background:
    radial-gradient(circle at 82% 20%,rgba(135,55,255,.12),transparent 30%),
    linear-gradient(90deg,rgba(29,111,255,.045),transparent 45%);
  border-top:1px solid rgba(255,255,255,.055);
  border-bottom:1px solid rgba(255,255,255,.055)
}
.jerome-duo-inner{position:relative}
.jerome-duo h2{max-width:850px}
.jerome-duo-columns{
  display:grid;grid-template-columns:1fr 1fr;gap:60px;max-width:950px
}
.jerome-duo-word{
  margin-top:45px;font-size:clamp(48px,9vw,118px);line-height:.8;
  font-weight:950;letter-spacing:-.055em;color:rgba(126,87,255,.085);
  user-select:none
}

.jerome-final{
  max-width:1180px!important;padding-top:100px;padding-bottom:110px;text-align:center
}
.jerome-final blockquote{
  margin:18px auto 0;max-width:1100px;font-size:clamp(24px,3.2vw,39px);
  line-height:1.42;font-weight:800;color:#eee8fa
}

@media(max-width:820px){
  .jerome-hero{min-height:450px}
  .jerome-editorial,.jerome-tastes{grid-template-columns:1fr;gap:30px}
  .jerome-racing{grid-template-columns:1fr;gap:35px}
  .jerome-index{display:flex;align-items:center;gap:12px}
  .jerome-index strong{margin:0}
  .jerome-duo-columns{grid-template-columns:1fr;gap:10px}
}
@media(max-width:560px){
  .jerome-hero-inner{padding-top:55px;padding-bottom:55px}
  .jerome-hero p{font-size:16px}
  .jerome-editorial,.jerome-racing,.jerome-tastes{padding-top:65px;padding-bottom:70px}
  .jerome-tastes-content{grid-template-columns:1fr}
  .jerome-taste:nth-child(2){padding-left:0;border-left:0}
  .jerome-taste-wide{grid-column:auto;padding-right:0}
  .jerome-duo{padding-top:70px;padding-bottom:70px}
  .jerome-final{padding-top:75px;padding-bottom:80px}
}


/* V90 — Lisibilité page Mon coéquipier */
.jerome-hero p{
  max-width:780px;
  font-size:19px;
  line-height:1.72;
}
.jerome-kicker{
  font-size:12px;
}
.jerome-signature{
  font-size:12px;
  letter-spacing:.15em;
}

.jerome-copy{
  max-width:900px;
}
.jerome-copy p,
.jerome-racing-copy p,
.jerome-duo-columns p{
  font-size:18px;
  line-height:1.78;
}

.jerome-index strong{
  font-size:11px;
}
.jerome-pullquote span,
.jerome-taste>span,
.jerome-final>span{
  font-size:11px;
}

.jerome-racing{
  grid-template-columns:minmax(0,1.35fr) minmax(330px,.65fr);
  gap:65px;
}
.jerome-racing-copy{
  max-width:800px;
}
.jerome-pullquote blockquote{
  font-size:25px;
  line-height:1.48;
}

.jerome-tastes{
  grid-template-columns:170px minmax(0,1fr);
  gap:55px;
}
.jerome-tastes-content{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
}
.jerome-taste{
  padding:34px 38px 38px 0;
}
.jerome-taste:nth-child(2){
  padding-left:38px;
}
.jerome-taste h3{
  font-size:30px;
  margin-top:11px;
}
.jerome-taste p{
  max-width:none;
  font-size:16px;
  line-height:1.68;
}
.jerome-taste-wide{
  padding-top:42px;
  padding-right:8%;
}
.jerome-taste-wide p{
  max-width:780px;
}

@media(max-width:820px){
  .jerome-copy p,
  .jerome-racing-copy p,
  .jerome-duo-columns p{
    font-size:17px;
  }
  .jerome-racing{
    grid-template-columns:1fr;
  }
  .jerome-tastes{
    grid-template-columns:1fr;
    gap:30px;
  }
}
@media(max-width:560px){
  .jerome-hero p{font-size:17px}
  .jerome-copy p,
  .jerome-racing-copy p,
  .jerome-duo-columns p{font-size:16px}
  .jerome-taste p{font-size:15px}
  .jerome-taste h3{font-size:27px}
}


/* V91 — Jérôme : même hiérarchie typographique que la présentation DAMS 360 */
.jerome-page{
  --jerome-body-size: 18px;
  --jerome-body-line: 1.72;
  --jerome-small-size: 13px;
}

.jerome-hero{
  min-height:500px;
}
.jerome-hero-inner{
  padding-top:68px;
  padding-bottom:68px;
}
.jerome-hero h1{
  font-size:clamp(62px,7.3vw,96px);
  line-height:.88;
}
.jerome-hero p{
  max-width:850px;
  font-size:var(--jerome-body-size);
  line-height:var(--jerome-body-line);
}
.jerome-kicker,
.jerome-signature{
  font-size:var(--jerome-small-size);
}

.jerome-editorial{
  grid-template-columns:150px minmax(0,1fr);
  gap:58px;
  padding-top:82px;
  padding-bottom:82px;
}
.jerome-copy{
  max-width:920px;
}
.jerome-copy h2,
.jerome-racing h2,
.jerome-duo h2{
  font-size:clamp(34px,3.6vw,48px);
  line-height:1.08;
  margin-bottom:25px;
}
.jerome-copy p,
.jerome-racing-copy p,
.jerome-duo-columns p{
  font-size:var(--jerome-body-size);
  line-height:var(--jerome-body-line);
}

.jerome-index span{
  font-size:38px;
}
.jerome-index strong{
  font-size:12px;
}

.jerome-racing{
  grid-template-columns:minmax(0,1.45fr) minmax(340px,.55fr);
  gap:58px;
  padding-top:82px;
  padding-bottom:82px;
}
.jerome-racing-copy{
  max-width:850px;
}
.jerome-pullquote{
  padding:32px 34px;
}
.jerome-pullquote span,
.jerome-taste>span,
.jerome-final>span{
  font-size:12px;
}
.jerome-pullquote blockquote{
  font-size:24px;
  line-height:1.48;
}

.jerome-tastes{
  grid-template-columns:150px minmax(0,1fr);
  gap:58px;
  padding-top:82px;
  padding-bottom:90px;
}
.jerome-tastes-content{
  grid-template-columns:1fr 1fr;
}
.jerome-taste{
  padding:32px 42px 34px 0;
}
.jerome-taste:nth-child(2){
  padding-left:42px;
}
.jerome-taste h3{
  font-size:28px;
  line-height:1.12;
}
.jerome-taste p{
  font-size:17px;
  line-height:1.68;
}
.jerome-taste-wide{
  padding-top:36px;
  padding-right:5%;
}
.jerome-taste-wide p{
  max-width:850px;
}

.jerome-duo{
  padding-top:88px;
  padding-bottom:85px;
}
.jerome-duo-columns{
  max-width:1040px;
  gap:55px;
}
.jerome-final{
  padding-top:88px;
  padding-bottom:95px;
}
.jerome-final blockquote{
  font-size:clamp(26px,3vw,36px);
}

@media(max-width:820px){
  .jerome-page{--jerome-body-size:17px}
  .jerome-editorial,.jerome-tastes{grid-template-columns:1fr;gap:25px}
  .jerome-racing{grid-template-columns:1fr;gap:32px}
}
@media(max-width:560px){
  .jerome-page{--jerome-body-size:16px;--jerome-small-size:11px}
  .jerome-hero h1{font-size:clamp(50px,16vw,68px)}
  .jerome-tastes-content{grid-template-columns:1fr}
  .jerome-taste:nth-child(2){padding-left:0;border-left:0}
}


/* V92 — Sections Jérôme sans numérotation */
.jerome-editorial,
.jerome-tastes{
  display:block;
}
.jerome-editorial .jerome-section-heading,
.jerome-tastes .jerome-section-heading{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  margin-bottom:13px;
}
.jerome-editorial .jerome-copy{
  margin-left:auto;
  margin-right:auto;
}
.jerome-tastes .jerome-tastes-content{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
}
.jerome-section-heading .jerome-kicker{
  margin-bottom:0;
  font-size:12px;
  font-weight:900;
  letter-spacing:.21em;
  color:#62aaff;
}
@media(max-width:820px){
  .jerome-editorial .jerome-section-heading,
  .jerome-tastes .jerome-section-heading,
  .jerome-tastes .jerome-tastes-content{
    max-width:none;
  }
}


/* V93 — Donner aux préférences la même importance éditoriale */
.jerome-tastes-heading{
  margin-bottom:30px !important;
}
.jerome-tastes-heading h2{
  margin:10px 0 0;
  max-width:760px;
  font-size:clamp(34px,3.6vw,48px);
  line-height:1.08;
  color:#eee9fb;
}
.jerome-taste p{
  font-size:18px;
  line-height:1.72;
}
.jerome-taste h3{
  font-size:30px;
}
.jerome-taste-wide p{
  font-size:18px;
  line-height:1.72;
}
@media(max-width:820px){
  .jerome-taste p,
  .jerome-taste-wide p{
    font-size:17px;
  }
}
@media(max-width:560px){
  .jerome-taste p,
  .jerome-taste-wide p{
    font-size:16px;
  }
}


/* V94 — Correction du haut du hero Jérôme masqué par le header */
.jerome-hero{
  box-sizing:border-box;
  padding-top:72px;
}
.jerome-hero-inner{
  padding-top:42px;
}
@media(max-width:820px){
  .jerome-hero{
    padding-top:68px;
  }
  .jerome-hero-inner{
    padding-left:18px;
    padding-right:18px;
  }
}
@media(max-width:560px){
  .jerome-hero{
    padding-top:64px;
  }
  .jerome-hero-inner{
    padding-top:34px;
  }
}


/* V96 — Politique de confidentialité DAMS360 Viewers */
.footer-legal{
  margin-top:8px;
  font-size:12px;
}
.footer-legal a{
  color:#8f89a0;
  text-decoration:none;
  transition:color .2s ease;
}
.footer-legal a:hover{color:#9f7cff}

.privacy-page .page-hero{
  padding-bottom:70px;
}
.privacy-hero .lead{
  max-width:850px;
}
.privacy-section{
  padding-top:70px;
  padding-bottom:100px;
}
.privacy-layout{
  display:grid;
  grid-template-columns:minmax(250px,.55fr) minmax(0,1.45fr);
  gap:70px;
  align-items:start;
}
.privacy-summary{
  position:sticky;
  top:110px;
  padding:28px;
  border-radius:20px;
  border:1px solid rgba(126,87,255,.24);
  background:
    radial-gradient(circle at 12% 0%,rgba(47,139,255,.13),transparent 34%),
    radial-gradient(circle at 90% 100%,rgba(138,62,255,.14),transparent 38%),
    rgba(12,12,20,.82);
}
.privacy-summary-label{
  display:block;
  margin-bottom:10px;
  font-size:11px;
  font-weight:900;
  letter-spacing:.18em;
  color:#62aaff;
}
.privacy-summary h2{
  margin:0 0 16px;
  font-size:26px;
  line-height:1.18;
}
.privacy-summary p{
  margin:0;
  font-size:15px;
  line-height:1.7;
  color:#aaa5b4;
}
.privacy-meta{
  margin-top:24px;
  padding-top:20px;
  border-top:1px solid rgba(255,255,255,.07);
}
.privacy-meta span{
  display:block;
  margin-bottom:4px;
  font-size:10px;
  font-weight:800;
  letter-spacing:.12em;
  color:#777181;
  text-transform:uppercase;
}
.privacy-meta strong{
  font-size:14px;
  color:#ddd7e8;
}
.privacy-content{
  max-width:850px;
}
.privacy-content section{
  position:relative;
  padding:0 0 38px 58px;
  margin-bottom:42px;
  border-bottom:1px solid rgba(255,255,255,.07);
}
.privacy-content section:last-child{
  margin-bottom:0;
}
.privacy-number{
  position:absolute;
  left:0;
  top:2px;
  font-size:13px;
  font-weight:900;
  color:#7655dc;
}
.privacy-content h2{
  margin:0 0 14px;
  font-size:29px;
  line-height:1.15;
}
.privacy-content p{
  margin:0 0 14px;
  font-size:17px;
  line-height:1.75;
  color:#aaa5b4;
}
.privacy-content p:last-child{
  margin-bottom:0;
}
.privacy-content a{
  color:#8e74ff;
  text-decoration:none;
  font-weight:700;
}
.privacy-content a:hover{
  text-decoration:underline;
}
@media(max-width:850px){
  .privacy-layout{
    grid-template-columns:1fr;
    gap:40px;
  }
  .privacy-summary{
    position:static;
  }
}
@media(max-width:560px){
  .privacy-section{
    padding-top:45px;
    padding-bottom:70px;
  }
  .privacy-content section{
    padding-left:0;
    padding-top:30px;
  }
  .privacy-number{
    top:0;
  }
  .privacy-content h2{
    font-size:25px;
  }
  .privacy-content p{
    font-size:16px;
  }
}


/* V97 — Liens légaux violets + présentation OAuth DAMS360 Viewers */
.privacy-content a,
.privacy-summary a,
.footer-legal a{
  color:#b48cff !important;
}
.privacy-content a:hover,
.privacy-summary a:hover,
.footer-legal a:hover:hover{
  color:#d0b5ff !important;
}

.terms-content{
  max-width:900px;
  margin:0 auto;
}

/* V98 — Informations légales du site DAMS 360 */
.contact-privacy-note{
  margin-top:16px;
  font-size:13px;
  line-height:1.55;
  color:#918b9c;
}
.contact-privacy-note a{
  color:#b48cff;
  font-weight:700;
  text-decoration:none;
}
.contact-privacy-note a:hover{color:#d0b5ff;text-decoration:underline}
.footer-legal{
  max-width:920px;
  margin-left:auto;
  margin-right:auto;
  line-height:1.7;
}


/* V102 — Footer légal structuré en deux groupes */
.footer-legal{
  width:100%;
  max-width:1100px;
  margin:16px auto 0;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:26px;
  text-align:center;
  line-height:1.5;
}
.footer-legal-group{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:11px;
  min-width:0;
}
.footer-legal-label{
  flex:0 0 auto;
  font-size:9px;
  line-height:1;
  font-weight:900;
  letter-spacing:.16em;
  color:#777181;
  white-space:nowrap;
}
.footer-legal-links{
  display:flex;
  align-items:center;
  gap:7px;
  white-space:nowrap;
}
.footer-legal a{
  font-size:12px;
  font-weight:600;
  color:#b48cff !important;
  text-decoration:none;
  transition:color .2s ease;
}
.footer-legal a:hover{
  color:#d0b5ff !important;
}
.footer-dot{
  color:#5f5969;
  font-size:12px;
}
.footer-legal-separator{
  width:1px;
  height:25px;
  flex:0 0 1px;
  background:linear-gradient(to bottom,transparent,rgba(180,140,255,.5),transparent);
}
@media(max-width:900px){
  .footer-legal{
    flex-direction:column;
    gap:12px;
  }
  .footer-legal-separator{
    width:110px;
    height:1px;
    flex-basis:1px;
    background:linear-gradient(to right,transparent,rgba(180,140,255,.42),transparent);
  }
}
@media(max-width:560px){
  .footer-legal-group{
    flex-direction:column;
    gap:7px;
  }
  .footer-legal-links{
    white-space:normal;
    justify-content:center;
    flex-wrap:wrap;
  }
}


/* V103 — Centrage réel du bloc légal dans toute la largeur du footer */
footer .footer-legal{
  box-sizing:border-box;
  width:100% !important;
  max-width:none !important;
  margin:18px 0 0 !important;
  padding-left:24px;
  padding-right:24px;
  align-self:stretch;
  justify-content:center !important;
  text-align:center !important;
}
footer .footer-legal-group{
  justify-content:center !important;
}
@media(max-width:560px){
  footer .footer-legal{
    padding-left:16px;
    padding-right:16px;
  }
}


/* V104 — Centrage absolu du bloc légal, indépendant du layout du footer */
footer{
  position:relative;
}
footer .footer-legal{
  position:relative !important;
  left:50% !important;
  transform:translateX(-50%) !important;
  width:100vw !important;
  max-width:100vw !important;
  margin:18px 0 0 !important;
  padding-left:24px !important;
  padding-right:24px !important;
  box-sizing:border-box !important;
  flex:none !important;
  align-self:auto !important;
  justify-content:center !important;
}
@media(max-width:560px){
  footer .footer-legal{
    padding-left:16px !important;
    padding-right:16px !important;
  }
}


/* V105 — Footer en deux lignes : identité + liens légaux centrés */
footer{
  position:static !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:stretch !important;
  gap:24px !important;
  padding:30px 7vw 34px !important;
  overflow-x:hidden !important;
}
footer .footer-brand{
  display:flex;
  align-items:center;
  gap:14px;
  color:#77717f;
}
footer .footer-brand img{
  width:55px;
  flex:0 0 auto;
}
footer .footer-brand p{
  margin:0;
}
footer .footer-legal{
  position:static !important;
  left:auto !important;
  transform:none !important;
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  box-sizing:border-box !important;
  align-self:stretch !important;
  justify-content:center !important;
  flex:none !important;
  text-align:center !important;
}
@media(max-width:900px){
  footer .footer-brand{
    justify-content:center;
    text-align:center;
  }
}


/* V106 — Partenaires qui équipent le SimRig */
.simrig-partners{
  position:relative;
  padding-top:90px;
  padding-bottom:95px;
  border-top:1px solid rgba(255,255,255,.08);
  background:
    radial-gradient(circle at 10% 10%,rgba(35,131,255,.07),transparent 30%),
    radial-gradient(circle at 90% 80%,rgba(128,54,235,.09),transparent 32%);
}
.simrig-partners-inner{
  max-width:1180px;
  margin:0 auto;
}
.simrig-partners-heading{
  max-width:820px;
  margin-bottom:38px;
}
.simrig-partners-kicker,
.simrig-partner-tag,
.simrig-transparency-label{
  display:block;
  font-size:10px;
  font-weight:900;
  letter-spacing:.19em;
  text-transform:uppercase;
}
.simrig-partners-kicker{
  margin-bottom:10px;
  color:#62aaff;
}
.simrig-partners-heading h2{
  margin:0 0 16px;
  font-size:clamp(38px,4vw,56px);
  line-height:1.02;
}
.simrig-partners-heading p{
  max-width:760px;
  margin:0;
  color:#aaa5b4;
  font-size:17px;
  line-height:1.72;
}
.simrig-partners-grid{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:18px;
}
.simrig-partner-card{
  position:relative;
  min-height:430px;
  padding:30px 32px 32px;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:rgba(13,13,21,.84);
  overflow:hidden;
}
.simrig-partner-card::before{
  content:"";
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:3px;
}
.simrig-partner-tfs::before{background:#3398ff}
.simrig-partner-sensit::before{background:#9258ff}
.simrig-partner-tag{
  margin-bottom:24px;
  color:#817b8c;
}
.simrig-partner-logos{
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:24px;
  margin-bottom:22px;
}
.simrig-partner-logos img{
  display:block;
  object-fit:contain;
}
.simrig-dams-logo{
  width:92px;
  height:92px;
}
.simrig-tfs-logo{
  width:170px;
  max-height:70px;
}
.simrig-sensit-logo{
  width:190px;
  max-height:72px;
}
.simrig-partner-cross{
  font-size:31px;
  font-weight:900;
  color:#8f64ff;
}
.simrig-partner-card h3{
  margin:0 0 15px;
  font-size:25px;
}
.simrig-partner-card p{
  margin:0 0 14px;
  color:#aaa5b4;
  font-size:15px;
  line-height:1.7;
}
.simrig-partner-card strong{
  color:#ddd8e8;
}
.simrig-partner-link{
  display:inline-block;
  margin-top:8px;
  color:#b48cff;
  font-size:11px;
  font-weight:900;
  letter-spacing:.08em;
  text-decoration:none;
}
.simrig-partner-link:hover{color:#d0b5ff}
.simrig-transparency{
  margin-top:18px;
  padding:23px 27px;
  border:1px solid rgba(145,90,255,.22);
  border-radius:16px;
  background:rgba(12,12,19,.72);
}
.simrig-transparency-label{
  margin-bottom:9px;
  color:#a77cff;
}
.simrig-transparency p{
  margin:0;
  color:#918b9c;
  font-size:14px;
  line-height:1.7;
}
.simrig-transparency strong{
  color:#c8c1d3;
  font-weight:700;
}
@media(max-width:850px){
  .simrig-partners-grid{grid-template-columns:1fr}
  .simrig-partner-card{min-height:0}
}
@media(max-width:560px){
  .simrig-partners{padding-top:65px;padding-bottom:70px}
  .simrig-partner-card{padding:25px 22px}
  .simrig-partner-logos{gap:15px}
  .simrig-dams-logo{width:72px;height:72px}
  .simrig-tfs-logo,.simrig-sensit-logo{width:145px}
}


/* V108 — Collaboration SimRig : même largeur que les briques matériel */
.simrig-partners{
  padding-left:0 !important;
  padding-right:0 !important;
}
.simrig-partners-inner{
  width:calc(100% - 8vw) !important;
  max-width:none !important;
  margin-left:auto !important;
  margin-right:auto !important;
}
.simrig-partners-heading{
  max-width:980px !important;
}
.simrig-partners-grid{
  width:100% !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
}
.simrig-partner-card{
  min-height:0 !important;
  padding:28px 32px 30px !important;
}
.simrig-partner-logos{
  min-height:78px !important;
  margin-bottom:18px !important;
}
.simrig-dams-logo{
  width:78px !important;
  height:78px !important;
}
.simrig-tfs-logo{
  width:165px !important;
}
.simrig-sensit-logo{
  width:185px !important;
}
.simrig-transparency{
  width:100% !important;
  box-sizing:border-box !important;
}
@media(max-width:850px){
  .simrig-partners-inner{
    width:calc(100% - 40px) !important;
  }
  .simrig-partners-grid{
    grid-template-columns:1fr !important;
  }
}
@media(max-width:560px){
  .simrig-partners-inner{
    width:calc(100% - 28px) !important;
  }
}


/* V115 — Conspit + Syncmesh dans les collaborations SimRig */
.simrig-conspit-logo{
  width:150px;
  max-height:72px;
  object-fit:contain;
}
.simrig-syncmesh-logo{
  width:190px;
  max-height:76px;
  object-fit:contain;
}
.simrig-partner-card-syncmesh{
  grid-column:1 / -1;
}
.simrig-partner-card-syncmesh .simrig-partner-logos{
  justify-content:flex-start;
}
@media(max-width:850px){
  .simrig-partner-card-syncmesh{
    grid-column:auto;
  }
}
@media(max-width:560px){
  .simrig-conspit-logo{width:118px}
  .simrig-syncmesh-logo{width:145px}
}


/* V116 — Trois collaborations SimRig sur une seule ligne */
@media(min-width:1101px){
  .simrig-partners-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:16px !important;
    align-items:stretch !important;
  }

  .simrig-partner-card,
  .simrig-partner-card-syncmesh{
    grid-column:auto !important;
    padding:24px 26px 26px !important;
    min-width:0 !important;
  }

  .simrig-partner-logos,
  .simrig-partner-card-syncmesh .simrig-partner-logos{
    justify-content:center !important;
    min-height:113px !important;
    margin-bottom:16px !important;
    gap:12px !important;
  }

  .simrig-dams-logo{
    width:105px !important;
    height:105px !important;
  }

  .simrig-conspit-logo{
    width:189px !important;
    max-height:99px !important;
  }

  .simrig-tfs-logo{
    width:200px !important;
  }

  .simrig-sensit-logo{
    width:254px !important;
  }

  .simrig-syncmesh-logo{
    width:254px !important;
    max-height:105px !important;
  }

  .simrig-partner-card h3{
    margin-top:8px !important;
  }

  .simrig-partner-card p{
    line-height:1.55 !important;
  }

  .simrig-transparency{
    margin-top:16px !important;
  }
}

/* Largeurs intermédiaires : éviter de comprimer excessivement les cartes */
@media(min-width:851px) and (max-width:1100px){
  .simrig-partners-grid{
    grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  }
  .simrig-partner-card-syncmesh{
    grid-column:1 / -1 !important;
  }
}


/* V117 — CTA Syncmesh harmonisé avec les autres partenaires */
.simrig-partner-card-syncmesh > a{
  font-size:inherit;
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
  color:#c58cff;
  text-decoration:none;
}


/* V118 — CTA Syncmesh strictement aligné sur les autres CTA partenaires */
.simrig-partner-card-syncmesh > a{
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
}


/* V119 — CTA partenaires SimRig en violet */
.simrig-partner-card > a,
.simrig-partner-card-syncmesh > a{
  color:#b48cff !important;
}
.simrig-partner-card > a:hover,
.simrig-partner-card-syncmesh > a:hover{
  color:#d0b5ff !important;
}


/* V120 — Correctifs visuels partenaires SimRig */
.simrig-partner-card-syncmesh{
  position:relative !important;
  border-left:2px solid #8d46ff !important;
}

.simrig-partner-card .simrig-partner-cta,
.simrig-partner-card-syncmesh .simrig-partner-cta,
.simrig-partners .simrig-partner-cta{
  color:#b48cff !important;
  -webkit-text-fill-color:#b48cff !important;
  text-decoration:none !important;
}

.simrig-partner-card .simrig-partner-cta:hover,
.simrig-partner-card-syncmesh .simrig-partner-cta:hover,
.simrig-partners .simrig-partner-cta:hover{
  color:#d0b5ff !important;
  -webkit-text-fill-color:#d0b5ff !important;
}

.simrig-partner-card-syncmesh .simrig-partner-cta{
  font-size:11px !important;
  font-weight:800 !important;
  letter-spacing:.08em !important;
  line-height:1.2 !important;
  text-transform:uppercase !important;
}


/* V121 — Liseré Syncmesh bleu comme TFS */
.simrig-partner-card-syncmesh{
  border-left:2px solid #2f9dff !important;
}


/* V126 — Conclusion communautaire À propos */
.about-community{
  padding:24px 7vw 72px;
}
.about-community-inner{
  max-width:980px;
  margin:0 auto;
  padding:34px 38px 36px;
  border:1px solid rgba(130,70,210,.28);
  border-radius:16px;
  background:linear-gradient(135deg,rgba(17,19,30,.92),rgba(16,10,27,.92));
  box-shadow:0 18px 55px rgba(0,0,0,.18);
}
.about-community-kicker{
  display:block;
  margin-bottom:10px;
  color:#b48cff;
  font-size:11px;
  font-weight:800;
  letter-spacing:.16em;
}
.about-community h2{
  margin:0 0 18px;
}
.about-community p{
  line-height:1.7;
}
.about-community p a{
  color:#b48cff;
  font-weight:800;
  text-decoration:none;
}
.about-community p a:hover{
  color:#d0b5ff;
}
.about-community-cta{
  display:inline-block;
  margin-top:10px;
  color:#b48cff;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-decoration:none;
}
.about-community-cta:hover{
  color:#d0b5ff;
}
.about-community-signoff{
  margin:30px 0 0 !important;
  padding-top:24px;
  border-top:1px solid rgba(180,140,255,.16);
  color:#ede2ff;
  font-size:17px;
}
@media(max-width:650px){
  .about-community{
    padding:18px 20px 52px;
  }
  .about-community-inner{
    padding:26px 22px 28px;
  }
  .about-community-signoff{
    font-size:15px;
  }
}

/* V126 — Réseaux : couleur officielle uniquement au survol */
.socials a{
  transition:border-color .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.socials a img{
  transition:filter .2s ease, opacity .2s ease;
}
.socials a[href*="discord.gg"]:hover{
  border-color:#5865F2 !important;
  background:rgba(88,101,242,.12) !important;
  box-shadow:0 0 18px rgba(88,101,242,.18);
}
.socials a[href*="youtube.com"]:hover{
  border-color:#FF0033 !important;
  background:rgba(255,0,51,.10) !important;
  box-shadow:0 0 18px rgba(255,0,51,.16);
}
.socials a[href*="twitch.tv"]:hover{
  border-color:#9146FF !important;
  background:rgba(145,70,255,.12) !important;
  box-shadow:0 0 18px rgba(145,70,255,.18);
}
.socials a[href*="instagram.com"]:hover{
  border-color:#E1306C !important;
  background:rgba(225,48,108,.10) !important;
  box-shadow:0 0 18px rgba(225,48,108,.16);
}
.socials a[href*="discord.gg"]:hover img{
  filter:brightness(0) saturate(100%) invert(43%) sepia(84%) saturate(4086%) hue-rotate(222deg) brightness(100%) contrast(91%) !important;
}
.socials a[href*="youtube.com"]:hover img{
  filter:brightness(0) saturate(100%) invert(17%) sepia(100%) saturate(7484%) hue-rotate(346deg) brightness(100%) contrast(113%) !important;
}
.socials a[href*="twitch.tv"]:hover img{
  filter:brightness(0) saturate(100%) invert(39%) sepia(97%) saturate(3712%) hue-rotate(252deg) brightness(101%) contrast(101%) !important;
}
.socials a[href*="instagram.com"]:hover img{
  filter:brightness(0) saturate(100%) invert(34%) sepia(94%) saturate(2851%) hue-rotate(318deg) brightness(92%) contrast(92%) !important;
}

/* V131.1 — À propos : simulations compactes en une ligne */
.sim-games{display:grid;grid-template-columns:repeat(9,minmax(0,1fr));gap:6px;margin:18px 0 2px}
.sim-game{height:42px;min-width:0;display:flex;align-items:center;justify-content:center;padding:5px 7px;border:1px solid rgba(180,140,255,.14);border-radius:8px;background:rgba(10,12,25,.28);text-decoration:none!important;overflow:hidden;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.sim-game:hover{border-color:rgba(180,140,255,.40);background:rgba(80,31,149,.10);transform:translateY(-1px)}
.sim-game img{display:block;width:auto;height:auto;max-width:100%;max-height:24px;object-fit:contain;filter:none!important;opacity:1!important}
/* Optical logo sizing is consolidated in the final V131 block below. */
.story-gaming{margin-top:34px}
@media(max-width:980px){.sim-games{grid-template-columns:repeat(4,minmax(0,1fr));gap:6px}.sim-game{height:40px}}
@media(max-width:560px){.sim-games{grid-template-columns:repeat(2,minmax(0,1fr));gap:6px}.sim-game{height:42px;padding:5px 8px}.sim-game img{max-height:23px}}


/* V131 - gaming compact row */
.gaming-games{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:16px 0 20px;max-width:620px}
.gaming-game{height:42px;min-width:0;display:flex;align-items:center;justify-content:center;padding:5px 8px;border:1px solid rgba(180,140,255,.14);border-radius:8px;background:rgba(10,12,25,.28);text-decoration:none!important;overflow:hidden;transition:border-color .2s ease,background .2s ease,transform .2s ease}
.gaming-game:hover{border-color:rgba(180,140,255,.40);background:rgba(80,31,149,.10);transform:translateY(-1px)}
.gaming-game img{display:block;width:auto;height:auto;max-width:100%;object-fit:contain;filter:none!important;opacity:1!important}
/* The source logos have very different proportions; tune their optical size individually. */
.gaming-game-forza img{max-height:28px;max-width:92%}
.gaming-game-crew img{max-height:29px;max-width:88%}
.gaming-game-cyberpunk img{max-height:27px;max-width:88%}
.gaming-game-acbf img{max-height:31px;max-width:78%}
@media(max-width:700px){.gaming-games{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.gaming-game{height:42px}}

/* V131 — harmonisation optique finale des logos SimRacing */
.sim-game-lmu img{max-height:24px;max-width:88%}
.sim-game-iracing img{max-height:30px;max-width:92%}
.sim-game-acr img{max-height:23px;max-width:90%}
.sim-game-ams2 img{max-height:23px;max-width:96%}
.sim-game-rf2 img{max-height:24px;max-width:86%}
.sim-game-beamng img{max-height:21px;max-width:96%}
.sim-game-acevo img{max-height:24px;max-width:92%}
.sim-game-ac img{max-height:21px;max-width:84%}
.sim-game-raceroom img{max-height:24px;max-width:96%}

/* Countdown transition shared by the final V147 colour rules. */
.countdown-time span{
  transition:border-color .2s ease, box-shadow .2s ease, background .2s ease;
}

/* V147 — Countdown : contraste multicolore inspiré de la maquette validée */
.countdown-time span{border-width:1.5px}
.countdown-time span:nth-child(1){
  border-color:#2FAEFF;
  background:linear-gradient(180deg,rgba(18,91,145,.46),rgba(9,35,62,.72));
  box-shadow:inset 0 0 22px rgba(47,174,255,.18),0 0 16px rgba(47,174,255,.38);
}
.countdown-time span:nth-child(1) small{color:#38B5FF;text-shadow:0 0 10px rgba(47,174,255,.80)}
.countdown-time span:nth-child(2){
  border-color:#933CFF;
  background:linear-gradient(180deg,rgba(91,28,153,.48),rgba(47,16,82,.76));
  box-shadow:inset 0 0 22px rgba(147,60,255,.20),0 0 16px rgba(147,60,255,.40);
}
.countdown-time span:nth-child(2) small{color:#A34CFF;text-shadow:0 0 10px rgba(147,60,255,.82)}
.countdown-time span:nth-child(3){
  border-color:#F044B4;
  background:linear-gradient(180deg,rgba(135,30,101,.50),rgba(72,15,55,.76));
  box-shadow:inset 0 0 22px rgba(240,68,180,.20),0 0 16px rgba(240,68,180,.40);
}
.countdown-time span:nth-child(3) small{color:#FF59C1;text-shadow:0 0 10px rgba(240,68,180,.84)}
.countdown-time span:nth-child(4){
  border-color:#FF922E;
  background:linear-gradient(180deg,rgba(137,68,25,.52),rgba(74,34,14,.78));
  box-shadow:inset 0 0 22px rgba(255,146,46,.20),0 0 16px rgba(255,146,46,.42);
}
.countdown-time span:nth-child(4) small{color:#FFA23F;text-shadow:0 0 10px rgba(255,146,46,.86)}

/* Navigation accessible aux largeurs intermédiaires (menu déroulant jusqu'à 1399 px, V192). */
@media (max-width:1399px) {
  header .menu { display:block; }
  header nav { display:none; position:absolute; top:100%; left:0; right:0;
    padding:25px; background:#0b0b12; flex-direction:column; gap:18px;
    max-height:calc(100dvh - 88px); overflow-y:auto; }
  header nav.open { display:flex; }
}
@media (max-width:900px) {
  header nav { max-height:calc(100dvh - 74px); }
}


/* V99 — Signalement d’un problème sur le site */
footer .footer-site-help{display:flex;flex-direction:column;align-items:center;gap:6px;width:100%;text-align:center;color:#a9a3b1;font-size:.92rem;line-height:1.5}
footer .footer-site-help strong{color:#ede2ff;font-size:.96rem}
footer .footer-site-help a{color:#b99cff;font-weight:700;text-decoration:none}
footer .footer-site-help a:hover{color:#d7c8ff;text-decoration:underline}

/* V111 — sélecteur de langue FR / EN */
.language-switch{display:flex;align-items:center;gap:7px;margin-left:10px;white-space:nowrap;font-size:11px;font-weight:800;letter-spacing:.04em}
.language-switch a{color:#8e8997;text-decoration:none;padding:6px 7px;border:1px solid transparent;border-radius:7px;transition:.18s ease}
.language-switch a:hover{color:#fff;border-color:#ffffff18;background:#ffffff07}
.language-switch a.active{color:#ede2ff;border-color:#6d4bb7;background:#501f9528}
.language-switch span{color:#4f4959}
@media(max-width:1100px){.language-switch{gap:3px;margin-left:5px}.language-switch a{padding:5px 4px;font-size:10px}}
@media(max-width:900px){.language-switch{position:absolute;right:72px;top:22px;margin:0}.language-switch a{font-size:10px;padding:4px 5px}}
@media(max-width:560px){.language-switch{right:125px;top:20px}.language-switch a{font-size:10px;padding:4px 5px}.language-switch span{font-size:10px}}


/* V113 — Sélecteur de langue placé à gauche des icônes de plateformes */
@media(min-width:901px){
  .language-switch{margin-left:auto;margin-right:0}
  .social-nav{margin-left:0;margin-right:8px}
}
@media(max-width:900px){
  .social-nav{margin-left:auto;margin-right:4px}
  .language-switch{right:145px}
}
@media(max-width:560px){
  .language-switch{right:125px}
}


/* V115 — drapeaux de langue fiables + correction du logo du header */
.language-switch a{display:inline-flex;align-items:center;gap:5px}
.language-flag{height:12px;width:auto;display:block;flex:0 0 auto;border-radius:2px;box-shadow:0 0 0 1px rgba(255,255,255,.16)}
.language-switch img[src$="fr.svg"]{aspect-ratio:3/2}
.language-switch img[src$="gb.svg"]{aspect-ratio:2/1}
@media(max-width:560px){.language-flag{height:11px;width:auto}.language-switch a{gap:4px}}

/* V117 — Header mobile : sélecteur de langue sans chevauchement */
@media(max-width:900px){
  header{
    justify-content:flex-start;
    gap:10px;
  }
  header .brand{flex:0 0 auto}
  header .menu{flex:0 0 auto;margin-right:auto}
  .language-switch{
    position:static;
    right:auto;
    top:auto;
    margin:0;
    flex:0 0 auto;
    gap:3px;
  }
  .social-nav{
    margin:0;
    flex:0 0 auto;
  }
}
@media(max-width:560px){
  header{padding-left:16px;padding-right:16px;gap:7px}
  .language-switch{gap:2px}
  .language-switch a{padding:4px 4px;font-size:9px;gap:3px}
  .language-switch span{font-size:9px}
  .language-flag{height:10px}
  .social-nav{gap:3px}
  .social-nav a{width:24px;height:24px}
}
@media(max-width:390px){
  header{padding-left:12px;padding-right:12px;gap:5px}
  .brand img{width:44px;height:44px}
  .menu{font-size:25px}
  .language-switch a{padding:3px;font-size:8.5px}
  .language-flag{height:9px}
  .social-nav a{width:22px;height:22px}
  .social-nav svg{width:12px;height:12px}
}

/* V120 — Navigation active : accent violet DAMS 360 + halo discret */
header nav a.active{
  color:#b99cff;
  text-shadow:0 0 7px rgba(185,156,255,.58),0 5px 11px rgba(124,85,216,.42);
  position:relative;
}
header nav a.active::after{
  content:"";
  position:absolute;
  left:18%;
  right:18%;
  bottom:-8px;
  height:2px;
  border-radius:999px;
  background:rgba(124,85,216,.82);
  box-shadow:0 0 7px rgba(124,85,216,.78),0 0 13px rgba(80,31,149,.52);
  pointer-events:none;
}
header nav a.active:hover{color:#c8b2ff}

/* V121 — Navigation mobile : soulignement actif calé sur la largeur du libellé */
@media(max-width:1399px){
  header nav a{
    align-self:flex-start;
    width:max-content;
  }
  header nav a.active::after{
    left:0;
    right:0;
    bottom:-6px;
  }
}


/* V123 — Calendrier : participation DAMS 360 annulée
   La miniature reste strictement inchangée ; seul le badge indique le statut. */
.event-card.participation-cancelled:hover .event-visual img{
  transform:none;
}
.event-status-cancelled{
  display:inline-flex;
  align-items:center;
  max-width:100%;
  margin:2px 0 16px;
  padding:9px 13px;
  border-radius:10px;
  border:1px solid rgba(255,70,86,.52);
  background:rgba(150,22,38,.16);
  box-shadow:0 0 14px rgba(255,55,80,.10);
  color:#ff7383;
  font-size:11px;
  line-height:1;
  font-weight:900;
  letter-spacing:.11em;
}
@media(max-width:560px){
  .event-status-cancelled{
    padding:8px 11px;
    font-size:10px;
    letter-spacing:.08em;
  }
}

/* V188 — Harmonisation des hauts de page (desktop + mobile) */
/* Les pages internes commencent sous le header fixe et utilisent un espacement vertical cohérent. */
body:not(.home-page) .page-hero{
  min-height:0;
  margin-top:88px;
  padding:42px 7vw 46px;
  display:block;
}
/* Les pages Ready To Race n'utilisent pas .page-hero : on réserve explicitement la hauteur du header. */

@media(max-width:900px){
  body:not(.home-page) .page-hero{
    min-height:0;
    margin-top:74px;
    padding:32px 7vw 38px;
  }
  
}

/* V189 — Consolidation technique validée, sans changement visuel. */
/* V190 — Contrôle production FR/EN finalisé. */

/* V191 — Univers Ready To Race : lien actif « Ready To Race » en vert sur toutes les pages body.rtr-page
   (page RTR, changelog et pages légales RTR), sans changer les pages DAMS 360 habituelles. */
.rtr-page #site-navigation a.active{color:#43ff78}

/* V192 — Corrections d'affichage : accueil mobile et menu desktop.
   Accueil (≤ 900 px) : la section passe en hauteur automatique mais gardait la hauteur
   maximale desktop de 820 px ; avec overflow:hidden, le bas du contenu était coupé sur
   les écrans étroits (jusqu'à 98 px à 320 px). */
@media(max-width:900px){
  .home-hero{max-height:none}
}
/* Menu : les 11 liens tiennent sur une ligne à partir de 1400 px (version compacte
   jusqu'à 1599 px) ; en dessous, menu déroulant (voir les règles à 1399 px). Les libellés
   ne sont jamais coupés sur deux lignes. */
@media(min-width:1400px){
  header nav a{white-space:nowrap}
}
@media(min-width:1400px) and (max-width:1599px){
  header{padding-left:32px;padding-right:32px;gap:14px}
  header nav{gap:18px}
}
