/* ==========================================================================
   babacan-fix.css — Canlı site minor tasarım düzeltmeleri
   Tema dosyalarına dokunulmaz; tüm ince ayarlar bu dosyada birikir.
   --------------------------------------------------------------------------
   v3 (2026-07-31): TopBar 3 bölgeli düzen
   Sorun: topbar 3 kolonlu Bootstrap ızgarasıydı; sağ kolon %33'e sığmadığı
   için bar 102px'e katlanıyor, slogan kesiliyordu.
   Çözüm: grid [1fr | auto | 1fr] — yan kolonlar eşit genişlikte olduğu için
   ortadaki grup, slogan gizlense (zoom/dar ekran) bile TAM ORTADA kalır.
     Sol   : Slogan (sola yaslı)
     Orta  : Telefon · E-posta · Sosyal (ortalı)
     Sağ   : Tanıtım Kataloğu · Whatsapp (sağa yaslı)

   v4 (2026-07-31): Erişilebilirlik cilası
   - Whatsapp butonu 1.98:1 ile WCAG AA'yı geçemiyordu. Marka yeşili KORUNDU,
     metin koyulaştırıldı -> 7.52:1.
   - Hover'lar brightness(1.1) ile AÇILIYOR, kırmızı butonu 4.06:1'e
     düşürüyordu. Açık yerine KOYU hover: kırmızı 6.14:1.
   - Klavye odağı görünmüyordu -> beyaz :focus-visible halkası (19.3:1).
   - Sosyal ikon hedefi 28 -> 30px: butonlarla aynı dikey ritim.

   v5 (2026-07-31): Mobil uyarlama (dosyanın sonunda)

   v6 (2026-07-31): Token çıkarımı
   Tekrar eden değerler tek kaynağa alındı. Asıl kazanç kozmetik değil:
   çubuk yüksekliği ile gövde alt boşluğu BİRBİRİNE BAĞLI — biri değişip
   diğeri unutulursa mobilde footer çubuğun altında kalır. Artık tek değer.
   ========================================================================== */

/* Bootstrap `b, strong { font-weight: bolder }` tanımlıyor. `bolder` GÖRELİ
   bir değer: ebeveynden bir kademe kalın demek. Başlıklar 700 olduğu için
   içlerindeki <b> 900'e (black) çıkıyor ve aşırı ağır görünüyordu.
   Sabit 700 ile her yerde aynı kalınlık: normal metinde zaten 700'e denk
   geliyordu, yalnızca kalın ebeveyn içindeki durum düzelir. */
b, strong{font-weight:700}

:root{
  /* --- Renk ------------------------------------------------------------ */
  --bh-brand:#e3120b;        /* tema skin kırmızısı (theme-color4.css)      */
  --bh-brand-dark:#c40f09;   /* hover: koyulaşır, kontrast yükselir         */
  --bh-wa:#25d366;           /* Whatsapp marka yeşili — değiştirilmedi      */
  --bh-wa-dark:#1fbe5b;
  --bh-wa-ink:#052e16;       /* yeşil üzerinde okunur koyu metin            */
  --bh-on-dark:#fff;         /* koyu/marka zemin üzerindeki metin ve ikon   */
  --bh-brand-lite:#ff3b31;   /* koyu zeminde okunur kırmızı (ikon/rozet)    */
  --bh-focus:#fff;           /* odak halkası — ayrı amaç, ayrı token        */
  --bh-rule:rgba(255,255,255,.28);        /* öğeler arası ince ayraç       */
  --bh-cizgi:#e7e9ee;        /* açık zeminde ince sınır (nav altı)          */
  --bh-hover-veil:rgba(255,255,255,.12);  /* ikon hover zemini             */

  /* --- Ölçü ------------------------------------------------------------ */
  --bh-bar-h:44px;           /* topbar yüksekliği                           */
  --bh-ctl-h:30px;           /* buton + sosyal ikon dokunma hedefi          */
  --bh-mbar-h:56px;          /* mobil çubuk — gövde alt boşluğuyla EŞLEŞİR  */
  --bh-mbar-h-kisa:46px;     /* yatay telefon — gövde boşluğuyla EŞLEŞİR    */
  --bh-icon:14px;            /* topbar ikon boyutu                          */
  --bh-r:4px;                /* kontrol yarıçapı                            */

  /* --- Hareket --------------------------------------------------------- */
  --bh-t:.2s;                /* etkileşim geçişi                            */
}

/* NOT: Kırılma noktaları bilerek token DEĞİL — CSS değişkenleri @media
   sorgularında çalışmaz. Kullanılan eşikler: 1400 (slogan), 1180 (e-posta),
   991 (tema topbar'ı gizler / mobil çubuk devreye girer), 950 (sosyal),
   900 (buton daraltma), 460px yükseklik (yatay telefon). */

.ttm-topbar-wrapper{padding:0}
.ttm-topbar-wrapper .ttm-topbar-content{min-height:var(--bh-bar-h);display:flex;align-items:center}

/* --- 3 bölgeli ızgara: yanlar eşit (minmax(0,1fr)) -> orta gerçek merkez --- */
.bh-topbar{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
  align-items:center;column-gap:18px;
  width:100%;min-height:var(--bh-bar-h);
  font-size:13px;line-height:1;letter-spacing:.01em}

/* Ortak odak halkası: tema outline'ları global kapattığı için burada geri gelir */
.bh-topbar a:focus-visible{
  outline:2px solid var(--bh-focus);outline-offset:2px;border-radius:var(--bh-r)}

/* Sol: slogan */
.bh-tb-slogan{
  justify-self:start;min-width:0;
  opacity:.9;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}

/* Orta: telefon + e-posta + sosyal */
.bh-tb-center{
  justify-self:center;
  display:flex;align-items:center;gap:22px;white-space:nowrap}

/* Öğeler arası ince dikey ayraç (boşluğun tam ortasına) */
.bh-tb-center > * + *{position:relative}
.bh-tb-center > * + *::before{
  content:"";position:absolute;left:-11px;top:50%;transform:translateY(-50%);
  width:1px;height:15px;background:var(--bh-rule)}

/* Sağ: butonlar */
.bh-tb-right{
  justify-self:end;
  display:flex;align-items:center;gap:10px}

/* Telefon + E-posta: ikon + metin
   min-height: metin satırı yalnızca 14px yüksekliğindeydi; tıklama hedefi
   WCAG 2.5.8'in (24x24) altında kalıyordu. Öğe barda dikey ortalı olduğu
   için görünüm değişmez — sadece isabet alanı 14 -> 30px olur. */
.bh-tb-item{
  display:inline-flex;align-items:center;gap:7px;flex:none;
  min-height:var(--bh-ctl-h);
  color:var(--bh-on-dark);white-space:nowrap;transition:opacity var(--bh-t)}
.bh-tb-item:hover{text-decoration:none}
.bh-tb-item i{font-size:var(--bh-icon);opacity:.85;line-height:1}

/* Sosyal medya ikonları — butonlarla aynı yükseklik ve yarıçap ritmi */
.bh-tb-social{display:inline-flex;align-items:center;gap:4px;flex:none}
.bh-tb-social a{
  display:inline-flex;align-items:center;justify-content:center;
  width:var(--bh-ctl-h);height:var(--bh-ctl-h);border-radius:var(--bh-r);
  color:var(--bh-on-dark);font-size:var(--bh-icon);line-height:1;
  transition:background-color var(--bh-t),color var(--bh-t)}
.bh-tb-social a:hover{text-decoration:none}

