/**
 * Site geneli responsive katmanı — tüm cihazlar
 * Breakpoints: 576 (sm), 768 (md), 992 (lg), 1200 (xl), 1400 (xxl)
 * Masaüstü yerleşimi: layout-restore.css (min-width: 992px)
 */

/* ---- Temel akış & taşma ---- */
img,
video,
iframe,
embed,
object {
    max-width: 100%;
}

table {
    width: 100%;
    max-width: 100%;
}

pre,
code {
    overflow-x: auto;
    word-break: break-word;
}

/* Ana sayfa tuvali yalnızca masaüstünde (mobilde boş scroll yok) */
@media (max-width: 991px) {
    .containers:has(.hero-slider) {
        min-height: 0 !important;
        height: auto !important;
    }

    .page-content {
        width: 100%;
        max-width: 100%;
        min-width: 0;
        overflow-x: clip;
    }

    /* Eski 700px menü kuralları mobile.css ile çakışmasın */
    .top-nav .menu {
        font-size: inherit;
        width: 100% !important;
    }

    .top-nav > .menu,
    .top-nav > #topNavMenu {
        display: none !important;
    }

    body:has(#menu-toggle:checked) #topNavMenu,
    #menu-toggle:checked ~ #topNavMenu,
    body.nav-menu-open #topNavMenu {
        display: flex !important;
    }

    #menu-toggle ~ .menu li,
    #menu-toggle:checked ~ .menu li {
        height: auto !important;
        min-height: 48px;
        max-height: none !important;
        padding: 0 !important;
        border: none !important;
    }

    /* Global ul li p — sol menü metnini gizlemesin */
    .side-nav ul li p,
    .side-nav.is-open ul li p {
        display: block !important;
        position: static !important;
        transform: none !important;
        top: auto !important;
        white-space: normal !important;
    }

    .containerlog {
        min-height: auto !important;
        padding: calc(var(--mobile-nav-h, 76px) + 24px) 16px 48px !important;
        margin-left: 0 !important;
        width: 100% !important;
        max-width: 100% !important;
        box-sizing: border-box;
    }

    /* İletişim / kayıt formları */
    .service-wrapper2 {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 0 12px 32px !important;
        display: block !important;
        box-sizing: border-box;
    }

    .service2 {
        width: 100%;
        max-width: 100%;
        align-items: stretch !important;
    }

    .service2 .cards2,
    .service2 .wrapper {
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        box-sizing: border-box;
    }

    .service2 .cards1 {
        grid-template-columns: 1fr !important;
        gap: 1rem !important;
        margin-top: 1.5rem !important;
    }

    .service2 h1 {
        font-size: clamp(1.5rem, 6vw, 2.25rem) !important;
    }

    /* Markalar */
    .brands-section {
        position: relative !important;
        min-height: 0 !important;
        width: 100% !important;
        padding: calc(var(--mobile-nav-h, 76px) + 16px) 16px 40px !important;
        box-sizing: border-box;
    }

    .brands-title {
        margin-top: 0 !important;
        font-size: clamp(1.35rem, 5vw, 2rem) !important;
    }

    .brand-grid {
        grid-template-columns: repeat(auto-fill, minmax(min(140px, 100%), 1fr)) !important;
        gap: 12px !important;
        padding: 0 4px;
    }

    /* Yasal sayfalar */
    .page-content-wrapper {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto;
        padding: calc(var(--mobile-nav-h, 76px) + 16px) max(16px, env(safe-area-inset-left)) 40px
            max(16px, env(safe-area-inset-right)) !important;
        box-sizing: border-box;
    }

    .page-glow-background::before,
    .page-glow-background::after {
        width: min(420px, 90vw) !important;
        height: min(420px, 90vw) !important;
    }

    .layout-grid {
        width: 100%;
        max-width: 100%;
        padding: 0;
    }

    .content-article {
        padding: clamp(1rem, 4vw, 1.5rem) !important;
    }

    /* Çözüm / landing mutlak konumları sıfırla */
    .landing-page,
    .landing-page2,
    .landing-page3:not(.partner-marquee) {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        padding: 16px 12px 32px !important;
        box-sizing: border-box;
        background: transparent !important;
        border: none !important;
        box-shadow: none !important;
        backdrop-filter: none !important;
        -webkit-backdrop-filter: none !important;
    }

    .landing-page3.partner-marquee {
        padding: 0 12px 0 !important;
        margin-bottom: 0 !important;
    }

    .page-content:has(.mobile-home-hero) .middle8 {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        right: auto !important;
        width: 100% !important;
        height: auto !important;
        min-height: 0 !important;
        max-height: none !important;
        margin: 20px 0 6px !important;
        padding: 8px 18px 4px !important;
        background: transparent !important;
        box-shadow: none !important;
        border-radius: 0 !important;
    }

    .landing-page h1,
    .landing-page2 h1 {
        font-size: clamp(1.35rem, 5vw, 2rem) !important;
    }

    /* Profil — dar ortalanmış kartlar */
    .page-content:has(#mt-profile-root),
    .page-content:has(.profile-page) {
        display: flex !important;
        flex-direction: column !important;
        align-items: center !important;
    }

    .page-content > #mt-profile-root,
    .page-content > .profile-page {
        width: min(620px, calc(100% - 32px)) !important;
        max-width: 620px !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }

    /* Blog — yatay kart (görsel solda) */
    .blog-page {
        padding-left: max(12px, env(safe-area-inset-left, 0px)) !important;
        padding-right: max(12px, env(safe-area-inset-right, 0px)) !important;
    }

    .blog-page .blog-list .blog-item {
        flex-direction: row !important;
    }

    .blog-page .blog-list .blog-image {
        height: 100% !important;
        width: 100% !important;
    }

    .containerb:not(.blog-page) {
        position: relative !important;
        top: auto !important;
        left: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: calc(var(--mobile-nav-h, 76px) + 16px) 16px 48px !important;
        box-sizing: border-box;
        gap: 1.5rem !important;
    }

    /* Çözüm sayfası hero */
    .hero-section {
        min-height: min(75dvh, 720px) !important;
        padding: calc(var(--mobile-nav-h, 76px) + 24px) 16px 40px !important;
        background-size: cover !important;
        background-position: center !important;
    }

    .hero-overlay {
        padding: clamp(20px, 4vw, 32px) !important;
        max-width: 100% !important;
    }

    .hero-overlay h1 {
        font-size: clamp(1.35rem, 5vw, 2rem) !important;
    }

    .payment-page-container {
        position: relative !important;
        top: auto !important;
        width: 100% !important;
        max-width: 100% !important;
        padding: calc(var(--mobile-nav-h, 76px) + 24px) 16px 40px !important;
        min-height: auto !important;
        box-sizing: border-box;
    }

    /* KVKK / aydınlatma ortalanmış blok */
    .page-content > div[style*="left: 50%"],
    .page-content > .wrapper-center {
        position: relative !important;
        left: auto !important;
        transform: none !important;
        width: 100% !important;
        max-width: 100% !important;
        margin: 0 auto !important;
        padding: 16px !important;
        box-sizing: border-box;
    }

    /* Sepet / ödeme inline main */
    main[style*="max-width"] {
        max-width: min(720px, 100%) !important;
        margin-left: auto !important;
        margin-right: auto !important;
        padding-left: max(16px, env(safe-area-inset-left)) !important;
        padding-right: max(16px, env(safe-area-inset-right)) !important;
        box-sizing: border-box;
    }
}

