/* Shared Elementor sections: every mount consumes the global compact spacing token. */
html body .elementor-45359 > .elementor-element.elementor-element-2292cac,
html body .elementor-45360 > .elementor-element.elementor-element-6b474190,
html body .elementor-45389 > .elementor-element.cie-global-google-reviews,
html body.single-solution .elementor-location-single .elementor-element.elementor-element-19bcc9f,
html body .elementor-1520 > .elementor-element.elementor-element-fe641c3 {
    --padding-top: var(--cie-section-padding-block-compact, clamp(36px, 3.125vw, 60px)) !important;
    --padding-bottom: var(--cie-section-padding-block-compact, clamp(36px, 3.125vw, 60px)) !important;
}

/* Override legacy rules that write directly to the boxed inner rail. */
html body .elementor-45359 > .elementor-element.elementor-element-2292cac > .e-con-inner,
html body .elementor-45360 > .elementor-element.elementor-element-6b474190 > .e-con-inner,
html body .elementor-45389 > .elementor-element.cie-global-google-reviews > .e-con-inner,
html body.single-solution .elementor-location-single .elementor-element.elementor-element-19bcc9f > .e-con-inner,
html body .elementor-1520 > .elementor-element.elementor-element-fe641c3 > .e-con-inner {
    padding-block: var(--cie-section-padding-block-compact, clamp(36px, 3.125vw, 60px)) !important;
}

/* The contact section owns the single white gap before the shared resource hub.
 * Other resource-hub mounts keep their existing global top/bottom spacing. */
html body .elementor-1520 > .elementor-element-0f07936 .elementor-3463 > .elementor-element-852da06 {
    --padding-top: 0px !important;
    padding-top: 0 !important;
}

/* Shared experts rail reaches the right edge; retain the existing left content gutter. */
html body .elementor-45360 > .elementor-element.elementor-element-6b474190 {
    padding-inline: 0 !important;
}
html body .elementor-45360 > .elementor-element.elementor-element-6b474190 > .e-con-inner {
    width: 100% !important;
    max-width: none !important;
    margin-inline: 0 !important;
    padding-inline-start: max(var(--padding-left, 0px), calc((100% - var(--container-max-width, 1650px)) / 2)) !important;
    padding-inline-end: 0 !important;
}
html body .elementor-45360 .elementor-element-4280846b {
    min-width: 0;
}

/* Layout-only mounts must not reintroduce a gutter around the shared section. */
html body #page .elementor .e-con:has(> .elementor-widget-template .elementor-45360) {
    --padding-left: 0px !important;
    --padding-right: 0px !important;
    padding-inline: 0 !important;
    min-width: 0;
}

/* Hide the entire shared Google reviews mount on every single solution page. */
html body.single-solution .elementor-widget-template:has(> .elementor-widget-container > .elementor-template > .elementor-45389) {
    display: none !important;
}

/* Shared expert heading and controls use the global gutter through tablet size. */
@media (max-width: 1024px) {
    html body .elementor-45360 > .elementor-element.elementor-element-6b474190 > .e-con-inner {
        flex-direction: column !important;
        padding-inline-start: var(--cie-section-padding-inline, clamp(20px, 4.167vw, 80px)) !important;
    }
    html body .elementor-45360 .elementor-element-343e0257,
    html body .elementor-45360 .elementor-element-4280846b {
        --width: 100%;
        width: 100% !important;
        max-width: 100%;
        flex-basis: auto !important;
    }
    html body .elementor-45360 .elementor-element-343e0257 {
        padding-inline-end: var(--cie-section-padding-inline, clamp(20px, 4.167vw, 80px)) !important;
        box-sizing: border-box;
    }
}
