:root { --primary:#003B70; --secondary:#43A51A; --accent:#008DB5; --light-green:#8BC900; --dark-blue:#002448; --bg-light:#F5F9FC; --border:#E2EAF0; --text-primary:#172B3A; --text-secondary:#64748B; --white:#FFFFFF; }
* { margin:0; padding:0; box-sizing:border-box; }
body { font-family:'Poppins', sans-serif; color:var(--text-primary); line-height:1.6; background-color:var(--white); }
a { text-decoration:none; transition:0.3s; color:inherit; }
ul { list-style:none; }
.container { width:90%; max-width:1200px; margin:0 auto; }
.text-center { text-align:center; }
.layout-2col { display:grid; grid-template-columns:1fr 1fr; gap:40px; align-items:center; }
.btn { padding:12px 24px; border-radius:5px; font-weight:600; display:inline-block; cursor:pointer; border:none; text-align:center; }
.btn-primary { background:var(--primary); color:var(--white); }
.btn-secondary { background:var(--secondary); color:var(--white); }
.btn-secondary:hover { background:var(--light-green); color:var(--dark-blue); }
.btn-outline { border:2px solid var(--white); color:var(--white); }
.btn-outline:hover { background:var(--white); color:var(--primary); }
.btn-full { width:100%; margin-top:10px; }
.top-bar { background:var(--primary); color:var(--white); padding:8px 0; font-size:0.9rem; }
.top-bar .container { display:flex; justify-content:space-between; }
.header { background:var(--white); padding:15px 0; border-bottom:1px solid var(--border); position:sticky; top:0; z-index:100; box-shadow:0 4px 10px rgba(0,0,0,0.05); }
.header-flex { display:flex; justify-content:space-between; align-items:center; }
.nav-menu ul { display:flex; gap:25px; align-items:center; }
.nav-menu a { color:var(--text-primary); font-weight:500; }
.nav-menu a:hover, .nav-menu a.active { color:var(--accent); }
.dropdown { position:relative; }
.dropdown-content { display:none; position:absolute; background-color:var(--white); min-width:240px; box-shadow:0 8px 16px rgba(0,0,0,0.1); z-index:1; top:100%; left:0; border-radius:5px; border:1px solid var(--border); }
.dropdown:hover .dropdown-content { display:flex; flex-direction:column; }
.dropdown-content a { padding:12px 15px; border-bottom:1px solid var(--bg-light); display:block; }
.dropdown-content a:hover { background-color:var(--bg-light); color:var(--primary); }
.menu-toggle { display:none; flex-direction:column; cursor:pointer; gap:5px; }
.menu-toggle span { width:25px; height:3px; background-color:var(--primary); transition:0.3s; }
.hero, .page-banner { position:relative; color:var(--white); background-size:cover; background-position:center; background-color:var(--dark-blue); }
.hero { padding:120px 0; }
.page-banner { padding:100px 0; text-align:center; }
.hero-overlay, .banner-overlay { position:absolute; top:0; left:0; width:100%; height:100%; background:rgba(0, 36, 72, 0.75); }
.hero-content, .page-banner .container { position:relative; z-index:1; }
.hero-content { display:flex; justify-content:space-between; align-items:center; gap:50px; flex-wrap:wrap; }
.hero-text { flex:1; min-width:300px; }
.hero-text h1 { font-size:3.2rem; margin-bottom:20px; line-height:1.2; font-weight:700; }
.page-banner h1 { font-size:2.8rem; margin-bottom:10px;}
.hero-form, .sticky-form { background:var(--white); padding:30px; border-radius:8px; flex:0 0 380px; color:var(--text-primary); box-shadow:0 10px 30px rgba(0,0,0,0.1); }
.sticky-form { border-top:4px solid var(--secondary); position:sticky; top:100px; }
form input, form textarea { width:100%; padding:12px; margin-bottom:15px; border:1px solid var(--border); border-radius:5px; font-family:'Poppins', sans-serif; background:var(--bg-light); }
form input:focus, form textarea:focus { outline:none; border-color:var(--primary); background:var(--white); }
.trust-bar { background:var(--bg-light); padding:25px 0; border-bottom:1px solid var(--border); }
.trust-flex { display:flex; justify-content:space-between; flex-wrap:wrap; text-align:center; }
.trust-item { font-weight:600; color:var(--primary); font-size:1.1rem; }
.trust-item strong { color:var(--secondary); font-size:1.3rem; margin-right:5px; }
.page-section, .home-about, .service-details, .services, .home-gallery { padding:80px 0; }
.section-title { text-align:center; color:var(--primary); font-size:2.2rem; margin-bottom:50px; }
.feature-list { list-style:none; }
.feature-list li { position:relative; padding-left:25px; margin-bottom:10px; font-weight:500;}
.feature-list li::before { content:'✓'; color:var(--secondary); position:absolute; left:0; font-weight:bold; }
.services-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(320px, 1fr)); gap:30px; }
.service-layout { display:grid; grid-template-columns:2fr 1fr; gap:50px; align-items:start; }
.service-card { background:var(--white); border-radius:8px; overflow:hidden; box-shadow:0 5px 15px rgba(0,0,0,0.05); transition:0.3s; }
.service-card:hover { transform:translateY(-10px); box-shadow:0 15px 30px rgba(0,0,0,0.1); }
.service-card img, .content-image { width:100%; object-fit:cover; border-radius:8px; }
.service-card img { height:200px; border-radius:8px 8px 0 0; }
.content-image { margin-bottom:30px; max-height:400px; }
.sc-content { padding:25px; }
.sc-content h3, .service-content h2 { color:var(--primary); margin-bottom:15px; }
.footer { background:var(--primary); color:var(--white); padding:60px 0 20px; }
.footer-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(250px, 1fr)); gap:40px; border-bottom:1px solid rgba(255,255,255,0.1); padding-bottom:30px; }
.footer h4 { color:var(--light-green); margin-bottom:20px; }
.footer ul li { margin-bottom:10px; }
.whatsapp-float { position:fixed; bottom:30px; right:30px; background:var(--secondary); color:var(--white); padding:12px 25px; border-radius:50px; font-weight:600; box-shadow:0 4px 15px rgba(0,0,0,0.3); z-index:1000; display:flex; align-items:center; font-size:1.1rem; }
.whatsapp-float:hover { background:var(--light-green); color:var(--dark-blue); transform:scale(1.05); }

