/*
 * BABACAN HİDROLİK — HEADER V10
 * Mevcut header markup'ına override olarak eklenir.
 * Tema dosyalarına dokunmaz.
 *
 * Hedef:
 * - Topbar 44px olarak kalır.
 * - Ana header 80px olarak kalır.
 * - Mevcut PHP/menu yapısı korunur.
 * - Header daha premium, sakin ve kurumsal görünür.
 * - Tema'nın yüksek özgüllüklü selector'ları kontrollü şekilde ezilir.
 */

:root{
    --bh-v10-navy:#020d26;
    --bh-v10-navy-2:#07152f;
    --bh-v10-red:#e3120b;
    --bh-v10-red-dark:#c40f09;
    --bh-v10-green:#25d366;
    --bh-v10-green-ink:#052e16;
    --bh-v10-text:#071126;
    --bh-v10-muted:#697386;
    --bh-v10-line:#e8ebf0;
    --bh-v10-white:#fff;
}

/* =========================================================
   1. HEADER ANA KATMAN
   ========================================================= */

.ttm-header-style-classic{
    position:relative;
    z-index:20;
}

.ttm-header-style-classic .ttm-topbar-wrapper{
    height:44px;
    min-height:44px;
    padding:0;
    background:var(--bh-v10-navy);
    border-bottom:1px solid rgba(255,255,255,.08);
}

.ttm-header-style-classic .ttm-topbar-wrapper .container-fluid{
    height:44px;
}

.ttm-header-style-classic .ttm-topbar-content{
    height:44px;
    min-height:44px;
    display:flex;
    align-items:center;
}

/* Header'ın gerçek yüksekliği burasıdır. */
.ttm-header-style-classic .ttm-header-wrap{
    position:relative;
    z-index:2;
    height:80px;
    background:#fff;
    box-shadow:0 4px 18px rgba(2,13,38,.055);
}

/* Slider'ın üzerine taşan kırmızı marka çizgisi */
.ttm-header-style-classic .ttm-header-wrap::after{
    content:"";
    position:absolute;
    z-index:5;
    left:0;
    right:0;
    bottom:-1px;
    height:2px;
    background:var(--bh-v10-red);
    pointer-events:none;
}

/* Eski çentiği kaldırıyoruz; çizgi tek başına daha premium duruyor. */
.ttm-header-style-classic .ttm-header-wrap::before{
    display:none;
}

/* =========================================================
   2. TOPBAR
   ========================================================= */

.ttm-header-style-classic .bh-topbar{
    width:100%;
    height:44px;
    min-height:44px;
    display:grid;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    column-gap:24px;
    font-size:12.5px;
    line-height:1;
    letter-spacing:.01em;
}

/* Slogan */
.ttm-header-style-classic .bh-tb-slogan{
    justify-self:start;
    display:flex;
    align-items:center;
    gap:9px;
    min-width:0;
    max-width:100%;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
    color:rgba(255,255,255,.82);
    font-weight:400;
}

/* Rozet mevcut markup'ta kalabilir ama artık başrol değil. */
.ttm-header-style-classic .bh-tb-rozet{
    width:24px;
    height:24px;
    border:1px solid rgba(227,18,11,.72);
    border-radius:50%;
    background:rgba(227,18,11,.08);
    color:#ff4038;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:none;
    font-size:11px;
}

/* Orta iletişim grubu */
.ttm-header-style-classic .bh-tb-center{
    justify-self:center;
    display:flex;
    align-items:center;
    gap:20px;
    height:44px;
    white-space:nowrap;
}

.ttm-header-style-classic .bh-tb-item{
    min-height:30px;
    display:inline-flex;
    align-items:center;
    gap:7px;
    color:#fff;
    font-size:12.5px;
    font-weight:500;
    text-decoration:none;
    opacity:.94;
    transition:opacity .2s ease,color .2s ease;
}

.ttm-header-style-classic .bh-tb-item i{
    color:#ff4038;
    font-size:13px;
    opacity:1;
}

.ttm-header-style-classic .bh-tb-center > * + *{
    position:relative;
}

