
/* =============================================== */
/* Değişkenler ve Temel Stiller
/* =============================================== */
:root {
    --primary-color: #27176F; 
    --primary-light: #3F2FA3; 
    --secondary-color: #ffffff; 
    --text-color: #1a1d2e; /* Siyah yerine çok koyu lacivert */
    --text-light: #5a617f; /* Daha yumuşak gri */
    --accent-color: #3F2FA3; 
    --success-color: #25D366; /* WhatsApp yeşili */
    --border-color: #e0e0e0; /* Açık gri border */
    --background-light: #F4F6FF; /* Çok açık mavi/gri tonu */
    --shadow: 0 4px 6px rgba(0, 0, 0, 0.1);
    --shadow-hover: 0 8px 25px rgba(0, 0, 0, 0.15);
    --transition: all 0.3s ease;
    --border-radius: 0.75rem; /* 12px */
    --font-family: 'Roboto', sans-serif;
}

/* Reset ve Temel Stiller */
* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
}

html {
    overflow-x: hidden; /* Yatay kaydırmayı en üst seviyede engelle */
    scroll-behavior: smooth; /* Sayfa içi linklere ve scrollTo metoduna yumuşak geçiş ekler */
}

body {
    font-family: var(--font-family);
    color: var(--text-color);
    background-color: var(--background-light);
    overflow-x: hidden;
}

/* Mobil Dil Seçimi - Masaüstünde Gizle */
.mobile-header-lang {
    display: none;
}

html.no-scroll,
body.no-scroll {
    overflow: hidden !important;
    height: 100% !important;
    position: relative !important; /* Fixed yerine relative daha güvenli, JS scrollbar payını yönetiyor */
}

/* FOUC (Stilsiz İçerik Pırıltısı) Önleyici */
.no-fouc {
    opacity: 0;
    transition: opacity 0.3s ease-in;
}

.container {
    max-width: 1200px;
    margin: 0 auto;
    padding: 0 1.25rem; /* 20px */
}

/* Tipografi */
h1, h2, h3, h4, h5, h6 {
    font-weight: 700;
    line-height: 1.2;
    margin-bottom: 1rem;
    color: var(--text-color);
}
h1 { font-size: 2.8rem; }
h2 { font-size: 2.2rem; }
h3 { font-size: 1.8rem; }
h4 { font-size: 1.5rem; }
p {
    margin-bottom: 1.5rem;
    color: var(--text-light); 
}

/* Butonlar */
.btn-primary {
    display: inline-flex;
    align-items: center;
    gap: 0.5rem;
    padding: 0.75rem 1.5rem; /* 12px 24px */
    background: linear-gradient(45deg, var(--primary-color), var(--accent-color));
    color: white !important;
    text-decoration: none;
    border-radius: var(--border-radius);
    font-weight: 600;
    transition: var(--transition);
    border: none;
    cursor: pointer;
    box-shadow: var(--shadow);
    align-self: anchor-center;
    outline-offset: 4px;
}
.btn-primary:hover, .btn-primary:focus-visible {
    transform: translateY(-2px);
    box-shadow: var(--shadow-hover);
    outline: 2px solid var(--accent-color);
}
.btn-secondary-style {
    background: var(--text-light);
}


/* =============================================== */
/* Header ve Navigasyon (Güncellendi)
/* =============================================== */
.header {
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    background: var(--secondary-color);
    z-index: 1000;    transition: background-color 0.3s ease, box-shadow 0.3s ease;
    box-shadow: 0 2px 10px rgba(0, 0, 0, 0.1);
    border-radius: 2.5rem; /* 40px */
}

/* Top Bar (Güncellendi) */
.top-bar {
    background-color: var(--primary-color);
    color: white;
    padding: 0.2rem 0;
    font-size: 0.9rem;
}
.top-bar .container {
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 45px; /* Sabit yükseklik ile hizalama garantilenir */
}
.top-bar-left a {
    color: white;
    text-decoration: none;
    transition: var(--transition);
    display: flex;
    align-items: center;
    gap: 0.5rem;
    font-weight: bold;
    outline-offset: 2px;
}
.top-bar-left a:hover, .top-bar-left a:focus-visible {
    opacity: 0.8;
}

/* Yeni RGB Çerçeve Animasyonu */
.rgb-border-wrapper {
    position: relative;
    padding: 4px; /* Çerçevenin kalınlığı */
    border-radius: 1.375rem; /* 22px */
    overflow: hidden;
}
.rgb-border-wrapper::before {
    content: '';
    position: absolute;
    top: -50%; left: -50%;
    width: 200%; height: 200%;
    background: conic-gradient(
        #f8c64f, #fedf12, #f8c64f
    );
    animation: rotate-rgb 4s linear infinite;
    /* Daha sade ve şık bir parlama efekti için gradient güncellendi */
}
@keyframes rotate-rgb {
    from { transform: rotate(0deg); }
    to { transform: rotate(360deg); }
}

/* Dikkat çekici arama butonu (iç kısım) */
.top-bar-call-btn {
    position: relative; /* Pseudo-elementin üzerinde kalması için */
    z-index: 2;
    background-color: var(--primary-color); /* Arka planı üst bar ile aynı yaparak çerçeveyi oluşturur */
    padding: 0.5rem 1rem; /* 8px 16px */
    border-radius: 1.25rem; /* 20px */
}
.top-bar-call-btn span {
    margin-right: 0.3rem;
}
.top-bar-center {
    flex-grow: 1;
    display: flex;
    justify-content: center;
}
.top-bar-search-wrapper {
    position: relative;
    width: 15.625rem; /* 250px */ /* Başlangıç genişliği */
    transition: width 0.4s ease; /* Genişlik animasyonu */
}
.top-bar-search {
    width: 100%;
    padding: 0.5rem 0.9375rem 0.5rem 2.5rem; /* 8px 15px 8px 40px */ /* İkon için solda boşluk */
    border: 2px solid transparent; /* Başlangıçta görünmez çerçeve */
    background-color: rgba(255, 255, 255, 0.2);
    border-radius: 1.25rem; /* 20px */
    color: white;
    outline: none;
    font-size: 1rem;
    transition: background-color 0.3s ease, border-color 0.3s ease;
}
.top-bar-search::placeholder { color: rgba(255, 255, 255, 0.7); }

/* Arama kutusu açıldığında (focus-within ile) */
.top-bar-search-wrapper:focus-within {
    width: 17.5rem; /* 280px */ /* Odaklanınca genişliği artır */
}
.top-bar-search:focus {
    background-color: rgba(255, 255, 255, 0.3);
    border-color: rgba(255, 255, 255, 0.8); /* Odaklanınca çerçeveyi belirginleştir */
}

.top-bar-search-wrapper .fa-search {
    position: absolute;
    left: 0.9375rem; /* 15px */
    top: 50%;
    transform: translateY(-50%);
    color: rgba(255, 255, 255, 0.7);
    cursor: pointer; /* Tıklanabilir olduğunu belirtir */
    transition: var(--transition);
}
.top-bar-right {
    display: flex;
    gap: 1rem;
}
.top-bar-right a {
    /* Yeni stil: Arka planlı ikonlar için */
    width: 2rem; /* 32px */
    height: 2rem; /* 32px */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    color: white;
    font-size: 1.1rem; /* İkon boyutu ayarlandı */
    border-radius: 50%;
    transition: var(--transition);
    text-decoration: none; /* İkonların altındaki çizgiyi kaldırır */
}
.top-bar-right a:hover, .top-bar-right a:focus-visible {
    transform: scale(1.2);
    outline: 2px solid var(--accent-color);
}

