/* Shared image / video sizing and alignment for public pages */
img,
video {
    max-width: 100%;
}

.hero-slider-new .carousel,
.hero-slider-new .carousel-inner {
    height: 100%;
}

.hero-slider-new .carousel-item img,
.hero-slider-new .slider-video,
.carousel-item .slider-video {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center center;
}

.page-header {
    min-height: 280px;
    display: flex;
    align-items: center;
    overflow: hidden;
}

.page-header-bg {
    position: absolute;
    inset: 0;
    background-size: cover !important;
    background-position: center center !important;
    z-index: 0;
}

.page-header .container {
    position: relative;
    z-index: 2;
}

.destination-hero {
    min-height: 380px;
    height: 42vh;
    background-size: cover !important;
    background-position: center center !important;
}

.package-gallery {
    border-radius: 18px;
    overflow: hidden;
    background: #12325f;
}

.package-gallery img {
    display: block;
    width: 100%;
    height: 420px;
    object-fit: cover;
    object-position: center;
}

.about-image-wrapper {
    overflow: hidden;
}

.about-image-wrapper .about-img,
.about-img {
    display: block;
    width: 100%;
    aspect-ratio: 4 / 3;
    height: auto;
    object-fit: cover;
    object-position: center;
}

.gd-gallery-main {
    aspect-ratio: 16 / 9;
    height: auto !important;
    min-height: 280px;
    background: #12325f;
}

.gd-gallery-thumbs {
    flex-wrap: wrap;
}

.gd-gallery-main img,
.gd-gallery-thumb img,
.destination-thumbnail img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.dynamic-card .card-image {
    display: block;
    width: 100%;
    height: 220px;
    object-fit: cover;
    object-position: center;
}

.packages-section .package-card,
.row .package-card {
    width: 100% !important;
    max-width: none;
    height: auto !important;
    min-height: 100%;
}

.packages-section .package-image,
.row .package-image {
    height: 200px;
    overflow: hidden;
}

.packages-section .package-image img,
.row .package-image img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center;
}

.dynamic-page-content img,
.dynamic-page-content video {
    display: block;
    width: 100%;
    max-height: 480px;
    object-fit: cover;
    border-radius: 16px;
}

.dynamic-page-content iframe,
.dynamic-page-content video.at-embed {
    display: block;
    width: 100%;
    aspect-ratio: 16 / 9;
    height: auto;
    border: 0;
    border-radius: 16px;
}

.ig-card {
    aspect-ratio: 9 / 16;
    height: auto !important;
    width: 210px;
    flex: 0 0 210px;
}

.ig-card img {
    width: 100%;
    height: 100%;
    object-fit: cover;
}

#igEmbedContainer iframe,
#igEmbedContainer video {
    width: 100%;
    min-height: 560px;
    border: 0;
}

.at-pkg-media img,
.at-gd-media img,
.at-dest-card img,
.at-cat-tile img {
    object-fit: cover;
    object-position: center;
}

@media (max-width: 991px) {
    .package-gallery img {
        height: 320px;
    }

    .destination-hero {
        min-height: 280px;
        height: 36vh;
    }

    .ig-card {
        width: 168px;
        flex-basis: 168px;
    }
}

@media (max-width: 575px) {
    .package-gallery img {
        height: 240px;
    }

    .page-header {
        min-height: 220px;
    }
}