.ttm-header-style-classic .bh-tb-center > * + *::before{
    content:"";
    position:absolute;
    left:-11px;
    top:50%;
    width:1px;
    height:15px;
    transform:translateY(-50%);
    background:rgba(255,255,255,.18);
}

/* Sosyal ikonlar */
.ttm-header-style-classic .bh-tb-social{
    display:flex;
    align-items:center;
    gap:2px;
}

.ttm-header-style-classic .bh-tb-social a{
    width:28px;
    height:28px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    border-radius:5px;
    color:#fff;
    font-size:13px;
    text-decoration:none;
    transition:background .2s ease,color .2s ease;
}

@media (hover:hover){
    .ttm-header-style-classic .bh-tb-item:hover{
        color:#fff;
        opacity:1;
        text-decoration:none;
    }

    .ttm-header-style-classic .bh-tb-social a:hover{
        background:rgba(255,255,255,.10);
        color:#fff;
        text-decoration:none;
    }
}

/* Sağ CTA grubu */
.ttm-header-style-classic .bh-tb-right{
    justify-self:end;
    display:flex;
    align-items:center;
    gap:8px;
}

.ttm-header-style-classic .bh-tb-btn{
    height:30px;
    min-height:30px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:8px;
    padding:0 14px;
    border-radius:5px;
    border:1px solid transparent;
    font-size:12px;
    line-height:1;
    font-weight:700;
    letter-spacing:.01em;
    white-space:nowrap;
    text-decoration:none;
    transition:
        background-color .2s ease,
        border-color .2s ease,
        color .2s ease,
        transform .2s ease,
        box-shadow .2s ease;
}

.ttm-header-style-classic .bh-tb-btn i{
    font-size:13px;
}

.ttm-header-style-classic .bh-topbar a.bh-tb-btn-red{
    background:var(--bh-v10-red);
    color:#fff;
    border-color:var(--bh-v10-red);
}

.ttm-header-style-classic .bh-topbar a.bh-tb-btn-wa{
    background:var(--bh-v10-green);
    color:var(--bh-v10-green-ink);
    border-color:var(--bh-v10-green);
}

@media (hover:hover){
    .ttm-header-style-classic .bh-topbar a.bh-tb-btn-red:hover{
        background:var(--bh-v10-red-dark);
        border-color:var(--bh-v10-red-dark);
        color:#fff;
        transform:translateY(-1px);
        box-shadow:0 4px 10px rgba(2,13,38,.20);
        text-decoration:none;
    }

    .ttm-header-style-classic .bh-topbar a.bh-tb-btn-wa:hover{
        background:#1fbe5b;
        border-color:#1fbe5b;
        color:var(--bh-v10-green-ink);
        transform:translateY(-1px);
        box-shadow:0 4px 10px rgba(2,13,38,.16);
        text-decoration:none;
    }
}

/* =========================================================
   3. ANA NAVİGASYON
   ========================================================= */

/*
 * Tema float tabanlı olduğu için layout'u flex'e çevirmiyoruz.
 * Sadece mevcut elemanların ölçülerini ve hizasını kontrol ediyoruz.
 */

.ttm-header-style-classic .ttm-stickable-header-w{
    height:80px;
    min-height:80px;
}

.ttm-header-style-classic .site-header-menu-inner{
    height:80px;
    min-height:80px;
}

.ttm-header-style-classic .site-header-menu-inner > .container-fluid{
    height:80px;
    position:relative;
}

/* Logo */
.ttm-header-style-classic .site-branding{
    height:80px;
    line-height:80px;
    display:block;
}

.ttm-header-style-classic .site-branding .home-link{
    height:80px;
    display:flex;
    align-items:center;
}

.ttm-header-style-classic .site-branding img{
    display:block;
    width:auto;
    max-width:245px;
    max-height:49px;
    height:auto;
}

/* Dil seçici */
.ttm-header-style-classic .ttm-header-icons{
    height:80px;
    line-height:80px;
    display:flex;
    align-items:center;
}

.ttm-header-style-classic .ttm-header-icon.dil{
    height:80px;
    line-height:normal;
    margin-left:12px;
    padding-left:17px;
    border-left:1px solid var(--bh-v10-line);
    display:flex;
    align-items:center;
}

