/*
 * Grinding Ball Insights — SAFE layout layer (1.0.6)
 *
 * Do not control Elementor section/container width here. The page was built in
 * Elementor and its own container/background geometry must remain the source of
 * truth. This stylesheet only prevents common responsive breakage and improves
 * long-form readability without flattening the design.
 */

body.gygb-insights-page {
    --gygb-insights-ink: #142a5c;
    --gygb-insights-text: #3f4b5d;
    --gygb-insights-muted: #697386;
    --gygb-insights-line: #e4e9ef;
}

body.gygb-insights-page #page,
body.gygb-insights-page #content,
body.gygb-insights-page .site-content,
body.gygb-insights-page .content-area,
body.gygb-insights-page main,
body.gygb-insights-page .entry-content {
    overflow-x: clip;
}

/* Never force Elementor containers into a site-wide reading width. */
body.gygb-insights-page .elementor,
body.gygb-insights-page .e-con,
body.gygb-insights-page .elementor-section,
body.gygb-insights-page .elementor-container,
body.gygb-insights-page .elementor-column,
body.gygb-insights-page .elementor-widget-wrap {
    min-width: 0;
}

/* Long-form copy: preserve Elementor spacing/width, only improve text flow. */
body.gygb-insights-page .elementor-widget-text-editor,
body.gygb-insights-page .elementor-widget-text-editor p,
body.gygb-insights-page .elementor-widget-text-editor li {
    overflow-wrap: break-word;
    word-break: normal;
}

body.gygb-insights-page .elementor-widget-text-editor p,
body.gygb-insights-page .elementor-widget-text-editor li {
    line-height: 1.72;
}

body.gygb-insights-page .elementor-widget-text-editor p:last-child {
    margin-bottom: 0;
}

body.gygb-insights-page .elementor-heading-title {
    overflow-wrap: break-word;
    word-break: normal;
}

/* Media must never overflow, but retain the size/alignment Elementor selected. */
body.gygb-insights-page .elementor-widget-image img,
body.gygb-insights-page .wp-caption img,
body.gygb-insights-page .elementor-widget-video video,
body.gygb-insights-page .elementor-widget-video iframe,
body.gygb-insights-page img {
    max-width: 100%;
}

body.gygb-insights-page .elementor-widget-image img,
body.gygb-insights-page .wp-caption img,
body.gygb-insights-page img {
    height: auto;
}

body.gygb-insights-page .wp-caption {
    max-width: 100%;
}

body.gygb-insights-page .wp-caption-text,
body.gygb-insights-page figcaption {
    overflow-wrap: break-word;
}

/* Keep technical tables usable on narrow screens without changing desktop. */
body.gygb-insights-page .elementor-widget-text-editor table {
    max-width: 100%;
}

body.gygb-insights-page .elementor-widget-accordion .elementor-accordion-item,
body.gygb-insights-page .elementor-widget-toggle .elementor-toggle-item {
    max-width: 100%;
}

html[dir="rtl"] body.gygb-insights-page .elementor-widget-text-editor,
body.rtl.gygb-insights-page .elementor-widget-text-editor {
    text-align: start;
}

@media (max-width: 767px) {
    body.gygb-insights-page .elementor-widget-text-editor p,
    body.gygb-insights-page .elementor-widget-text-editor li {
        line-height: 1.68;
    }

    body.gygb-insights-page .elementor-widget-text-editor table {
        display: block;
        width: 100%;
        overflow-x: auto;
        -webkit-overflow-scrolling: touch;
    }

    body.gygb-insights-page .elementor-widget-text-editor table th,
    body.gygb-insights-page .elementor-widget-text-editor table td {
        white-space: nowrap;
    }
}
