/*
 * Element Creats Responsive Fix
 * Amaç: Elementor + özel HTML bloklarının mobilde viewport dışına taşıp
 * sayfayı masaüstü genişliğine zorlamasını engellemek.
 */

html,
body {
    max-width: 100%;
}

/* Modern tarayıcılarda yatay taşmayı layout'u bozmadan kırp. */
@supports (overflow: clip) {
    html,
    body {
        overflow-x: clip;
    }
}

/* Eski Safari / tarayıcı fallback */
@supports not (overflow: clip) {
    html,
    body {
        overflow-x: hidden;
    }
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

img,
picture,
video,
canvas,
svg {
    max-width: 100%;
    height: auto;
}

iframe,
embed,
object {
    max-width: 100%;
}

/* Flex/Grid çocuklarının min-content yüzünden viewport'u büyütmesini önler. */
.elementor,
.elementor-section,
.elementor-container,
.elementor-column,
.elementor-widget,
.elementor-widget-wrap,
.elementor-widget-container,
.e-con,
.e-con-inner,
.e-grid,
.elementor-widget-html {
    min-width: 0;
}

/* Sadece tablet/mobil. Masaüstü tasarımına müdahaleyi minimumda tutar. */
@media (max-width: 1024px) {
    html,
    body,
    #page,
    #content,
    .site,
    .site-content,
    .elementor,
    .elementor-section,
    .elementor-container,
    .elementor-column,
    .elementor-widget,
    .elementor-widget-wrap,
    .elementor-widget-container,
    .e-con,
    .e-con-inner {
        max-width: 100%;
    }

    /*
     * JS yalnızca gerçekten viewport'u aşan özel HTML widget'larını işaretler.
     * Böylece bütün HTML tasarımlarına körlemesine max-width uygulanmaz.
     */
    .elementor-widget-html.ec-rf-overflow-widget,
    .elementor-widget-html.ec-rf-overflow-widget > .elementor-widget-container {
        max-width: 100% !important;
        min-width: 0 !important;
        overflow-x: clip !important;
    }

    .elementor-widget-html .ec-rf-overflow-element {
        max-width: 100% !important;
        min-width: 0 !important;
    }

    /* Sabit genişlikte medya ve tablolar */
    .elementor-widget-html img,
    .elementor-widget-html video,
    .elementor-widget-html iframe,
    .elementor-widget-html svg,
    .elementor-widget-html canvas {
        max-width: 100% !important;
    }

    .elementor-widget-html table {
        max-width: 100%;
    }

    /* Uzun URL / tek parça metinlerin sayfayı genişletmesini önler. */
    .elementor-widget-html p,
    .elementor-widget-html a,
    .elementor-widget-html span,
    .elementor-widget-html h1,
    .elementor-widget-html h2,
    .elementor-widget-html h3,
    .elementor-widget-html h4,
    .elementor-widget-html h5,
    .elementor-widget-html h6 {
        overflow-wrap: anywhere;
    }
}

/* Telefonlarda biraz daha güçlü koruma. */
@media (max-width: 767px) {
    .elementor-widget-html.ec-rf-overflow-widget {
        width: 100% !important;
    }

    .ec-rf-force-viewport {
        max-width: 100vw !important;
        min-width: 0 !important;
    }
}