/* Sosyal medya ikonlarına özel arka plan renkleri */
.top-bar-right a[aria-label="WhatsApp"] { background-color: #25D366; }
.top-bar-right a[aria-label="Instagram"] { background: radial-gradient(circle at 30% 107%, #fdf497 0%, #fdf497 5%, #fd5949 45%, #d6249f 60%, #285AEB 90%); }
.top-bar-right a[aria-label="Facebook"] { background-color: #1877F2; }
.top-bar-right a[aria-label="YouTube"] { background-color: #FF0000; }

/* Ana Üst Kayan Yazı (Ticker) */
.main-ticker {
    height: 20px;
    background-color: #ffffff;
    overflow: hidden;
    display: none; /* Masaüstünde gizli */
    align-items: center;
    z-index: 1001;
    border-bottom: 1px solid rgba(39, 23, 111, 0.1);
}

.main-ticker-text-wrapper {
    display: flex;
    white-space: nowrap;
    width: max-content;
    animation: main-marquee 60s linear infinite;
}

.main-ticker-text {
    display: flex;
    align-items: center;
    color: #2a1a71;
    font-weight: 700;
    padding-right: 2rem;
}

@keyframes main-marquee {
    0% { transform: translateX(0); }
    100% { transform: translateX(-50%); }
}

.header > .container {
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding: 1rem 1.25rem; /* 20px */
}
.nav-brand { display: flex; align-items: center; text-decoration: none; }
.logo-img { height: 3.75rem; /* 60px */ }

/* Masaüstü Navigasyon */
.nav-desktop { margin-left: auto; }
.nav-menu { display: flex; list-style: none; gap: 1.5rem; align-items: center; margin: 0; padding: 0; }
.nav-link { color: var(--text-color); text-decoration: none; font-weight: 500; padding: 0.5rem 1rem; border-radius: var(--border-radius); transition: var(--transition); display: flex; align-items: center; gap: 0.5rem; }
.nav-link:hover, .nav-link:focus-visible, .nav-link.active { color: white; background: var(--primary-color); }

/* Açılır Menü */
.dropdown { position: relative; }.dropdown-menu { position: absolute; top: 100%; left: 0; background: var(--secondary-color); border: 1px solid var(--border-color); min-width: 12.5rem; /* 200px */ border-radius: var(--border-radius); box-shadow: var(--shadow-hover); opacity: 0; visibility: hidden; transform: translateY(0.625rem); /* 10px */ transition: var(--transition); padding: 0.5rem; z-index: 1001; }
.dropdown:hover .dropdown-menu { opacity: 1; visibility: visible; transform: translateY(0); }
.dropdown-menu a { 
    display: flex; 
    align-items: center; 
    gap: 12px; 
    padding: 0.75rem 1rem; 
    color: var(--text-color); 
    text-decoration: none; 
    border-radius: 8px; 
    font-weight: bold; 
    transition: var(--transition); 
}
.dropdown-menu a img {
    width: 45px;
    height: 45px;
    object-fit: cover;
    border-radius: 8px;
    border: 1px solid rgba(0,0,0,0.05);
}
.dropdown-menu a:hover { background: var(--primary-color); color: var(--secondary-color); border-radius: 0.5rem; /* 8px */ }

/* Navigasyon Sağ Bölüm */
.nav-actions { display: flex; align-items: center; gap: 1rem; margin-left: 2rem; }

/* Dil Açılır Menüsü */
.language-dropdown { position: relative; }
.language-toggle { display: flex; align-items: center; gap: 0.5rem; background: var(--background-light); border: 1px solid var(--border-color); padding: 8px 12px; border-radius: 50px; cursor: pointer; transition: var(--transition); }
.language-toggle:hover, .language-toggle:focus-visible { background: var(--border-color); border-radius: 3.125rem; /* 50px */ }
.language-toggle img { width: 1.25rem; /* 20px */ }
.language-toggle i { font-size: 0.8em; color: var(--text-light); }
.language-menu { position: absolute; top: calc(100% + 0.625rem); /* 10px */ right: 0; background: var(--secondary-color); border: 1px solid var(--border-color); border-radius: var(--border-radius); box-shadow: var(--shadow-hover); min-width: 10rem; /* 160px */ opacity: 0; visibility: hidden; transform: translateY(0.625rem); /* 10px */ transition: var(--transition); z-index: 1001; padding: 0.5rem; /* 8px */ }
.language-menu.active { opacity: 1; visibility: visible; transform: translateY(0); }
.language-menu a { display: flex; align-items: center; gap: 0.75rem; padding: 0.625rem 0.9375rem; /* 10px 15px */ color: var(--text-color); text-decoration: none; border-radius: 0.5rem; /* 8px */ transition: var(--transition); outline-offset: -2px; }
.language-menu a:hover, .language-menu a:focus-visible { background: var(--primary-color); color: var(--secondary-color); border-radius: 0.5rem; /* 8px */ outline: 2px solid var(--accent-color); }
.language-menu img { width: 1.25rem; /* 20px */ }

/* JavaScript ile açılıp kapanan menüler için genel 'show' sınıfı */
.language-menu.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(0);
}
/* Mobil Menü Butonu */
.mobile-menu-btn { display: none; flex-direction: column; background: none; border: none; cursor: pointer; padding: 0.5rem; gap: 4px;  }
/* Mobil Navigasyon - Görsel 3 Referanslı Final Düzen */
.mobile-nav { 
    position: fixed; 
    top: 0; 
    right: 0; 
    transform: translateX(100%); 
    width: 80%; 
    max-width: 380px; 
    height: 100vh; 
    background: #f8faff; 
    z-index: 3000 !important; 
    transition: transform 0.4s cubic-bezier(0.4, 0, 0.2, 1); 
    overflow-y: auto; 
    display: flex; 
    flex-direction: column; 
}
.mobile-nav.active { transform: translateX(0); }

.mobile-nav-header {
    padding: 15px 20px;
    display: flex;
    justify-content: space-between;
    align-items: center;
    border-bottom: 1px solid #eee;
}
.mobile-menu-logo {
    display: block !important;
    height: 45px !important;
    width: auto !important;
}
.mobile-nav-close {
    background: transparent;
    border: none;
    color: #333;
    font-size: 1.8rem;
    cursor: pointer;
    padding: 5px;
}
/* Burger çizgilerini X yapma yerine direkt ikon göstermek daha kolay */
.mobile-nav-close span,
.mobile-nav-close i { display: none; } 
.mobile-nav-close::before {
    content: "\f00d"; /* FontAwesome X ikonu */
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
}

.mobile-nav-search {
    padding: 8px;
    border-bottom: 1px solid #eee;
}
.mobile-nav-search .search-box {
    background: #ffffff;
    border: 1px solid #e0e0e0;
    border-radius: 12px;
    padding: 0 15px;
    height: 50px;
    display: flex;
    align-items: center;
}
.mobile-nav-search i {
    color: #27176f;
    font-size: 1.2rem;
    margin-right: 10px;
}
.mobile-nav-search input {
    border: none;
    background: transparent;
    width: 100%;
    font-size: 1rem;
    color: #666;
    outline: none;
}
.mobile-nav-search input::placeholder {
    color: #aaa;
}

.mobile-nav-menu {
    display: flex;
    flex-direction: column;
    padding: 15px 15px;
    gap: 10px;
}
.mobile-nav-link {
    padding: 14px 20px;
    text-decoration: none;
    color: #333;
    font-weight: 500;
    font-size: 1.1rem;
    border-radius: 12px;
    transition: all 0.2s;
    display: flex;
    align-items: center;
}
.mobile-nav-link i { display: none !important; }

.mobile-nav-link.active {
    background: #27176f !important;
    color: #ffffff !important;
}

/* "Hizmetler" için özel stil (Görseldeki gibi gri kutu) */
.mobile-nav-dropdown .dropdown-btn {
    background: #ededed !important;
    border: 1.5px solid #333 !important;
    color: #333 !important;
}

.mobile-dropdown-content {
    background: white;
    border-radius: 10px;
    margin: 5px 0;
    padding: 5px 0;
    display: none;
}
.mobile-dropdown-content.active {
    display: block;
}
.mobile-dropdown-content a {
    padding: 12px 20px;
    color: #444;
    text-decoration: none;
    display: flex;
    align-items: center;
    gap: 15px;
    font-size: 0.95rem;
    border-bottom: 1px solid #f5f5f5;
}
.mobile-dropdown-content a:last-child {
    border-bottom: none;
}
.mobile-dropdown-content a img {
    width: 40px !important;
    height: 40px !important;
    object-fit: contain;
    background: #f9f9f9;
    padding: 4px;
    border-radius: 8px;
    flex-shrink: 0;
}

.mobile-nav-actions {
    margin-top: auto;
    padding: 20px;
    display: flex;
    flex-direction: column;
    gap: 12px;
    background: #f1f4ff; /* Alt butonlar için hafif farklı zemin */
}
.mobile-action-btn {
    height: 55px;
    border-radius: 15px;
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    font-weight: 700;
    font-size: 1.15rem;
    gap: 10px;
}
.whatsapp-btn {
    background: #28d160 !important;
    color: white !important;
}
.call-btn {
    background: #f9c851 !important; /* Görseldeki sarı/turuncu ton */
    color: #000 !important;
}

/* =============================================== */
/* Ana Sayfa Hakkımızda Bölümü
/* =============================================== */
.about-section { padding: 6rem 0; background-color: var(--background-light); }
.timeline {
    position: relative;
    max-width: 62.5rem; /* 1000px */
    margin: 0 auto;
    padding: 2.5rem 0; /* 40px */
    /* CSS Sayacı: "01", "02" gibi numaralar için başlat */
    counter-reset: timeline-counter; 
}
.timeline::after {
    content: '';
    position: absolute;
    width: 4px;
    /* Çizgiye gradient efekti */
    background: linear-gradient(to bottom, transparent 0%, var(--border-color) 10%, var(--border-color) 90%, transparent 100%);
    top: 0;
    bottom: 0;
    left: 50%;
    margin-left: -2px;
}
.timeline-progress {
    /* Bu bölüm animasyon için kritik, dokunulmadı. */
    position: absolute;
    width: 4px;
    background-color: #fbd42d;
    top: 0;
    left: 50%;
    margin-left: -2px;
    z-index: 1;
    height: 0; /* Yükseklik JavaScript ile ayarlanacak */
    transition: height 0.3s ease-out; /* Animasyon yumuşatıldı */
}
.timeline-item {
    position: relative;
    display: grid;
    grid-template-columns: 1fr 5rem 1fr; /* 80px */
    align-items: center; /* stretch yerine center olarak değiştirildi */
    margin-bottom: 2.5rem; /* 40px */
    gap: 1.875rem; /* 30px */
    /* CSS Sayacı: Her öğe için sayacı artır */
    counter-increment: timeline-counter; 
}
.timeline-icon {
    /* İkonu hedef tasarımdaki gibi küçük mavi bir noktaya dönüştür */
    position: absolute;
    top: 0.5rem; /* Noktayı dikeyde ortalamak için ayar */
    left: 50%;
    transform: translateX(-50%);
    width: 1rem; /* 16px */
    height: 1rem; /* 16px */
    background: var(--primary-color); /* Mavi nokta */
    border: none;
    border-radius: 50%; 
    z-index: 1;
    display: flex; align-items: center; justify-content: center;
    font-size: 1.5rem; /* İkon boyutunu ayarla */
    color: white; /* İkon rengi */
    /* Çizginin üstünde temiz durması için */
    box-shadow: 0 0 0 4px var(--background-light); 
}

/* Resim ve metin kutuları için ortak stil */
.timeline-content {
    /* Kart görünümünü kaldır, min-height'ı sıfırla */
    background: transparent;
    box-shadow: none;
    padding: 0;
    min-height: 0;
    position: relative;
    display: flex;
    flex-direction: column;
}

/* Metin kutusu için özel ayarlar (arka planı şeffaf yap) */
.timeline-content.timeline-text {
    justify-content: flex-start;
}

/* Resim kutusu için özel ayarlar (arka planı şeffaf yap) */
.timeline-image {
    padding: 0;
    overflow: hidden;
    border-radius: var(--border-radius); /* Resim köşelerini yuvarlat */
}
.timeline-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
    /* Resme doğrudan köşe yuvarlaklığı ver */
    border-radius: var(--border-radius);
}

/* Hedef tasarımda olmayan elementleri gizle */
.timeline-date,
.timeline-tags,
.timeline-title-wrapper::after {
    display: none;
}

/* Başlık ve ayırıcı için sarmalayıcı */
.timeline-title-wrapper {
    /* Gizlenen tarih kutusunun boşluğunu kaldır */
    padding-top: 0; 
    margin-bottom: 1rem;
    position: relative;
    /* "01" numarası için üstte boşluk bırak */
    padding-top: 2rem; 
}

/* "01", "02" numaralarını CSS sayacıyla ekle */
.timeline-title-wrapper::before {
    content: '0' counter(timeline-counter); /* '01', '02' formatı */
    position: absolute;
    top: 0;
    font-size: 1rem;
    font-weight: 700;
    color: var(--text-light);
    opacity: 0.8;
}
.timeline-text h3 { font-size: 1.3rem; margin-bottom: 0; }
.timeline-text p { font-size: 0.9rem; margin-bottom: 0; }

/* Çapraz yerleşim (Dokunulmadı) */
.timeline-item:nth-child(odd) .timeline-text { grid-column: 1; }
.timeline-item:nth-child(odd) .timeline-image { grid-column: 3; }

/* Soldaki metin kutusu için hizalama ve numara konumu */
.timeline-item:nth-child(odd) .timeline-title-wrapper { text-align: right; }
.timeline-item:nth-child(odd) .timeline-title-wrapper::before {
    left: auto;
    right: 0;
}
.timeline-item:nth-child(even) .timeline-image { grid-column: 1; }
.timeline-item:nth-child(even) .timeline-text { grid-column: 3; }

/* Sağdaki metin kutusu için hizalama ve numara konumu */
.timeline-item:nth-child(even) .timeline-title-wrapper { text-align: left; }
.timeline-item:nth-child(even) .timeline-title-wrapper::before {
    left: 0;
    right: auto;
}

/* Mobil görünümde tarih kutularının taşmasını engelle (Numara konumu için ayar) */
@media (max-width: 992px) {
    /* .timeline-date gizlendiği için bu kurala gerek yok */
    .timeline-title-wrapper { 
        padding-top: 2rem; /* Numara için mobil'de de boşluk bırak */
        text-align: left !important; /* Mobil'de her zaman sola hizala */
    }
    .timeline-title-wrapper::before {
        left: 0 !important; /* Mobil'de her zaman sola hizala */
        right: auto !important;
    }
    /* ... Geri kalan mobil timeline kuralları aynı kalabilir ... */
    /* Mobil'de ilerleme çubuğunu sola hizala */
    .timeline-progress {
        left: 25px; /* .timeline::after ile aynı hizada */
        margin-left: -2px; /* Genişliğinin yarısı kadar sola çekerek ortala */
    }
}

/* =============================================== */
/* İş Ortakları Karuseli
/* =============================================== */
.logo-carousel-container {
    max-width: 75rem; /* 1200px */ /* Ana container ile aynı genişlikte */
    margin: 0 auto; /* Ortalamak için */
    overflow: hidden;
    position: relative;
    padding: 2rem; 
    background-color: var(--secondary-color); 
    border-radius: var(--border-radius);
    box-shadow: var(--shadow); 
    border: 1px solid var(--border-color); 
}
.logo-track { 
    display: flex;
    width: fit-content;
    align-items: center;
    animation: scroll-logos 25s linear infinite; 
}
@keyframes scroll-logos { 
    from { transform: translateX(0); } 
    to { transform: translateX(-50%); } 
}
.logo-item { display: inline-block; margin: 0 2.5rem; /* 40px */ vertical-align: middle; }
.logo-item img { max-width: 9.375rem; /* 150px */ height: 3.75rem; /* 60px */ object-fit: contain; filter: grayscale(100%); opacity: 0.6; transition: var(--transition); }
.logo-item:hover img { filter: grayscale(0%); opacity: 1; }
.logo-item:hover img,
.logo-item.is-center img { 
    filter: grayscale(0%); opacity: 1; 
}

/* =============================================== */
/* Sabit Butonlar (Kaldırıldı)
/* =============================================== */
.back-to-top { position: fixed; bottom: 2rem; right: 2rem; width: 3.125rem; /* 50px */ height: 3.125rem; /* 50px */ background: var(--primary-color); color: white; border: none; border-radius: 50%; cursor: pointer; font-size: 1.2rem; opacity: 0; transform: translateY(20px); transition: opacity 0.3s ease, transform 0.3s ease; z-index: 1002; box-shadow: var(--shadow); pointer-events: none; /* Tıklanabilirliği engelle */ }
.back-to-top.visible { opacity: 1; transform: translateY(0); pointer-events: auto; /* Tıklanabilirliği etkinleştir */ }
.back-to-top:hover, .back-to-top:focus-visible { background: var(--primary-light); outline: 2px solid var(--accent-color); }

/* =============================================== */
/* Hero Slider - PREMIUM MODERN DESIGN */
/* =============================================== */
/* =============================================== */
/* Hero Slider - PREMIUM MODERN DESIGN (REFINED) */
/* =============================================== */
/* =============================================== */
/* Hero Slider - PREMIUM MODERN DESIGN (REFINED) */
/* =============================================== */
.hero-slider { 
    position: relative; 
    height: 80vh; /* Daha kompakt yükseklik */
    min-height: 550px;
    width: 100%; 
    overflow: hidden; 
    background-color: #080808;
    margin-top: 138px;
    /* Daha zarif ve hafif kavis */
    clip-path: ellipse(140% 100% at 50% 0%);
    z-index: 10;
}

.slider-container { 
    position: relative; 
    width: 100%; 
    height: 100%; 
}

.hero-slide-item {
    position: absolute;
    inset: 0;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.8s cubic-bezier(0.4, 0, 0.2, 1), visibility 0.8s;
    display: flex;
    align-items: center;
}

.hero-slide-item.active {
    opacity: 1;
    visibility: visible;
    z-index: 10;
}

/* Arka Plan Görseli - Ürünü Öne Çıkarmak İçin */
.slide-bg-wrapper {
    position: absolute;
    inset: 0;
    z-index: 1;
    overflow: hidden;
}

.slide-main-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
    transform: scale(1.05);
    transition: transform 10s ease-out;
}

.hero-slide-item.active .slide-main-img {
    transform: scale(1);
}

.slide-overlay {
    position: absolute;
    inset: 0;
    /* Çok hafif karartma - Ürünü gizlememek için */
    background: radial-gradient(circle at 40% 50%, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.6) 100%);
    z-index: 2;
}

/* İçerik Yerleşimi */
.slide-inner {
    position: relative;
    z-index: 5;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: flex-start;
    padding: 0 10%;
}

/* Sol Dikey Metin - Sola Sabit */
.side-text-left {
    position: absolute;
    left: 20px;
    top: 50%;
    transform: translateY(-50%) rotate(-90deg);
    transform-origin: left center;
    color: rgba(255, 255, 255, 0.3);
    font-size: 0.7rem;
    font-weight: 600;
    letter-spacing: 4px;
    text-transform: uppercase;
    white-space: nowrap;
    display: flex;
    align-items: center;
    gap: 15px;
    z-index: 10;
}

.side-text-left::before {
    content: '';
    width: 50px;
    height: 1px;
    background: rgba(255, 255, 255, 0.2);
}


.slide-content {
    padding: 0;
    text-align: left;
}

.slide-title {
    font-size: clamp(1.6rem, 3vw, 2.6rem);
    font-weight: 800;
    color: #fff;
    text-transform: uppercase;
    line-height: 1.1;
    margin-bottom: 12px;
    opacity: 0;
    transform: translateY(20px);
    transition: all 0.7s cubic-bezier(0.2, 0.8, 0.2, 1) 0.4s;
    text-shadow: 0 4px 15px rgba(0,0,0,0.4);
}

.hero-slide-item.active .slide-title {
    opacity: 1;
    transform: translateY(0);
}

.slide-separator {
    width: 50px;
    height: 3px;
    background: #f8c64f; 
    margin-bottom: 20px;
    opacity: 0;
    transform: scaleX(0);
    transform-origin: left;
    transition: all 0.5s ease 0.8s;
}

.hero-slide-item.active .slide-separator {
    opacity: 1;
    transform: scaleX(1);
}

.slide-desc {
    font-size: 1rem;
    color: rgba(255, 255, 255, 0.8);
    margin-bottom: 30px;
    font-weight: 300;
    line-height: 1.6;
    opacity: 0;
    transform: translateY(15px);
    transition: all 0.6s ease 1s;
    max-width: 420px;
}

.hero-slide-item.active .slide-desc {
    opacity: 1;
    transform: translateY(0);
}

/* Buton Tasarımı - Daha Kompakt */
.slide-btn {
    display: inline-flex;
    align-items: center;
    background: rgba(255, 255, 255, 0.05);
    backdrop-filter: blur(10px);
    border: 1px solid rgba(255, 255, 255, 0.2);
    color: #fff;
    text-decoration: none;
    font-weight: 600;
    text-transform: uppercase;
    letter-spacing: 1.5px;
    font-size: 0.75rem;
    transition: all 0.3s ease;
    opacity: 0;
    transform: translateY(10px);
}

.hero-slide-item.active .slide-btn {
    opacity: 1;
    transform: translateY(0);
    transition-delay: 1.2s;
}

.slide-btns {
    display: flex;
    gap: 1rem;
    flex-wrap: wrap;
    align-items: center;
}

.slide-btn-call {
    background: rgba(248, 198, 79, 0.2) !important;
    border-color: rgba(248, 198, 79, 0.4) !important;
}

.btn-arrow {
    padding: 10px 14px;
    background: rgba(255, 255, 255, 0.1);
    border-right: 1px solid rgba(255, 255, 255, 0.15);
}

.btn-text {
    padding: 10px 22px;
}

.slide-btn:hover {
    background: #f8c64f;
    color: #000;
    border-color: #f8c64f;
    transform: translateY(-3px);
}

.slide-btn:hover .btn-arrow {
    border-color: rgba(0,0,0,0.1);
}

/* Kontroller - Daha Küçük ve Modern */
.slider-controls-v2 {
    position: absolute;
    right: 30px;
    top: 50%;
    transform: translateY(-50%);
    z-index: 100;
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 30px;
}

.pagination-fraction {
    writing-mode: vertical-rl;
    color: rgba(255, 255, 255, 0.5);
    font-family: inherit;
    font-size: 0.85rem;
    letter-spacing: 3px;
    display: flex;
    align-items: center;
    gap: 10px;
}

.pagination-fraction .current {
    font-weight: 700;
    color: #f8c64f;
}

.vertical-dots {
    display: flex;
    flex-direction: column;
    gap: 12px;
}

.v-dot {
    width: 7px;
    height: 7px;
    border: 1px solid rgba(255, 255, 255, 0.4);
    border-radius: 50%;
    cursor: pointer;
    transition: all 0.3s ease;
}

.v-dot.active {
    background: #f8c64f;
    border-color: #f8c64f;
    transform: scale(1.5);
}

/* Kaydırma İkonu */
.hero-scroll-indicator {
    position: absolute;
    bottom: 30px;
    left: 50%;
    transform: translateX(-50%);
    z-index: 100;
    opacity: 0.6;
}

.mouse-icon {
    width: 20px;
    height: 32px;
    border: 2px solid rgba(255, 255, 255, 0.4);
    border-radius: 10px;
}

.mouse-icon::after {
    height: 5px;
    top: 5px;
}

/* Mobil Uyumluluk - Tamamen Yenilendi */
@media (max-width: 991px) {
    .hero-slider {
        margin-top: -65px;
        height: 70vh; 
        clip-path: ellipse(180% 100% at 50% 0%);
    }

    .slide-overlay {
        background: radial-gradient(circle at 50% 50%, rgba(0,0,0,0.1) 0%, rgba(0,0,0,0.6) 100%);
    }

    .slide-inner {
        padding: 0 20px;
        justify-content: center;
    }

    .side-text-left { display: none; }

    .slide-content {
        text-align: center;
        padding-bottom: 20px;
    }

    .slide-title {
        font-size: 1.4rem; /* İdeal mobil boyutu */
        margin-bottom: 10px;
    }

    .slide-separator {
        margin: 0 auto 15px;
        width: 40px;
    }

    .slide-desc {
        font-size: 0.9rem;
        margin-bottom: 25px;
        max-width: 100%;
        line-height: 1.5;
    }

    .slider-controls-v2 {
        right: 15px;
        gap: 20px;
    }

    .pagination-fraction { font-size: 0.75rem; }

    .hero-scroll-indicator { bottom: 20px; }
}

@media (max-width: 480px) {
    .slide-title { font-size: 1.25rem; }
    .slide-btn { width: auto; font-size: 0.7rem; }
}

@media (max-width: 480px) {
    .slide-title {
        font-size: 2.2rem;
    }
    
    .slide-btn {
        justify-content: center;
    }
}

/* İstatistikler */
.stats-section { 
    padding: 5rem 0; 
    position: relative;
    background-color: #ffffff;
}

.stats-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(12.5rem, 1fr)); /* 200px */ gap: 2rem; text-align: center; position: relative; z-index: 2; }
.stat-item { background: var(--secondary-color); padding: 2rem; border-radius: var(--border-radius); box-shadow: var(--shadow); transition: var(--transition); }
.stat-item:hover, .stat-item:focus-visible { transform: translateY(-5px); box-shadow: var(--shadow-hover); }
.stat-icon { width: 4.375rem; /* 70px */ height: 4.375rem; /* 70px */ background: linear-gradient(135deg, var(--primary-color), var(--accent-color)); border-radius: 50%; display: flex; align-items: center; justify-content: center; margin: 0 auto 1.5rem; color: white; font-size: 2rem; }
.stat-number { font-size: 2.5rem; color: var(--primary-color); font-weight: 700; margin-bottom: 0.5rem; }
.stat-item p { color: var(--text-light); font-size: 1.1rem; margin-bottom: 0; }

