/* ===== Hukuk Bürosu CMS - Ana Stil ===== */

body {
    font-family: 'Segoe UI', system-ui, -apple-system, sans-serif;
    color: #333;
    line-height: 1.7;
}

a { text-decoration: none; }

/* Renk yardımcıları (CSS değişkenleri header'da tanımlanır) */
.bg-primary { background-color: var(--primary) !important; }
.text-primary { color: var(--primary) !important; }
.bg-accent { background-color: var(--accent) !important; color:#fff !important; }
.text-accent { color: var(--accent) !important; }
.btn-primary { background-color: var(--primary); border-color: var(--primary); }
.btn-primary:hover { background-color: #09203d; border-color: #09203d; }
.btn-accent { background-color: var(--accent); border-color: var(--accent); color:#fff; }
.btn-accent:hover { filter: brightness(0.92); color:#fff; }
.btn-outline-primary { color: var(--primary); border-color: var(--primary); }
.btn-outline-primary:hover { background: var(--primary); color:#fff; }
.link-accent { color: var(--accent); font-weight: 600; }
.link-accent:hover { color: var(--primary); }

/* Üst bar */
.topbar { background: #09203d; }
.topbar a:hover { color: var(--accent) !important; }

/* Navigasyon */
.main-nav { background: var(--primary); padding: .8rem 0; }
.main-nav .navbar-brand { font-size: 1.3rem; }
.main-nav .nav-link { font-weight: 500; padding: .5rem 1rem; }
.main-nav .nav-link:hover { color: var(--accent); }

/* Hero */
.hero {
    min-height: 70vh;
    background: linear-gradient(rgba(13,44,84,.85), rgba(13,44,84,.92)),
                url('https://images.unsplash.com/photo-1589829545856-d10d557cf95f?auto=format&fit=crop&w=1600&q=80') center/cover;
}
.badge.bg-accent { font-size: .85rem; padding: .5rem 1rem; letter-spacing: 1px; }

/* Bölüm başlıkları */
.section-label { color: var(--accent); font-weight: 700; text-transform: uppercase; letter-spacing: 2px; font-size: .8rem; }
.section-title { color: var(--primary); font-weight: 700; margin-bottom: 1rem; position: relative; }

/* İstatistik kutuları */
.stat-box { background: var(--primary); color:#fff; border-radius: 12px; padding: 1.5rem 1rem; }
.stat-num { display:block; font-size: 2.2rem; font-weight: 700; color: var(--accent); }
.stat-label { font-size: .85rem; opacity: .85; }

/* Hizmet kartları */
.service-card { background:#fff; border-radius: 12px; padding: 2rem; box-shadow: 0 5px 25px rgba(0,0,0,.06); transition: .3s; border-bottom: 3px solid transparent; }
.service-card:hover { transform: translateY(-6px); border-bottom-color: var(--accent); box-shadow: 0 12px 30px rgba(0,0,0,.12); }
.service-icon { width:64px; height:64px; border-radius: 50%; background: var(--primary); color: var(--accent); display:flex; align-items:center; justify-content:center; font-size: 1.6rem; margin-bottom: 1rem; }
.service-card h4 a { color: var(--primary); }
.service-card h4 a:hover { color: var(--accent); }

/* Avukat kartları */
.lawyer-card { background:#fff; border-radius: 12px; padding: 1.5rem; box-shadow: 0 5px 25px rgba(0,0,0,.06); transition: .3s; }
.lawyer-card:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(0,0,0,.12); }
.lawyer-photo { width: 140px; height: 140px; object-fit: cover; border-radius: 50%; border: 4px solid var(--accent); }

/* Haber kartları */
.post-card { background:#fff; border-radius: 12px; overflow:hidden; box-shadow: 0 5px 25px rgba(0,0,0,.06); transition: .3s; }
.post-card:hover { transform: translateY(-6px); box-shadow: 0 12px 30px rgba(0,0,0,.12); }
.post-img { width:100%; height: 200px; object-fit: cover; }
.post-card h5 a { color: var(--primary); }
.post-card h5 a:hover { color: var(--accent); }

/* Sayfa başlığı */
.page-header {
    background: linear-gradient(rgba(13,44,84,.9), rgba(13,44,84,.95)),
                url('https://images.unsplash.com/photo-1505664194779-8beaceb93744?auto=format&fit=crop&w=1600&q=80') center/cover;
    padding: 5rem 0 3rem;
}
.page-header h1 { font-weight: 700; }
.breadcrumb-nav a { color: var(--accent); }
.breadcrumb-nav { opacity: .9; }

/* İçerik gövdesi */
.content-body { font-size: 1.05rem; }
.content-body img { max-width: 100%; height: auto; border-radius: 8px; }

/* Kenar çubuğu */
.sidebar-box { background:#fff; border-radius: 12px; padding: 1.5rem; box-shadow: 0 5px 25px rgba(0,0,0,.06); }
.sidebar-list li { border-bottom: 1px solid #eee; }
.sidebar-list li:last-child { border-bottom: 0; }
.sidebar-list a { display:block; padding: .6rem 0; color:#444; }
.sidebar-list a:hover { color: var(--accent); padding-left: .4rem; transition: .2s; }
.sidebar-box.bg-primary h5, .sidebar-box.bg-primary p { color:#fff; }

/* Galeri */
.gallery-item { position:relative; display:block; overflow:hidden; border-radius: 8px; }
.gallery-item img { transition: .4s; aspect-ratio: 4/3; object-fit: cover; width:100%; }
.gallery-item:hover img { transform: scale(1.1); }
.gallery-overlay { position:absolute; inset:0; background: rgba(13,44,84,.5); color:#fff; display:flex; align-items:center; justify-content:center; font-size:1.5rem; opacity:0; transition:.3s; }
.gallery-item:hover .gallery-overlay { opacity:1; }

/* CTA */
.cta-section { background: linear-gradient(rgba(13,44,84,.92), rgba(13,44,84,.92)), url('https://images.unsplash.com/photo-1521587760476-6c12a4b040da?auto=format&fit=crop&w=1600&q=80') center/cover; }

/* Footer */
.site-footer { background: #09203d; }
.footer-title { color: var(--accent); font-size: 1.1rem; margin-bottom: 1.2rem; }
.footer-links a { color: rgba(255,255,255,.7); display:block; padding: .3rem 0; }
.footer-links a:hover { color: var(--accent); padding-left: .4rem; transition:.2s; }

/* WhatsApp float */
.whatsapp-float { position: fixed; bottom: 25px; right: 25px; width: 58px; height: 58px; background:#25d366; color:#fff; border-radius:50%; display:flex; align-items:center; justify-content:center; font-size:1.8rem; box-shadow: 0 5px 20px rgba(0,0,0,.3); z-index: 999; transition:.3s; }
.whatsapp-float:hover { transform: scale(1.1); color:#fff; }

/* Placeholder görsel */
img[src*="placeholder"] { background:#e9ecef; }

@media (max-width: 768px) {
    .hero { min-height: 55vh; text-align:center; }
    .page-header { padding: 3rem 0 2rem; }
}
