/* MyHome Hero - native replacement for Slider Revolution heroes */
.mh-hero {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    /* Minimum, so long texts or stacked buttons grow the hero instead of being clipped. */
    min-height: var(--mh-hero-height-mobile, 400px);
    overflow: hidden;
    /* Own stacking context, so search forms placed over the hero stay on top. */
    isolation: isolate;
    background-color: #222;
    color: #fff;
}

/* Same breakpoint as the search form offsets placed over the hero (max-width: 778px). */
@media (min-width: 779px) {
    .mh-hero {
        min-height: var(--mh-hero-height, 500px);
    }
}

/* Visible viewport without the admin bar; svh keeps mobile browser toolbars out of the height. */
.mh-hero.mh-hero--fullscreen {
    min-height: calc(100vh - var(--wp-admin--admin-bar--height, 0px));
    min-height: calc(100svh - var(--wp-admin--admin-bar--height, 0px));
}

.mh-hero__background,
.mh-hero__overlay {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
}

.mh-hero__background {
    z-index: 0;
}

.mh-hero__overlay {
    z-index: 1;
    pointer-events: none;
}

.mh-hero__image,
.mh-hero__video {
    display: block;
    width: 100%;
    height: 100%;
    max-width: none;
    object-fit: cover;
    object-position: center;
}

.mh-hero__slider,
.mh-hero__slider .swiper-wrapper,
.mh-hero__slider .swiper-slide {
    height: 100%;
}

.mh-hero .mh-hero__pagination {
    z-index: 3;
}

.mh-hero__pagination .swiper-pagination-bullet {
    background: #fff;
    opacity: .6;
}

.mh-hero__pagination .swiper-pagination-bullet-active {
    opacity: 1;
}

.mh-hero__content {
    position: relative;
    z-index: 2;
    width: 100%;
    max-width: 1170px;
    padding: 24px 15px;
    transform: translateY(var(--mh-hero-offset-mobile, 0px));
}

@media (min-width: 779px) {
    .mh-hero__content {
        transform: translateY(var(--mh-hero-offset, 0px));
    }
}

.mh-hero--align-center .mh-hero__content {
    text-align: center;
}

.mh-hero--align-left .mh-hero__content {
    text-align: start;
}

.mh-hero--align-right .mh-hero__content {
    text-align: end;
}

.mh-hero .mh-hero__heading {
    margin: 0;
    padding: 0;
    color: #fff;
    font-size: 28px;
    font-weight: 700;
    line-height: 1.15;
    text-shadow: 0 2px 8px rgba(0, 0, 0, .25);
}

.mh-hero .mh-hero__heading.mh-color-primary {
    text-shadow: none;
}

.mh-hero__subheading {
    margin-top: 6px;
    color: #fff;
    font-size: 18px;
    line-height: 1.4;
}

@media (min-width: 779px) {
    .mh-hero .mh-hero__heading {
        font-size: 50px;
    }

    .mh-hero__subheading {
        font-size: 24px;
    }
}

.mh-hero__buttons {
    margin-top: 24px;
}

.mh-hero__buttons .mdl-button {
    min-width: 130px;
    margin: 6px;
}