/* Butonlar: aynı yükseklik, aynı tipografi */
.bh-tb-btn{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  height:var(--bh-ctl-h);padding:0 16px;border-radius:var(--bh-r);
  font-size:13px;font-weight:700;line-height:1;
  white-space:nowrap;
  transition:background-color var(--bh-t),transform .12s}
.bh-tb-btn:active{transform:translateY(1px)}

/* Seçici gücü: tema `.ttm-textcolor-white a` (0,1,1) ile beyazı dayatıyor;
   `.bh-topbar a.bh-tb-…` (0,2,1) ile ezilir — !important gerekmez. */
.bh-topbar a.bh-tb-btn-red{background-color:var(--bh-brand);color:var(--bh-on-dark)}                /* 4.82:1 */
.bh-topbar a.bh-tb-btn-red:hover{text-decoration:none}

.bh-topbar a.bh-tb-btn-wa{background-color:var(--bh-wa);color:var(--bh-wa-ink)}        /* 7.52:1 */
.bh-topbar a.bh-tb-btn-wa:hover{text-decoration:none}

/* Görsel hover geri bildirimi yalnızca gerçekten hover edebilen cihazlarda.
   Dokunmatikte hover, dokunuştan sonra "takılı" kalır ve yanlış durum gösterir;
   oradaki geri bildirim :active ile veriliyor. */
@media (hover:hover){
  .bh-tb-item:hover{opacity:.75;color:var(--bh-on-dark)}
  .bh-tb-social a:hover{background-color:var(--bh-hover-veil);color:var(--bh-on-dark)}
  .bh-topbar a.bh-tb-btn-red:hover{background-color:var(--bh-brand-dark);color:var(--bh-on-dark)}   /* 6.14:1 */
  .bh-topbar a.bh-tb-btn-wa:hover{background-color:var(--bh-wa-dark);color:var(--bh-wa-ink)}        /* 6.09:1 */
}

/* --- Daralan ekran / sayfa yakınlaştırma: kademeli sadeleşme ---
   Slogan gizlenince sol kolon boş 1fr olarak kalır; orta grup ortada durur. */
@media (max-width:1400px){
  .bh-topbar{column-gap:14px}
  .bh-tb-slogan{visibility:hidden}
}
@media (max-width:1180px){
  .bh-tb-mail{display:none}
}
@media (max-width:950px){
  .bh-tb-social{display:none}
}
/* Tema topbar'ı 767px altında zaten gizler; aradaki dar aralıkta butonlar
   sıkışmasın diye hafif daraltma */
@media (max-width:900px){
  .bh-tb-right{gap:8px}
  .bh-tb-btn{padding:0 12px}
}

@media (prefers-reduced-motion:reduce){
  .bh-tb-btn:active{transform:none}
}

/* ==========================================================================
   v5 (2026-07-31): Mobil uyarlama
   Sorun: tema topbar'ı 991px altında tamamen gizliyor. Sayfadaki TEK tel:,
   tek WhatsApp ve tek katalog bağlantısı orada olduğu için mobil ziyaretçide
   tıklanabilir iletişim kanalı sıfıra düşüyordu — "7/24 mobil servis" satan
   bir firma için doğrudan kayıp.
   Çözüm: başparmak erişimindeki sabit alt aksiyon çubuğu (Ara + WhatsApp)
   + kataloğun mobil menüye taşınması. Ölçek değil, bağlama uygun yeniden
   düşünme: sahadaki kullanıcı arar ya da WhatsApp yazar.
   ========================================================================== */

.bh-mobil-bar{display:none}
/* Katalog: masaüstünde topbar'da zaten var, menüde tekrarlanmaz.
   Tema `#site-header-menu #site-navigation .menu > ul > li` (2 ID) kullanıyor;
   ezmek için aynı iki ID + sınıf gerekiyor. */
#site-header-menu #site-navigation .menu > ul > li.bh-nav-mobil{display:none}

@media (max-width:991px){

  #site-header-menu #site-navigation .menu > ul > li.bh-nav-mobil{display:block}

  .bh-mobil-bar{
    display:flex;position:fixed;left:0;right:0;bottom:0;z-index:900;
    /* çentikli telefonlarda ev göstergesi alanına taşmaz */
    padding-bottom:env(safe-area-inset-bottom,0px);
    box-shadow:0 -2px 14px rgba(2,13,38,.22)}

  .bh-mobil-bar .bh-mb-act{
    flex:1 1 50%;
    display:flex;align-items:center;justify-content:center;gap:9px;
    min-height:var(--bh-mbar-h);                /* dokunma hedefi 44px üstü */
    font-size:15px;font-weight:700;line-height:1;letter-spacing:.01em;
    text-decoration:none;
    transition:background-color var(--bh-t)}
  .bh-mobil-bar .bh-mb-act:hover,
  .bh-mobil-bar .bh-mb-act:focus{text-decoration:none}
  .bh-mobil-bar .bh-mb-act i{font-size:19px;line-height:1}
  .bh-mobil-bar a:focus-visible{outline:2px solid var(--bh-focus);outline-offset:-4px}

  .bh-mobil-bar a.bh-mb-ara{background-color:var(--bh-brand);color:var(--bh-on-dark)}  /* 4.82:1 */
  .bh-mobil-bar a.bh-mb-ara:active{background-color:var(--bh-brand-dark)}
  .bh-mobil-bar a.bh-mb-wa{background-color:var(--bh-wa);color:var(--bh-wa-ink)}       /* 7.52:1 */
  .bh-mobil-bar a.bh-mb-wa:active{background-color:var(--bh-wa-dark)}

  /* çubuk içeriği örtmesin: footer'ın altına ÇUBUKLA AYNI yükseklik kadar boşluk */
  body{padding-bottom:calc(var(--bh-mbar-h) + env(safe-area-inset-bottom,0px))}
}

/* Yatay telefon: dikey alan kıymetli, çubuk inceltilir */
@media (max-width:991px) and (max-height:460px){
  .bh-mobil-bar .bh-mb-act{min-height:var(--bh-mbar-h-kisa);font-size:14px}
  body{padding-bottom:calc(var(--bh-mbar-h-kisa) + env(safe-area-inset-bottom,0px))}
}

/* ==========================================================================
   v7 (2026-07-31): Sevkiyat öncesi cila
   ========================================================================== */

/* Hamburger dokunma hedefi 34x30'du (44px altı). Görünmez pseudo ile isabet
   alanı büyütülür.
   DİKKAT: temanın kendi `position:absolute` değeri EZİLMEZ — mutlak konumlu
   öğe zaten pseudo için konumlanma bağlamıdır. `position:relative` yazmak
   temanın yerleşimini değiştirirdi.
   MEDYA KAPSAMI ŞART: temanın label'a verdiği position:absolute yalnızca
   max-width:1199px içinde. Masaüstünde label static kalıyor, pseudo da
   container-fluid'e (v10 ona position:relative veriyor) göre konumlanıp tüm
   header'a yayılıyor ve logo bağlantısını tıklanamaz hâle getiriyordu. */
@media (max-width:1199px){
  label.ttm-menu-toggle-block::after{
    content:"";position:absolute;top:-8px;right:-6px;bottom:-8px;left:-6px}
}

/* Logo bağlantısı masaüstünde tıklanamıyordu. Sebep: v10 #site-navigation'a
   height:80px veriyor; bu öğe DOM'da son sırada ve tam genişlikte (30→1395),
   içindeki menü ise float:right. Boş sol kısmı logonun (30→224) ve dil
   seçicinin (1329→1395) üstüne binip tıklamayı yutuyor.
   Yerleşime dokunmamak için yalnızca isabet testi kapatılır; menü ve
   hamburger kendi pointer-events'ini geri alır. */
