.hero-item {
    $this: &;

    @include relative;

    display: grid;
    grid-template-columns: 1fr;
    min-height: 476px;
    height: 100%;

    &::after {
        @include size(100%, 90%);
        @include absolute(null, null, 0, 0);

        background: linear-gradient(180deg, transparent 0%, var(--rocket-color-black-base) 100%);
        content: '';
        opacity: 1;
        z-index: 2;
        mix-blend-mode: multiply;
    }

    &__media-wrapper,
    &__media {
        @include size(100%);

        display: block;
        margin: 0;
    }

    &__media-caption {
        position: absolute;
        bottom: 1rem;
        right: 1rem;
        color: var(--rocket-color-white-base);
        text-shadow: 1.5px 1.5px 2px var(--rocket-color-black-base);
        font-family: var(--rocket-font-tertiary);
        font-size: 0.875rem;
        font-weight: 300;
        z-index: 5;
        max-width: calc(100% - 2rem);
    }

    &__media-image,
    &__media-video {
        @include object-fit;
        @include size(100%);

        max-height: 1070px;

        &:is(img) {
            object-position: top;
            height: 100%;

            @include breakpoint(md) {
                height: auto;
            }
        }
    }

    &__container {
        @extend %container;
        @extend %container--xl;
        @include absolute(null, null, 70px, 50%);

        transform: translateX(-50%);
        z-index: 5;

        @include breakpoint(xxl) {
            bottom: 120px;
        }

        .title {
            font-size: 2.375rem;
            font-weight: 400;
            max-width: 660px;
            text-shadow: 1.5px 1.5px 2px var(--rocket-color-black-base);

            @include breakpoint(md) {
                font-size: 3rem;
            }

            @include breakpoint(lg) {
                font-size: 5rem;
                max-width: 870px;
            }
        }
    }

    &__container-inner {
        display: inline-block;
    }

    &__action {
        @include transition;

        align-items: center;
        color: var(--rocket-color-white-base);
        column-gap: 12px;
        display: flex;
        font-family: var(--rocket-font-primary);
        font-weight: 400;
        font-size: 1.2rem;
        margin-top: 10px;
        text-shadow: 1.5px 1.5px 2px var(--rocket-color-black-base);

        @include breakpoint(lg) {
            font-size: 1.5rem;
            margin-top: 35px;
        }

        @include event {
            #{$this}__action-icon {
                transform: translateX(10px);
            }
        }
    }

    &__action-icon {
        @include transition;

        svg {
            fill: var(--rocket-color-white-base);
        }
    }
}