.section-header { text-align: center; margin-bottom: 4rem; }
.section-header h2 { font-size: 2.5rem; color: var(--primary-color); margin-bottom: 1rem; }
.section-header p { font-size: 1.2rem; color: var(--text-light); max-width: 700px; margin: 0 auto; }

/* Neden Biz */
/* Neden Biz Section - CORPORATE CLEAN DESIGN */
.why-choose-us-section { 
    padding: 6rem 0; 
    background: var(--secondary-color); /* Temiz beyaz arka plan */
    position: relative;
}

.why-choose-us-section .section-header h2 {
    color: var(--primary-color);
    position: relative;
    padding-bottom: 1.5rem;
    margin-bottom: 1.5rem;
}

.why-choose-us-section .section-header h2::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 60px;
    height: 4px;
    background-color: #fbd42d;
    border-radius: 2px;
}

.section-tag {
    display: inline-block;
    color: #fbd42d;
    font-size: 0.9rem;
    font-weight: 800;
    text-transform: uppercase;
    letter-spacing: 3px;
    margin-bottom: 1rem;
}

.about-features { 
    display: grid; 
    grid-template-columns: repeat(auto-fit, minmax(320px, 1fr)); 
    gap: 3rem; 
    margin-top: 4rem;
}

.feature { 
    background: white;
    padding: 3rem 2rem; 
    border-radius: var(--border-radius); 
    text-align: center; 
    transition: var(--transition);
    position: relative;
    border: 1px solid var(--border-color);
    display: flex;
    flex-direction: column;
    align-items: center;
}