@media (min-width:1200px){
  #site-navigation{pointer-events:none}
  #site-navigation nav.menu,
  #site-navigation .ttm-menu-toggle{pointer-events:auto}
}

/* ==========================================================================
   v8 (2026-07-31): Header görsel tasarımının uygulanması
   Onaylı 3 bölgeli düzen korunur; mockup'taki dekoratif katman eklenir:
   kalkan rozeti · kırmızı iletişim ikonları · slogan-telefon ayracı ·
   buton ikonları ve yumuşak köşe · menü öğeleri arası ince ayraç.
   ========================================================================== */

/* Kalite rozeti: kırmızı çerçeveli yuvarlak kare + kalkan */
.bh-tb-slogan{display:inline-flex;align-items:center;gap:12px}
.bh-tb-rozet{
  display:inline-flex;align-items:center;justify-content:center;flex:none;
  width:var(--bh-ctl-h);height:var(--bh-ctl-h);
  border:1.5px solid var(--bh-brand-lite);border-radius:8px;
  background:rgba(227,18,11,.10);
  color:var(--bh-brand-lite);font-size:15px;line-height:1}

/* İletişim ikonları markanın kırmızısında (mockup) */
.bh-tb-item i{color:var(--bh-brand-lite);opacity:1}

/* Slogan ile telefon arasına da ayraç — slogan gizlenince o da gizlenir */
.bh-tb-center > :first-child{position:relative}
.bh-tb-center > :first-child::before{
  content:"";position:absolute;left:-22px;top:50%;transform:translateY(-50%);
  width:1px;height:15px;background:var(--bh-rule)}

/* Butonlar: ikonlu, daha yumuşak köşe (mockup) */
.bh-tb-btn{gap:9px;border-radius:8px;padding:0 18px}
.bh-tb-btn i{font-size:15px;line-height:1}

/* Menü öğeleri arasında ince dikey ayraç.
   Tema `li` zaten position:relative — konum EZİLMEZ, yalnız pseudo eklenir. */
/* left:8px — ölçümle: li kenarı, iki menü metni arasındaki boşluğun
   ortasından 8px solda kalıyordu; optik hiza için kaydırıldı. */
#site-header-menu #site-navigation .menu > ul > li + li::before{
  content:"";position:absolute;left:8px;top:50%;transform:translateY(-50%);
  width:1px;height:18px;background:rgba(2,13,38,.14)}

@media (max-width:1400px){
  /* slogan gizliyken başındaki ayraç da anlamsız kalır */
  .bh-tb-center > :first-child::before{display:none}
}
@media (max-width:991px){
  /* mobil menüde dikey liste — dikey ayraç uygun değil */
  #site-header-menu #site-navigation .menu > ul > li + li::before{display:none}
}

/* ==========================================================================
   v9 (2026-07-31): Header yönergesinin uygulanabilir maddeleri
   ========================================================================== */

/* CTA hover: hafif kalkma + yumuşak gölge (yönerge: translateY(-1px), .25s).
   Renk geçişi zaten var; hareket compositor'da kalsın diye transform. */
.bh-tb-btn{transition:background-color var(--bh-t),transform .25s,box-shadow .25s}
@media (hover:hover){
  .bh-topbar a.bh-tb-btn:hover{
    transform:translateY(-1px);
    box-shadow:0 6px 14px -6px rgba(2,13,38,.55)}
}
.bh-tb-btn:active{transform:translateY(1px);box-shadow:none}

/* Mobil menü düğmesi KLAVYEYLE AÇILAMIYORDU: tema checkbox'ı display:none
   yaptığı için sekme sırasının tamamen dışındaydı (WCAG 2.1.1).
   Görsel olarak gizli ama odaklanabilir kalıbına çevrildi; odaklanınca
   label üzerinde görünür halka çıkar. Tema görünümü değişmez. */
#site-navigation input#menu-toggle-form{
  display:block !important;
  position:absolute;width:1px;height:1px;margin:-1px;padding:0;
  overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}
#site-navigation input#menu-toggle-form:focus-visible + label.ttm-menu-toggle-block{
  outline:2px solid var(--bh-brand);outline-offset:4px;border-radius:var(--bh-r)}

/* Dropdown oku: markup'ta hiç yoktu. Yalnızca alt menüsü olan öğeye,
   minimal bir chevron olarak eklenir (:has desteklemeyen tarayıcıda çıkmaz). */
#site-header-menu #site-navigation .menu > ul > li:has(> ul) > a::after{
  content:"";display:inline-block;vertical-align:middle;
  width:6px;height:6px;margin-left:9px;margin-top:-3px;
  border-right:2px solid currentColor;border-bottom:2px solid currentColor;
  transform:rotate(45deg);opacity:.55;transition:opacity .25s}
#site-header-menu #site-navigation .menu > ul > li:has(> ul) > a:hover::after{opacity:1}

/* Header'ın altına ince marka aksanı + merkezde küçük çentik.
   DİKKAT: .site-header-menu-inner kullanılamaz — menü float'lı olduğu için
   o kap 1px'e çöküyor ve çizgi topbar'ın altına düşüyor. .ttm-header-wrap
   header'ın gerçek alt kenarıdır. Yükseklik DEĞİŞMEZ: her ikisi de taşmayla çizilir. */
/* z-index şart: Revolution Slider hemen altta başlıyor ve DOM'da sonra geldiği
   için taşan çizgiyi/çentiği örtüyordu. Header zaten slider'ın üstünde durur. */
.ttm-header-style-classic .ttm-header-wrap{position:relative;z-index:2}
.ttm-header-style-classic .ttm-header-wrap::after{
  content:"";position:absolute;left:0;right:0;bottom:-2px;height:2px;
  background:var(--bh-brand);opacity:.9;pointer-events:none}
.ttm-header-style-classic .ttm-header-wrap::before{
  content:"";position:absolute;left:50%;bottom:-8px;
  width:0;height:0;margin-left:-7px;pointer-events:none;
  border-left:7px solid transparent;border-right:7px solid transparent;
  border-top:6px solid var(--bh-brand);opacity:.9}
@media (max-width:991px){
  .ttm-header-style-classic .ttm-header-wrap::before{display:none}
}

/* =========================================================
   ANASAYFA SLIDER — okunabilirlik katmanı
   ========================================================= */

/* index.php'de sarmalayıcıda .slide-overlay sınıfı vardı ama temada bu sınıf
   için HİÇ kural yoktu; yazılar çıplak fotoğrafın üzerinde duruyordu.
   Metin solda konumlandığı için gradyan solda koyu, sağa doğru açılıyor —
   böylece fotoğraf tamamen kararmadan yazı okunur kalıyor. */
/* Hedef ÖNEMLİ: .slotholder 1425x0 ve position:static — oraya bağlanan katman
   boyutsuz kalıyor. Slayt <li> ise 1425x725 ve zaten position:absolute.
   z-index:0 şart: metin katmanları z-index:1, katman 2 olsaydı yazıların
   üstünü örterdi. ::after son çocuk olduğu için arka planın üstünde,
   yazıların altında kalır. */
.slide-overlay .tp-revslider-mainul > li::after{
  content:"";position:absolute;inset:0;z-index:0;pointer-events:none;
  background:linear-gradient(100deg,
    rgba(2,13,38,.86) 0%,
    rgba(2,13,38,.68) 34%,
    rgba(2,13,38,.34) 64%,
    rgba(2,13,38,.16) 100%)}

/* İkinci güvence: açık zeminli kareye denk gelen harf kenarları için. */
.slide-overlay .tp-caption{text-shadow:0 2px 14px rgba(2,13,38,.6)}