/* Referans & Galeri CSS */
.review-card { background:var(--bg-light); padding:30px; border-radius:8px; border-left:4px solid var(--secondary); box-shadow:0 5px 15px rgba(0,0,0,0.05); }
.review-stars { color:#FFB800; font-size:1.2rem; margin-bottom:15px; }
.review-text { font-style:italic; color:var(--text-secondary); margin-bottom:20px; font-size:0.95rem; }
.review-author { font-weight:600; color:var(--primary); }
.review-location { font-size:0.85rem; color:#888; }
.main-gallery-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(300px, 1fr)); gap:20px; }
.main-gallery-grid img { width:100%; height:250px; object-fit:cover; border-radius:8px; transition:0.3s; cursor:pointer; }
.main-gallery-grid img:hover { filter:brightness(0.8); transform:scale(1.02); }

/* --- YENİ EKLENEN ANA SAYFA BÖLÜMLERİ CSS'İ --- */

/* Referans Logoları Kaydırma Animasyonu (Slider) */
.logo-slider-container { overflow: hidden; padding: 50px 0; background: var(--white); border-top: 1px solid var(--border); border-bottom: 1px solid var(--border); }
.logo-slide-track { display: flex; width: calc(200px * 10); animation: scrollLogos 25s linear infinite; align-items: center; }
.logo-slide-track img { width: 140px; margin: 0 30px; filter: grayscale(100%); opacity: 0.6; transition: 0.3s; }
.logo-slide-track img:hover { filter: grayscale(0%); opacity: 1; }

@keyframes scrollLogos { 
    0% { transform: translateX(0); } 
    100% { transform: translateX(-50%); } 
}

/* Sıkça Sorulan Sorular (SSS - Accordion) */
.faq-accordion { max-width: 850px; margin: 0 auto; }
.faq-accordion details { background: var(--white); border: 1px solid var(--border); border-radius: 8px; margin-bottom: 15px; padding: 18px 25px; cursor: pointer; box-shadow: 0 4px 6px rgba(0,0,0,0.02); transition: 0.3s; }
.faq-accordion details:hover { border-color: var(--accent); }
.faq-accordion summary { font-weight: 600; color: var(--primary); outline: none; list-style: none; position: relative; padding-right: 35px; font-size: 1.05rem; }
.faq-accordion summary::-webkit-details-marker { display: none; }
.faq-accordion summary::after { content: '+'; position: absolute; right: 0; top: 0; color: var(--secondary); font-size: 1.6rem; line-height: 1; font-weight: normal; }
.faq-accordion details[open] summary::after { content: '-'; color: var(--primary); }
.faq-accordion p { margin-top: 15px; color: var(--text-secondary); padding-top: 15px; border-top: 1px solid var(--border); line-height: 1.7; }

/* Mobilde Resim-Yazı Sıralaması (Mobilde resim her zaman üste çıksın) */

/* --- SABİT TELEFON BUTONU (SOL ALT) --- */
.phone-float {
    position: fixed; 
    bottom: 30px; 
    left: 30px; 
    background: var(--primary); /* Kurumsal Lacivert */
    color: var(--white); 
    padding: 12px 25px; 
    border-radius: 50px; 
    font-weight: 600; 
    box-shadow: 0 4px 15px rgba(0,0,0,0.3); 
    z-index: 1000; 
    display: flex; 
    align-items: center; 
    font-size: 1.1rem; 
    transition: 0.3s;
}

.phone-float:hover { 
    background: var(--accent); /* Hover durumunda turkuaz */
    color: var(--white); 
    transform: scale(1.05); 
}

/* Mobil Cihazlarda Sağlı-Sollu Butonların Ekrana Sığması İçin Daraltma */
@media (max-width: 576px) {
    .whatsapp-float, .phone-float {
        padding: 10px 15px;
        font-size: 0.9rem;
        bottom: 20px;
    }
    .whatsapp-float { right: 15px; }
    .phone-float { left: 15px; }
}

@media (max-width: 992px) {
    .layout-2col, .service-layout, .hero-content { grid-template-columns:1fr; flex-direction:column; }
    .hero-form, .sticky-form { width:100%; flex:auto; }
    .sticky-form { position:static; }
    .head-btn, .top-bar { display:none; }
    .menu-toggle { display:flex; }
    .nav-menu { display:none; width:100%; position:absolute; top:100%; left:0; background:var(--white); box-shadow:0 10px 15px rgba(0,0,0,0.1); padding:20px 0; border-top:1px solid var(--border); }
    .nav-menu.active { display:block; }
    .nav-menu ul { flex-direction:column; gap:15px; text-align:center; }
    .dropdown:hover .dropdown-content { display:none; }
    .dropdown.active .dropdown-content { display:flex; position:static; box-shadow:none; border:none; padding-left:20px; }
    .layout-2col .img-box { order: 1; margin-bottom: 20px; }
    .layout-2col .text-box { order: 2; }
}