/* ============================================
   MİZAN YÖNETİM - Profesyonel Yönetim Sitesi
   ============================================ */

html { scroll-behavior: smooth; scroll-padding-top: 80px; }
body { overflow-x: hidden; font-family: 'Inter', sans-serif; }
::selection { background-color: #2563EB; color: white; }

::-webkit-scrollbar { width: 8px; }
::-webkit-scrollbar-track { background: #0F172A; }
::-webkit-scrollbar-thumb { background: #2563EB; border-radius: 4px; }
::-webkit-scrollbar-thumb:hover { background: #1B2A4A; }

/* Navbar */
#navbar { background: transparent; transition: all 0.3s ease; }
#navbar.scrolled { background: rgba(15, 23, 42, 0.97); backdrop-filter: blur(16px); box-shadow: 0 4px 30px rgba(0,0,0,0.2); }
.nav-link { position: relative; }
.nav-link::after { content: ''; position: absolute; bottom: -4px; left: 0; width: 0; height: 2px; background: #10B981; transition: width 0.3s ease; }
.nav-link:hover::after, .nav-link.active::after { width: 100%; }
.nav-link.active { color: #fff !important; }

/* Mobile Menu */
#mobile-menu { max-height: 0; overflow: hidden; transition: max-height 0.4s ease, opacity 0.3s ease; opacity: 0; }
#mobile-menu.open { max-height: 80vh; opacity: 1; overflow-y: auto; }
#mobile-menu a { min-height: 48px; display: flex; align-items: center; }

/* Animations */
@keyframes float { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-20px)} }
@keyframes float-delayed { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-15px)} }
.animate-float { animation: float 6s ease-in-out infinite; }
.animate-float-delayed { animation: float-delayed 8s ease-in-out infinite; animation-delay: 2s; }

/* Images - strict containment */
.service-card-img { width: 100%; height: 200px; object-fit: cover; display: block; }
.alt-section-img { width: 100%; height: 320px; object-fit: cover; display: block; border-radius: 1.5rem; }
.service-card { overflow: hidden !important; border-radius: 1rem; transform: translateY(0); transition: transform 0.4s ease, box-shadow 0.4s ease; }
.service-card:hover { transform: translateY(-8px); box-shadow: 0 20px 40px rgba(37,99,235,0.1); }

/* Image placeholders */
.img-placeholder { position: relative; overflow: hidden; border-radius: 1rem; }
.img-placeholder::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, #1e3a5f 0%, #2563EB 50%, #1B2A4A 100%); opacity: 0.9; }
.img-building { background: linear-gradient(135deg, #0c1929 0%, #1B2A4A 40%, #2563EB 100%); }
.img-security { background: linear-gradient(135deg, #0f172a 0%, #1e293b 40%, #334155 100%); }
.img-clean { background: linear-gradient(135deg, #ecfdf5 0%, #d1fae5 40%, #a7f3d0 100%); }
.img-pool { background: linear-gradient(135deg, #0ea5e9 0%, #0284c7 40%, #0369a1 100%); }
.img-garden { background: linear-gradient(135deg, #166534 0%, #15803d 40%, #22c55e 100%); }

/* Counter */
.counter { line-height: 1; }

/* Swiper */
.testimonial-swiper .swiper-pagination-bullet { width: 12px; height: 12px; background: #CBD5E1; opacity: 1; transition: all 0.3s; }
.testimonial-swiper .swiper-pagination-bullet-active { background: #2563EB; width: 32px; border-radius: 6px; }

/* Form */
input:focus, textarea:focus, select:focus { border-color: #2563EB !important; box-shadow: 0 0 0 3px rgba(37,99,235,0.15); outline: none; }

/* WhatsApp Float */
.whatsapp-float { position: fixed; bottom: 24px; right: 24px; z-index: 999; width: 60px; height: 60px; background: #25D366; border-radius: 50%; display: flex; align-items: center; justify-content: center; box-shadow: 0 4px 20px rgba(37,211,102,0.4); transition: transform 0.3s; animation: whatsapp-pulse 2s infinite; }
.whatsapp-float:hover { transform: scale(1.1); }
@keyframes whatsapp-pulse { 0%{box-shadow:0 0 0 0 rgba(37,211,102,0.5)} 70%{box-shadow:0 0 0 15px rgba(37,211,102,0)} 100%{box-shadow:0 0 0 0 rgba(37,211,102,0)} }

/* Back to Top */
.back-to-top { position: fixed; bottom: 96px; right: 24px; z-index: 999; width: 48px; height: 48px; background: #2563EB; border-radius: 50%; display: flex; align-items: center; justify-content: center; color: white; box-shadow: 0 4px 15px rgba(37,99,235,0.3); opacity: 0; visibility: hidden; transform: translateY(20px); transition: all 0.3s; cursor: pointer; }
.back-to-top.visible { opacity: 1; visibility: visible; transform: translateY(0); }
.back-to-top:hover { background: #1B2A4A; transform: translateY(-4px); }

/* Page Header */
.page-header { background: linear-gradient(135deg, #0F172A 0%, #1B2A4A 50%, #1e3a5f 100%); padding: 160px 0 100px; position: relative; overflow: hidden; }
.page-header::before { content: ''; position: absolute; inset: 0; background: url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNjAiIGhlaWdodD0iNjAiIHZpZXdCb3g9IjAgMCA2MCA2MCIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj48ZyBmaWxsPSJub25lIiBmaWxsLXJ1bGU9ImV2ZW5vZGQiPjxnIGZpbGw9IiNmZmYiIGZpbGwtb3BhY2l0eT0iMC4wMyI+PHBhdGggZD0iTTM2IDM0djItSDI0di0yaDEyem0wLTRWMjhIMjR2Mmgxem0tNC00di0ySDE0djJoOHptNCA0djJoLTZ2LTJoNnptMCA4djJoLTZ2LTJoNnptOCA0djJoLTZ2LTJoNnptNCA0djJoLTZ2LTJoNnptNCA0djJoLTZ2LTJoNnptLTIwLTQ0djJIMTJ2LTJoOHoiLz48L2c+PC9nPjwvc3ZnPg==') repeat; opacity: 0.3; }

/* FAQ */
.faq-item { border-bottom: 1px solid #E2E8F0; }
.faq-question { cursor: pointer; transition: color 0.3s; }
.faq-question:hover { color: #2563EB; }
.faq-answer { max-height: 0; overflow: hidden; transition: max-height 0.4s ease, padding 0.4s ease; }
.faq-item.open .faq-answer { max-height: 500px; padding-top: 1rem; }
.faq-item.open .faq-icon { transform: rotate(45deg); }
.faq-icon { transition: transform 0.3s; display: inline-block; }

/* Blog */
.blog-card { transition: transform 0.3s, box-shadow 0.3s; }
.blog-card:hover { transform: translateY(-4px); box-shadow: 0 12px 30px rgba(0,0,0,0.08); }

/* Comment Form */
.comment-form input:focus, .comment-form textarea:focus { border-color: #2563EB !important; box-shadow: 0 0 0 3px rgba(37,99,235,0.15); }

/* Loading */
.form-loading { position: relative; pointer-events: none; }
.form-loading::after { content: ''; position: absolute; top: 50%; left: 50%; width: 24px; height: 24px; margin: -12px 0 0 -12px; border: 3px solid transparent; border-top-color: white; border-radius: 50%; animation: spin 0.6s linear infinite; }
@keyframes spin { to { transform: rotate(360deg); } }

/* ============================================
   RESPONSIVE
   ============================================ */

/* Tablet */
@media (max-width: 1024px) {
    .service-card-img { height: 180px; }
    .alt-section-img { height: 280px; }
}

/* Mobile */
@media (max-width: 768px) {
    .page-header { padding: 120px 0 60px; }
    .page-header h1 { font-size: 1.875rem; }
    .whatsapp-float { width: 52px; height: 52px; bottom: 16px; right: 16px; }
    .back-to-top { width: 42px; height: 42px; bottom: 76px; right: 16px; }
    .service-card-img { height: 180px; }
    .alt-section-img { height: 200px; border-radius: 1rem; }
    .service-card:hover { transform: none; box-shadow: none; }
    .blog-card:hover { transform: none; box-shadow: none; }
}

/* Small Mobile */
@media (max-width: 480px) {
    .page-header { padding: 110px 0 50px; }
    .page-header h1 { font-size: 1.5rem; }
    .whatsapp-float { width: 48px; height: 48px; bottom: 12px; right: 12px; }
    .back-to-top { width: 38px; height: 38px; bottom: 68px; right: 12px; }
    .service-card-img { height: 160px; }
    .alt-section-img { height: 180px; }
}

/* Watermark Logo */
.watermark::after {
    content: '';
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 700px;
    height: 700px;
    background-image: url('../images/logo2.jpeg');
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    opacity: 0.035;
    pointer-events: none;
    z-index: 1;
}

@media (max-width: 768px) {
    .watermark::after { width: 400px; height: 400px; opacity: 0.025; }
}

/* Print */
@media print {
    #navbar, .whatsapp-float, .back-to-top, footer { display: none !important; }
    section { break-inside: avoid; }
}
