/* DALGA RENGİ GEÇİŞİ */
.wave-divider {
    position: relative; 
    width: 100%; 
    overflow: hidden; 
    line-height: 0;
    background-color: var(--bg-body);
    margin-bottom: -1px; /* Dalga ile footer arasındaki o ince boşluğu (gap) yok eder */
}
.wave-divider svg { display: block; width: calc(100% + 1.3px); height: 90px; }
.wave-divider .shape-fill { fill: var(--bg-footer); transition: fill 0.3s ease; }

.site-footer {
    position: relative;
    background-color: var(--bg-footer);
    padding: 60px 20px 40px;
    transition: background-color 0.3s ease;
    overflow: hidden;
}

/* =========================================================
   GELİŞTİRİLMİŞ YOĞUN GEOMETRİK DESEN (BOŞLUKSUZ)
   ========================================================= */
.site-footer::before {
    content: '';
    position: absolute;
    top: 0; /* Tam tepeden başlar, boşluk bırakmaz */
    left: 0; 
    width: 100%; 
    height: 100%;
    
    background-color: var(--text-main); 
    
    /* DAHA YOĞUN SVG MASKESİ (Üçgenler, Küpler, Artılar, Noktalar, X'ler) */
    -webkit-mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='250' viewBox='0 0 250 250'%3E%3Cpolygon points='50,30 65,60 35,60' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpolygon points='180,140 200,180 160,180' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M20,150 Q35,135 50,150 T80,150' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M20,160 Q35,145 50,160 T80,160' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M100,90 L115,82 L130,90 L130,105 L115,113 L100,105 Z M100,90 L115,98 L130,90 M115,113 L115,98' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M190,40 h10 M195,35 v10' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M40,200 h8 M44,196 v8' fill='none' stroke='black' stroke-width='1.5'/%3E%3Ccircle cx='220' cy='60' r='2' fill='black'/%3E%3Ccircle cx='60' cy='220' r='1.5' fill='black'/%3E%3Cpath d='M140,180 L150,190 M150,180 L140,190' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M130,20 Q145,5 160,20 T190,20' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpolygon points='230,200 240,215 220,215' fill='none' stroke='black' stroke-width='1'/%3E%3Cpath d='M10,20 L20,30 M20,20 L10,30' fill='none' stroke='black' stroke-width='1'/%3E%3C/svg%3E");
    mask-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='250' height='250' viewBox='0 0 250 250'%3E%3Cpolygon points='50,30 65,60 35,60' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpolygon points='180,140 200,180 160,180' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M20,150 Q35,135 50,150 T80,150' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M20,160 Q35,145 50,160 T80,160' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M100,90 L115,82 L130,90 L130,105 L115,113 L100,105 Z M100,90 L115,98 L130,90 M115,113 L115,98' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M190,40 h10 M195,35 v10' fill='none' stroke='black' stroke-width='2'/%3E%3Cpath d='M40,200 h8 M44,196 v8' fill='none' stroke='black' stroke-width='1.5'/%3E%3Ccircle cx='220' cy='60' r='2' fill='black'/%3E%3Ccircle cx='60' cy='220' r='1.5' fill='black'/%3E%3Cpath d='M140,180 L150,190 M150,180 L140,190' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpath d='M130,20 Q145,5 160,20 T190,20' fill='none' stroke='black' stroke-width='1.5'/%3E%3Cpolygon points='230,200 240,215 220,215' fill='none' stroke='black' stroke-width='1'/%3E%3Cpath d='M10,20 L20,30 M20,20 L10,30' fill='none' stroke='black' stroke-width='1'/%3E%3C/svg%3E");
    
    -webkit-mask-size: 250px 250px;
    mask-size: 250px 250px;
    
    /* Açık tema belirginliği (Mükemmel %15 opaklık) */
    opacity: 0.15; 
    pointer-events: none;
    z-index: 0;
    transition: opacity 0.4s ease;
}

/* Karanlık tema için asil duruş (%5 opaklık) */
body.dark-theme .site-footer::before {
    opacity: 0.05; 
}

/* İÇERİKLERİN DESENİN ÜSTÜNDE KALMASI */
.footer-container { 
    position: relative; 
    z-index: 2; 
    max-width: 1100px; 
    margin: 0 auto; 
}

.footer-grid {
    display: grid;
    grid-template-columns: 2fr 1fr 1fr 1fr;
    gap: 40px;
    margin-bottom: 50px;
}

/* MARKA STİLLERİ */
.footer-logo { display: flex; align-items: center; gap: 10px; font-size: 1.4rem; font-weight: 700; color: var(--text-main); margin-bottom: 15px; }
.footer-logo img { height: 30px; }
.footer-desc { color: var(--text-muted); font-size: 0.9rem; max-width: 320px; line-height: 1.6; }

/* LİNK GRUPLARI */
.footer-links-col h3 { color: var(--text-main); font-size: 1.05rem; margin-bottom: 25px; font-weight: 600; }
.link-group { display: flex; flex-direction: column; gap: 12px; }

/* ESTETİK AYIRICI ÇİZGİLER */
.link-group a {
    display: flex; align-items: center; color: var(--text-muted);
    font-size: 0.95rem; padding-bottom: 12px;
    border-bottom: 1px solid var(--border-color);
    transition: color 0.3s ease, border-color 0.3s ease;
}

.link-group a:last-child { border-bottom: none; padding-bottom: 0; }
.link-group a i { width: 20px; font-size: 1rem; margin-right: 8px; text-align: left; }
.link-group a:hover { color: var(--text-main); border-bottom-color: var(--text-muted); }

/* TELİF BÖLÜMÜ */
.footer-bottom { padding-top: 30px; border-top: 1px solid var(--border-color); color: var(--text-muted); font-size: 0.9rem; display: flex; justify-content: space-between; }

@media (max-width: 900px) {
    .footer-grid { grid-template-columns: 1fr 1fr; gap: 30px; }
    .footer-brand-col { grid-column: 1 / -1; }
}
@media (max-width: 500px) {
    .footer-grid { grid-template-columns: 1fr; }
}