.feature:hover { 
    transform: translateY(-10px); 
    box-shadow: 0 15px 35px rgba(39, 23, 111, 0.1);
    border-color: var(--primary-color);
}

.feature-icon-box {
    width: 90px;
    height: 90px;
    background: var(--background-light);
    border-radius: 50%;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-bottom: 2rem;
    font-size: 2.5rem;
    color: var(--primary-color);
    transition: var(--transition);
    border: 2px solid transparent;
}

.feature:hover .feature-icon-box {
    background: var(--primary-color);
    color: white;
    transform: scale(1.1);
}

.feature h4 { 
    color: var(--primary-color); 
    margin-bottom: 1.5rem; 
    font-size: 1.4rem; 
    font-weight: 700;
}

.feature p { 
    color: var(--text-light); 
    font-size: 1.05rem; 
    line-height: 1.7;
    margin-bottom: 2rem; 
}

.feature-line {
    width: 40px;
    height: 3px;
    background: #fbd42d;
    border-radius: 2px;
    margin-top: auto;
    transition: var(--transition);
}

.feature:hover .feature-line {
    width: 80px;
}

@media (max-width: 768px) {
    .why-choose-us-section { padding: 4rem 0; }
    .about-features { gap: 2rem; }
    .feature { padding: 2.5rem 1.5rem; }
}



/* Müşteri Yorumları */
.testimonials-section { padding: 6rem 0; background: var(--background-light); }
.testimonial-carousel-container { overflow: hidden; position: relative; padding: 2rem 0; width: 100%; }
.testimonial-track { 
    display: flex;
    width: fit-content; /* İçeriğin toplam genişliği kadar */
    animation: scroll-testimonials 40s linear infinite; /* Animasyonu geri ekliyoruz, süreyi uzattık */
    cursor: grab; /* Kullanıcıya kaydırabileceği ipucunu verir */
}

/* Kullanıcı etkileşimde olduğunda animasyonu duraklatmak için kullanılacak sınıf */
.testimonial-track.paused {
    animation-play-state: paused;
}
@keyframes scroll-testimonials { 
    from { transform: translateX(0); } 
    to { transform: translateX(-50%); } 
}
.testimonial-card { display: inline-block; width: 21.875rem; /* 350px */ margin: 0 1rem; vertical-align: top; white-space: normal; background: var(--secondary-color); padding: 2rem; border-radius: var(--border-radius); box-shadow: var(--shadow); transition: var(--transition); position: relative; border-top: 4px solid var(--primary-color); }
.testimonial-card::before { content: '\f10d'; font-family: 'Font Awesome 6 Free'; font-weight: 900; position: absolute; top: 0.9375rem; /* 15px */ left: 1.25rem; /* 20px */ font-size: 2rem; color: var(--primary-color); opacity: 0.1; }
.testimonial-card:hover, .testimonial-card:focus-within { transform: translateY(-5px); box-shadow: var(--shadow-hover); border-top-color: var(--accent-color); }
.stars { color: #ffc107; margin-bottom: 1rem; font-size: 1.2rem; text-align: right; }
.testimonial-content p { font-style: italic; margin-bottom: 1.5rem; font-size: 1.1rem; color: var(--text-color); flex-grow: 1; padding-top: 1rem; }
.testimonial-author { border-top: 1px solid var(--border-color); padding-top: 1rem; margin-top: auto; }
.testimonial-author strong { color: var(--primary-color); font-size: 1.1rem; }
.testimonial-author span { color: var(--text-light); font-size: 0.9rem; }

.testimonial-action {
    text-align: center;
    margin-top: 3rem; /* Yorum karuselinin altına boşluk ekler */
    padding: 0 1.25rem; /* Mobil'de kenarlara yapışmasını engeller */
}

/* İletişim */
.contact-section { padding: 2.5rem 0; background: var(--background-light); }
.contact-content { display: grid; grid-template-columns: 1fr 2fr; gap: 3rem; align-items: start; }
.contact-info h3 { color: var(--primary-color); margin-bottom: 2rem; text-align: center;}
.contact-item { display: flex; gap: 1rem; align-items: flex-start; margin-bottom: 2rem; }
.contact-item i { color: var(--accent-color); font-size: 1.5rem; margin-top: 0.25rem; width: 1.875rem; /* 30px */ }
.contact-item strong { color: var(--primary-color); display: block; margin-bottom: 0.25rem; }
.contact-item p { color: var(--text-color); margin: 0; }
.contact-item p a {
    color: inherit; /* Paragrafın metin rengini al (var(--text-color)) */
    text-decoration: none; /* Alt çizgiyi kaldır */
    transition: var(--transition);
}
.contact-item p a:hover, .contact-item p a:focus-visible {
    color: var(--primary-color); /* Fare ile üzerine gelince rengi değiştir */
}

.contact-form { background: var(--secondary-color); padding: 2.5rem; border-radius: var(--border-radius); box-shadow: var(--shadow); }


.form-group { margin-bottom: 1.5rem; transition: var(--transition); }
.form-group input, .form-group textarea, .form-group select { width: 100%; padding: 1rem; border: 2px solid var(--border-color); border-radius: var(--border-radius); font-size: 1rem; transition: var(--transition); font-family: inherit; background: var(--background-light); color: var(--text-color); }
.form-group input:focus, .form-group textarea:focus, .form-group select:focus { outline: none; border-color: var(--primary-color); box-shadow: 0 0 0 3px rgba(39, 23, 111, 0.1); }

.recaptcha-container {
    justify-content: center;
    transform: scale(0.9);
    transform-origin: center;
}
/* =============================================== */
/* Footer (Yeniden Tasarlandı)
/* =============================================== */
.footer {
    background: var(--primary-color);
    color: white;
    padding: 6rem 0 0; /* Üst boşluğu artır, alt boşluğu bottom bar'a bırak */
    position: relative;
    margin-top: 5rem; /* Üstündeki bölümle arasına boşluk koy */
    clip-path: ellipse(140% 100% at 50% 100%);
}

.footer-content {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1.5fr; /* 4 sütunlu yeni yapı: Marka | Hızlı Linkler | Hizmetler | İletişim */
    gap: 2.5rem;
    margin-bottom: 4rem;
}

.footer-brand .logo-img {
    height: 4.375rem; /* 70px */ /* Footer logosunun yüksekliğini artır */
    width: auto; /* Oranı koru */
    margin-bottom: 1rem;
    background-color: var(--secondary-color);
    padding: 0.5rem;
    border-radius: var(--border-radius);
}
.footer-brand a { display: inline-block; } /* Resmin etrafındaki a etiketinin düzgün davranması için */
.footer-brand p {
    color: rgba(255, 255, 255, 0.7);
    font-size: 0.95rem;
    max-width: 90%; /* Metnin çok yayılmasını engelle */
}

.footer h4 {
    margin-bottom: 1.5rem;
    color: white;
    font-size: 1.3rem;
    position: relative;
    padding-bottom: 0.5rem;
} 
.footer h4::after {
    content: '';
    position: absolute;
    bottom: 0;
    left: 0;
    width: 3rem; /* 48px */
    height: 3px;
    background-color: #f8c64f; /* Sarı ayırıcı */
}

.footer-links ul { list-style: none; padding: 0; }
.footer-links a { display: block; color: rgba(255, 255, 255, 0.7); text-decoration: none; padding: 0.5rem 0; transition: var(--transition); }
.footer-links a:hover, .footer-links a:focus-visible { color: white; transform: translateX(5px); outline: 1px dashed white; outline-offset: 2px; }

.footer-contact p { color: rgba(255, 255, 255, 0.7); display: flex; align-items: flex-start; gap: 1rem; margin-bottom: 1rem; }
.footer-contact p i { font-size: 1.1rem; width: 1.25rem; /* 20px */ text-align: center; }
.footer-contact p a {
    color: inherit; /* Paragrafın rengini al */
    text-decoration: none; /* Alt çizgiyi kaldır */
    transition: var(--transition);
}
.footer-contact p a:hover, .footer-contact p a:focus-visible { color: white; text-decoration: underline; }

.footer-social { margin-top: 1.5rem; display: flex; gap: 0.8rem; }
.footer-social a { width: 2.5rem; /* 40px */ height: 2.5rem; /* 40px */ display: inline-flex; align-items: center; justify-content: center; color: var(--primary-color); background-color: white; font-size: 1.2rem; border-radius: 50%; transition: var(--transition); text-decoration: none; }
.footer-social a:hover { transform: translateY(-3px) scale(1.1); background-color: #f8c64f; }

.footer-bottom { border-top: 1px solid rgba(255, 255, 255, 0.1); padding-top: 2rem; text-align: center; }
.footer-bottom p { color: rgba(255, 255, 255, 0.6); margin: 0; font-size: 0.9rem; }
.footer-bottom a { color: rgba(255, 255, 255, 0.8); text-decoration: none; transition: var(--transition); }
.footer-bottom a:hover, .footer-bottom a:focus-visible { color: white; text-decoration: underline; }
.creator-info { margin-left: 1rem; border-left: 1px solid rgba(255, 255, 255, 0.3); padding-left: 1rem; display: inline-flex; align-items: center; gap: 0.5rem; }
.creator-logo { width: 1.5rem; /* 24px */ height: 1.5rem; /* 24px */ vertical-align: middle; }

/* Footer Responsive */
@media (max-width: 992px) {
    .footer { clip-path: ellipse(180% 100% at 50% 100%); margin-top: 3rem; }
    .footer-content { 
        grid-template-columns: repeat(2, 1fr); 
        gap: 2.5rem;
    }
    .footer-brand { grid-column: 1 / -1; } /* Marka bölümü tam genişlik kaplasın */
}


/* Bildirim */
.notification { position: fixed; top: 5.625rem; /* 90px */ right: 1.25rem; /* 20px */ padding: 0.9375rem 1.5625rem; /* 15px 25px */ border-radius: var(--border-radius); color: white; font-weight: 500; z-index: 2000; opacity: 0; transform: translateY(-1.25rem); /* -20px */ transition: opacity 0.3s ease, transform 0.3s ease; box-shadow: var(--shadow); min-width: 15.625rem; /* 250px */ text-align: center; }
.notification.visible { opacity: 1; transform: translateY(0); }
.notification-success { background: var(--success-color); }
.notification-error { background: #e74c3c; }
.notification-info { background: var(--primary-color); }.page-header {
    position: relative; /* Overlay için gerekli */
    padding-top: 11.25rem; /* 180px */
    padding-bottom: 6.25rem; /* 100px */
    color: white;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%; /* Yatay taşmayı engellemek için eklendi */
    overflow: hidden; /* İçerik taşmasını engellemek için eklendi */
    border-radius: 3.4375rem; /* 55px */
    background-size: cover;
    background-position: center;
}
.page-header::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background: rgba(0, 0, 0, 0.5); /* Metin okunurluğu için overlay */
    border-radius: inherit; /* Ana elementin border-radius'unu al */
    z-index: 1;
}
.page-header .container {
    max-width: 50rem; /* 800px */
    position: relative; /* Overlay'in üzerinde kalması için */
    z-index: 2;
    width: 100%; /* İçeriğin taşmasını engelle */
}
.page-header h1, .page-header p { color: white; }


/* Galeri ve Blog */
.gallery-filters { padding: 2.5rem 0; /* 40px */ background: var(--secondary-color); border-bottom: 1px solid var(--border-color); }
.filter-buttons { display: flex; flex-wrap: wrap; gap: 1rem; justify-content: center; }
.about-header { 
    background-image: url('images-web/logolar/header_page.webp'); 
    animation: fadeInScale 1.2s ease-out;
}
@keyframes fadeInScale {
    from { opacity: 0; transform: scale(1.05); }
    to { opacity: 1; transform: scale(1); }
}
.gallery-header { background-image: url('images-web/logolar/header_page.webp'); }
.blog-header { background-image: url('images-web/logolar/header_page.webp'); }
.privacy-header { background-image: url('images-web/logolar/header_page.webp'); }
.blog-post-header-guvenlik { background-image: url('images-web/logolar/header_page.webp'); }
.blog-post-header-secim { background-image: url('images-web/logolar/header_page.webp'); }
.filter-btn { padding: 0.75rem 1.5rem; /* 12px 24px */ background: var(--secondary-color); border: 1px solid var(--border-color); border-radius: var(--border-radius); cursor: pointer; transition: var(--transition); font-weight: 600; color: var(--text-light); outline-offset: 2px; }
.filter-btn.active, .filter-btn:hover, .filter-btn:focus-visible { background: var(--primary-color); color: white; border-color: var(--primary-color); transform: translateY(-2px); box-shadow: var(--shadow); outline: 2px solid var(--accent-color); }
.gallery-section, .blog-section { padding: 5rem 0; /* 80px */ }
.gallery-grid, .blog-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(20rem, 1fr)); /* 320px */ gap: 2rem; }
.gallery-item { transition: transform 0.3s ease, opacity 0.3s ease; }
.gallery-card, .blog-card { background: var(--secondary-color); border-radius: var(--border-radius); overflow: hidden; box-shadow: var(--shadow); transition: var(--transition); display: flex; flex-direction: column; height: 100%; }
.gallery-card:hover, .blog-card:hover { transform: translateY(-5px); box-shadow: var(--shadow-hover); }
.gallery-card a, .blog-card a { text-decoration: none; }
.gallery-image-wrapper, .blog-image-wrapper { position: relative; height: 15.625rem; /* 250px */ overflow: hidden; cursor: pointer; }
.gallery-image-wrapper img, .blog-image-wrapper img { width: 100%; height: 100%; object-fit: cover; transition: var(--transition); }
.gallery-overlay {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(26, 29, 46, 0.8); /* Koyu lacivert overlay */
    color: white;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    padding: 1rem;
    opacity: 0;
    transition: var(--transition);
}
.gallery-overlay h3 { color: white; font-size: 1.2rem; margin-bottom: 0.5rem; }
.gallery-overlay i { font-size: 2rem; }
.gallery-card:hover .gallery-overlay, .gallery-card:focus-within .gallery-overlay { opacity: 1; }
.gallery-card:hover .gallery-image-wrapper img, .blog-card:hover .blog-image-wrapper img, .gallery-card:focus-within .gallery-image-wrapper img, .blog-card:focus-within .blog-image-wrapper img { transform: scale(1.1); }
.gallery-card-content, .blog-card-content { padding: 1.5rem; border-top: 1px solid var(--border-color); display: flex; flex-direction: column; flex-grow: 1; }
.gallery-card-content h3, .blog-card-content h3 { color: var(--primary-color); margin-bottom: 0.5rem; font-size: 1.25rem; }
.gallery-card-content p, .blog-card-content p { color: var(--text-light); font-size: 1rem; margin-bottom: 1rem; flex-grow: 1; }
.blog-meta { font-size: 0.9rem; color: var(--text-light); margin-bottom: 0.5rem; }
.page-header .blog-meta { color: rgba(255, 255, 255, 0.8) !important; }
.blog-read-more { margin-top: auto; color: var(--primary-color); font-weight: bold; text-decoration: none; display: inline-block; outline-offset: 4px; }