.ttm-header-style-classic .ttm-header-icon.dil form{
    height:34px;
    display:flex;
    align-items:center;
}

.ttm-header-style-classic .ttm-header-icon.dil .lang{
    appearance:none;
    -webkit-appearance:none;
    border:0;
    outline:0;
    background:#fff;
    color:var(--bh-v10-text);
    height:34px;
    min-width:42px;
    padding:0 17px 0 0;
    font-family:"Titillium Web",Arial,sans-serif;
    font-size:14px;
    font-weight:700;
    cursor:pointer;
}

.ttm-header-style-classic .ttm-header-icon.dil .fa-angle-down,
.ttm-header-style-classic .ttm-header-icon.dil .fas.fa-angle-down{
    color:var(--bh-v10-muted) !important;
    padding-top:0 !important;
    margin-left:-13px !important;
    font-size:11px;
    pointer-events:none;
}

/* =========================================================
   4. MENÜ — MASAÜSTÜ
   ========================================================= */

@media (min-width:1200px){

    .ttm-header-style-classic #site-navigation{
        height:80px;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu{
        height:80px;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul{
        height:80px;
        display:flex;
        align-items:stretch;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li{
        height:80px;
        display:flex;
        align-items:center;
        position:relative;
    }

    /* "Tanıtım Kataloğu" menü öğesi yalnızca mobil için. Yukarıdaki li kuralı
       (özgüllük 2,2,2) babacan-fix.css'teki display:none ile eşit özgüllükte ve
       sonra yüklendiği için onu eziyordu; .bh-nav-mobil ile 2,3,2 yapıyoruz.
       Masaüstünde katalog zaten topbar'da duruyor, menüde tekrarlanmamalı. */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li.bh-nav-mobil{
        display:none;
    }

    /* Tema'nın aşırı geniş margin'lerini sakinleştiriyoruz. */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul > li > a{
        display:flex;
        align-items:center;
        height:80px;
        margin:0 0 0 0;
        padding:0 18px;
        color:var(--bh-v10-text);
        font-family:"Titillium Web",Arial,Helvetica,sans-serif;
        font-size:17px;
        font-weight:700;
        line-height:1;
        letter-spacing:.01em;
        text-decoration:none;
        transition:color .2s ease;
    }

    /* Son eleman: dil seçiciyle çakışmasın. */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:last-child > a{
        padding-right:10px;
    }

    /* Eski tema ayraçlarını kaldır. */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li::after{
        display:none;
    }

    /* Yeni, çok hafif ayraçlar. */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li + li::before{
        content:"";
        position:absolute;
        left:0;
        top:50%;
        width:1px;
        height:20px;
        transform:translateY(-50%);
        background:var(--bh-v10-line);
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li > a::before{
        content:"";
        position:absolute;
        left:18px;
        right:18px;
        bottom:16px;
        width:auto;
        height:2px;
        background:var(--bh-v10-red);
        opacity:0;
        transform:scaleX(.35);
        transform-origin:center;
        transition:opacity .2s ease,transform .2s ease;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:hover > a,
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:focus-within > a{
        color:var(--bh-v10-red);
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:hover > a::before,
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:focus-within > a::before{
        opacity:1;
        transform:scaleX(1);
    }

    /* Dropdown oku: :has ile gerçek DOM'a göre çalışır. */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:has(> ul) > a::after{
        content:"";
        width:6px;
        height:6px;
        margin-left:10px;
        margin-top:-3px;
        border-right:1.5px solid currentColor;
        border-bottom:1.5px solid currentColor;
        transform:rotate(45deg);
        opacity:.45;
        transition:transform .2s ease,opacity .2s ease;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:has(> ul):hover > a::after{
        opacity:1;
    }

    /* Dropdown */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul{
        top:100%;
        width:270px;
        padding:7px 0;
        background:#fff;
        border-top:2px solid var(--bh-v10-red);
        border-radius:0 0 5px 5px;
        box-shadow:0 12px 30px rgba(2,13,38,.12);
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul li{
        display:block;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul li > a{
        /* height:auto ŞART: yukarıdaki ".menu ul > li > a{height:80px}" kuralı
           alt menü bağlantılarını da kapsıyor (özgüllük 2,2,3) ve buradaki
           min-height onu ezmiyor. Olmazsa her dropdown öğesi 106px yüksekliğinde
           çıkar (8 öğeli Hizmetler menüsü ~850px olur). */
        height:auto;
        min-height:42px;
        display:flex;
        align-items:center;
        padding:10px 18px !important;
        margin:0 !important;
        color:#4f5a6d;
        font-family:"Open Sans",Arial,Helvetica,sans-serif;
        font-size:13px;
        font-weight:700;
        line-height:1.35;
        text-decoration:none;
        /* padding-left BİLEREK animasyon listesinde değil: padding animasyonu her
           hover'da layout hesabı tetikler (layout thrash). Girinti yine oluyor,
           sadece anında; renk ve zemin geçişi yumuşak kalıyor. */
        transition:background-color .18s ease,color .18s ease;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul li > a::before{
        display:none !important;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul li:hover > a{
        padding-left:23px !important;
        background:#f7f8fa;
        color:var(--bh-v10-red);
    }
}

/* =========================================================
   5. STICKY HEADER
   ========================================================= */

.ttm-header-style-classic .ttm-stickable-header.fixed-header{
    background:#fff;
    box-shadow:0 5px 20px rgba(2,13,38,.08);
}

.ttm-header-style-classic .ttm-stickable-header.fixed-header .site-branding,
.ttm-header-style-classic .ttm-stickable-header.fixed-header .site-branding .home-link{
    height:70px;
    line-height:70px;
}

.ttm-header-style-classic .ttm-stickable-header.fixed-header .ttm-header-icons{
    height:70px;
    line-height:70px;
}

.ttm-header-style-classic .ttm-stickable-header.fixed-header .ttm-header-icon.dil{
    height:70px;
}

.ttm-header-style-classic .ttm-stickable-header.fixed-header #site-navigation,
.ttm-header-style-classic .ttm-stickable-header.fixed-header #site-header-menu #site-navigation .menu,
.ttm-header-style-classic .ttm-stickable-header.fixed-header #site-header-menu #site-navigation .menu > ul,
.ttm-header-style-classic .ttm-stickable-header.fixed-header #site-header-menu #site-navigation .menu > ul > li{
    height:70px;
}

@media (min-width:1200px){
    .ttm-header-style-classic .ttm-stickable-header.fixed-header #site-header-menu #site-navigation .menu > ul > li > a{
        height:70px;
    }

    .ttm-header-style-classic .ttm-stickable-header.fixed-header #site-header-menu #site-navigation .menu > ul > li > a::before{
        bottom:15px;
    }

    .ttm-header-style-classic .ttm-stickable-header.fixed-header .site-branding img{
        max-height:43px;
    }
}

/* =========================================================
   6. TABLET / MOBİL
   ========================================================= */

@media (max-width:1199px){

    .ttm-header-style-classic .ttm-header-wrap{
        height:80px;
    }

    .ttm-header-style-classic .site-branding{
        height:80px;
        line-height:80px;
    }

    .ttm-header-style-classic .site-branding .home-link{
        height:80px;
        justify-content:center;
    }

    .ttm-header-style-classic .site-branding img{
        max-height:45px;
        max-width:220px;
    }

    .ttm-header-style-classic .ttm-header-icons{
        height:80px;
        line-height:80px;
    }

    .ttm-header-style-classic .ttm-header-icon.dil{
        height:80px;
    }

    /* Hamburger */
    .ttm-header-style-classic .ttm-menu-toggle{
        width:36px;
        height:30px;
    }

    .ttm-header-style-classic .ttm-menu-toggle .toggle-block{
        background:var(--bh-v10-text);
        height:2px;
        border-radius:2px;
    }

    .ttm-header-style-classic .ttm-menu-toggle label{
        top:25px;
    }

    /* Mobil menü */
    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul{
        top:80px;
        padding:8px 20px;
        border-top:2px solid var(--bh-v10-red);
        box-shadow:0 12px 30px rgba(2,13,38,.12);
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu li a{
        color:var(--bh-v10-text);
        padding:14px 4px;
        font-size:16px;
        font-weight:700;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li{
        border-bottom:1px solid var(--bh-v10-line);
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li::before{
        display:none;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:last-child{
        border-bottom:0;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul{
        box-shadow:none;
        border-top:0;
        padding:0 0 0 15px;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu ul ul li > a{
        font-size:14px;
        padding:11px 4px !important;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li > a::before{
        display:none;
    }

    .ttm-header-style-classic #site-header-menu #site-navigation .menu > ul > li:has(> ul) > a::after{
        color:var(--bh-v10-text);
    }
}

/* Topbar tablet daralırken kontrollü sadeleşme */
@media (max-width:1400px){
    .ttm-header-style-classic .bh-tb-slogan{
        visibility:hidden;
    }
}

@media (max-width:1180px){
    .ttm-header-style-classic .bh-tb-mail{
        display:none;
    }
}

@media (max-width:950px){
    .ttm-header-style-classic .bh-tb-social{
        display:none;
    }
}

@media (max-width:900px){
    .ttm-header-style-classic .bh-tb-btn{
        padding:0 11px;
    }

    .ttm-header-style-classic .bh-tb-right{
        gap:6px;
    }
}

@media (max-width:991px){

    /* Tema topbar'ı gizliyorsa mevcut davranış korunur. */
    .ttm-header-style-classic .ttm-topbar-wrapper{
        display:none;
    }

    .ttm-header-style-classic .ttm-header-wrap{
        height:80px;
    }

    .ttm-header-style-classic .ttm-header-wrap::after{
        bottom:0;
    }

    /* Logo mobilde ORTALI kalmalı. Sola dayandığında (justify-content:flex-start)
       hamburger'ın üstüne biniyor: tema hamburger label'ını "position:absolute;
       left:0" ile SOLA koyuyor (responsive.css:241), sağa değil. Ölçüm: logo
       0→194px, hamburger 30→66px = çakışma. Ortalı hâlde logo 90→284, temiz. */
    .ttm-header-style-classic .site-branding .home-link{
        justify-content:center;
    }

    .ttm-header-style-classic .site-branding img{
        max-height:43px;
        max-width:210px;
    }

    /* margin-right YOK: bu boşluk sağda duran bir hamburger için ayrılmıştı,
       ama tema hamburger'ı solda (left:0). 48px sola itmek dil seçicisini
       254→303'e taşıyıp ortalı logonun (108→267) üstüne bindiriyordu.
       Boşluksuz hâlde dil 288→345, kenar payı 30px = container padding'i. */
    .ttm-header-style-classic .ttm-header-icon.dil{
        padding-left:12px;
    }

    /* Mobil alt bar mevcutsa header'ın üstüne çıkmasın. */
    .bh-mobil-bar{
        box-shadow:0 -4px 18px rgba(2,13,38,.12);
    }
}

@media (max-width:575px){

    .ttm-header-style-classic .site-branding img{
        max-width:190px;
        max-height:40px;
    }

    .ttm-header-style-classic .ttm-header-icon.dil{
        padding-left:8px;
        margin-left:5px;
    }
}

/* =========================================================
   7. ERİŞİLEBİLİRLİK / FOCUS
   ========================================================= */

.ttm-header-style-classic a:focus-visible,
.ttm-header-style-classic button:focus-visible,
.ttm-header-style-classic select:focus-visible{
    outline:2px solid var(--bh-v10-red);
    outline-offset:3px;
}

.ttm-header-style-classic .bh-topbar a:focus-visible{
    outline-color:#fff;
}

/* =========================================================
   8. HAREKET AZALTMA
   ========================================================= */

@media (prefers-reduced-motion:reduce){
    .ttm-header-style-classic *{
        transition:none !important;
        animation:none !important;
    }
}

/* =========================================================
   9. PRINT
   ========================================================= */

@media print{
    .ttm-header-style-classic .ttm-topbar-wrapper,
    .bh-mobil-bar{
        display:none !important;
    }

    body{
        padding-bottom:0 !important;
    }
}