/* Mobilde metin ortalanıyor (data-x="center"), gradyan da dengeli olmalı. */
@media (max-width:767px){
  .slide-overlay .tp-revslider-mainul > li::after{
    background:linear-gradient(180deg,
      rgba(2,13,38,.62) 0%,
      rgba(2,13,38,.74) 50%,
      rgba(2,13,38,.62) 100%)}
}

/* =========================================================
   ANASAYFA — "Babacan Hidrolik / Hidrolik Pnömatik" bölümü
   ========================================================= */

/* Üstteki hizmet kartı ile bu bölüm arasındaki boşluk 114px'ti:
   .row-top-section'ın 90px alt padding'i + bölümün 4px üst padding'i. */
.row-top-section{padding-bottom:30px}

/* Görsel yuvarlatma. width/height: kap 555x28'e çökmesin diye. */
.welcome-section_1 .about-img img{
  display:block;width:100%;height:auto;border-radius:20px}

/* --- Tecrübe şeridi: sayaç + hizmet listesi ---
   index.php'de sağ sütunun DIŞINA alındı; artık tam genişlikte durur.
   Masaüstünde 5 parça: solda sayaç + sağında 4 kolon liste. */
.bh-tecrube-serit{
  margin-top:30px;padding-top:28px;
  border-top:1px solid var(--bh-cizgi)}
/* !important ŞART: main.css .mt-80'e margin-top:80px !important veriyor;
   onsuz metin ile şerit arası 167px kalıyordu. */
.bh-tecrube-serit .row.mt-80{margin-top:0 !important}

/* width/height ŞART: shortcodes.css .ttm-fid.style1'e sabit 237x123px veriyor;
   genişlik kilidi etiketi sarıyor, yükseklik kilidi altta ölü boşluk bırakıyor.
   padding-left:0 — tema .ttm-fid-contents'e 33px veriyor, sayaç kayıyordu. */
.bh-tecrube-serit .ttm-fid.style1{width:100%;height:auto;padding:0;margin:0}
.bh-tecrube-serit .ttm-fid.style1 .ttm-fid-contents{padding-left:0}
/* white-space ŞART: h4 daralınca "+" alt satıra düşüp kutuyu iki katına çıkarıyordu. */
.bh-tecrube-serit .ttm-fid.style1 .ttm-fid-contents .bh-fid-sayi{
  white-space:nowrap;margin:0 0 6px;
  font-size:56px;line-height:1;font-weight:700;color:var(--bh-brand)}
/* sub'un tema line-height'ı 0; "+" tabandan kopuyordu. */
.bh-tecrube-serit .ttm-fid.style1 .ttm-fid-contents .bh-fid-sayi sub{
  bottom:0;margin-left:2px;font-size:.42em;line-height:1;vertical-align:baseline}
.bh-tecrube-serit .ttm-fid.style1 .ttm-fid-title{
  margin:0;font-size:16px;font-weight:700;line-height:1.3}

/* Onay işareti + Word'den yapışan inline font temizliği (her genişlikte).
   Maddeler <span style="font-family:Calibri;font-size:16px"> içinde geliyor;
   inline stili ezmenin tek yolu !important. */
.bh-tecrube-serit ul{list-style:none;padding-left:0;margin:0}
.bh-tecrube-serit ul li{
  position:relative;padding-left:24px;margin-bottom:11px;line-height:1.4}
.bh-tecrube-serit ul li::before{
  content:"";position:absolute;left:1px;top:.4em;
  width:12px;height:6px;
  border-left:2px solid var(--bh-brand);border-bottom:2px solid var(--bh-brand);
  transform:rotate(-45deg)}
.bh-tecrube-serit ul li span{
  font-family:inherit !important;
  font-size:14.5px !important;
  line-height:inherit !important}

@media (min-width:992px){
  /* flex-wrap:nowrap ŞART: Bootstrap .row varsayılan olarak sarar; liste
     sütunu içeriğine göre tam genişlik isteyince sayacın altına düşüyordu. */
  .bh-tecrube-serit .row.mt-80{
    display:flex;flex-wrap:nowrap;align-items:flex-start;gap:40px;
    margin-left:0;margin-right:0}
  .bh-tecrube-serit .row.mt-80 > [class*="col-"]{
    padding-left:0;padding-right:0;max-width:none}

  /* 1. parça: sayaç. Dikey ayraç listeden ayırır. */
  .bh-tecrube-serit .row.mt-80 > [class*="col-"]:first-child{
    flex:0 0 185px;padding-right:38px;
    border-right:1px solid var(--bh-cizgi)}

  /* 2-5. parça: 13 madde 4 kolona bölünür.
     flex-basis 0 (auto değil): auto olunca liste kendi içerik genişliğini
     dayatıp satırı taşırıyordu. */
  .bh-tecrube-serit .row.mt-80 > [class*="col-"]:last-child{
    flex:1 1 0;min-width:0}
  .bh-tecrube-serit ul{columns:4;column-gap:28px}
  .bh-tecrube-serit ul li{
    break-inside:avoid;-webkit-column-break-inside:avoid}
}

/* 992-1199 arasında 4 kolon sıkışıyor, 3'e düşer. */
@media (min-width:992px) and (max-width:1199px){
  .bh-tecrube-serit ul{columns:3}
}

/* Mobilde tema .container padding'ini sıfırlıyor; 15px'lik iç boşluk sütun
   padding'inden geliyor. Şerit kutusu bunu almadığı için üst ayraç görselden
   15px taşıyordu. İç satırın Bootstrap -15px margin'i de sıfırlanıyor. */
@media (max-width:991px){
  .bh-tecrube-serit{margin-left:15px;margin-right:15px}
  .bh-tecrube-serit .row.mt-80{margin-left:0;margin-right:0}
  .bh-tecrube-serit .row.mt-80 > [class*="col-"]{padding-left:0;padding-right:0}
  .bh-tecrube-serit .ttm-fid.style1{margin-bottom:26px}
}

/* =========================================================
   ANASAYFA — "Hizmetlerimiz" bölümü
   ========================================================= */

/* Üst ve alt boşluk 90px'ti, bölüm gereğinden ferah duruyordu. */
.service-section{padding-top:52px;padding-bottom:52px}

@media (min-width:992px){
  /* Başlık, açıklama ve buton aynı hat üzerinde dikey ortalanır.
     align-items tek başına yetmiyor: buton .float-right ile akıştan
     çıkıyor ve sütunun tepesinde kalıyordu (merkezi 72px, başlığınki
     116px). Float kaldırılıp sütun flex yapılıyor, mt-30/mb-35
     margin'leri de sıfırlanıyor. */
  .service-section > .container > .row:first-of-type{align-items:center}
  .service-section > .container > .row:first-of-type > [class*="col-lg-3"]{
    display:flex;align-items:center;justify-content:flex-end}
  /* !important ŞART: bootstrap .float-right{float:right!important},
     main.css .mt-30/.mb-35{margin:...!important}. Normal ezme çalışmıyor. */
  .service-section > .container > .row:first-of-type .ttm-btn{
    float:none !important;margin-top:0 !important;margin-bottom:0 !important}

  /* .section-title'ın 60px alt margin'i sütunu 134px yerine 194px yapıyordu;
     buton satıra göre doğru ortalanıyor ama satır görünen başlıktan uzun
     olduğu için 30px aşağı düşüyordu. Margin sıfırlanıp aynı boşluk
     ayraç çizgisine aktarılır — çizginin yeri değişmez. */
  .service-section > .container > .row:first-of-type .section-title{
    margin-bottom:0}
  .service-section > .container > .separator{margin-top:34px}

  /* Başlık ve açıklama display:table-cell; varsayılan vertical-align:baseline
     ilk satırlarını hizalıyor. Kutular eşit (ikisi de 134px) ama GÖRÜNEN
     metinler kayıyordu: başlık merkezi 78px, paragraf 131px, buton 120px.
     middle ile üç metin de aynı hatta oturur. */
  .service-section .section-title h2.title,
  .service-section .section-title p{vertical-align:middle}
}