.blog-card .blog-read-more::after {
    content: '→';
    display: inline-block;
    margin-left: 0.5rem;
    transition: transform 0.3s ease;
}
.blog-card:hover .blog-read-more::after, .blog-card a:hover + .blog-read-more::after, .blog-card a:focus-visible + .blog-read-more::after {
    transform: translateX(5px);
}
/* Galeri Modalı (Yenilendi) */
.gallery-modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    display: flex;
    justify-content: center;
    align-items: center;
    z-index: 2000;
    opacity: 0;
    visibility: hidden;
    transition: var(--transition);
}
.gallery-modal.active { opacity: 1; visibility: visible; }
.modal-content { 
    background: var(--secondary-color); 
    border-radius: var(--border-radius);
    padding: 0; /* İçerik arasındaki boşlukları kaldırdık */
    max-width: 90vw; /* Genişliği biraz daha artırdık */
    max-height: 80vh; /* Yüksekliği biraz azalttık */
    width: 80rem; /* Maksimum genişlik 1280px */
    position: relative; 
    animation: zoomIn 0.3s ease;
    display: grid; /* Flex yerine Grid kullanarak daha hassas kontrol sağlıyoruz */
    grid-template-rows: 1fr auto; /* Resim alanı (1fr) tüm boşluğu doldurur, bilgi alanı (auto) içeriği kadar yer kaplar */
    overflow: hidden; /* Köşelerin yuvarlak kalmasını sağlar */
}
@keyframes zoomIn { from { transform: scale(0.8); } to { transform: scale(1); } }
.modal-nav { position: absolute; top: 50%; transform: translateY(-50%); background: rgba(0,0,0,0.5); color: white; border: none; width: 3.125rem; /* 50px */ height: 3.125rem; /* 50px */ border-radius: 50%; font-size: 1.5rem; cursor: pointer; transition: var(--transition); z-index: 2001; }
.modal-nav:hover, .modal-nav:focus-visible { background: rgba(0,0,0,0.8); outline: 2px solid white; }
.modal-nav.prev { left: 1rem; }
.modal-nav.next { right: 1rem; }
.modal-close { position: absolute; top: 1rem; right: 1rem; width: 2.5rem; /* 40px */ height: 2.5rem; /* 40px */ background: rgba(0,0,0,0.5); color: white; border: none; border-radius: 50%; font-size: 1.2rem; cursor: pointer; transition: var(--transition); z-index: 2001; display: flex; align-items: center; justify-content: center; }
.modal-close:hover, .modal-close:focus-visible { background: var(--primary-color); color: white; transform: rotate(90deg); outline: 2px solid white; }
.modal-media-container {
    background-color: #000; /* Resim tam oturmazsa arka plan siyah olsun */
    display: flex; 
    align-items: center; 
    justify-content: center;
    overflow: hidden; /* İçeriğin taşmasını engelle */
}
/* ID seçici kullanarak kuralın önceliğini artırıyoruz */
#modalImage, .modal-media-container iframe, .modal-media-container video {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain; /* Görselin tamamının görünmesini sağlar, oranını korur */
    border: none; /* Çerçeveyi kaldır */
}
.modal-info {
    padding: 2rem; 
    background: var(--secondary-color);
    color: var(--text-color);
    overflow-y: auto; /* Metin sığmazsa kaydırma çubuğu çıkar */
}
.modal-info h3 { color: var(--primary-color); margin-bottom: 1rem; }
.modal-info p { color: var(--text-light); margin-bottom: 0; font-size: 1rem; }

/* Hakkımızda Sayfası ve Yasal Sayfalar */
.section-subtitle {
    display: block;
    font-size: 1rem;
    font-weight: 700;
    color: var(--accent-color);
    text-transform: uppercase;
    letter-spacing: 1px;
    margin-bottom: 0.5rem;
}

/* Hakkımızda - Hikaye Bölümü (Yenilendi) */
.story-content-v2 {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    align-items: center;
    gap: 4rem;
    background-color: var(--secondary-color);
    border-radius: var(--border-radius);
    overflow: hidden;
    box-shadow: var(--shadow);
}
.story-image-v2 img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.story-text-v2 {
    padding: 3rem;
}
.story-text-v2 h2 {
    font-size: 2rem;
    margin-bottom: 1.5rem;
}

/* Hakkımızda - Vizyon/Misyon (Yenilendi) */
.vmv-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(20rem, 1fr)); gap: 2rem; }
.vmv-card {
    background: linear-gradient(135deg, #ffffff 0%, #f8faff 100%);
    padding: 2.5rem;
    border-radius: 24px;
    box-shadow: 0 10px 30px rgba(39, 23, 111, 0.05);
    transition: all 0.4s cubic-bezier(0.175, 0.885, 0.32, 1.275);
    border: 1px solid rgba(39, 23, 111, 0.05);
    position: relative;
    overflow: hidden;
}
.vmv-card::before {
    content: '';
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 4px;
    background: linear-gradient(90deg, var(--primary-color), var(--accent-color));
    opacity: 0;
    transition: opacity 0.3s;
}
.vmv-card:hover {
    transform: translateY(-10px);
    box-shadow: 0 20px 40px rgba(39, 23, 111, 0.1);
}
.vmv-card:hover::before {
    opacity: 1;
}
.vmv-icon {
    font-size: 2.5rem;
    color: var(--accent-color);
    margin-bottom: 1.5rem;
    background-color: var(--background-light);
    width: 5rem;
    height: 5rem;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}
.vmv-card h3 { color: var(--primary-color); }

/* Hakkımızda - Neden Biz (Yenilendi) */
.advantages-grid {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(22rem, 1fr));
    gap: 2rem;
}
.advantage-item {
    display: flex;
    align-items: flex-start;
    gap: 1.5rem;
    padding: 2rem;
    background-color: #ffffff;
    border-radius: 20px;
    transition: all 0.3s ease;
    border: 1px solid rgba(0,0,0,0.03);
    box-shadow: 0 4px 6px rgba(0,0,0,0.02);
}
.advantage-item:hover {
    transform: translateX(10px);
    background-color: var(--primary-color);
    color: white;
    box-shadow: 10px 10px 30px rgba(39, 23, 111, 0.15);
}
.advantage-item:hover .advantage-number, .advantage-item:focus-within .advantage-number {
    color: white;
    border-color: rgba(255, 255, 255, 0.3);
}
.advantage-item:hover h4, .advantage-item:hover p, .advantage-item:focus-within h4, .advantage-item:focus-within p {
    color: white;
}
.advantage-number {
    font-size: 1.5rem;
    font-weight: 700;
    color: var(--primary-color);
    border: 2px solid var(--border-color);
    border-radius: 50%;
    width: 3.5rem;
    height: 3.5rem;
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    transition: var(--transition);
}
.advantage-content h4 {
    font-size: 1.2rem;
    margin-bottom: 0.5rem;
    color: var(--primary-color);
    transition: var(--transition);
}
.advantage-content p {
    margin-bottom: 0;
    transition: var(--transition);
}

