html {
    overflow-x: clip;
    max-width: 100%;
}

/* MOBİL / TABLET */
@media (max-width: 1023px) {
    body {
        width: 100%;
        max-width: 100%;
        overflow-x: clip;
    }

    .header-sarmal,
    .ana-header,
    .ana-icerik,
    main,
    .bolum,
    .bolum-krem,
    .bolum-koyu,
    .ana-footer,
    .footer-ust,
    .footer-govde {
        max-width: 100%;
        min-width: 0;
    }

    /* Full-bleed slider üst kabuk — taşmayı içeride tut */
    :is(.bolum, .bolum-krem, .bolum-koyu) > .kapsayici {
        overflow-x: clip;
        isolation: isolate;
    }

    /* Yatay kaydırma alanları body genişletmesin */
    :is(
        .anasayfa-slider,
        .anasayfa-yorum-slider,
        .anasayfa-galeri-slider,
        .anasayfa-ig-galeri-slider,
        .anasayfa-ig-galeri-kapsul,
        .icerik-gutter-genislet,
        .lezzet-filtreler,
        .menu-filtreler
    ) {
        max-width: 100%;
        box-sizing: border-box;
    }

    :is(
        .anasayfa-slider-iz,
        .anasayfa-ig-galeri-iz,
        .lezzet-filtreler,
        .menu-filtreler
    ) {
        max-width: 100%;
    }

    .anasayfa-slider-spur {
        max-width: none;
    }

    /* Hero video — 100vw yerine % (hero.css ile uyumlu) */
    .hero,
    .hero-video-wrapper,
    .hero-video {
        overflow: hidden;
        max-width: 100%;
    }

    .hero-metin,
    .hero-icerik {
        max-width: 100%;
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .hero-marka-ad {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    /* Grid / flex çocukları */
    :is(
        .header-ic,
        .footer-govde,
        .footer-orta-grid,
        .footer-iletisim-band,
        .footer-menu-cift,
        .kesfet-lokasyon-grid,
        .lezzet-katalog-grid,
        .iletisim-duzen,
        .iki-kolon,
        .kolon-metin,
        .sayfa-baslik-govde,
        .ic-link-grid,
        .misafirler-reels-grid
    ) {
        min-width: 0;
        max-width: 100%;
    }

    :is(
        .header-ic,
        .footer-orta-grid,
        .footer-iletisim-band,
        .kesfet-lokasyon-grid,
        .lezzet-katalog-grid,
        .iletisim-duzen,
        .iki-kolon
    ) > * {
        min-width: 0;
    }

    /* Uzun metin / URL */
    :is(p, h1, h2, h3, h4, h5, h6, li, dd, dt, a, span, strong, blockquote, figcaption, label, td, th) {
        overflow-wrap: anywhere;
        word-break: break-word;
    }

    .footer-adres-link,
    .footer-tel-link,
    .iletisim-meta a {
        word-break: break-word;
    }

    /* Medya embed */
    :is(iframe, video, embed, object, svg, canvas, picture) {
        max-width: 100%;
    }

    .iletisim-harita-cerceve,
    .harita-onizleme,
    .harita-tam {
        max-width: 100%;
        overflow: hidden;
    }

    .iletisim-harita-cerceve iframe,
    .harita-onizleme iframe,
    .harita-tam iframe {
        width: 100%;
        max-width: 100%;
    }

    /* Modal / dialog genişlik sınırı */
    :is(
        .kesfet-lokasyon-modal-panel,
        .misafirler-reel-modal-panel,
        .ig-reel-modal-ic,
        .ahk-video-modal,
        .hakkimizda-video-modal,
        dialog.hakkimizda-lightbox
    ) {
        max-width: min(100%, calc(100% - 2rem));
        box-sizing: border-box;
    }

    .hdr-cekmece:not(.hdr-mobil-menu) {
        max-width: min(calc(100% - 1rem), 340px);
    }

    /* Negatif konumlu rozetler — taşmayı kes */
    .gorsel-cerceve {
        overflow: hidden;
    }

    /* Anasayfa hakkımızda kart şeridi — tablet overlap */
    .ahk-serit-wrap {
        overflow-x: clip;
    }

    /* Tablo taşması */
    table {
        display: block;
        max-width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    /* Negatif konumlu rozetler */
    .gorsel-rozet {
        right: 0;
    }

    /* Header logo — dar ekranda taşma */
    .hdr-marka,
    .hdr-marka-metin,
    .hdr-marka-baslik {
        min-width: 0;
        overflow-wrap: anywhere;
    }

    .hdr-marka-gorsel {
        max-width: 100%;
        object-fit: contain;
    }

    /* Form elemanları */
    :is(input, select, textarea, button) {
        max-width: 100%;
    }

    .form-grup,
    .iletisim-form-kolon {
        min-width: 0;
        max-width: 100%;
    }

    /* Pre/code taşması */
    pre, code {
        max-width: 100%;
        overflow-x: auto;
        white-space: pre-wrap;
        word-break: break-word;
    }
}

/* Container query fallback — eski tarayıcılar */
@supports not (container-type: inline-size) {
    @media (max-width: 767px) {
        body.sayfa-anasayfa .anasayfa-yorum-kart {
            flex: 0 0 clamp(16.25rem, 88%, 21.25rem);
            max-width: 340px;
        }

        body.sayfa-anasayfa .anasayfa-galeri-kart {
            flex: 0 0 clamp(15rem, 82%, 18.75rem);
            max-width: 300px;
        }
    }
}

/* 320px — ekstra dar */
@media (max-width: 320px) {
    .hero-marka-ad {
        font-size: clamp(3rem, 18vw, 3.75rem);
    }

    .kapsayici,
    .kapsayici-header {
        padding-inline: max(12px, env(safe-area-inset-left, 0px)) max(12px, env(safe-area-inset-right, 0px));
    }

    body.sayfa-lezzetler .lezzet-filtre {
        font-size: 0.7rem;
        padding-inline: 0.65rem;
    }
}

/* Footer mobil — grid yerleşimi ve ortalama (son katman) */
@media (max-width: 767px) {
    .ana-footer .footer-sutun--menu {
        grid-column: 1;
        grid-row: 1;
    }

    .ana-footer .footer-sutun--kurumsal {
        grid-column: 2;
        grid-row: 1;
    }

    .ana-footer .footer-sutun--cta {
        grid-column: 1 / -1;
        grid-row: 2;
    }

    .ana-footer .footer-alt-band {
        align-items: center;
        text-align: center;
    }

    .ana-footer .footer-yazilimci {
        margin: 0 auto !important;
    }
}
