/*
Theme Name: AgenTurf
Theme URI: https://github.com/muhmett/agenturf
Author: AgenTurf
Description: Thème one-page pour simulateur Quinté+ — landing avec vidéo hero et animations au scroll, accès au simulateur réservé aux membres (connexion Google via Nextend Social Login), course du jour mise à jour par fichier JSON depuis le menu WordPress.
Version: 1.15.1
License: GPL-2.0-or-later
Text Domain: agenturf
*/

/* =============== base =============== */
:root{
  /* palette « pelouse & or » : vert hippodrome profond + doré trophée */
  --nuit:#0c3b26; --nuit2:#155e38;
  --gazon:#2f7d46; --gazon2:#256637;
  --craie:#f3f1e6; --rail:#ffffff;
  --pmu:#c9971f; --or:#e3b64e;
  --encre:#122019; --ligne:rgba(18,50,35,.16);
  --cta:#b98a15;
}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}
body{
  font-family:'Barlow',system-ui,sans-serif;
  background:var(--craie);color:var(--encre);line-height:1.45;
}
button{font-family:inherit}
a{color:inherit}

/* =============== topbar =============== */
.topbar{
  position:fixed;top:0;left:0;right:0;z-index:900;
  display:flex;align-items:center;justify-content:space-between;
  padding:10px 18px;
  background:linear-gradient(180deg,rgba(10,16,30,.78),rgba(10,16,30,.45) 70%,transparent);
  backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);
}
.topbar .logo{
  font-family:'Barlow Condensed';font-weight:900;font-size:1.35rem;letter-spacing:.12em;
  color:#fff;text-decoration:none;text-transform:uppercase;
}
.topbar .logo em{color:var(--or);font-style:normal}
.topbar .actions{display:flex;gap:10px;align-items:center}
.topbar a.tb-btn{
  font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.06em;
  font-size:.92rem;text-decoration:none;color:#fff;
  border:1.5px solid rgba(255,255,255,.55);border-radius:99px;padding:7px 16px;
  transition:background .18s,border-color .18s;
}
.topbar a.tb-btn:hover{background:rgba(255,255,255,.14);border-color:#fff}
.topbar a.tb-btn.solid{background:var(--or);border-color:var(--or);color:#1c2e22}
.topbar a.tb-btn.solid:hover{background:#d8a83e}
.scrollbar{
  position:fixed;top:0;left:0;height:3px;width:0;z-index:1000;
  background:linear-gradient(90deg,var(--pmu),var(--or));
}

/* =============== landing : hero vidéo =============== */
.hero{height:240vh;position:relative}
.hero-sticky{position:sticky;top:0;height:100vh;overflow:hidden;background:#0b1322}
.hero-video{
  position:absolute;inset:0;width:100%;height:100%;object-fit:cover;
  transform-origin:center;will-change:transform;
}
.hero-veil{
  position:absolute;inset:0;opacity:.3;will-change:opacity;
  background:linear-gradient(180deg,rgba(10,16,30,.55) 0%,rgba(10,16,30,.25) 40%,rgba(10,16,30,.9) 100%);
}
.hero-inner{
  position:absolute;inset:0;display:flex;flex-direction:column;
  align-items:center;justify-content:center;text-align:center;
  color:#fff;padding:0 18px;will-change:transform,opacity;
}
.hero-chip{
  font-family:'Barlow Condensed';font-weight:700;letter-spacing:.24em;text-transform:uppercase;
  font-size:.8rem;color:var(--or);
  border:1px solid rgba(232,182,76,.5);border-radius:99px;padding:6px 16px;
  background:rgba(10,16,30,.4);
  animation:heroChip 1s .2s ease backwards;
}
@keyframes heroChip{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.hero-h1{
  font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;
  font-size:clamp(2.3rem,7.5vw,4.6rem);line-height:1.0;margin:18px 0 12px;
  text-shadow:0 6px 30px rgba(0,0,0,.55);
  animation:heroChip 1s .4s ease backwards;
}
.hero-h1 em{font-style:normal;color:var(--or)}
.hero-sub{
  font-size:clamp(.95rem,2.4vw,1.15rem);opacity:.92;max-width:640px;
  animation:heroChip 1s .6s ease backwards;
}
.hero-cta{
  margin-top:26px;display:inline-flex;align-items:center;gap:10px;
  background:var(--or);color:#1c2e22;text-decoration:none;
  font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.07em;
  font-size:1.1rem;border-radius:12px;padding:14px 30px;
  box-shadow:0 10px 30px rgba(201,151,31,.5);
  animation:heroChip 1s .8s ease backwards;
  transition:transform .15s;
}
.hero-cta:hover{transform:translateY(-2px)}
.hero-cue{
  position:absolute;bottom:26px;left:50%;transform:translateX(-50%);
  color:#fff;opacity:.85;font-size:.78rem;letter-spacing:.18em;text-transform:uppercase;
  text-align:center;
}
.hero-cue::after{
  content:"";display:block;margin:8px auto 0;width:1.5px;height:34px;
  background:linear-gradient(180deg,#fff,transparent);
  animation:cue 1.6s ease infinite;
}
@keyframes cue{0%{transform:scaleY(.2);transform-origin:top}45%{transform:scaleY(1)}100%{opacity:0;transform:scaleY(1)}}

/* =============== landing : sections =============== */
.land-section{max-width:1060px;margin:0 auto;padding:74px 16px 10px}
.land-h2{
  font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;
  font-size:clamp(1.6rem,4.5vw,2.3rem);letter-spacing:.03em;
  display:flex;align-items:center;gap:12px;margin-bottom:8px;
}
.land-h2 .tick{width:30px;height:5px;background:var(--pmu);border-radius:3px;flex-shrink:0}
.land-lead{color:#4b5563;max-width:680px;margin-bottom:28px}

.reveal{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}
.reveal.in{opacity:1;transform:none}
.reveal.d1{transition-delay:.12s}.reveal.d2{transition-delay:.24s}.reveal.d3{transition-delay:.36s}

.tools{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:14px}
.tool{
  background:#fff;border:1.5px solid var(--ligne);border-radius:16px;padding:22px 20px;
  transition:transform .2s,box-shadow .2s;
}
.tool:hover{transform:translateY(-4px);box-shadow:0 14px 30px rgba(18,32,58,.12)}
.tool .ico{
  width:52px;height:52px;border-radius:14px;display:flex;align-items:center;justify-content:center;
  font-size:1.6rem;background:var(--craie);border:1.5px solid var(--ligne);margin-bottom:14px;
}
.tool h3{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;font-size:1.2rem;margin-bottom:6px}
.tool p{font-size:.88rem;color:#4b5563}
.tool .mini{
  display:inline-block;margin-top:12px;font-size:.68rem;font-weight:600;
  background:#eaf6ee;border:1px solid #bcdcc6;color:#1f5c33;border-radius:99px;padding:2px 10px;
}

.counters{
  display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;
  margin-top:34px;
}
.counter{
  background:var(--nuit);color:var(--craie);border-radius:14px;padding:18px 14px;text-align:center;
}
.counter b{
  display:block;font-family:'Barlow Condensed';font-weight:900;font-size:2.2rem;color:var(--or);
  line-height:1;
}
.counter span{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;opacity:.85}

.steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
.step{background:#fff;border:1.5px solid var(--ligne);border-radius:16px;padding:20px;position:relative}
.step .num{
  font-family:'Barlow Condensed';font-weight:900;font-size:2.6rem;color:rgba(20,83,45,.18);
  position:absolute;top:8px;right:16px;line-height:1;
}
.step h3{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;font-size:1.1rem;margin-bottom:6px}
.step p{font-size:.86rem;color:#4b5563}

/* =============== landing : CTA finale =============== */
.gatewrap{max-width:1060px;margin:60px auto 0;padding:0 16px 70px}
.gatecard{
  background:linear-gradient(160deg,var(--nuit),var(--nuit2));
  border-radius:22px;color:var(--craie);text-align:center;
  padding:52px 26px 44px;position:relative;overflow:hidden;
}
.gatecard::after{
  content:"";position:absolute;inset:auto 0 0 0;height:6px;
  background:repeating-linear-gradient(90deg,var(--pmu) 0 26px,var(--craie) 26px 34px);opacity:.9;
}
.gatecard h2{
  font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;
  font-size:clamp(1.7rem,5vw,2.6rem);line-height:1.05;
}
.gatecard h2 em{font-style:normal;color:var(--or)}
.gatecard>p{opacity:.9;max-width:560px;margin:12px auto 0;font-size:.95rem}
.gatecard ul{list-style:none;display:inline-block;text-align:left;margin:20px auto 4px}
.gatecard ul li{margin:7px 0;font-size:.92rem}
.gatecard ul li::before{content:"✔";color:var(--or);font-weight:700;margin-right:10px}
.google-cta{
  display:inline-flex;align-items:center;justify-content:center;gap:11px;
  margin-top:22px;background:#fff;color:#1f2733;text-decoration:none;
  border-radius:99px;padding:13px 30px;font-weight:600;font-size:1rem;
  box-shadow:0 12px 30px rgba(0,0,0,.35);transition:transform .15s;
}
.google-cta:hover{transform:translateY(-2px)}
.google-cta svg{width:21px;height:21px;flex-shrink:0}
.gate-note{font-size:.74rem;opacity:.65;margin-top:14px}

.land-footer{
  max-width:1060px;margin:0 auto;padding:0 16px 46px;
  font-size:.74rem;color:#7a828f;
}
.land-footer hr{border:none;border-top:1px solid var(--ligne);margin-bottom:12px}

/* =====================================================
   SIMULATEUR (membres connectés)
   ===================================================== */
.wrap{max-width:1060px;margin:0 auto;padding:70px 14px 60px}

header.card{
  background:linear-gradient(160deg,var(--nuit) 0%,var(--nuit2) 70%);
  color:var(--craie);border-radius:0 0 18px 18px;
  padding:26px 20px 22px;position:relative;overflow:hidden;
}
header.card::after{
  content:"";position:absolute;inset:auto 0 0 0;height:5px;
  background:repeating-linear-gradient(90deg,var(--pmu) 0 26px,var(--craie) 26px 34px);opacity:.9;
}
.eyebrow{
  font-family:'Barlow Condensed';font-weight:700;letter-spacing:.22em;
  text-transform:uppercase;font-size:.78rem;color:var(--or);
}
h1.racetitle{
  font-family:'Barlow Condensed';font-weight:900;
  font-size:clamp(1.9rem,6vw,3rem);line-height:1.02;
  text-transform:uppercase;letter-spacing:.01em;margin:.2em 0 .35em;
}
.meta{display:flex;flex-wrap:wrap;gap:8px 18px;font-size:.86rem;opacity:.92}
.meta b{color:var(--or)}

.sim-section{margin-top:34px}
.sim-h2{
  font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;
  font-size:1.45rem;letter-spacing:.03em;
  display:flex;align-items:center;gap:10px;margin-bottom:14px;
}
.sim-h2 .tick{width:26px;height:4px;background:var(--pmu);display:inline-block;border-radius:2px}
.sim-h2 small{font-family:'Barlow';font-weight:500;text-transform:none;letter-spacing:0;font-size:.8rem;color:#5b6474}

.scenarios{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px}
.scn{
  text-align:left;background:#fff;border:1.5px solid var(--ligne);
  border-radius:12px;padding:12px 14px;cursor:pointer;
  font-family:inherit;transition:border-color .15s, transform .1s;
}
.scn:hover{border-color:var(--pmu)}
.scn.active{border-color:var(--pmu);box-shadow:0 0 0 2px rgba(201,151,31,.28);transform:translateY(-1px)}
.scn h3{font-family:'Barlow Condensed';font-weight:700;font-size:1.05rem;text-transform:uppercase;letter-spacing:.02em}
.scn p{font-size:.8rem;color:#4b5563;margin-top:3px}
.scn .prob{
  display:inline-block;margin-top:7px;font-size:.7rem;font-weight:600;
  background:var(--craie);border:1px solid var(--ligne);border-radius:99px;padding:2px 9px;
}

.trackbox{
  background:linear-gradient(180deg,#9fc3e0 0%,#c9dcc9 22%,var(--gazon) 22%);
  border-radius:16px;overflow:hidden;border:1.5px solid rgba(0,0,0,.15);
  position:relative;
}
.trackbox canvas{display:block;width:100%;height:auto}
.hud{
  position:absolute;top:10px;left:10px;right:10px;
  display:flex;justify-content:space-between;gap:8px;pointer-events:none;
}
.badge{
  background:rgba(18,32,58,.86);color:var(--craie);
  font-family:'Barlow Condensed';font-weight:700;font-size:.95rem;
  padding:5px 12px;border-radius:8px;letter-spacing:.05em;
}
.badge em{color:var(--or);font-style:normal}
.count{
  position:absolute;inset:0;display:flex;align-items:center;justify-content:center;pointer-events:none;
}
.count span{
  font-family:'Barlow Condensed';font-weight:900;font-size:clamp(3rem,12vw,6.5rem);
  color:#fff;text-shadow:0 4px 22px rgba(0,0,0,.45);
  animation:countPop .9s ease both;
}
@keyframes countPop{0%{transform:scale(2.2);opacity:0}25%{transform:scale(1);opacity:1}80%{opacity:1}100%{transform:scale(.85);opacity:0}}
.flash{position:absolute;inset:0;background:#fff;opacity:0;pointer-events:none;transition:opacity .12s}
.flash.on{opacity:.85}

.controls{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px;align-items:center}
button.btn{
  font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;
  letter-spacing:.06em;font-size:1rem;border:none;border-radius:10px;
  padding:11px 22px;cursor:pointer;transition:opacity .15s;
}
.btn:disabled{opacity:.45;cursor:default}
.btn-go{background:var(--or);color:#1c2e22}
.btn-re{background:var(--encre);color:var(--craie)}
.speedctl{display:flex;align-items:center;gap:8px;font-size:.85rem;color:#4b5563}
.speedctl select{font-family:inherit;padding:7px 10px;border-radius:8px;border:1.5px solid var(--ligne);background:#fff}

.live{display:grid;grid-template-columns:1fr 1.25fr;gap:14px;margin-top:14px}
@media(max-width:700px){.live{grid-template-columns:1fr}}
.panel{background:#fff;border:1.5px solid var(--ligne);border-radius:12px;padding:14px}
.panel h3{
  font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;
  font-size:1rem;letter-spacing:.06em;margin-bottom:9px;color:#3a4354;
}
#standings{display:flex;flex-direction:column;gap:6px;min-height:150px}
.strow{display:flex;align-items:center;gap:9px;font-size:.86rem}
.strow .pos{font-family:'Barlow Condensed';font-weight:900;width:20px;color:#6b7280}
.silk{width:16px;height:16px;border-radius:4px 4px 7px 7px;flex-shrink:0;border:1px solid rgba(0,0,0,.25)}
.strow .num{font-weight:600;width:22px}
.strow .gap{margin-left:auto;font-size:.72rem;color:#8a94a6}
#feed{display:flex;flex-direction:column-reverse;gap:7px;max-height:230px;overflow-y:auto;font-size:.85rem}
#feed p{padding-left:10px;border-left:3px solid var(--or);color:#333}
#feed p.hot{border-left-color:var(--pmu);font-weight:600}

#resultbox{display:none;margin-top:14px}
.arrivee{background:var(--encre);color:var(--craie);border-radius:12px;padding:18px}
.arrivee h3{font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;font-size:1.3rem;color:var(--or);letter-spacing:.05em}
.combo{display:flex;gap:8px;margin:12px 0;flex-wrap:wrap}
.combo .n{
  width:46px;height:46px;border-radius:10px;display:flex;align-items:center;justify-content:center;
  font-family:'Barlow Condensed';font-weight:900;font-size:1.4rem;color:#fff;
  border:2px solid rgba(255,255,255,.35);
  opacity:0;animation:comboPop .45s cubic-bezier(.34,1.56,.64,1) forwards;
}
.combo .n:first-child{outline:3px solid var(--or);outline-offset:2px}
@keyframes comboPop{from{opacity:0;transform:scale(.3) rotate(-8deg)}to{opacity:1;transform:scale(1)}}
.arrivee ol{margin:8px 0 0 20px;font-size:.88rem}
.arrivee ol li{margin:3px 0}
.arrivee .note{font-size:.75rem;color:#aab3c2;margin-top:12px}

.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:10px}
.horse{
  background:#fff;border:1.5px solid var(--ligne);border-radius:12px;padding:12px 14px;
  display:flex;gap:11px;
}
.horse .silkbig{width:34px;height:38px;border-radius:8px 8px 14px 14px;flex-shrink:0;border:1.5px solid rgba(0,0,0,.25);position:relative}
.horse .silkbig span{
  position:absolute;top:-9px;left:50%;transform:translateX(-50%);
  background:var(--encre);color:#fff;font-family:'Barlow Condensed';font-weight:700;
  font-size:.72rem;border-radius:5px;padding:0 5px;
}
.horse h4{font-family:'Barlow Condensed';font-weight:700;font-size:1.06rem;text-transform:uppercase}
.horse .sub{font-size:.72rem;color:#6b7280;margin-bottom:4px}
.horse p{font-size:.79rem;color:#374151}
.tag{
  display:inline-block;font-size:.66rem;font-weight:600;border-radius:99px;
  padding:1.5px 8px;margin:4px 4px 0 0;background:var(--craie);border:1px solid var(--ligne);
}
.tag.base{background:#eaf6ee;border-color:#bcdcc6;color:#1f5c33}
.tag.risk{background:#fdeeee;border-color:#f2c1be;color:#a32620}

.disclaimer{margin-top:26px;font-size:.74rem;color:#7a828f;border-top:1px solid var(--ligne);padding-top:12px}

@media (prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
  .hero{height:100vh}
}


/* =============== Monte-Carlo : 100 courses en 1 clic =============== */
.btn-mc{background:var(--nuit2);color:var(--craie)}
#mcbox{display:none;margin-top:14px}
#mcbox.show{display:block;animation:comboPopIn .4s ease}
@keyframes comboPopIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
.mc-grid{display:grid;grid-template-columns:1.3fr 1fr;gap:14px}
@media(max-width:700px){.mc-grid{grid-template-columns:1fr}}
.mc-note{font-size:.78rem;color:#5b6474;margin-top:8px}
.mcrow{display:flex;align-items:center;gap:9px;font-size:.84rem;margin:6px 0}
.mcrow .num{font-weight:600;width:22px}
.mcrow .nm{width:120px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.mcrow .barwrap{flex:1;background:var(--craie);border:1px solid var(--ligne);border-radius:99px;height:14px;overflow:hidden}
.mcrow .bar{height:100%;border-radius:99px;background:linear-gradient(90deg,var(--gazon),var(--or));width:0;transition:width .8s cubic-bezier(.22,1,.36,1)}
.mcrow .pct{width:96px;text-align:right;font-weight:600;font-size:.78rem;color:#1c4a30}
.mc-combo{display:flex;align-items:center;gap:8px;margin:7px 0;font-size:.84rem}
.mc-combo .c{font-family:'Barlow Condensed';font-weight:900;letter-spacing:.05em;background:var(--nuit);color:var(--or);border-radius:8px;padding:3px 10px}
.mc-combo .x{color:#5b6474;font-size:.74rem}


/* =============== avis des professionnels =============== */
.avisgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:10px}
.avis{background:#fff;border:1.5px solid var(--ligne);border-radius:12px;padding:14px 16px;border-top:4px solid var(--or)}
.avis h4{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;font-size:1rem;letter-spacing:.05em;color:#1c4a30;margin-bottom:6px}
.avis p{font-size:.84rem;color:#374151}
.avis b{color:#0c3b26}
.horse .musique{font-size:.7rem;color:#6b7280;margin-top:5px;font-family:monospace}

/* =============== LE DIRECT (pop-up course) =============== */
#cinema{position:fixed;inset:0;z-index:99990;background:rgba(6,14,10,.96);display:flex;align-items:center;justify-content:center;animation:qsGateBgIn .25s ease}
@keyframes qsGateBgIn{from{opacity:0}to{opacity:1}}
#cinema[hidden]{display:none}
.cine-stage{position:relative;width:min(96vw,1280px);animation:cineIn .4s cubic-bezier(.22,1,.36,1)}
@keyframes cineIn{from{opacity:0;transform:scale(.96)}to{opacity:1;transform:none}}
.cine-stage canvas{display:block;width:100%;height:auto;border-radius:14px;box-shadow:0 30px 90px rgba(0,0,0,.6)}
.cine-hud{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;gap:8px;pointer-events:none}
.cine-live{color:#ff5348;animation:qsLivePulse 1.2s infinite}
@keyframes qsLivePulse{0%,100%{opacity:1}50%{opacity:.35}}
.cine-pos{position:absolute;left:12px;top:56px;display:flex;flex-direction:column;gap:4px;pointer-events:none}
.cp-row{display:flex;align-items:center;gap:7px;background:rgba(12,25,18,.82);border-radius:8px;padding:4px 10px 4px 6px;color:#f3f1e6;font-size:.8rem;backdrop-filter:blur(3px)}
.cp-row.lead{border:1px solid var(--or)}
.cp-pos{font-family:'Barlow Condensed';font-weight:900;width:14px;color:var(--or)}
.cp-silk{width:13px;height:13px;border-radius:3px 3px 6px 6px;border:1px solid rgba(0,0,0,.3)}
.cp-num{font-weight:700;width:20px}
.cp-nm{white-space:nowrap;max-width:150px;overflow:hidden;text-overflow:ellipsis}
.cine-ticker{position:absolute;left:12px;right:12px;bottom:10px;background:rgba(12,25,18,.78);color:#f3f1e6;border-left:3px solid var(--or);border-radius:8px;padding:6px 11px;font-size:.8rem;line-height:1.28;backdrop-filter:blur(3px);
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.cine-ticker.hot{border-left-color:#ff5348;font-weight:600}
.cine-ticker.pop{animation:tickerPop .3s ease}
@keyframes tickerPop{from{transform:translateY(8px);opacity:.4}to{transform:none;opacity:1}}
.cine-close{position:absolute;top:-16px;right:-8px;background:#f3f1e6;color:#122019;border:none;border-radius:99px;padding:9px 16px;font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;box-shadow:0 8px 22px rgba(0,0,0,.4)}
.cine-close:hover{background:#fff}
.cine-result{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;background:rgba(8,18,12,.82);border-radius:14px;color:#f3f1e6;text-align:center;backdrop-filter:blur(4px);animation:qsGateBgIn .4s ease}
.cine-result[hidden]{display:none}
.cine-result h3{font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;font-size:1.8rem;color:var(--or);letter-spacing:.05em}
.cine-result .combo{justify-content:center}
.cine-result p{font-size:1rem;margin-bottom:8px}
@media(max-width:640px){.cine-pos{top:48px}.cp-nm{max-width:80px}.cine-close{top:-14px;right:0;padding:7px 12px}
  .cine-ticker{font-size:.72rem;padding:5px 9px;bottom:8px;-webkit-line-clamp:2}}


/* =============== archives SEO =============== */
.arch-wrap{padding-top:70px}
.arch-content{background:#fff;border:1.5px solid var(--ligne);border-radius:14px;padding:22px 24px;margin-top:22px;font-size:.92rem}
.arch-content h2{font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;font-size:1.4rem;margin:18px 0 8px;color:#0c3b26}
.arch-content h3{font-family:'Barlow Condensed';font-weight:700;font-size:1.05rem;margin:12px 0 4px}
.arch-content ul{margin:8px 0 8px 20px}
.arch-content li{margin:6px 0}
.arch-cta{display:flex;gap:10px;margin-top:22px;flex-wrap:wrap}
.arch-cta .btn{text-decoration:none;display:inline-flex;align-items:center;gap:6px}
.arch-list{display:grid;gap:12px}
.arch-item{display:block;background:#fff;border:1.5px solid var(--ligne);border-radius:14px;padding:16px 18px;text-decoration:none;transition:transform .15s,box-shadow .15s}
.arch-item:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(18,50,35,.12)}
.arch-item .d{font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--pmu)}
.arch-item h2{font-family:'Barlow Condensed';font-weight:700;font-size:1.25rem;margin:2px 0 4px}
.arch-item p{font-size:.84rem;color:#4b5563}
.arch-nav{margin-top:18px;text-align:center}
.arch-nav .page-numbers{display:inline-block;padding:6px 12px;border:1.5px solid var(--ligne);border-radius:8px;margin:0 3px;text-decoration:none;background:#fff}
.arch-nav .page-numbers.current{background:var(--nuit);color:var(--craie)}

/* tableau des partants (landing, indexable) */
.parttable{background:#fff;border:1.5px solid var(--ligne);border-radius:14px;overflow-x:auto;margin-top:14px}
.parttable table{width:100%;border-collapse:collapse;font-size:.84rem;min-width:560px}
.parttable th{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.05em;text-align:left;padding:10px 12px;background:var(--nuit);color:var(--craie);font-size:.8rem}
.parttable td{padding:8px 12px;border-top:1px solid var(--ligne)}
.parttable tr:hover td{background:#f7f5ea}
.parttable .mus{font-family:monospace;font-size:.72rem;color:#6b7280}

/* intro vidéo du Direct */
.cine-intro{position:absolute;inset:0;border-radius:14px;overflow:hidden;background:#000;z-index:5}
.cine-intro[hidden]{display:none}
.cine-intro video{width:100%;height:100%;object-fit:cover}
.cine-intro .skip{position:absolute;bottom:14px;right:14px;background:rgba(0,0,0,.6);color:#fff;border:1px solid rgba(255,255,255,.4);border-radius:99px;padding:6px 14px;cursor:pointer;font-size:.8rem}

/* =============== PWA : bouton installer =============== */
.pwa-install{
  position:fixed;right:14px;bottom:14px;z-index:950;
  background:var(--or);color:#1c2e22;border:none;border-radius:99px;
  font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.05em;
  font-size:.92rem;padding:11px 18px;cursor:pointer;box-shadow:0 10px 26px rgba(0,0,0,.3);
  animation:heroChip .5s ease;
}
.pwa-install:hover{background:#d8a83e}
.pwa-ios{
  position:fixed;left:14px;right:14px;bottom:70px;z-index:951;max-width:420px;margin:0 auto;
  background:var(--nuit);color:var(--craie);border-radius:14px;padding:14px 40px 14px 16px;
  font-size:.9rem;box-shadow:0 14px 34px rgba(0,0,0,.4);border:1px solid rgba(255,255,255,.15);
}
.pwa-ios b{color:var(--or)}
.pwa-ios .pwa-share{filter:grayscale(0)}
.pwa-ios-close{position:absolute;top:8px;right:10px;background:none;border:none;color:#9aa2b0;font-size:1rem;cursor:pointer}

/* =============== section SEO =============== */
.seo-section{padding-top:40px}
.seo-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:22px}
@media(max-width:760px){.seo-grid{grid-template-columns:1fr}}
.seo-col h3{font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;font-size:1.15rem;margin:14px 0 6px;color:#0c3b26}
.seo-col p{font-size:.9rem;color:#41505c;margin-bottom:8px}
.seo-col strong{color:#0c3b26}
.faq details{background:#fff;border:1.5px solid var(--ligne);border-radius:10px;padding:10px 14px;margin-bottom:8px}
.faq summary{font-family:'Barlow Condensed';font-weight:700;font-size:1rem;cursor:pointer;color:#122019}
.faq details[open] summary{color:var(--pmu)}
.faq p{font-size:.85rem;color:#41505c;margin-top:8px}
.seo-tags{font-size:.76rem;color:#8a94a6;margin-top:18px;line-height:1.7}

/* =============== bouton son =============== */
.btn-sound{background:var(--nuit2);color:var(--craie)}
.cine-sound{
  position:absolute;top:56px;right:12px;z-index:6;
  background:rgba(12,25,18,.82);color:#f3f1e6;border:1px solid rgba(255,255,255,.25);
  border-radius:99px;padding:6px 14px;font-family:'Barlow Condensed';font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;cursor:pointer;backdrop-filter:blur(3px);
}
.cine-sound:hover{background:rgba(12,25,18,.95)}
@media(max-width:640px){.cine-sound{top:auto;bottom:64px;right:12px}}

/* =============== plein écran du Direct =============== */
.cine-full{
  position:absolute;top:56px;right:110px;z-index:6;
  background:rgba(12,25,18,.82);color:#f3f1e6;border:1px solid rgba(255,255,255,.25);
  border-radius:99px;padding:6px 14px;font-family:'Barlow Condensed';font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;cursor:pointer;backdrop-filter:blur(3px);
}
.cine-full:hover{background:rgba(12,25,18,.95)}
/* en plein écran : la scène occupe tout l'écran en gardant le 16:9 */
#cinema:fullscreen{background:#000;display:flex;align-items:center;justify-content:center}
#cinema:-webkit-full-screen{background:#000;display:flex;align-items:center;justify-content:center}
#cinema:fullscreen .cine-stage{width:min(100vw,177.78vh);max-width:none}
#cinema:-webkit-full-screen .cine-stage{width:min(100vw,177.78vh);max-width:none}
#cinema:fullscreen .cine-close{top:8px;right:12px}
@media(max-width:640px){.cine-full{top:auto;bottom:64px;right:110px}}

/* =============== interstitiel publicitaire =============== */
.inter-ad{position:fixed;inset:0;z-index:99995;display:flex;align-items:center;justify-content:center;
  background:rgba(8,16,12,.82);backdrop-filter:blur(5px);-webkit-backdrop-filter:blur(5px);padding:18px;animation:qsGateBgIn .25s ease}
.inter-ad[hidden]{display:none}
.inter-card{background:#fff;border-radius:18px;max-width:440px;width:100%;padding:20px;text-align:center;
  box-shadow:0 30px 80px rgba(0,0,0,.45);animation:cineIn .4s cubic-bezier(.22,1,.36,1);position:relative}
.inter-tag{position:absolute;top:10px;left:12px;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:#9aa2b0;background:#f0f1f4;border-radius:99px;padding:2px 9px}
.inter-card h3{font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;font-size:1.35rem;line-height:1.1;margin:16px 6px 12px;color:var(--encre)}
.inter-card a{display:block;text-decoration:none;color:inherit}
.inter-card img{width:100%;border-radius:12px;display:block;margin-bottom:12px;border:1px solid var(--ligne)}
.inter-slot{width:100%;min-height:60px;margin:14px 0 6px;overflow:hidden;border-radius:12px}
.inter-slot[hidden]{display:none}
.inter-slot img,.inter-slot iframe,.inter-slot video{max-width:100%;display:block;margin:0 auto;border:0}
.inter-btn{display:inline-block;background:var(--pmu);color:#fff;font-family:'Barlow Condensed';font-weight:700;
  text-transform:uppercase;letter-spacing:.05em;border-radius:99px;padding:11px 26px;font-size:1rem}
.inter-skip{margin-top:14px;background:none;border:none;color:#6b7280;font-size:.85rem;cursor:pointer;text-decoration:underline}
.inter-skip:disabled{color:#b3b9c2;cursor:default;text-decoration:none}

/* =============== porte email (Gmail) =============== */
.gate-pop{position:fixed;inset:0;z-index:99996;display:flex;align-items:center;justify-content:center;
  background:rgba(8,20,14,.72);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);padding:18px}
.gate-pop[hidden]{display:none}
.gate-card{background:#fff;border-radius:18px;max-width:440px;width:100%;padding:26px 22px;text-align:center;
  box-shadow:0 30px 80px rgba(0,0,0,.4);animation:gateIn .28s ease}
@keyframes gateIn{from{opacity:0;transform:translateY(16px) scale(.97)}to{opacity:1;transform:none}}
.gate-badge{display:inline-block;font-size:.66rem;font-weight:800;letter-spacing:.1em;text-transform:uppercase;
  background:#eaf6ee;border:1px solid #bcdcc6;color:#1f5c33;border-radius:99px;padding:4px 12px;margin-bottom:10px}
.gate-card h3{font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;font-size:1.45rem;line-height:1.05;color:var(--encre);margin-bottom:8px}
.gate-card p{font-size:.9rem;color:#4b5563;margin-bottom:14px}
.gate-form{display:flex;gap:8px;flex-wrap:wrap}
.gate-form input{flex:1 1 180px;min-width:0;border:1.5px solid var(--ligne);border-radius:12px;padding:12px 14px;font-size:1rem;font-family:inherit}
.gate-form input:focus{outline:none;border-color:var(--pmu);box-shadow:0 0 0 3px rgba(201,151,31,.18)}
.gate-form button{flex:0 0 auto;background:var(--pmu);color:#fff;border:none;border-radius:12px;padding:12px 22px;
  font-family:'Barlow Condensed';font-weight:700;text-transform:uppercase;letter-spacing:.05em;font-size:1rem;cursor:pointer;transition:background .15s}
.gate-form button:hover{background:var(--cta)}
.gate-err{color:#c0392b;font-size:.82rem;min-height:1em;margin:8px 0 0}
.gate-mini{font-size:.72rem;color:#8a94a0;margin-top:10px}

/* =============== bloc pronostic (archives) =============== */
.prono-box{background:linear-gradient(160deg,#0c3b26,#155e38);color:#f3f1e6;border-radius:16px;
  padding:22px 22px 18px;margin:18px 0;border:1px solid rgba(227,182,78,.35)}
.prono-box h2{font-family:'Barlow Condensed';font-weight:900;text-transform:uppercase;color:#e3b64e;margin-bottom:10px}
.prono-box p{margin:6px 0}
.prono-box strong{color:#fff}
.prono-box em{color:#cdd9d0;font-size:.82rem}
