.image-gallery {
    position: relative;
    padding-top: 6.25rem;
    padding-bottom: 6.25rem;
}

.image-gallery-slide-image {
    height: 13.1875rem;
    overflow: hidden;
    will-change: width, height, padding;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
    transform: translateZ(0);
    -webkit-transform: translateZ(0);
}

/* Smooth transition for images inside slides */
.image-gallery-slide-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease-out;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

/* Ensure slick slider uses hardware acceleration */
.image-gallery-slider .slick-track {
    will-change: transform;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.image-gallery-slider .slick-slide {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

.image-gallery-slider {
    padding: 0 1.375rem 3.5rem;
}

.image-gallery-btn {
    text-align: center;
    margin: 1.25rem 0 0;
}

.icon-text--homepage+.image-gallery {
    background: var(--light-blue);
    padding: 0 0 3.125rem;
}

.image-gallery-slide-image a::before {
    display: none;
}

.image-gallery__wrap {
    position: relative;
}

.image-gallery-container {
    position: relative;
}

@media(min-width: 400px) {
    .image-gallery-container .slick-next {
        margin-left: 7.8125rem;
    }

    .image-gallery-container .slick-arrow {
        width: 5.5rem;
    }
}

@media(min-width: 768px) {
    .icon-text--homepage+.image-gallery {
        padding: 0 0 4.6875rem;
    }

    .image-gallery-slider {
        padding: 0;
    }

    .image-gallery-slider .slick-track {
        margin: 0 0 0 3.25rem;
        display: flex;
        align-items: flex-end;
    }

    .image-gallery-slider .slick-slide {
        vertical-align: bottom;
        margin: 0 1.0625rem;
    }

    /* Inactive slide - smooth shrinking */
    .image-gallery-slide-image {
        height: 8.875rem;
        width: 8.8125rem;
        transition: width 0.3s ease-out, 
                    height 0.3s ease-out,
                    padding 0.3s ease-out;
    }

    /* Active slide - smooth expanding */
    .image-gallery-slider .slick-slide.is-active-slide .image-gallery-slide-image {
        height: 17.25rem;
        width: 26.875rem;
        transition: width 0.3s ease-out, 
                    height 0.3s ease-out,
                    padding 0.3s ease-out;
    }

    .image-gallery-slider .slick-arrow,
    .image-gallery__wrap .slick-arrow.custom-arrow {
        left: unset;
        transform: unset;
        right: 3.25rem;
        top: 1.9375rem;
    }

    .image-gallery-slider .slick-prev,
    .image-gallery__wrap .slick-prev.custom-arrow {
        right: 10rem;
    }
}

@media(min-width: 1200px) {
    .icon-text--homepage+.image-gallery {
        padding: 0 0 7.5rem;
    }


    .image-gallery-slide-image {
        height: 17.9375rem;
        width: 17.8125rem;
    }


    .image-gallery-slider .slick-slide.is-active-slide .image-gallery-slide-image {
        height: 28.125rem;
        width: 31.25rem;
    }

    .image-gallery-btn {
        margin: 0;
        position: absolute;
        right: 19.375rem;
        top: 3rem;
    }

    .image-gallery-slider .slick-arrow,
    .image-gallery__wrap .slick-arrow.custom-arrow {
        right: 4rem;
        top: 3.0625rem;
    }

    .image-gallery-slider .slick-prev,
    .image-gallery__wrap .slick-prev.custom-arrow {
        right: 10.75rem;
    }

    .image-gallery-slider .slick-track {
        margin: 0 0 0 4rem;
    }

    .image-gallery__heading {
        padding-bottom: 0.9375rem;
    }

    .image-gallery__heading ~ .image-gallery-btn  {
        top: 9.6875rem;
    }
}

@media( min-width: 1300px ) {
    .image-gallery-slider .slick-slide.is-active-slide .image-gallery-slide-image {
        height: 28.5rem;
        width: 44.375rem;
    }
}

@media(min-width: 1600px) {
    .icon-text--homepage+.image-gallery {
        padding: 0 0 7.5rem;
    }

    .image-gallery-slider .slick-track {
        margin: 0 0 0 13.5625rem;
    }


    .image-gallery-slide-image {
        height: 36rem;
        width: 26.375rem;
        padding-top: 9.375rem;
    }


    .image-gallery-slider .slick-slide.is-active-slide .image-gallery-slide-image {
        height: 36rem;
        width: 64.375rem;
        padding-top: 0;
    }


    .image-gallery-btn {
        top: 2.375rem;
    }

    .image-gallery-slider .slick-arrow,
    .image-gallery__wrap .slick-arrow.custom-arrow {
        top: 2.5625rem;
    }
}


@media(min-width: 1922px) {
    .image-gallery-slider .slick-arrow,
    .image-gallery__wrap .slick-arrow.custom-arrow {
        right: unset;
        left: 50%;
        margin-left: 53rem;
    }

    .image-gallery-slider .slick-prev,
    .image-gallery__wrap .slick-prev.custom-arrow {
        margin-left: 46.25rem;
    }

    .image-gallery-btn {
        right: unset;
        left: 50%;
        margin-left: 30.375rem;
    }
}

@media (max-width: 767px) {

    .image-gallery-btn {
        margin-top: -1.5625rem;
        text-align: right;
        width: calc(45% + 0.25rem);
    }

    .image-gallery-container .slick-prev {
        left: calc(50% + 1.5rem);
        margin-left: 1.25rem;
        height: 2.5rem;
    }

    .image-gallery-container .slick-next {
        left: calc(50% + 1.5rem);
        margin-left: 7.8125rem;
        height: 2.5rem;
    }
}

@media(max-width: 400px) {  
    .image-gallery-container .slick-arrow {
        width: 3.4375rem;
    }

    .image-gallery-container .slick-next {
        margin-left: 6.875rem;
    }
}