/* "Hizmetimizi İnceleyin" bağlantısına ok. Tema .btn-inline'da ::after
   kullanmıyor, çakışma yok. Ok gövde + uç olarak çizilir; hover'da ileri kayar. */
.service-section .featured-desc .ttm-btn{
  position:relative;display:inline-flex;align-items:center;gap:10px}
.service-section .featured-desc .ttm-btn::after{
  content:"\f178";              /* fa-long-arrow-right (FontAwesome 4) */
  font-family:"FontAwesome";
  font-size:15px;line-height:1;flex:none;
  transform:translateX(0);
  transition:transform .25s ease}
@media (hover:hover){
  .service-section .featured-desc .ttm-btn:hover::after{
    transform:translateX(5px)}
}
@media (prefers-reduced-motion:reduce){
  .service-section .featured-desc .ttm-btn::after{transition:none}
}

/* =========================================================
   HAKKIMIZDA — anasayfadaki tanıtım bölümüyle aynı düzen
   ========================================================= */

/* Görsel yuvarlatma: anasayfadaki .about-img ile aynı. */
.bh-hakkimizda .about-img img{border-radius:20px}

/* Görsel, metin bloğuyla aynı yükseklikte. Sütunlar Bootstrap flex ile
   zaten eşit yükseklikte; yükseklik zinciri açılıp görsel object-fit:cover
   ile sütunu dolduruyor. */
@media (min-width:992px){
  .bh-hakkimizda .about-content{height:100%}
  .bh-hakkimizda .layer-content{height:100%}
  .bh-hakkimizda .about-img{height:100%;margin-bottom:0}
  .bh-hakkimizda .about-img img{
    width:100%;height:100%;object-fit:cover;object-position:center}
}

/* Metin ile görsel arasında hiç boşluk yoktu (görsel sağ kenarı 618,
   metin sol kenarı 618). */
@media (min-width:992px){
  .bh-hakkimizda .col-lg-7 .pl-15{margin-left:30px}
}

/* Başlık altı boşluk .section-title'ın 24px alt margin'inden alınır.
   h2'nin 51px alt padding'ine DOKUNULMAZ: kırmızı ayraç çizgisi tam o
   padding'in bittiği yere oturuyor, kısaltınca çizgi başlığa yapışıyor. */
.bh-hakkimizda .section-title{margin-bottom:0}

/* Giriş paragrafı (kalın özet) nefes alsın. */
.bh-hakkimizda .pl-15 > p:first-of-type{padding:10px}

/* Galeri ile altındaki bölüm arasında hiç boşluk yoktu. */
.bh-galeri{margin-bottom:50px}

/* "NEDEN BABACAN HİDROLİK PNÖMATİK" şeridi — anasayfadaki tecrübe
   şeridiyle (.bh-tecrube-serit) aynı kurgu: üstte ince ayraç, solda
   başlık, sağında kolonlu liste, aralarında dikey çizgi. */
.bh-neden{
  margin-top:34px;padding-top:28px;
  border-top:1px solid var(--bh-cizgi)}
