/*
 * Compact hero spacing restoration.
 *
 * The base redesign contract uses generous page padding and a centered copy
 * column. This final production layer restores the previous compact rhythm:
 * copy starts near the top edge of its own hero frame, while the artwork keeps
 * its full column and bottom alignment. Mobile rules remain owned by 105.
 */

@media (min-width: 992px) {
    html body .copp-hero__inner {
        align-items: stretch !important;
        box-sizing: border-box !important;
        padding: 0 clamp(28px, 7vw, 108px) !important;
    }

    html body .copp-hero__copy {
        align-self: flex-start !important;
        justify-content: flex-start !important;
        padding-block-start: clamp(20px, 2vw, 28px) !important;
    }

    html body :is(.copp-news-hero, .copp-gallery-hero) > :is(
        .copp-news-hero__inner,
        .copp-gallery-hero__inner
    ) {
        align-items: stretch !important;
        box-sizing: border-box !important;
        padding: 20px clamp(28px, 7vw, 108px) 24px !important;
    }

    html body :is(
        .copp-news-hero__copy,
        .copp-gallery-hero__copy
    ) {
        align-self: flex-start !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        padding-block: 0 !important;
    }

    html body :is(
        .copp-news-hero__media,
        .copp-gallery-hero__media
    ) {
        align-self: stretch !important;
        height: 100% !important;
        min-height: 0 !important;
    }

    html body :is(
        .copp-news-hero__media > img,
        .copp-gallery-hero__media > img,
        .copp-gallery-hero__frame
    ) {
        height: 100% !important;
        min-height: 0 !important;
        object-position: center bottom !important;
    }
}

@media (min-width: 768px) and (max-width: 991.98px) {
    html body .copp-hero__inner {
        box-sizing: border-box !important;
        padding: 20px 32px 32px !important;
    }

    html body .copp-hero__copy {
        align-self: flex-start !important;
        justify-content: flex-start !important;
        padding-block-start: 0 !important;
    }

    html body :is(.copp-news-hero, .copp-gallery-hero) > :is(
        .copp-news-hero__inner,
        .copp-gallery-hero__inner
    ) {
        padding: 20px 32px 36px !important;
    }

    html body :is(
        .copp-news-hero__copy,
        .copp-gallery-hero__copy
    ) {
        align-self: flex-start !important;
        justify-content: flex-start !important;
        min-height: 0 !important;
        padding-block: 0 !important;
    }
}
