/* tutkueylul — LogiXpress (designesia) port: marka paleti + port güvenlik geçersiz kılmaları
   ============================================================
   İLKE: temayı SADIK port et (kendi yorumunu katma). Sadece marka rengi
   (navy + turuncu) + SPA/preview güvenlik fix'leri.
   ============================================================ */

/* ---- MARKA PALETİ: turuncu aksan (#fa6a2e) + NAVY koyu bölümler ---- */
/* Tema tokenları :root'ta tanımlı (scheme-01.css + style.css) → :root + !important ile ez. */
:root {
  --primary-color: #fa6a2e !important;
  --primary-color-rgb: 250, 106, 46 !important;
  --secondary-color: #fa6a2e !important;
  --secondary-color-rgb: 250, 106, 46 !important;
  /* Koyu bölümler: tema siyahı (#101010) → marka NAVY */
  --bg-dark-1: #06224f !important;
  --bg-dark-1-rgb: 6, 34, 79 !important;
  --bg-dark-2: #0a2c66 !important;
  --bg-dark-3: #0f3a82 !important;
  /* Başlık metni: tema #181D24 → navy; gövde biraz koyulaştır (#888 açık) */
  --heading-font-color: #06224f !important;
  --body-font-color: #54607a !important;
}

/* KÖK FIX: tema --bg-dark-* tokenlarını `*` (universal selector) ile HER elemana
   set ediyor → :root override descendant'lara ULAŞMIYOR (sticky header #101010 SİYAH
   kalıyor, navy banner'la iki-tonlu "çizgi" gibi görünüyordu). Universal `*`+!important
   ile ez (overrides.css tema CSS'inden SONRA yüklenir → aynı specificity'de kazanır).
   Sonuç: sticky header + tüm koyu bölümler TEK navy ailede → kusursuz geçiş. */
* {
  --bg-dark-1: #06224f !important;
  --bg-dark-1-rgb: 6, 34, 79 !important;
  --bg-dark-2: #0a2c66 !important;
  --bg-dark-3: #0f3a82 !important;
}

/* ---- SCROLL-REVEAL (IntersectionObserver — layout'taki script .is-in ekler) ----
   JS varsa .wow gizli başlar + görünür alana girince yumuşak belirir. JS yoksa
   (.js sınıfı eklenmez) .wow normal görünür. Güvenlik ağı (layout interval) +
   ULTIMATE: 4sn sonra görünür-alandakileri zorla açar → asla kalıcı boş section. */
/* GÜVENLİ EFEKT: opacity DAİMA 1 (asla boş section, throttle olsa bile) — efekt
   yalnız hafif yukarı kayma (transform). Reveal olmazsa içerik yine GÖRÜNÜR. */
/* KÖK NEDEN: tema plugins.css `.wow{visibility:hidden}` tanımlar; normalde WOW.js
   reveal'da visible'a çevirir. WOW'u kapattığımız için visibility ASLA geri dönmüyordu
   → tüm "boş section" sorununun gerçek kaynağı buydu (throttle değil). visibility +
   opacity DAİMA görünür; efekt yalnız transform (reveal olmazsa içerik yine GÖRÜNÜR). */
.wow { opacity: 1 !important; visibility: visible !important; }
.js .wow { transform: translateY(18px); transition: transform .55s cubic-bezier(.2,.7,.2,1); animation: none !important; will-change: transform; }
.js .wow.is-in { transform: none; }
/* Preloader kapalı (SPA'da gizlenmeyip içeriği örtebiliyor) */
#de-loader { display: none !important; }
/* Native scroll açık (Lenis/skrollr kapatıldı; body kilidi olmasın) */
html, body { overflow-x: clip; }
body { overflow-y: visible !important; }

/* ---- Sticky header: scroll'da solid navy (yarı-şeffaf içerik sızmasını önler) ----
   KÖK: Header markup'ında `mt-lg-4` (üst margin 1.5rem) var; header FIXED olunca
   1.5rem aşağıda konumlanıp üstte banner'dan ince bir şerit/çizgi sızdırıyordu
   (scroll-up'ta menü belirirken görünen "çizgi" buydu). FIXED state'te margin/top
   sıfırlanır → header tepeye yapışır, şerit yok. */
header.smaller, header.clone.smaller {
  background-color: var(--bg-dark-1) !important;
  box-shadow: 0 6px 24px rgba(6, 34, 79, 0.18) !important;
  margin-top: 0 !important;
  top: 0 !important;
}
/* Sticky clone header: scroll-up'ta KAYARAK (slide) belirirken ara karelerde
   ince bir şerit/çizgi görünüyordu. Slide geçişini kaldır → header ANINDA, temiz
   belirir; geçiş-anı çizgisi tamamen biter. */
header.clone, header.clone.smaller, header.clone.scroll-up, header.clone.scroll-down {
  transition: none !important;
  animation: none !important;
}

/* ---- Metin sarma fix: tema bazı flex/hover container'larda white-space:nowrap
   tanımlıyor; white-space KALITSAL olduğu için içteki <p>/başlık taşıyor (blog
   kartı). İçerik metni DAİMA normal sarsın (hero h1 inline pre-line korunur). ---- */
p, h1, h2, h3, h4, h5, h6, .subtitle, li, span.id-color, .accordion-section-content { white-space: normal; }

/* ---- Header: telefon menü öğesi yalnızca mobilde görünür ---- */
#mainmenu li.mobile-only-li { display: none; }
@media (max-width: 992px) { #mainmenu li.mobile-only-li { display: block; } }

/* ---- de-tab: client-nav sonrası ilk sekme içeriği görünür (JS .each
   yeniden çalışmaz; tıklama delegasyonla çalışıyor) ---- */
.d-tab-content > li { display: none; }
.d-tab-content > li:first-child { display: block; }

/* ---- Hizmetler dropdown: uzun başlıklar tek satır kalsın — içeriğe göre
   genişle (full-width değil). Masaüstü dropdown. ---- */
@media (min-width: 993px) {
  #mainmenu li ul { width: auto !important; min-width: 260px; max-width: 420px; }
  #mainmenu li ul li a { white-space: nowrap; }
}

/* ---- Hero: caption'lar düz (animasyon sınıfı kaldırıldı). Slayt görünürlüğü
   swiper "creative" efektiyle yönetiliyor (prev/next opacity:0 → yalnız aktif
   slayt + caption'ı görünür). Yükleme anı siyah yanıp sönmesin diye .mh-800'e
   yedek arka plan görseli. ---- */
.mh-800 { background: #06224f url(/img/eski/fztslider1-2.jpg) center / cover no-repeat; }
.swiper-slide .animated { opacity: 1 !important; }