.bh-neden-baslik{
  font-size:17px;font-weight:700;line-height:1.3;
  color:var(--bh-metin,#071126)}
.bh-neden ul{list-style:none;padding-left:0;margin:0}
.bh-neden ul li{
  position:relative;padding-left:24px;margin-bottom:11px;line-height:1.4}
.bh-neden ul li::before{
  content:"";position:absolute;left:1px;top:.4em;
  width:12px;height:6px;
  border-left:2px solid var(--bh-brand);border-bottom:2px solid var(--bh-brand);
  transform:rotate(-45deg)}

@media (min-width:992px){
  .bh-neden{display:flex;flex-wrap:nowrap;align-items:flex-start;gap:38px}
  /* 230px ŞART: en uzun satır "HİDROLİK PNÖMATİK" 179px yer istiyor,
     36px sağ padding ile 215px. 210px'te 5px eksik kalıp 4. satıra sarıyordu. */
  .bh-neden-baslik{
    flex:0 0 230px;padding-right:36px;
    border-right:1px solid var(--bh-cizgi);
    align-self:stretch}
  /* flex-basis 0: liste kendi içerik genişliğini dayatıp satırı taşırmasın.
     Blok artık tam genişlikte (1140px), 6 madde 3 kolona bölünür. */
  .bh-neden ul{flex:1 1 0;min-width:0;columns:3;column-gap:30px}
  .bh-neden ul li{break-inside:avoid;-webkit-column-break-inside:avoid}
}

/* =========================================================
   HİZMET DETAY (detay.php) — makale gövdesi
   ========================================================= */

/* Tema başlıkları sayfa bölüm başlığı ölçüsünde: H2 35px, H3 30px.
   848px'lik makale sütununda gövde metni 15px iken bu ölçek fazla iri
   duruyordu. Makale içinde ölçek küçültülür, hiyerarşi korunur. */
.post h2{font-size:26px;font-weight:700;line-height:1.3;margin:38px 0 12px}
.post h3{font-size:20px;font-weight:700;line-height:1.35;margin:28px 0 8px}
.post h2:first-child,
.post h3:first-child{margin-top:0}

/* Yazı içindeki tüm görseller yuvarlatılır. */
.post img{border-radius:20px}

/* Paragraf ve liste okunabilirliği */
.post p{margin-bottom:16px;line-height:1.75}
.post ul li,
.post ol li{margin-bottom:8px;line-height:1.7}

/* Metin içi bağlantılar gövdeden ayrışsın */
.post p a,
.post li a{color:var(--bh-brand);text-decoration:underline;text-underline-offset:3px}
@media (hover:hover){
  .post p a:hover,
  .post li a:hover{color:var(--bh-brand-dark)}
}

/* =========================================================
   HİZMET DETAY (detay.php) — kenar çubuğu
   ========================================================= */

/* Widget başlığı gri alanın tam kenarına yapışıktı (margin-top:0). */
.sidebar .widget:first-child{padding-top:34px}
.sidebar .widget-title{margin-bottom:22px}

/* Küçük görseller 85x80 kutuya zorlanıyordu ama kaynak oranları 1.31-1.89
   arasında değişiyor; üçü eziliyordu. cover ile kırpılıp oran korunur.
   70x70: başlık metniyle daha dengeli bir oran. */
.sidebar .ttm-recent-post-list-li img{
  width:70px;height:70px;object-fit:cover;object-position:center;
  border-radius:8px;flex:none;margin:0}

/* Görseli olmayan kayıtta metin sola dayansın (img yoksa boşluk kalmasın). */
.sidebar .ttm-recent-post-list-li{
  display:flex;align-items:center;gap:14px;
  padding:14px 0;
  border-bottom:1px solid #d7dbe2}          /* öncesi görünmez ayraçtı */
.sidebar .ttm-recent-post-list-li:last-child{border-bottom:0}

/* Hizmet başlığı görsele göre küçük kalıyordu (15px / 70px görsel). */
.sidebar .ttm-recent-post-list-li > a:last-child{
  flex:1 1 auto;min-width:0;
  font-size:16px;font-weight:700;line-height:1.35;
  color:var(--bh-metin,#071126)}
@media (hover:hover){
  .sidebar .ttm-recent-post-list-li > a:last-child:hover{color:var(--bh-brand)}
}

/* İletişim: telefon ve adres artık bağlantı, gövdeden ayrışsın. */
.sidebar .contact-widget-wrapper li a{color:inherit}
@media (hover:hover){
  .sidebar .contact-widget-wrapper li a:hover{color:var(--bh-brand);text-decoration:underline}
}
/* Telefon numaraları alt alta, her biri ayrı aranabilir.
   min-height: satır yüksekliği 20px'ti, WCAG 2.5.8'in 24px hedefinin
   altında kalıyordu — mobilde arama en kritik eylem. */
.sidebar .bh-telefonlar > span{display:block}
.sidebar .bh-telefonlar a{
  display:flex;align-items:center;min-height:28px}

/* Çalışma saatleri satır satır: etiket kalın, saat normal. */
.sidebar .bh-calisma-saati > span{display:block}
.sidebar .bh-calisma-saati > span > span{display:block;margin-bottom:3px}
.sidebar .bh-calisma-saati > span > span:last-child{margin-bottom:0}
.sidebar .bh-calisma-saati b{font-weight:700}

/* =========================================================
   MARKALAR sayfası
   ========================================================= */

/* Başlık ortalı, altında 50px boşluk (önce 15px'ti). */
.bh-markalar > .container > .row:first-of-type{text-align:center}
.bh-markalar > .container > .row:first-of-type h2{margin-bottom:50px}

/* Tek standart kutu. Logolar farklı oranlarda olduğu için object-fit:contain
   — cover kırpardı, marka logosu bölünmemeli. */
.bh-marka{
  display:flex;align-items:center;justify-content:center;
  aspect-ratio:4/3;
  padding:18px;
  background:#fff;border-radius:15px;
  transition:box-shadow .28s ease, transform .28s ease}
.bh-marka img{
  max-width:100%;max-height:100%;width:auto;height:auto;
  object-fit:contain}

/* v75: Logonun altında marka adı. Logo metin taşımadığı için sayfa arama
   motoru ve yapay zekâ aramaları açısından okunamıyordu. */
.bh-marka-kutu{
  display:block;margin-bottom:20px;
  text-align:center}
.bh-marka-ad{
  display:block;
  margin-top:9px;min-height:2.6em;    /* uzun/kısa adlar satırları kaydırmasın */
  font-size:13.5px;font-weight:600;line-height:1.3;
  color:#5d6576;
  transition:color .28s ease}

/* Projelerdeki kırmızı gölge hover'ının aynısı. */
@media (hover:hover){
  .bh-marka-kutu:hover .bh-marka{
    box-shadow:0 10px 28px -8px rgba(227,18,11,.55);
    transform:translateY(-3px)}
  .bh-marka-kutu:hover .bh-marka-ad{color:var(--bh-brand)}
}
@media (prefers-reduced-motion:reduce){
  .bh-marka{transition:none}
  .bh-marka-kutu:hover .bh-marka{transform:none}
}

/* =========================================================
   İÇ SAYFA BAŞLIK BANDI (tüm alt sayfalarda ortak)
   ========================================================= */

/* Bant 419px'ti: 165px üst + 96px içerik + 158px alt padding.
   Yüksekliğin %77'si boşluktu.
   Not: responsive.css:1645 (max-width:991px) aynı öğeye 82/80 veriyor;
   bu dosya sonra yüklendiği için mobilde de bu değer geçerli olur. */
.ttm-page-title-row{padding-top:100px;padding-bottom:100px}

/* =========================================================
   ANASAYFA — "Projelerimiz" bölümü
   ========================================================= */

/* "Tüm Projelerimiz" butonu: ttm-btn-color-dark kenarlığı şeffaf bırakıyordu
   (1px solid rgba(0,0,0,0)). Hizmetler butonundaki gibi görünür çerçeve.
   currentColor: metin rengiyle aynı, tema rengi değişirse birlikte değişir. */
.bh-kart-izgara .ttm-btn.ttm-btn-style-border{border-color:currentColor}

/* Proje başlığı: ortalı, 20px / 600, BÜYÜK HARF.
   Özgüllük ŞART: shortcodes.css'te ".featured-item .content-post h2.title-post"
   (0,3,1) 22px/400 veriyor; kısa seçici (0,2,0) onu ezemiyordu.
   text-transform CSS'te: veritabanındaki düzgün yazım breadcrumb, görsel alt
   metni ve kenar çubuğu listesinde olduğu gibi kalsın. lang="tr" olduğu için
   tarayıcı Türkçe eşlemeyi uygular (i→İ, ı→I). */
.bh-kart-izgara .content-post{text-align:center}
.bh-kart-izgara .featured-item .content-post h2.title-post,
.bh-kart-izgara .featured-item .content-post h2.title-post a{
  font-size:20px;font-weight:700;line-height:1.35;text-align:center;
  text-transform:uppercase}

/* --- Yalnızca /tumprojeler sayfası: bölüm başlığı ve açıklaması --- */
.bh-projeler-sayfa > .container > .row:first-of-type > [class*="col-"]{
  max-width:75%;
  margin-left:auto;margin-right:auto;
  text-align:center}

/* Kutu: 15px yuvarlatma. overflow:hidden — görsel köşelerden taşmasın. */
.bh-kart-izgara .featured-item{
  position:relative;
  border-radius:15px;
  overflow:hidden;
  background:#fff;
  transition:box-shadow .28s ease, transform .28s ease}
/* Görseller tek orana sabitlenir. Projelerin 10'u 4:3 (1000x750) ama
   "Kar Küreme Araçları" 1600x739 (2.17) panoramik ve alana oturmuyordu.
   object-fit:cover ile kırpılır, kutu düzeni bozulmaz. */
.bh-kart-izgara .featured-thumbnail img{
  display:block;width:100%;height:auto;
  aspect-ratio:4/3;object-fit:cover;object-position:center}

/* Tüm kutu tıklanabilir: başlıktaki bağlantı ::after ile kutuyu kaplar.
   İç içe <a> kullanmadan (geçersiz HTML) aynı sonucu verir.
   position:static ŞART: shortcodes.css .featured-item .content-post'a
   relative veriyor; o kalırsa ::after kutunun tamamına değil sadece
   başlık şeridine (658→717) yayılıyordu. İçinde başka mutlak konumlu
   öğe yok, kontrol edildi. */
.bh-kart-izgara .content-post{position:static}
.bh-kart-izgara .featured-item .bh-kutu-link::after{
  content:"";position:absolute;inset:0;z-index:2}

/* Kırmızı gölge hover'ı */
@media (hover:hover){
  .bh-kart-izgara .featured-item:hover{
    box-shadow:0 10px 28px -8px rgba(227,18,11,.55);
    transform:translateY(-3px)}
}
/* Klavyeyle gezerken de aynı geri bildirim */
.bh-kart-izgara .featured-item:focus-within{
  box-shadow:0 10px 28px -8px rgba(227,18,11,.55)}
.bh-kart-izgara .featured-item .bh-kutu-link:focus-visible::after{
  outline:2px solid var(--bh-brand);outline-offset:-3px;border-radius:15px}

@media (prefers-reduced-motion:reduce){
  .bh-kart-izgara .featured-item{transition:none}
  .bh-kart-izgara .featured-item:hover{transform:none}
}

/* Footer tanıtım paragrafı (genelayarlar.slogan3) 12px.
   Logo widget'ının içindeki tek <p>; iletişim listesi etkilenmez. */
.second-footer .widget.style2 .footer-logo + br + p,
.second-footer .widget.style2 > p{font-size:12px}

/* =========================================================
   v77: FOOTER ALT BANDI — telif ve bağlantılar iki satır, ortalı
   ========================================================= */

/* Eski "hepsini tek satıra sığdır" çözümü kırıldı. Politika bağlantısı
   sayısı 5'e çıkınca (en genişi 256px) satır 1111px istiyor; kapsayıcı
   1200-1399px'te 1110px, 992-1199px'te 930px — yani yalnız 1400px+
   ekranlarda sığıyordu. Üstüne telif sütununda flex:0 1 auto + min-width:0
   vardı: kutu 224px'e sıkışıyor ama nowrap sarmayı engellediği için
   406px'lik telif yazısı menünün 152px altına giriyordu (canlıda ölçüldü).

   Çözüm: tek satır iddiasından tamamen vazgeç. İki satır, ikisi de ortalı,
   bağlantılar sarabiliyor — yeni sayfa eklenince bir daha bozulmaz. */
@media (min-width:992px){
  .bottom-footer-text .row.copyright{
    flex-wrap:wrap;justify-content:center;align-items:center}
  .bottom-footer-text .row.copyright > .col-md-6{
    flex:0 0 100%;max-width:100%;width:100%}

  /* tema .ttm-footer2-right'a text-align:right veriyor, ortala */
  .bottom-footer-text .ttm-footer2-left,
  .bottom-footer-text .ttm-footer2-right{text-align:center}
  .bottom-footer-text .ttm-footer2-left{white-space:normal}

  .bottom-footer-text .ttm-footer2-left span,
  .bottom-footer-text .footer-nav-menu a{font-size:13px}

  .bottom-footer-text .footer-nav-menu{
    display:flex;flex-wrap:wrap;justify-content:center;
    margin:0;padding:0;white-space:normal}
  .bottom-footer-text .footer-nav-menu > li{padding:0 11px}

  /* iki satır olunca bant dar geliyordu */
  .bottom-footer-text .row.copyright{padding:8px 0}
}

/* Baskı: sabit çubuk ve topbar kâğıda basılmaz, boşluk sıfırlanır */
@media print{
  .bh-mobil-bar{display:none !important}
  .ttm-topbar-wrapper{display:none !important}
  body{padding-bottom:0 !important}
}

/* ================= v67: Başlık hiyerarşisi (SEO) =================
   Etiketler değişti, görünüm birebir korunur. Ölçümler canlı sayfadan:
   - Anasayfa "Babacan Hidrolik" artık h1 (eskiden h2; gerçek h1 DB
     içeriğine gömülüydü ve h2'den SONRA geliyordu).
   - "HİDROLİK PNÖMATİK" DB'de h1 → h2.bh-ust-baslik.
   - Sayaçlar başlık değil: h4 → div.bh-fid-sayi, h3 → div.ttm-fid-title.
   - Slider altı 3 kart h5 → p.bh-kart-baslik (h1'den önce h5 sızıyordu).
   - "Sayılarla" eyebrow h5 → span.bh-eyebrow. */
.section-title h1.title{
  font-size:45px;font-weight:300;line-height:50px;color:#020d26;
  /* text-transform SART: tema h1 e uppercase veriyor; orijinal h2 duz yazimdi. */
  margin:0;padding-bottom:51px;text-transform:none}
.section-title .bh-ust-baslik{
  font-size:45px;font-weight:600;line-height:50px;text-transform:uppercase;
  color:#020d26;margin:0 0 15px;padding:0}
.ttm-fid-contents .bh-fid-sayi{
  /* Tema taban h4 kurali (shortcodes.css:859): 40px/50px/600. Varyantlar
     asagida; 30+ seridi kendi (daha ozgul) kuralini kullanir. */
  font-size:40px;font-weight:600;line-height:50px;margin:0;padding:0;
  color:#020d26}
.ttm-bgcolor-skincolor .ttm-fid-contents .bh-fid-sayi,
.ttm-bgcolor-darkgrey .ttm-fid-contents .bh-fid-sayi{color:#fff}
.ttm-fid-contents div.ttm-fid-title{
  font-size:17px;font-weight:400;line-height:25px;margin:0;padding:0;
  color:rgba(0,0,0,.8)}
.ttm-bgcolor-skincolor div.ttm-fid-title,
.ttm-bgcolor-darkgrey div.ttm-fid-title{color:#fff}
.featured-title .bh-kart-baslik{
  font-size:23px;font-weight:400;line-height:28px;color:#020d26;
  margin:0 0 9px;padding:0}
.section-title .bh-eyebrow{
  display:block;font-size:15px;font-weight:400;line-height:28px;
  margin:-5px 0 6px}
.ttm-bgcolor-darkgrey .section-title .bh-eyebrow,
.ttm-bgcolor-skincolor .section-title .bh-eyebrow{color:#fff}

@media (max-width:767px){
  .section-title h1.title{font-size:34px;line-height:40px;padding-bottom:30px}
  .section-title .bh-ust-baslik{font-size:34px;line-height:40px}
}

/* ================= v68: /haber yazı listesi =================
   Tasarım /tumprojeler ile aynı (bh-kart-izgara); bloga özgü tek fark
   karttaki tarih rozeti ve sayfalama. */
.bh-kart-izgara .content-post .bh-blog-tarih{
  display:block;text-align:center;
  font-size:12px;font-weight:600;letter-spacing:.4px;
  color:#5d6576;margin:2px 0 4px}
.bh-sayfalama{display:flex;justify-content:center;gap:8px;margin-top:10px}
.bh-sayfalama .page-numbers{
  display:inline-block;min-width:38px;padding:8px 0;text-align:center;
  border:1px solid #d8dbe2;border-radius:8px;font-weight:600;color:#020d26}
.bh-sayfalama a.page-numbers:hover{border-color:var(--bh-brand);color:var(--bh-brand)}
.bh-sayfalama .page-numbers.current{
  background:var(--bh-brand);border-color:var(--bh-brand);color:#fff}
/* Footer "Tüm yazılar" bağlantısı görsel listeyle hizalı dursun */
.widget-post .bh-blog-tumu a{font-weight:600}

/* ================= v69: style2 sayaç kartları (Sayılarla bölümü) =========
   style2 sayaçlar KIRMIZI bölümün içindeki BEYAZ kartlarda durur; üstteki
   ".ttm-bgcolor-skincolor ... {color:#fff}" kuralı onları beyaz-üstü-beyaz
   yapıyordu (rakamlar görünmez + 56px). Tema bunu özgüllükle çözüyordu
   (.ttm-fid.style2 .ttm-fid-contents h4 > .ttm-bgcolor-skincolor ...);
   div'e geçince aynı çözüm burada yeniden kurulur (shortcodes.css:1024-1032). */
.ttm-fid.style2 .ttm-fid-contents .bh-fid-sayi{
  /* 44px shortcodes.css degeri; GERCEK gorunum header.php icindeki gomulu
     <style> blogunun 28px kuralindan geliyor (canlidan olculdu). Ikisi ayni
     degerde tutulur ki kaskad sirasina bagimlilik kalmasin. */
  font-size:28px;color:#020d26}
.ttm-fid.style2 .ttm-fid-contents div.ttm-fid-title{
  font-size:17px;font-weight:400;color:#5d6576;margin-top:1px}

/* ================= v71: Marka şeridi (anasayfa, marquee) =================
   "Yerinde Servis" ile footer iletişim bloğu arasında ince bir bant.
   Logolar gri, üzerine gelince renkli; tüm şerit markalar sayfasına gider. */
.bh-marka-serit{
  background:#fff;
  border-top:1px solid var(--bh-cizgi);
  border-bottom:1px solid var(--bh-cizgi)}
.bh-serit-baglanti{
  display:block;padding:20px 0;
  text-decoration:none}
/* Pencere: taşan şeridi kırpar. Kenarlarda yumuşak solma — logolar
   kesik değil, sönerek giriyor/çıkıyor gibi görünsün. */
.bh-serit-pencere{
  display:block;overflow:hidden;
  -webkit-mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent);
          mask-image:linear-gradient(90deg,transparent,#000 8%,#000 92%,transparent)}
/* Akış: iki özdeş grup yan yana. -50% tam olarak ikinci grubun başlangıcı,
   yani başa dönüş görünmez. width:max-content ŞART — yoksa gruplar
   ebeveyn genişliğine sıkışıp kayma mesafesi bozulur. */
.bh-serit-akis{
  display:flex;width:max-content;
  animation:bh-serit-kay 150s linear infinite}
.bh-serit-grup{display:flex;align-items:center}
.bh-serit-oge{
  flex:0 0 auto;
  display:flex;align-items:center;justify-content:center;
  width:170px;height:64px;margin:0 30px}
.bh-serit-oge img{
  max-width:100%;max-height:100%;width:auto;height:auto;
  object-fit:contain;
  /* Gri: grayscale tek başına açık renkli logolarda soluk kalıyor;
     opacity ile birlikte dengeli bir ton veriyor. */
  filter:grayscale(1);opacity:.55;
  transition:filter .3s ease, opacity .3s ease}
@keyframes bh-serit-kay{
  from{transform:translateX(0)}
  to  {transform:translateX(-50%)}
}
/* Renk yalnızca ÜZERİNE GELİNEN logoda açılır (tüm şeritte değil). */
@media (hover:hover){
  .bh-serit-oge:hover img{filter:grayscale(0);opacity:1}
  .bh-serit-baglanti:hover .bh-serit-akis,
  .bh-serit-akis:hover{animation-play-state:paused}
}
/* Klavye kullanıcısı için de aynı geri bildirim */
.bh-serit-baglanti:focus-visible{
  outline:2px solid var(--bh-brand);outline-offset:-4px}
.bh-serit-baglanti:focus-visible .bh-serit-akis{animation-play-state:paused}

@media (max-width:767px){
  .bh-serit-baglanti{padding:14px 0}
  .bh-serit-oge{width:120px;height:46px;margin:0 20px}
  .bh-serit-akis{animation-duration:110s}
}
/* Hareket azaltma tercihi: şerit durur, logolar okunur kalır. */
@media (prefers-reduced-motion:reduce){
  .bh-serit-akis{animation:none}
  .bh-serit-pencere{overflow-x:auto}
  .bh-serit-oge img{transition:none}
}

/* ================= v74: İlgili hizmetler — minik kartlar =================
   Eskiden her hizmet sayfasının İÇERİĞİNE gömülü düz <ul> listesiydi;
   şablona (detay.php) taşındı ve kartlara çevrildi. */
.bh-ilgili{
  margin-top:44px;padding-top:34px;
  border-top:1px solid var(--bh-cizgi)}
.bh-ilgili-baslik{
  font-size:22px;font-weight:700;line-height:1.3;
  margin:0 0 22px;padding:0}
/* auto-fill + minmax: kaç hizmet olursa olsun satırlar dolar, tek başına
   kalan kart satırı germez. 7 kart 4/3/2 kolonda dengeli dağılır. */
.bh-ilgili-izgara{
  display:grid;gap:16px;
  grid-template-columns:repeat(auto-fill,minmax(160px,1fr))}
.bh-ilgili-kart{
  display:flex;flex-direction:column;
  background:#fff;border:1px solid var(--bh-cizgi);border-radius:12px;
  overflow:hidden;text-decoration:none;
  transition:box-shadow .28s ease, transform .28s ease, border-color .28s ease}
.bh-ilgili-kart:hover{text-decoration:none}
.bh-ilgili-gorsel{
  display:block;aspect-ratio:16/10;background:#f3f7f9}
.bh-ilgili-gorsel img{
  display:block;width:100%;height:100%;
  object-fit:cover;object-position:center}
.bh-ilgili-ad{
  display:flex;align-items:center;flex:1 1 auto;
  padding:11px 12px;
  font-size:13px;font-weight:600;line-height:1.35;
  color:#020d26}
@media (hover:hover){
  .bh-ilgili-kart:hover{
    border-color:var(--bh-brand);
    box-shadow:0 8px 22px -8px rgba(227,18,11,.45);
    transform:translateY(-2px)}
  .bh-ilgili-kart:hover .bh-ilgili-ad{color:var(--bh-brand)}
}
.bh-ilgili-kart:focus-visible{
  outline:2px solid var(--bh-brand);outline-offset:2px}
@media (max-width:767px){
  .bh-ilgili{margin-top:32px;padding-top:26px}
  .bh-ilgili-izgara{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:12px}
  .bh-ilgili-ad{font-size:12.5px;padding:10px}
}
@media (prefers-reduced-motion:reduce){
  .bh-ilgili-kart{transition:none}
  .bh-ilgili-kart:hover{transform:none}
}

/* ================= v76: Proje sayfası görselleri ve galeri =================
   Kaynak görsellerin oranları 0.56 (dikey) ile 2.17 (panoramik) arasında
   değişiyordu; hem ana görsel hem galeri her projede farklı yükseklikte
   çıkıp düzeni bozuyordu. Sabit oranlı kutu + object-fit:cover ile
   tek biçimli ızgara (kırpma olur, ama tam görsel lightbox'ta açılır). */
.bh-proje-ana{
  margin-bottom:26px;
  border-radius:15px;overflow:hidden;
  background:#f3f7f9}
.bh-proje-ana img{
  display:block;width:100%;height:auto;
  aspect-ratio:4/3;object-fit:cover;object-position:center}

.bh-proje-galeri{
  margin-top:38px;padding-top:30px;
  border-top:1px solid var(--bh-cizgi)}
.bh-galeri-baslik{
  font-size:22px;font-weight:700;line-height:1.3;
  margin:0 0 20px;padding:0}
/* auto-fill: galeri 3-8 arası değişiyor; satırlar kaç görsel olursa dolar. */
.bh-galeri-izgara{
  display:grid;gap:14px;
  grid-template-columns:repeat(auto-fill,minmax(180px,1fr))}
.bh-galeri-oge{
  display:block;position:relative;
  border-radius:12px;overflow:hidden;
  background:#f3f7f9;
  transition:box-shadow .28s ease, transform .28s ease}
.bh-galeri-oge img{
  display:block;width:100%;height:100%;
  aspect-ratio:4/3;object-fit:cover;object-position:center}
/* Büyüteç ipucu: tıklanabilir olduğu görünsün */
.bh-galeri-oge::after{
  content:"";position:absolute;inset:0;
  background:rgba(2,13,38,0);
  transition:background .28s ease}
@media (hover:hover){
  .bh-galeri-oge:hover{
    box-shadow:0 10px 26px -8px rgba(227,18,11,.5);
    transform:translateY(-2px)}
  .bh-galeri-oge:hover::after{background:rgba(2,13,38,.12)}
}
.bh-galeri-oge:focus-visible{
  outline:2px solid var(--bh-brand);outline-offset:2px}

@media (max-width:767px){
  .bh-proje-galeri{margin-top:28px;padding-top:22px}
  .bh-galeri-izgara{grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:10px}
}
@media (prefers-reduced-motion:reduce){
  .bh-galeri-oge{transition:none}
  .bh-galeri-oge:hover{transform:none}
}