/* Hakkımızda - Ekip (Yenilendi) */
.team-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(18.75rem, 1fr)); gap: 2rem; }
.team-member { text-align: center; }
.member-image {
    position: relative;
    overflow: hidden;
    border-radius: var(--border-radius);
    margin-bottom: 1.5rem;
    box-shadow: var(--shadow);
}
.member-image img {
    width: 100%;
    height: 25rem;
    object-fit: cover;
    object-position: top;
    display: block;
    transition: transform 0.5s ease;
}
.team-member:hover .member-image img, .team-member:focus-within .member-image img {
    transform: scale(1.1);
}
.member-socials {
    position: absolute;
    bottom: 1.5rem;
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 1rem;
    opacity: 0;
    transition: var(--transition);
}
.team-member:hover .member-socials, .team-member:focus-within .member-socials { opacity: 1; }
.member-socials a {
    width: 2.5rem;
    height: 2.5rem;
    background: rgba(255, 255, 255, 0.9);
    color: var(--primary-color);
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    text-decoration: none;
    transition: var(--transition);
}
.member-socials a:hover, .member-socials a:focus-visible { background: var(--accent-color); color: white; }
.member-info h4 { font-size: 1.3rem; margin-bottom: 0.25rem; }
.member-position { color: var(--accent-color); font-weight: 600; margin-bottom: 0.5rem; display: block; }
.member-desc { font-size: 0.9rem; margin-bottom: 0; }

/* Hakkımızda - Sertifikalar (Yenilendi) */
.certificates-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(15.625rem, 1fr)); gap: 2rem; }
.certificate-item {
    text-align: center;
    padding: 2rem;
    background: var(--secondary-color);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    transition: var(--transition);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
}
.certificate-item:hover, .certificate-item:focus-within {
    border-color: var(--accent-color);
    box-shadow: var(--shadow-hover);
    transform: translateY(-5px);
}
.cert-icon { font-size: 3rem; color: var(--accent-color); margin-bottom: 1rem; }
.certificate-item h4 { font-size: 1.1rem; margin-bottom: 0; }

.contact-cta { padding: 5rem 0; /* 80px */ background: linear-gradient(135deg, var(--primary-color) 0%, var(--primary-light) 100%); color: white; text-align: center; }
.contact-cta h2, .contact-cta p { color: white; }
.cta-buttons { display: flex; gap: 1rem; justify-content: center; margin-top: 2rem; flex-wrap: wrap; }
.legal-text-container { padding: 10rem 1.25rem 5rem; /* 160px 20px 80px */ }
.legal-text-container .container {
    max-width: 50rem; /* 800px */
    background-color: var(--secondary-color);
    padding: 3rem;
    border-radius: var(--border-radius);
    box-shadow: var(--shadow);
}
.legal-text-container h2 { 
    color: var(--primary-color); 
    margin-top: 2.5rem; 
    margin-bottom: 1rem; 
    font-size: 1.5rem;
    border-left: 4px solid var(--accent-color);
    padding-left: 1rem;
}
.legal-text-container ul { list-style: disc; padding-left: 2.5rem; margin-bottom: 1.5rem; }
.blog-post-container { max-width: 50rem; /* 800px */ margin: 2rem auto 4rem; padding: 0 1.25rem; /* 20px */ }
.featured-image {
    width: 100%;
    max-height: 28.125rem; /* 450px */
    object-fit: cover;
    border-radius: var(--border-radius);
    margin-bottom: 2rem;
    box-shadow: var(--shadow);
}
/* Blog Yazısı İçerik Geliştirmeleri */
.blog-post-takeaways {
    background: var(--background-light);
    border-left: 5px solid var(--primary-color);
    padding: 1.5rem;
    margin: 2rem 0;
    border-radius: 0 var(--border-radius) var(--border-radius) 0;
}
.blog-post-takeaways h4 {
    color: var(--primary-color);
    margin-bottom: 1rem;
}
.blog-post-takeaways ul {
    list-style: none;
    padding: 0;
}
.blog-post-takeaways li {
    display: flex;
    align-items: center;
    gap: 0.8rem;
    margin-bottom: 0.5rem;
}
.blog-post-takeaways li i {
    color: var(--accent-color);
}
.blog-post-body blockquote {
    border-left: 4px solid var(--accent-color);
    padding-left: 1.5rem;
    margin: 2rem 0;
    font-style: italic;
    color: var(--text-color);
    background-color: var(--background-light);
    padding: 1.5rem;
    border-radius: var(--border-radius);
}
.blog-post-body { background-color: var(--secondary-color); padding: 2.5rem; border-radius: var(--border-radius); }
.blog-post-body h2 { color: var(--primary-color); margin-top: 2rem; }
.blog-post-body ul { list-style-position: inside; padding-left: 1rem; }


.social-share {
    margin-top: 2rem;
    padding-top: 2rem;
    border-top: 1px solid var(--border-color);
    text-align: center;
}

/* Genel Bölüm Padding Sınıfı */
.section-padding { padding: 5rem 0; /* 80px */ }
@media (max-width: 1024px) {
    .timeline { padding: 2.5rem 0; /* 40px */ } /* Mobil ve tablette kenar boşluklarını sıfırla */
}

/* Masaüstünde about-section'ı (timeline dahil) gizle */
@media (min-width: 993px) {
    .about-section { display: none; }
}

@media (max-width: 992px) {
    h1 { font-size: 2.5rem; }
    h2 { font-size: 2rem; 
    margin-top: 40px;
    color: white;
    }
    .slide-content h1, .slide-content h2 { 
        font-size: 2.2rem; 
        margin-bottom: 1rem;
    }
    .slide-content p { display: none; /* Mobil cihazlarda açıklama metnini gizle */ }
    .slider-controls { display: none; }
    /* Hakkımızda mobil uyumu */
    .story-content-v2 { grid-template-columns: 1fr; }
    .story-image-v2 { order: 1; }
    .story-text-v2 { order: 2; padding: 2rem; }
    .advantages-grid { grid-template-columns: 1fr; }
    /* Mobil slider görsel sorununu çözmek için eklendi (Artık ID bazlı yönetiliyor) */
    .slide {
        background-size: cover; /* Mobil için dikey görseller kullanılacağından 'cover' daha iyi sonuç verir */
        background-position: center;
    }
    /* Footer düzenlemesi */
    .footer-content {
        grid-template-columns: repeat(2, 1fr); /* Tablet boyutunda 2 sütun */
        gap: 3rem;
        text-align: left;
    }
    /* Timeline mobil uyumluluğu (Yenilendi) */
    .timeline::after { left: 25px; }
    .timeline-item {
        grid-template-columns: 3.125rem 1fr; /* 50px */ /* İkon ve içerik */
        gap: 0.9375rem; /* 15px */
    }
    .timeline-icon { 
        position: static; 
        transform: none; 
        grid-column: 1; 
        grid-row: 1; 
        align-self: start; 
        margin-top: 0; 
        width: 3.125rem; /* 50px */ 
        height: 3.125rem; /* 50px */ 
        /* Mobil için ikon boyutu ve rengi */
        font-size: 1.5rem;
        color: white;
        box-shadow: none; /* Mobil'de gölgeyi kaldır */
    }
    .timeline-image { 
        grid-column: 2; /* Metin ile aynı sütuna yerleştir */
        grid-row: 2; /* Metnin altına yerleştir */
        margin-top: 1rem; /* Üst boşluk */
        max-width: 100%; /* Genişliği metin kutusuyla aynı yap */
        height: auto; /* Yüksekliği otomatik ayarla */
        min-height: 0; /* Masaüstündeki min-height'ı sıfırla */
    }
    .timeline-item:nth-child(odd) .timeline-text,
    .timeline-item:nth-child(even) .timeline-text { grid-column: 2; grid-row: 1; text-align: left; }

    .timeline-item:nth-child(odd) .timeline-image,
    .timeline-item:nth-child(even) .timeline-image { 
        grid-column: 2; /* Resmi her zaman metnin altına yerleştir */
    }
    /* Tablet görünümünde (992px ve altı) timeline görsellerini gizle */
    .timeline-content.timeline-image {
        display: none;
    }

    .contact-info-items {
        display: flex;
        flex-wrap: wrap;
        gap: 1.5rem;
        justify-content: center;
        margin-bottom: 2rem;
    }
    /* Galeri modal mobil uyumu */
    .contact-content {
        grid-template-columns: 1fr;
    }

    .modal-content {
        max-width: 95vw;
        max-height: 95vh;
    }
    .modal-nav { width: 2.5rem; /* 40px */ height: 2.5rem; /* 40px */ font-size: 1.2rem; }
    .modal-nav.prev { left: 0.5rem; }
    .modal-nav.next { right: 0.5rem; }
    .modal-info { padding: 1.5rem; }
    /* Video iframe mobil uyumu */
    #videoIframe { width: 100%; height: auto; aspect-ratio: 16 / 9; }

}
@media (max-width: 768px) {
    .logo-img { height: 3.75rem; /* 60px */ }
    .stats-grid { grid-template-columns: repeat(2, 1fr); gap: 1.5rem; }
    .testimonial-card { width: 300px; } 
    
    /* Mobil Top Bar Düzenlemesi */
    .top-bar-left, .top-bar-search-wrapper, .top-bar-right { display: none; } /* Sağdaki ikonlar da gizlendi */
    .mobile-ticker-container { display: block; }
    .top-bar .container { 
        justify-content: center; /* Sadece kayan yazıyı ortala */
        padding: 0; /* Tam genişlik kullanması için padding kaldırıldı */
    }
    /* Mobil'de ana zaman çizgisini sola hizala */
    .timeline::after {
        left: 25px;
        margin-left: 0;
    }

    .page-header {
        padding-bottom: 5rem; /* 80px */
        min-height: 40vh;
    }
    .legal-text-container { padding-top: 7.5rem; /* 120px */ }
}
@media (max-width: 600px) {
    .fixed-contact-buttons {
        bottom: 1rem;
        right: 1rem;
    }
    .timeline-content.timeline-image {
        display: none; /* 600px altında resimleri gizle */
    }
}
@media (max-width: 480px) {
    /* Daha küçük mobil ekranlar için slider yazı boyutları */
    .slide-content h1, .slide-content h2 { 
        font-size: 1.3rem; 
    }
    .slide-content p { font-size: 1rem; }
    .stats-grid, .footer-content { grid-template-columns: 1fr; }
    .gallery-grid, .blog-grid, .vmv-grid, .team-grid, .certificates-grid { grid-template-columns: 1fr; }
    .back-to-top { bottom: 1rem; right: 1rem; }
    .creator-info { margin: 1rem 0 0; padding: 1rem 0 0; border: none; border-top: 1px solid rgba(255, 255, 255, 0.1); display: block; }
    .page-header h1 { font-size: 2rem; }
}