@media (max-width: 767px) {
    /* ürün grid: products-list.css */
}

@media (max-width: 576px) {
    .page-content:not(:has(.hero-slider)) {
        padding-left: max(12px, env(safe-area-inset-left)) !important;
        padding-right: max(12px, env(safe-area-inset-right)) !important;
    }

    .products-page {
        padding-left: 12px !important;
        padding-right: 12px !important;
    }

    .brand-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
    }
}

/* ---- Tablet yatay (768–991) ---- */
@media (min-width: 768px) and (max-width: 991px) {
    .page-content:not(:has(.hero-slider)) {
        padding-left: max(20px, env(safe-area-inset-left)) !important;
        padding-right: max(20px, env(safe-area-inset-right)) !important;
    }

    .service-wrapper2 {
        max-width: min(560px, 100%) !important;
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* ---- Küçük masaüstü / sidebar açık alan (992–1199) ---- */
@media (min-width: 992px) and (max-width: 1199px) {
    .top-nav {
        left: 100px !important;
        max-width: calc(100vw - 112px) !important;
    }

    .containers:has(.side-nav:hover) .top-nav,
    .containers:has(.side-nav.is-flyout-active) .top-nav {
        left: 320px !important;
        max-width: calc(100vw - 332px) !important;
    }

    .page-content {
        padding-left: 96px !important;
    }

    .products-page {
        max-width: calc(100vw - 120px);
        padding: 80px 20px 40px;
    }

    .slidings .text-box {
        width: min(62%, 680px) !important;
    }
}

/* ---- Geniş masaüstü (1200+) ---- */
@media (min-width: 1200px) {
    .site-footer__inner {
        padding-left: 32px;
        padding-right: 32px;
    }
}

/* ---- Çok geniş ekran ---- */
@media (min-width: 1400px) {
    .site-footer__inner,
    .products-page {
        max-width: 1400px;
    }

    .products-page {
        margin-left: auto;
        margin-right: auto;
    }
}

/* ---- Dokunma hedefleri ---- */
@media (hover: none) and (pointer: coarse) {
    button:not(.mh-line),
    .menu-button-container,
    .m-menu-logo,
    .hero-slider__dot,
    .footer-newsletter__submit,
    .cookie-buttons .cookie-btn {
        min-height: 44px;
    }

    .top-nav .menu > li a {
        min-height: 48px;
    }

    .menu-button-container {
        min-height: 48px;
        min-width: 48px;
    }
}

/* ---- Yatay telefon ---- */
@media (max-width: 991px) and (max-height: 500px) and (orientation: landscape) {
    .slidings.hero-slider {
        min-height: 100dvh !important;
        height: 100dvh !important;
    }

    .slidings .text-box {
        padding-bottom: calc(48px + env(safe-area-inset-bottom)) !important;
    }

    .slidings .text-box h1 {
        font-size: 1.1rem !important;
    }

    .hero-slider__dots {
        bottom: calc(12px + env(safe-area-inset-bottom, 0px)) !important;
    }
}

/* ---- Baskı ---- */
@media print {
    .top-nav,
    .side-nav,
    .m-menu-logo,
    .mobile-nav-overlay,
    .hex-grid,
    #cookie-popup,
    .menu-button-container {
        display: none !important;
    }

    .page-content,
    .products-page {
        padding: 0 !important;
    }
}
