/* RS Performance Épernay — couleurs fixes avec une lueur subtile.
   Aucun dégradé animé ne parcourt les lettres et les couleurs ne changent pas. */
@keyframes rsGlowGreen {
  0%, 100% {text-shadow:0 0 9px rgba(70,227,157,.18),0 0 24px rgba(70,227,157,.06)}
  50% {text-shadow:0 0 15px rgba(70,227,157,.33),0 0 31px rgba(70,227,157,.13)}
}
@keyframes rsGlowYellow {
  0%, 100% {text-shadow:0 0 9px rgba(255,208,91,.20),0 0 23px rgba(255,208,91,.07)}
  50% {text-shadow:0 0 15px rgba(255,208,91,.36),0 0 32px rgba(255,208,91,.14)}
}
@keyframes rsGlowRed {
  0%, 100% {text-shadow:0 0 9px rgba(255,89,115,.19),0 0 23px rgba(255,89,115,.07)}
  50% {text-shadow:0 0 15px rgba(255,89,115,.34),0 0 32px rgba(255,89,115,.14)}
}
@keyframes rsGlowBlue {
  0%, 100% {text-shadow:0 0 9px rgba(110,195,255,.18),0 0 23px rgba(110,195,255,.06)}
  50% {text-shadow:0 0 15px rgba(110,195,255,.33),0 0 32px rgba(110,195,255,.12)}
}
@keyframes rsNeedleGlow {
  0%,100% {box-shadow:0 0 8px rgba(252,59,86,.45),0 0 16px rgba(252,59,86,.2)}
  50% {box-shadow:0 0 16px rgba(252,79,104,.72),0 0 26px rgba(252,59,86,.28)}
}

/* Couleurs permanentes, seules les intensités lumineuses respirent. */
body .rs-glow-green {
  color:#70e5a8;
  -webkit-text-fill-color:#70e5a8;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  animation:rsGlowGreen 4.8s ease-in-out infinite;
}
body .rs-glow-yellow {
  color:#f4c64f;
  -webkit-text-fill-color:#f4c64f;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  animation:rsGlowYellow 4.8s ease-in-out infinite;
}
body .rs-glow-red {
  color:#ff7388;
  -webkit-text-fill-color:#ff7388;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  animation:rsGlowRed 4.8s ease-in-out infinite;
}
body .rs-glow-blue,
body .rs-glow-mix {
  color:#79c4fb;
  -webkit-text-fill-color:#79c4fb;
  background:none;
  -webkit-background-clip:initial;
  background-clip:initial;
  animation:rsGlowBlue 4.8s ease-in-out infinite;
}
body h2 .rs-glow-green,
body h2 .rs-glow-yellow,
body h2 .rs-glow-red,
body h2 .rs-glow-blue,
body h2 .rs-glow-mix {animation-duration:6.5s;animation-delay:-1.2s}

/* Pompes E85 : les prix restent verts / rouges, avec un halo discret. */
body.er-page .fuel-pump-screen strong.rs-glow-green,
body.er-page .fuel-pump-screen strong.rs-glow-red {
  display:inline-block;
  filter:drop-shadow(0 0 7px rgba(80,223,158,.18));
  animation-duration:4.6s;
}
body.er-page .fuel-pump-screen strong.rs-glow-red {filter:drop-shadow(0 0 7px rgba(250,91,112,.18))}
body.er-page .fuel-pump-top {box-shadow:inset 0 2px 2px rgba(255,255,255,.15),0 0 18px rgba(55,212,146,.14)}
body.er-page .fuel-pump-sp .fuel-pump-top {box-shadow:inset 0 2px 2px rgba(255,255,255,.16),0 0 15px rgba(255,76,107,.11)}

/* Compte-tours et AdBlue : mêmes animations, couleurs stables. */
body.rp-page .rp-tacho-readout strong.rs-glow-blue {animation-duration:4.7s}
body.rp-page .rp-tacho-needle:before {animation:rsNeedleGlow 3.7s ease-in-out infinite}
body.rp-page .rp-tacho-redzone {filter:drop-shadow(0 0 12px rgba(255,73,91,.48))}
body.rp-page .rp-stage2-kicker {text-shadow:0 0 13px rgba(255,100,126,.24)}
body.ap-page .ap-alert-count.rs-glow-yellow {animation-duration:3.8s}
body.ap-page .ap-alert-display.is-resolved .ap-alert-resolved strong.rs-glow-green {animation-duration:4.4s}
body.ap-page #ap-obd-percent.rs-glow-yellow {animation-duration:3.9s}
body.ap-page .ap-obd-wave {filter:drop-shadow(0 0 7px rgba(255,215,112,.27))}

/* Lueur légère sur les mots d'accroche de l'accueil, sans bleu-vers-rouge. */
body .hero h1 em.rs-glow-mix {
  color:#79c4fb;
  -webkit-text-fill-color:#79c4fb;
  background:none;
  animation:rsGlowBlue 4.8s ease-in-out infinite;
}

/* Petites étoiles uniquement dans les titres principaux. */
body.er-page .er-hero h1 span.rs-glow-green,
body.rp-page .rp-hero h1 span.rs-glow-red,
body.ap-page .ap-hero h1 span.rs-glow-yellow {position:relative;display:inline-block}
@keyframes rsTinyTwinkle {
  0%,28%,100%{opacity:.15;transform:scale(.7) rotate(-12deg)}
  44%,56%{opacity:.75;transform:scale(1.05) rotate(8deg)}
}
body.er-page .er-hero h1 span.rs-glow-green:after,
body.rp-page .rp-hero h1 span.rs-glow-red:after,
body.ap-page .ap-hero h1 span.rs-glow-yellow:after {
  content:'✦';position:absolute;right:-.31em;top:-.22em;font-size:.16em;line-height:1;
  background:none;-webkit-text-fill-color:currentColor;
  color:rgba(255,250,223,.72);text-shadow:0 0 10px rgba(255,255,255,.32);
  pointer-events:none;animation:rsTinyTwinkle 5s ease-in-out infinite;
}
body.er-page .er-hero h1 span.rs-glow-green:after{color:#b9ffe0}
body.rp-page .rp-hero h1 span.rs-glow-red:after{color:#ffd4df}

@media(prefers-reduced-motion:reduce){
  body .rs-glow-green,body .rs-glow-yellow,body .rs-glow-red,
  body .rs-glow-blue,body .rs-glow-mix,
  body .hero h1 em.rs-glow-mix,
  body.rp-page .rp-tacho-needle:before,
  body.er-page .er-hero h1 span.rs-glow-green:after,
  body.rp-page .rp-hero h1 span.rs-glow-red:after,
  body.ap-page .ap-hero h1 span.rs-glow-yellow:after {animation:none!important}
}