/* Mobil Footer Ortalama */
@media (max-width: 768px) {
    .footer-content {
        text-align: center;
    }
    .footer-brand p {
        margin-left: auto;
        margin-right: auto;
    }
    .footer h4::after {
        left: 50%;
        transform: translateX(-50%);
    }
    /* Mobil menü butonu gösterilir, masaüstü menüsü gizlenir */
    .mobile-menu-btn {
        display: flex;
    }
    .nav-desktop, .nav-actions .language-dropdown {
        display: none;
    }
    .footer-contact p, .footer-social {
        justify-content: center;
    }
}
/* =============================================== */
/* Sabit Butonlar ve Çerez Bandı (Yeni Eklendi)
/* =============================================== */
.fixed-contact-buttons {
    position: fixed;
    bottom: 2rem;
    left: 2rem; /* Butonları sola taşıdık */
    z-index: 999;
    display: flex;
    flex-direction: column;
    gap: 0.8rem;
    pointer-events: none; /* Arka plandaki tıklamaları engellememesi için */
    /* Geçiş animasyonunu tüm özellikler için daha kapsamlı hale getirelim */
    transition: transform 0.5s ease-in-out, opacity 0.5s ease-in-out, visibility 0.5s;
}

/* Çerez banner'ı aktifken butonları yukarı kaydır */
.fixed-contact-buttons.move-up {
    transform: translateY(-6.25rem); /* 100px */ /* Yeni banner yüksekliğine göre ayarlandı */
}

/* Mobil menü açıkken butonları gizle */
.fixed-contact-buttons.hidden {
    opacity: 0;
    visibility: hidden;
    transform: translateX(-150%) translateY(0); /* Y eksenindeki transformu sıfırla */
}

.fixed-btn {
    width: 3.75rem; /* 60px */
    height: 3.75rem; /* 60px */
    border-radius: 50%;
    background-color: var(--primary-color);
    color: white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 1.8rem;
    text-decoration: none;
    box-shadow: var(--shadow-hover);
    transition: var(--transition);
    pointer-events: auto; /* Butonların tıklanabilir olmasını sağla */
}

.fixed-btn:hover, .fixed-btn:focus-visible {
    transform: scale(1.1) rotate(10deg);
    box-shadow: 0 10px 20px rgba(0,0,0,0.2);
    outline: 2px solid var(--secondary-color);
}

.whatsapp-btn {
    background-color: #25D366;
}

.call-btn {
    background-color: var(--accent-color);
    background-color: #f8c64f; /* Yeni animasyonla uyumlu */
    color: black; /* İkonun görünürlüğü için */
}

.cookie-consent-banner {
    /* Yeni Bar Tasarımı (PC) */
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    background: var(--secondary-color);
    padding: 1rem 2rem;
    box-shadow: var(--shadow-hover);
    z-index: 1001;
    display: flex;
    gap: 1.5rem;
    align-items: center;
    justify-content: center;
    
    /* Animasyon için başlangıç durumu */
    opacity: 0;
    transform: translateY(100%);
    visibility: hidden;
    transition: opacity 0.5s ease, transform 0.5s ease, visibility 0.5s;
}

.cookie-consent-banner.show {
    opacity: 1;
    transform: translateY(0);
    visibility: visible;
}

.cookie-icon {
    font-size: 2rem;
    color: var(--primary-color);    
}

.cookie-content p {
    margin: 0;
    font-size: 0.9rem;
    color: var(--text-light);
}

.cookie-content p a {
    color: var(--primary-color);
    font-weight: 600;
    text-decoration: none;
    text-decoration: underline;
}

.cookie-content .btn-primary {
    padding: 0.625rem 1.25rem; /* 10px 20px */ /* Buton boyutunu küçült */
    font-size: 0.9rem;
}

/* Mobil için Çerez Banner'ı Ayarları */
@media (max-width: 768px) {
    .cookie-consent-banner {
        left: 0;
        right: 0;
        bottom: 0;
        max-width: 100%;
        border-radius: 0;
        padding: 1rem;
        flex-direction: column;
        text-align: center;
        gap: 1rem;
        transform: translateY(100%); /* Aşağıdan gelme animasyonu için */
    }
    .cookie-consent-banner.show {
        transform: translateY(0);
    }
    .cookie-icon { display: none; } /* Mobilde ikonu gizle */
    .fixed-contact-buttons.move-up { transform: translateY(-8.75rem); /* 140px */ } /* Mobil için kaydırma mesafesi güncellendi */
}

/* =============================================== */
/* Mobil Dil Seçimi (Yeniden Tasarlandı)
/* =============================================== */
.mobile-language-dropdown {
    position: relative;
    width: 100%;
}

.mobile-language-dropdown .language-toggle {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between; /* İkonu sağa yaslamak için */
    padding: 1rem;
    background: var(--secondary-color);
    border: 1px solid var(--border-color);
    border-radius: var(--border-radius);
    font-size: 1rem;
    font-weight: 500;
    text-align: left;
    cursor: pointer;
    transition: var(--transition);
}

.mobile-language-dropdown .language-toggle.open .fa-chevron-down {
    transform: rotate(180deg);
}


.mobile-language-dropdown .language-toggle:hover, .mobile-language-dropdown .language-toggle:focus-visible {
    background-color: #f8f9fa;
    border-color: var(--primary-color);
}

.mobile-language-dropdown .language-toggle span {
    margin-left: 0.75rem;
}

.mobile-language-dropdown .language-menu {
    position: absolute;
    top: -9.375rem; /* 150px */ /* Butonun 8px üzerine konumlandır */
    left: 0;
    width: 100%;
    background: var(--secondary-color);
    border-radius: var(--border-radius);
    box-shadow: var(--shadow-hover);
    border: 1px solid var(--border-color);
    padding: 0.5rem;
    z-index: 10;
    opacity: 0;
    visibility: hidden;
    transform: translateY(0); /* Başlangıç pozisyonu: Görünmezken, butonun üstünde ama aşağıda gibi davranacak */
    overflow: hidden;
    transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
}

.mobile-language-dropdown .language-menu.show {
    opacity: 1;
    visibility: visible;
    transform: translateY(-0.625rem); /* 10px */ /* Yukarı doğru 10px daha kayarak belirgin bir açılış efekti yarat */
}

.mobile-language-dropdown .language-menu a {
    /* Bu stiller zaten .language-menu a içinde genel olarak tanımlı,
       bu yüzden buradaki özel kurallara gerek kalmadı. */
    padding: 0.625rem 0.9375rem; /* 10px 15px */ /* Genel dil menüsüyle aynı padding */
}

/* =============================================== */
/* Özel Kaydırma Çubuğu (Scrollbar)
/* =============================================== */
/* Firefox için */
html {
    scrollbar-width: thin;
    scrollbar-color: var(--primary-color) var(--background-light);
}

/* Chrome, Edge, Safari için */
body::-webkit-scrollbar {
    width: 12px;
}
body::-webkit-scrollbar-track {
    background: var(--background-light);
}
body::-webkit-scrollbar-thumb {
    background-color: var(--primary-color);
    border-radius: 20px;
    border: 3px solid var(--background-light);
}
body::-webkit-scrollbar-thumb:hover {
    background-color: var(--primary-light);
}

/* Google reCAPTCHA rozetini gizle */
.grecaptcha-badge {
    visibility: hidden;
}

/* =============================================== */
/* Yeni Hizmetler Slider Bölümü
/* =============================================== */
.services-slider-section {
    padding: 5rem 0;
    background-color: var(--secondary-color);
    overflow: hidden; /* Yatay taşmayı engellemek için */
}

.services-slider-container {
    position: relative;
    padding: 0 3.5rem; /* Oklar için yanlarda boşluk */
}

.services-slider-wrapper {
    display: flex;
    gap: 1.5rem; /* Kartlar arası boşluk */
    padding-bottom: 1.5rem; /* Alt gölge için boşluk */
    overflow-x: auto; /* Yatay kaydırma */
    scroll-behavior: smooth;
    -ms-overflow-style: none;  /* IE and Edge */
    scrollbar-width: none;  /* Firefox */
    scroll-snap-type: x mandatory; /* Yatayda kartlara kenetlenmeyi zorunlu kıl */
    cursor: grab; /* Kaydırılabilir olduğunu belirtmek için */
    /* scroll-behavior: smooth; */ /* JavaScript ile yapılan anlık kaydırmalar için bu satır yorumda kalabilir veya silinebilir. */
}

.services-slider-wrapper::-webkit-scrollbar {
    display: none; /* Chrome, Safari and Opera */
}

.service-slider-card {
    flex: 0 0 calc(25% - 1.2rem); /* Masaüstünde 4 kart, boşluk ayarı */
    position: relative; /* Arka plan metni için gerekli */
    min-width: 18rem; /* Minimum kart genişliği */
    border-radius: 20px 100px 20px 20px;
    background-color: #f5f5f5; /* Arka plan rengi */
    padding: 1.5rem;
    display: flex;
    flex-direction: column;
    transition: all 0.4s ease;
    user-select: none; /* Kart içeriğinin seçilmesini engelle */ 
    /* scroll-snap-align: start; */ /* Serbest kaydırma için bu özellik kaldırıldı */
    overflow: hidden; /* Taşan arka plan metnini gizle */
}

/* Kartların içeriğini arka plan metninin üzerinde tutmak için */
.service-slider-card > * {
    position: relative;
    z-index: 1;
}

/* Arka plan metni için pseudo-element */
.service-slider-card::before {
    /* Tek uzun satır yerine, \A ile satırları bölerek bir desen oluşturuyoruz */
    content: "KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA\A KESKA KESKA KESKA KESKA";
    position: absolute;
    top: -50%; /* Kapsama alanını artırıyoruz */
    left: -50%;
    width: 200%;
    height: 200%;
    font-size: 3.5rem;
    font-weight: 800;
    color: rgba(39, 23, 111, 0.04); /* Çok soluk bir renk */
    transform: rotate(-30deg);
    z-index: 0;
    line-height: 1.8; /* Satırlar arası boşluğu artırarak daha iyi dağılım sağlıyoruz */
    white-space: pre; /* \A karakterinin çalışması için gerekli */
}

/* Herhangi bir kartın üzerine gelindiğinde uygulanacak efektler */
.service-slider-card:hover, .service-slider-card:focus-within {
    background-color: #FFD700; /* İstenen sarı renk */
    box-shadow: var(--shadow-hover);
}

