/* React Bits FoldText, vanilla port. Katlanma hareketini GSAP sürüyor;
   burada yalnızca 3B düzlem, kırışık gölgesi ve erişilebilir metin var.
   Renk / punto / ağırlık bilerek tanımlanmadı: bileşen taşıyıcı öğenin
   kendi tipografisini devralır, hero başlığının ölçüsünü bozmaz. */
.fold-text{
  -webkit-user-select:text;user-select:text;
}
.fold-text-sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;
  clip:rect(0,0,0,0);white-space:nowrap;border:0;
}
.fold-text-visual{display:inline}
.fold-text-line{display:block}
.fold-text-whitespace{display:inline}

/* Her panelin kendi perspektifi var; ortak bir sahne yerine harf başına
   derinlik, uzun başlıkta kenardaki harflerin eğilmesini önlüyor. */
.fold-text-segment{
  display:inline-block;line-height:inherit;vertical-align:baseline;
  perspective:var(--fold-perspective,700px);transform-style:preserve-3d;
}
.fold-text-segment[data-fold-split="line"]{display:block}

.fold-text-piece{
  position:relative;display:inline-block;color:inherit;line-height:inherit;
  transform-style:preserve-3d;backface-visibility:hidden;
}
/* will-change yalnızca katlanma sürerken: her harfe kalıcı katman ipucu
   vermek, animasyon bittikten sonra bedava değil. */
.fold-text.is-folding .fold-text-piece{will-change:transform,opacity}
/* Kırışık gölgesi: panel katlıyken koyu, açılırken sıfıra iner. */
.fold-text-piece::after{
  content:"";position:absolute;inset:-.08em -.02em;pointer-events:none;
  opacity:var(--fold-crease,0);mix-blend-mode:multiply;border-radius:.08em;
}
.fold-text-piece[data-fold-hinge="top"]::after{
  background:linear-gradient(180deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.22) 42%,rgba(255,255,255,.26) 100%);
}
.fold-text-piece[data-fold-hinge="bottom"]::after{
  background:linear-gradient(0deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.22) 42%,rgba(255,255,255,.26) 100%);
}
.fold-text-piece[data-fold-hinge="left"]::after{
  background:linear-gradient(90deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.22) 42%,rgba(255,255,255,.26) 100%);
}
.fold-text-piece[data-fold-hinge="right"]::after{
  background:linear-gradient(270deg,rgba(0,0,0,.58) 0%,rgba(0,0,0,.22) 42%,rgba(255,255,255,.26) 100%);
}

/* Bileşen devralana kadar başlık gizli durur: aksi hâlde katlanmamış metin
   bir kare görünüp sonra katlanıyor. js/fold-text.js sınıfı kaldırır, head'deki
   emniyet sayacı da 1.6 sn içinde her hâlükârda kaldırır. */
.fold-pending [data-fold-text]{visibility:hidden}

@media (prefers-reduced-motion:reduce){
  .fold-text-piece{transform:none !important}
  .fold-text-piece::after{opacity:0 !important}
}
