/* Bidentist tasarim dili — BASLIK HAREKETI (rapor §8).
   Esi: baslik.js (ayni dizin). Ikisi bir CIFT: biri olmadan digeri hicbir
   sey yapmaz, ve ikisi birlikte §8'in "kelime kelime maskeden yukselir"
   kalemini uygular.

   🔴 TEK TANIM: bu kurallar once `online-v2.css` icinde yaziliydi, yani
   paketin disinda. Pro ileride baska bir mimaride yapilacak; o gun bu
   animasyonun bir DOSYASI oldugu bilinmezse yeniden yazilir. Sayfa artik
   bu dosyayi yukluyor, kendi kopyasini tasimiyor.

   Sozlesme: baslik.js h1'in METIN dugumlerini
   <span class="kelime"><span>kelime</span></span> icine alir, her
   kelimeye --k-gecikme verir (0,09 sn x sira), sonra <html class="js-baslik">
   ve ardindan h1.yukseldi ekler.

   JS yoksa ya da coktuyse: `.js-baslik` sinifi hic eklenmez, asagidaki
   kurallarin HICBIRI eslesmez, h1 duz bir h1 olarak kalir.

   Eğri sayfanin tokeni varsa ondan, yoksa §8'in degerinden gelir --
   dosya KENDI BASINA calisabilir olmali.                                */

.js-baslik h1 .kelime {
  display: inline-block; overflow: hidden; vertical-align: bottom;
  /* 🔴 ALT UZANTI: `overflow: hidden` + dar `line-height` (olculen hal
     1.04) `g`/`y`/`s` kuyruklarini KIRPAR. Maskeye alt dolgu verilir ve
     ayni kadar negatif bosluk alinir: yukseklik degismez, kuyruk
     kirpilmaz. Olculdu (t83 G4, piksel): dolgulu 3558 murekkep / alt
     bant 371; dolgu sifirlandiginda 3348 / 161 -- yani kuyruk gercekten
     kirpiliyordu. Kutu yuksekligi bu kusuru GOREMEZ, olcum piksel. */
  padding-bottom: .14em; margin-bottom: -.14em;
}
.js-baslik h1 .kelime > span {
  display: inline-block; transform: translateY(110%);
  transition: transform .9s var(--egri, cubic-bezier(0.22, 1, 0.36, 1)) var(--k-gecikme, 0s);
}
.js-baslik h1.yukseldi .kelime > span { transform: none; }

@media (prefers-reduced-motion: reduce) {
  .js-baslik h1 .kelime > span { transform: none !important; }
}