/* JavaScript ile yönlendirme sonrası geçici vurgu için */
.service-slider-card.highlight,
.service-slider-card:focus-within,
.service-slider-card:hover {
    background-color: #FFD700;
    box-shadow: var(--shadow-hover);
}

.service-slider-card h3 {
    font-weight: 700;
    font-size: 1.4rem;
    color: var(--text-color);
    margin-bottom: 0.5rem;
}

.service-slider-card .separator {
    width: 3rem; /* 48px */
    height: 4px;
    background-color: #FFD700;
    border-radius: 2px;
    margin-bottom: 1.5rem;
}

/* Üzerine gelinen kartın ayıracının rengini değiştir */
.service-slider-card:hover .separator, .service-slider-card:focus-within .separator,
.service-slider-card.highlight .separator {
    background-color: var(--text-color);
}

.service-slider-card .card-image-container {
    width: 100%;
    height: 12.5rem; /* 200px */
    margin-bottom: 1.5rem;
    display: flex;
    align-items: center;
    justify-content: center;
    flex-grow: 1;
}

.service-slider-card img {
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    pointer-events: none; /* Görselin sürüklenmesini engelle */
}

.service-slider-card p {
    font-size: 0.9rem;
    color: var(--text-light);
    margin-bottom: 0;
    text-align: center;
}

.slider-card-btn {
    display: inline-block;
    text-align: center;
    align-self: center; /* Butonu kart içinde ortala */
    margin-top: 1.5rem; /* Üstündeki paragrafla arasına boşluk koy */
    padding: 0.5rem 1.2rem; /* Daha küçük bir buton */
    background: var(--primary-color);
    color: white !important;
    text-decoration: none;
    border-radius: var(--border-radius);
    font-weight: 600;
    font-size: 0.8rem; /* Daha küçük yazı */
    transition: var(--transition);
}

.slider-card-btn:hover, .slider-card-btn:focus-visible {
    background: var(--accent-color);
    outline: 2px solid var(--accent-color);
}

.slider-nav-btn {
    position: absolute;
    top: 50%;
    transform: translateY(-50%);
    width: 3rem; /* 48px */
    height: 3rem; /* 48px */
    background-color: var(--secondary-color);
    border: 1px solid var(--border-color);
    border-radius: 50%;
    color: var(--text-color);
    font-size: 1.2rem;
    cursor: pointer;
    z-index: 10;
    box-shadow: var(--shadow);
    transition: var(--transition);
}

.slider-nav-btn:hover, .slider-nav-btn:focus-visible {
    background-color: var(--primary-color);
    color: white;
    transform: translateY(-50%) scale(1.1);
    outline: 2px solid var(--primary-color);
}

.slider-nav-btn.prev {
    left: 0;
}

.slider-nav-btn.next {
    right: 0;
}

/* Responsive Ayarlar */
@media (max-width: 1200px) {
    .service-slider-card {
        flex: 0 0 calc(33.33% - 1rem);
    }
}

@media (max-width: 992px) {
    .service-slider-card {
        flex: 0 0 calc(50% - 0.75rem);
    }
}

@media (max-width: 768px) {
    .services-slider-container {
        padding: 0 1rem; /* Mobil'de oklar için boşluğu azalt */
    }
    .slider-nav-btn {
        display: none; /* Mobil'de okları gizle, swipe kullanılacak */
    }
    .service-slider-card {
        flex: 0 0 70%; /* Mobil'de 1.5 kart görünümü */
    }
}

@media (max-width: 480px) {
    .service-slider-card {
        flex: 0 0 85%; /* Daha küçük mobilde kartı büyüt */
    }
}

/* Hizmetler Slider Kaydırma İpucu Animasyonu (Daha Belirgin) */
.scroll-hint {
    display: none; /* Varsayılan olarak gizli, JS ile kontrol edilecek (flex) */
    margin: 1rem auto 0;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 1.5rem;
    color: var(--text-light);
    user-select: none;
}

.scroll-hint .scroll-text {
    font-weight: 600;
    font-size: 1rem;
    color: var(--primary-color);
}

.scroll-hint .scroll-arrow {
    font-size: 1.5rem;
    opacity: 0.7;
}

.scroll-hint .fa-chevron-left {
    animation: move-left 2s ease-in-out infinite;
}

.scroll-hint .fa-chevron-right {
    animation: move-right 2s ease-in-out infinite;
}

@keyframes move-left {
    0%, 100% { transform: translateX(0); opacity: 0.2; }
    50% { transform: translateX(-10px); opacity: 1; }
}

@keyframes move-right {
    0%, 100% { transform: translateX(0); opacity: 0.2; }
    50% { transform: translateX(10px); opacity: 1; }
}


/* Blog Yazısı Paylaşım Butonları */
.social-share {
    margin-top: 2.5rem;
    padding-top: 2rem;
    border-top: 1px solid var(--border-color);
    text-align: center;
}

.social-share h4 {
    color: var(--primary-color);
    margin-bottom: 1.5rem;
    font-size: 1.2rem;
}

.social-share .social-icons {
    display: flex;
    justify-content: center;
    gap: 1rem;
}

.social-share .social-icon {
    width: 3rem; /* 48px */
    height: 3rem; /* 48px */
    display: inline-flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    font-size: 1.3rem;
    color: var(--primary-color);
    background-color: var(--background-light);
    border: 1px solid var(--border-color);
    transition: var(--transition);
    text-decoration: none;
}
/* Bu keyframe artık HTML dosyalarındaki inline stil ile aynı olduğu için
   veya oradaki daha öncelikli olduğu için buradan kaldırılabilir veya tutulabilir.
   Tutarlılık için inline versiyonla aynı bırakıyoruz. */

/* Teşekkürler Sayfası */
.thank-you-container {
    text-align: center;
    padding: 10rem 1.25rem 5rem; /* 160px 20px 80px */
    min-height: 60vh;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}
.thank-you-container .icon {
    font-size: 4rem;
    color: var(--success-color);
    margin-bottom: 1.5rem;
    animation: pop-in 0.5s ease-out;
}
@keyframes pop-in {
    0% { transform: scale(0.5); opacity: 0; }
    100% { transform: scale(1); opacity: 1; }
}

/* İletişim Formu reCAPTCHA Metni */
.recaptcha-text {
    font-size: 0.8rem;
    text-align: center;
    margin-bottom: 1.5rem;
    color: var(--text-light);
}
.recaptcha-text a {
    color: var(--primary-color);
    text-decoration: underline;
}

/* Google Haritası Iframe */
.contact-map iframe {
    border: 0;
    border-radius: 8px;
}

/* Mobil Header & Ticker - Görsel 1 Referanslı Birebir Düzen */
/* Mobil Header & Ticker - Görsel 1 Referanslı Birebir Düzen */
@media (max-width: 991px) {
    .top-bar {
        display: none !important; /* Mobil görünümde tamamen kaldırıldı */
    }

    /* Ana Header - SABİT */
    .header {
        position: fixed !important; 
        top: 0 !important; /* En üste çekildi */
        left: 0 !important;
        width: 100% !important;
        z-index: 2000 !important;
        background-color: transparent !important;
        box-shadow: none !important;
        border-radius: 0 !important;
        display: block !important;
        visibility: visible !important;
    }
    
    .main-ticker {
        display: flex !important;
    }

    .hero-slider {
        margin-top: 36px !important;
    }
    

    /* Header Container - Beyaz yuvarlak zemin */
    .header > .container {
        position: relative !important;
        background-color: #ffffff !important;
        border-radius: 0 0 50px 50px !important; 
        padding: 10px 1.25rem !important;
        display: flex !important;
        flex-direction: row !important;
        justify-content: space-between !important;
        align-items: center !important;
        box-shadow: 0 4px 15px rgba(0,0,0,0.08) !important;
        margin: 0 !important;
        max-width: 100% !important;
        width: 100% !important;
        min-height: 65px !important;
    }

    /* Dil Seçimi (Dünya İkonu - Sol) */
    .mobile-header-lang {
        display: block !important;
        order: -1 !important;
        position: relative !important;
        z-index: 1002 !important;
    }
    .mobile-lang-toggle {
        background: transparent !important;
        border: none !important;
        color: #27176f !important;
        font-size: 1.8rem !important;
        padding: 0 !important;
        cursor: pointer !important;
        display: flex !important;
        align-items: center !important;
    }
    .mobile-lang-dropdown {
        position: absolute !important;
        top: 100% !important;
        left: 0 !important;
        background: white !important;
        border: 1px solid #eee !important;
        border-radius: 10px !important;
        box-shadow: 0 5px 15px rgba(0,0,0,0.1) !important;
        padding: 10px !important;
        display: none !important; 
        flex-direction: column !important;
        gap: 10px !important;
        min-width: 120px !important;
        z-index: 3001 !important; /* Fixed header üzerinden çıksın */
    }
    .mobile-lang-dropdown.active {
        display: flex !important; /* Tıklanınca görünür */
    }
    .mobile-lang-dropdown a {
        display: flex !important;
        align-items: center !important;
        gap: 10px !important;
        color: #27176f !important;
        text-decoration: none !important;
        font-weight: 600 !important;
        font-size: 0.9rem !important;
        padding: 5px !important;
        border-radius: 5px !important;
    }
    .mobile-lang-dropdown a:hover {
        background-color: #f8f9fa !important;
    }
    .mobile-lang-dropdown img {
        width: 20px !important;
        border-radius: 2px !important;
    }

    /* Logo (Merkez) */
    .nav-brand {
        margin: 0 !important;
        position: absolute !important;
        left: 50% !important;
        top: 50% !important;
        transform: translate(-50%, -50%) !important;
        z-index: 1001 !important;
        width: fit-content;
    }
    .logo-img {
        max-height: 50px !important; 
        height: auto !important; /* Genişlik değiştikçe yüksekliği koru */
        object-fit: contain !important;
        /* width: auto !important; <- Bunu kaldırdık ki admin panelinden gelen width etkili olabilsin */
    }

    /* Hamburger (Sağ) - nav-actions içindeki diğer her şeyi gizleyip butonu göster */
    .nav-actions {
        display: flex !important;
        order: 1 !important;
        margin: 0 !important;
        gap: 0 !important;
    }
    .nav-actions > *:not(.mobile-menu-btn) {
        display: none !important;
    }
    .mobile-menu-btn {
        display: flex !important;
        padding: 0 !important;
        z-index: 1002 !important;
        flex-direction: column !important;
        justify-content: center !important;
        gap: 5px !important;
    }
    .mobile-menu-btn span {
        width: 26px !important;
        height: 3px !important;
        background-color: #27176f !important;
        border-radius: 2px !important;
        margin: 0 !important;
    }

    /* Desktop Elemanlarını Gizle */
    .nav-desktop {
        display: none !important;
    }
}

@keyframes marquee {
    0%   { transform: translateX(0); }
    100% { transform: translateX(-50%); } /* Seamless loop için (Çift metin kullanılıyor) */
}

/* Mobile Dropdown Image Size Override */
.mobile-nav .mobile-dropdown-content a img {
    width: 40px !important;
    height: 40px !important;
    max-width: 40px !important;
    max-height: 40px !important;
    object-fit: contain !important;
    flex-shrink: 0 !important;
}
