/* ==========================================================================
   06 — DUYARLI YERLEŞİM
   Tüm kırılma noktaları tek dosyada
   ========================================================================== */

/* --------------------------------------------------------------------------
   ≤ 1050px — masaüstü navigasyon yerini mobil menüye bırakır
   -------------------------------------------------------------------------- */
@media (max-width: 1050px) {

    .navlinks,
    .navacts {
        display: none;
    }

    .menu-toggle {
        display: inline-flex;
    }

    .trust,
    .contact {
        grid-template-columns: 1fr;
    }

    .steps {
        grid-template-columns: repeat(2, 1fr);
    }

    .footer {
        grid-template-columns: 1fr 1fr;
    }

    .contact-info h2 {
        font-size: 36px;
    }
}

/* --------------------------------------------------------------------------
   ≤ 780px — tablet / büyük telefon
   -------------------------------------------------------------------------- */
@media (max-width: 780px) {

    .top {
        display: none;
    }

    header.site-header {
        top: 0;
    }

    html {
        scroll-padding-top: 92px;
    }

    .logo img {
        height: 40px;
    }

    .hero {
        min-height: 930px;
    }

    /* Telefonda dikey kırpım kullanılıyor; odak yüzlerin olduğu üst bölge */
    .hero-media img {
        object-position: center 30%;
    }

    .hero-content {
        padding: 135px 0 285px;
    }

    .stats {
        grid-template-columns: 1fr 1fr;
    }

    .stat:nth-child(2) {
        border-right: 0;
    }

    .stat:nth-child(-n+2) {
        border-bottom: 1px solid var(--line);
    }

    .services {
        grid-template-columns: repeat(2, 1fr);
    }

    .service-image {
        aspect-ratio: 4 / 3;
        min-height: 200px;
    }

    .section-head {
        display: block;
        margin-bottom: 24px;
    }

    .section-head .btn {
        margin-top: 22px;
    }

    .filters {
        width: 100%;
        flex-wrap: nowrap;
        overflow-x: auto;
        overflow-y: hidden;
        padding: 7px;
        margin-bottom: 28px;
        scrollbar-width: none;
        -webkit-overflow-scrolling: touch;
    }

    .filters::-webkit-scrollbar {
        display: none;
    }

    .filter-btn {
        flex: 0 0 auto;
        white-space: nowrap;
    }

    .cta {
        grid-template-columns: 1fr;
    }

    /* Sabit alt CTA çubuğu yalnızca mobilde */
    .mobile-cta {
        display: flex;
    }

    /* Çubuğun footer içeriğini kapatmaması için */
    body {
        padding-bottom: 74px;
    }
}

/* --------------------------------------------------------------------------
   ≤ 560px — telefon
   -------------------------------------------------------------------------- */
@media (max-width: 560px) {

    section {
        padding: 78px 0;
    }

    h1 {
        font-size: 48px;
    }

    .hero {
        min-height: 980px;
    }

    .actions {
        display: grid;
    }

    .actions .btn {
        width: 100%;
    }

    .services,
    .steps,
    .checks,
    .form {
        grid-template-columns: 1fr;
    }

    .service-image {
        aspect-ratio: 16 / 9;
        min-height: 0;
    }

    .service-content p {
        min-height: 0;
    }

    .card {
        min-height: auto;
    }

    .photos {
        min-height: 470px;
    }

    .photos .main {
        width: 100%;
        height: 405px;
    }

    .photos .small {
        height: 190px;
    }

    .badge {
        width: 105px;
        height: 105px;
        font-size: 12px;
        right: 8px;
        border-width: 6px;
    }

    .contact-info,
    .form {
        padding: 26px;
    }

    .cta {
        padding: 32px;
    }

    .footer {
        grid-template-columns: 1fr;
    }

    .bottom {
        display: block;
    }

    .full {
        grid-column: auto;
    }
}
