/* =========================================================
   Eroul cu fotografie al secțiilor simple — rețeta din STIL.md:
   fotografie reală trecută prin filtrul albastru al clubului
   (desaturare + întunecare + blur ușor, tentă #2a5298 peste tot,
   văl bleumarin mai apăsat spre bază). Aceleași manete ca la
   eroul-calendar de fotbal, dar cu prefix propriu, ca paginile
   simple să se regleze separat.
   ========================================================= */
.page-hero.erou-foto {
  --ef-tenta: 0.82;
  --ef-val-sus: 0.58;
  --ef-val-jos: 0.86;
  --ef-saturatie: 0.6;
  --ef-contrast: 1.06;
  --ef-luminozitate: 0.66;
  --ef-neclaritate: 2px;
  /* zoom-ul dă loc parallax-ului (main.js) să miște poza fără să-i
     descopere marginile */
  --ef-zoom: 1.14;
}
.erou-foto .erou-fundal {
  position: absolute; inset: 0; z-index: 0;
  overflow: hidden; pointer-events: none;
}
.erou-foto .erou-fundal img {
  position: absolute; inset: 0;
  width: 100%; height: 100%;
  object-fit: cover; object-position: 50% 40%;
  transform: scale(var(--ef-zoom));
  transform-origin: 50% 50%;
  filter: saturate(var(--ef-saturatie))
          contrast(var(--ef-contrast))
          brightness(var(--ef-luminozitate))
          blur(var(--ef-neclaritate));
  animation: erou-foto-intra 1100ms var(--ease-out) backwards;
}
.erou-foto .erou-fundal .tenta {
  position: absolute; inset: 0;
  background: #2a5298;
  mix-blend-mode: color;
  opacity: var(--ef-tenta);
}
.erou-foto .erou-fundal .val {
  position: absolute; inset: 0;
  background: linear-gradient(
    rgba(19, 44, 104, var(--ef-val-sus)),
    rgba(14, 33, 82, var(--ef-val-jos)));
}
/* filigranul și iconița sportului trec peste fotografie */
.erou-foto .sport-ghost, .erou-foto .hero-art { z-index: 1; }

@keyframes erou-foto-intra { from { scale: 1.045; opacity: 0; } }

@media (max-width: 880px) {
  .page-hero.erou-foto { --ef-neclaritate: 1px; }
}
@media (prefers-reduced-motion: reduce) {
  .erou-foto .erou-fundal img { animation: none; }
}

/* =========================================================
   ȘAH — fotografia iese în față, calul face mutarea în L
   ========================================================= */
/* aceeași tentă albastră, dar dozată ca fotografia să se vadă limpede:
   mai puțină vopsea, văl mai subțire, fără blur */
.erou-sah.page-hero.erou-foto {
  --ef-tenta: 0.5;
  --ef-val-sus: 0.32;
  --ef-val-jos: 0.74;
  --ef-saturatie: 0.85;
  --ef-luminozitate: 0.82;
  --ef-neclaritate: 0;
}

/* calul: doar conturul, auriu, pe centrul paginii, peste fotografie —
   pozitia pe orizontala o da GSAP (xPercent -50 + pasul lateral) */
/* pista calului: fâșia dintre antetul fix și baza fotografiei. Tot ce iese
   din ea se decupează — deci piesa nu se vede prin meniul semi-transparent
   și nici nu poate părăsi fotografia. */
.cal-pista {
  position: absolute;
  /* pista acoperă tot eroul: tăietura de intrare a piesei cade pe muchia
     de sus a fotografiei, în spatele antetului aproape opac — nu se mai
     vede nicio linie de decupare în mijlocul imaginii */
  inset: 0;
  overflow: hidden;
  /* sub textul eroului: la dimensiunea asta piesa traversează titlul,
     deci trăiește ca filigran, în spatele scrisului */
  z-index: 0;
  pointer-events: none;
}
/* textul eroului stă deasupra filigranului */
.erou-sah .container { position: relative; z-index: 2; }
.cal-sah {
  position: absolute;
  /* la încărcare stă ASCUNS cu totul deasupra pistei (translate -102%) —
     intră în cadru abia la primul scroll */
  top: 0;
  left: 50%;
  transform: translate(-50%, -102%);
  /* dublu față de înainte, dar plafonat ca piesa să încapă mereu
     în fâșia dintre antet și baza fotografiei */
  width: min(30vw, 400px);
  /* fantomatic, ca scrisul „ȘAH" din fundal: translucid, fără umbră */
  opacity: 0.5;
  will-change: transform;
}
.cal-sah svg { display: block; width: 100%; height: auto; }
.cal-sah path {
  fill: none;
  stroke: rgba(255, 255, 255, 0.75);
  stroke-width: 1.3;
  stroke-linejoin: round;
  stroke-linecap: round;
}
@media (max-width: 880px) {
  .cal-sah { width: min(80vw, 260px); }
}
@media (prefers-reduced-motion: reduce) {
  .cal-sah { display: none; }
}
