/*
 * Homepage performance stabilisation.
 * Reserves the exact Revolution Slider grid height so initial layout
 * geometry matches the final initialized slider instead of expanding.
 */
img {
    display: block;
    max-width: 100%;
}

/* Safety fallback: the preloader must never permanently block the page
 * if an optional/deferred JavaScript dependency fails to initialise. */
.preloader {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
}

.main-slider,
.main-slider .rev_slider_wrapper,
.main-slider .rev_slider {
    min-height: 850px;
}

.main-slider .rev-slidebg {
    width: 100%;
    height: 100%;
    aspect-ratio: 1920 / 970;
    object-fit: cover;
}

.main-slider .content-image img {
    width: 595px;
    height: 575px;
    aspect-ratio: 595 / 575;
    object-fit: contain;
}

.feature-block .icon img {
    width: auto;
    height: auto;
}

.about-section .image img {
    width: 100%;
    height: auto;
    aspect-ratio: 1202 / 1175;
    object-fit: contain;
}

.services-section .image img {
    width: 100%;
    height: auto;
    aspect-ratio: 1856 / 1836;
    object-fit: contain;
}

.subscribe-section .image img {
    width: 100%;
    height: auto;
    aspect-ratio: 1 / 1;
    object-fit: contain;
}

.authors-outer img {
    aspect-ratio: 1 / 1;
    width: 100%;
    height: auto;
    object-fit: cover;
}

@media (max-width: 1199px) {
    .main-slider,
    .main-slider .rev_slider_wrapper,
    .main-slider .rev_slider {
        min-height: 750px;
    }
}

@media (max-width: 778px) {
    .main-slider,
    .main-slider .rev_slider_wrapper,
    .main-slider .rev_slider {
        min-height: 600px;
    }
}

@media (max-width: 599px) {
    .main-slider,
    .main-slider .rev_slider_wrapper,
    .main-slider .rev_slider {
        min-height: 520px;
    }

    .main-slider .content-image img {
        width: 100%;
        height: auto;
    }
}