/* Approved 2026-10-27. Local English pages only; existing imagery and controls stay native.
 * Keep the visible desktop height aligned with Home's 1440:380 rule.
 * Service and Solutions start below the fixed header; the other three Banners include its space.
 */
@media (min-width: 1025px) {
    body.page-id-4917,
    body.page-id-16649,
    body.page-id-1702,
    body.page-id-1628,
    body.page-id-16624 {
        --gato-page-banner-height: max(360px, 26.3889vw);
        --gato-page-banner-header: 70px;
    }

    body.page-id-4917 .elementor-4917 .elementor-element.elementor-element-74745cd,
    body.page-id-1702 .elementor-1702 .elementor-element.elementor-element-1c945c7,
    body.page-id-1628 .elementor-1628 .elementor-element.contact-page-hero {
        --min-height: 0px;
        --padding-top: 0px;
        --padding-bottom: 0px;
        box-sizing: border-box;
        height: calc(var(--gato-page-banner-header) + var(--gato-page-banner-height));
        min-height: 0;
        margin-top: 0;
        padding: 0 40px;
        background-attachment: scroll;
    }

    body.page-id-4917 .elementor-4917 .elementor-element-74745cd > .e-con-inner,
    body.page-id-1702 .elementor-1702 .elementor-element-1c945c7 > .e-con-inner,
    body.page-id-1628 .elementor-1628 .contact-page-hero > .e-con-inner {
        --min-height: 0px;
        box-sizing: border-box;
        height: 100%;
        min-height: 0;
        padding: var(--gato-page-banner-header) 0 0;
        justify-content: center;
    }

    body.page-id-4917 .elementor-4917 .elementor-element-74745cd {
        background-position: center 46%;
    }
    body.page-id-4917 .elementor-4917 .elementor-element.elementor-element-482705b .elementor-heading-title {
        font-size: 48px;
        line-height: 1.2;
    }
    body.page-id-4917 .elementor-4917 .elementor-element-a87ed2c {
        row-gap: 18px;
    }

    body.page-id-1702 .elementor-1702 .elementor-element-1c945c7 {
        background-position: center 55%;
    }
    body.page-id-1702 .elementor-1702 .elementor-element.elementor-element-773f43e .elementor-heading-title {
        max-width: 22ch;
        margin-inline: auto;
        color: #fff;
        font-size: 52px;
        line-height: 1.25;
    }

    body.page-id-1628 .elementor-1628 .elementor-element.contact-page-hero {
        background-position: center 48%;
    }
    body.page-id-1628 .elementor-1628 .contact-page-hero > .e-con-inner {
        gap: 16px;
    }
    body.page-id-1628 .elementor.elementor-1628 .elementor-element.contact-page-hero h1.elementor-heading-title {
        font-size: 48px;
        line-height: 1.25;
    }

    body.gato-service-v1-page .gsv-root .gsv-hero {
        box-sizing: border-box;
        height: var(--gato-page-banner-height);
        min-height: 0;
        padding: 28px 0;
        justify-content: center;
    }
    body.gato-service-v1-page .gsv-root .gsv-hero > .gsv-inner {
        height: auto;
        justify-content: center;
    }
    body.gato-service-v1-page .gsv-root .gsv-hero h1.elementor-heading-title {
        font-size: 42px;
        line-height: 1.15;
    }
    body.gato-service-v1-page .gsv-root .gsv-hero .gsv-hero-intro {
        margin-top: 18px;
        font-size: 17px;
        line-height: 1.55;
    }
    body.gato-service-v1-page .gsv-root .gsv-hero .gsv-request {
        margin-top: 20px;
    }
    body.gato-service-v1-page .gsv-root .gsv-hero::after {
        background-position: right 22%;
    }
    body.gato-service-v1-page .gsv-root .gsv-nav {
        margin-top: 24px;
    }

    /* Solutions joins the same desktop height rule; keep its original copy and SVG. */
    body.page-id-16624 .gato-solution-hub-v1 .elementor-element.gato-sh-hero {
        box-sizing: border-box;
        height: var(--gato-page-banner-height);
        min-height: 0;
    }
    body.page-id-16624 .gato-solution-hub-v1 .elementor-element.gato-sh-hero-inner {
        box-sizing: border-box;
        height: 100%;
        min-height: 0;
        grid-template-columns: minmax(0, 1fr) minmax(0, clamp(300px, 25vw, 420px));
        gap: 40px;
        padding-top: 32px;
        padding-bottom: 32px;
        align-items: center;
    }
    body.page-id-16624 .gato-solution-hub-v1 .gato-sh-hero h1.elementor-heading-title {
        font-size: clamp(36px, 3.2vw, 42px);
        line-height: 1.15;
        letter-spacing: -.9px;
    }
    body.page-id-16624 .gato-solution-hub-v1 .gato-sh-hero .gato-sh-eyebrow {
        margin-bottom: 12px;
    }
    body.page-id-16624 .gato-solution-hub-v1 .gato-sh-hero .gato-sh-hero-description {
        max-width: 620px;
        margin-top: 16px;
        font-size: 17px;
        line-height: 1.55;
    }
    body.page-id-16624 .gato-solution-hub-v1 .gato-sh-hero .gato-sh-project {
        margin-top: 18px;
    }
    body.page-id-16624 .gato-solution-hub-v1 .gato-sh-hero .gato-sh-project .elementor-button {
        min-height: 48px;
        padding: 12px 22px;
        font-size: 14px;
        line-height: 1.5;
    }
    body.page-id-16624 .gato-solution-hub-v1 .gato-sh-hero .gato-sh-diagram img {
        display: block;
        width: auto;
        height: auto;
        max-width: 100%;
        max-height: min(420px, calc(var(--gato-page-banner-height) - 64px));
        margin-inline: auto;
        object-fit: contain;
    }
}

/* The original Elementor text widget is now a child of the service navigation.
 * Preserve its full text and editability at every width; small-screen height stays automatic.
 */
body.gato-service-v1-page .gsv-root .gsv-nav > .gsv-hero-detail {
    width: 100%;
    max-width: none;
    margin: 0 0 20px;
    color: #526777;
    font-size: 14px;
    line-height: 1.65;
}
