.c3-gsap--image-grow.c3-gsap--ready {
    min-height: 100vh;
    overflow: visible;
    padding: 0;
}

.c3-gsap--image-grow.c3-gsap--ready .c3-gsap--image-grow-inner,
.c3-gsap--image-grow.c3-gsap--ready .c3-motion__image-grow-stage {
    width: 100vw;
    max-width: none;
}

.c3-gsap--image-grow.c3-gsap--ready .c3-gsap--image-grow-inner {
    height: 100vh !important;
    height: 100dvh !important;
    justify-content: flex-start;
    margin-inline: calc(50% - 50vw);
    padding: 0;
}

.c3-gsap--image-grow.c3-gsap--ready .c3-motion__image-grow-stage {
    align-items: center;
    justify-content: center;
    height: 100vh !important;
    height: 100dvh !important;
    min-height: 100vh !important;
    min-height: 100dvh !important;
    overflow: visible;
    padding: 0;
}

.c3-gsap--image-grow.c3-gsap--ready .c3-motion__image-grow-image {
    flex: none;
    position: absolute;
    top: calc(50% - var(--c3-image-grow-initial-image-height) / 2);
    left: 50%;
    margin-inline: auto;
}

.c3-gsap--image-grow.c3-gsap--ready .c3-motion__image-grow-image img {
    display: block;
    width: 100%;
    max-width: none;
}

.c3-gsap--image-grow.c3-gsap--ready .c3-motion__image-grow-heading {
    position: absolute;
    top: calc(
        50% - var(--c3-image-grow-initial-image-height) / 2
        - var(--c3-image-grow-heading-height) - 1.5rem
    );
    right: 0;
    bottom: auto;
    left: 0;
    width: 100%;
    pointer-events: none;
}

.c3-gsap--image-grow.c3-gsap--ready :is(
    .c3-motion__image-shrink-text,
    .c3-motion__image-parallax-text
) {
    position: absolute;
    top: calc(
        50% - var(--c3-image-grow-initial-image-height) / 2
        + var(--c3-image-grow-text-offset)
    );
    right: 0;
    bottom: auto;
    left: 0;
    width: 100%;
    pointer-events: none;
}

.c3-gsap--image-grow.c3-gsap--image-grow-has-heading .c3-motion__image-grow-heading {
    top: calc(
        50% - var(--c3-image-grow-initial-image-height) / 2 + 1.5rem
    );
}

.c3-gsap--image-grow.c3-gsap--image-grow-has-heading :is(
    .c3-motion__image-shrink-text,
    .c3-motion__image-parallax-text
) {
    top: calc(
        50% + var(--c3-image-grow-initial-image-height) / 2
        - var(--c3-image-grow-text-height) - 1.5rem
    );
}

.c3-gsap--image-grow.c3-gsap--reduced-motion {
    min-height: 0;
}

.c3-gsap--image-grow.c3-gsap--reduced-motion .c3-gsap--image-grow-inner,
.c3-gsap--image-grow.c3-gsap--reduced-motion .c3-motion__image-grow-stage {
    width: 100%;
    height: auto !important;
    min-height: 0 !important;
    margin-inline: 0;
    overflow: visible;
}

.c3-gsap--image-grow.c3-gsap--reduced-motion :is(
    .c3-motion__image-grow-heading,
    .c3-motion__image-shrink-text,
    .c3-motion__image-parallax-text
) {
    position: relative;
    inset: auto;
    pointer-events: auto;
}

.c3-gsap--image-grow.c3-gsap--reduced-motion .c3-motion__image-grow-image {
    position: relative;
    top: auto;
    left: auto;
}
