/* LAST UPDATED 06.26.2024 */
/* NOTE: As of 06.04.2024, the Virtual Tours page hasn't been transferred in to VHS. 
This just now has fixes for the modal close buttons on live EVMS version */

/* For the virtual tour banners on some department pages */
.container-tour {
  padding: 0;
}

.banner--tour {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding: 1em;
  height: 23.5em;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  background-position: bottom;
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50%;
}

.banner--tour .banner__button {
  padding: 0.25em 0.75em 0.35em 0.75em;
  background: rgba( 232, 232, 232, 0.75);
  border-radius: 10px;
  text-decoration: none;
  font-size: 1.25rem;
  color: var(--primary-dark);
  font-weight: 700;
  text-align: center;
  -webkit-transition: .3s ease-in-out;
  transition: .3s ease-in-out;
}


/* Virtual tours are completely handcoded, CSS has just been reorganized here to place the media queries at the bottom */
* {
    margin: 0;
    padding: 0;
    outline: none;
}

body {
    overflow-x: hidden;
    font-family: var(--primary-font-family);
}

@keyframes fadeIn {
    from {
        opacity: 0;
    }

    to {
        opacity: 1;
    }
}

@keyframes fadeOut {
    from {
        opacity: 1;
    }

    to {
        opacity: 0;
        display: none;
    }
}

#iframeModule {
    min-height: 180px;
}

#modalIframe {
    position: absolute;
    height: 28%;
    width: 80%;
}

.vr-scene {
    max-width: 400px !important;
    max-height: 400px !important;
}

.show {
    display: flex !important;
}

.virtual-tours__hero {
    height: auto;
    width: 100vw;
}

.virtual-tours__section__hero__image {
    width: 100vw;
    height: auto;
    object-fit: cover;
}


.virtual-tours__copy {
    height: auto;
    max-width: 900px;
    margin: 0 auto;
    padding-top: 50px;
    width: 90%;
}

.virtual-tours__title {
    font-size: 40px;
    color: var(--primary-accent-shade);
}

.virtual-tours__p {
    font-size: 22px;
    width: 100%;
    padding-top: 30px;
}

.virtual-tours__p__cta {
    color: var(--primary-accent);
    text-decoration: none;
}

.virtual-tours__p__cta:hover {
    text-decoration: underline;
}

.virtual-tours__media {
    width: 100%;
    height: auto;
    margin-top: 50px;
}

.virtual-tours__media__image-wrapper {
    height: auto;
    width: 100%;
}

.virtual-tours__media__image {
    height: 100%;
    width: 100%;
    object-fit: cover;
}

.virtual-tours__media__video {
    width: 100%;
    height: auto;
    display: none;
}

.virtual-tours__placeholder-text {
    font-size: 50px;
    color: red;
    text-align: center;
    position: relative;
    z-index: 8;
}

.virtual-tours__ctas {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
    padding-top: 50px;
}

.virtual-tours__cta {
    background-color: black;
    height: 50px;
    width: 20%;
    min-width: 250px;
    text-decoration: none;
    font-weight: 800;
    color: var(--primary-neutral-light) !important;
    text-align: center;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-content: center;
    margin-top: 20px;
    border-radius: 5px;
    transition: .5s all;
    border: 0;
    cursor: pointer;
    line-height: 22px;
}



.virtual-tours__cta--1 {
    background-color: var(--primary-color);
}

.virtual-tours__cta--1:hover {
    background-color: var(--primary-color-shade);
}

.virtual-tours__cta--2 {
    background-color: var(--primary-accent);
}

.virtual-tours__cta--2:hover {
    background-color: var(--primary-accent-shade);
}

.virtual-tours__cta--3 {
    background-color: var(--secondary-accent);
}

.virtual-tours__cta--3:hover {
    background-color: var(--secondary-accent-shade);
}

.virtual-tours__cta--4 {
    background-color: var(--primary-dark);
}

.virtual-tours__cta--4:hover {
    background-color: var(--primary-dark-shade);
}

.virtual-tours__stretched-image-wrapper {
    width: 100vw;
    /*! max-height: 300px; */
    margin-top: 100px;
}

.virtual-tours__stretched-image {
    width: 100%;
    min-height: 250px;
    object-fit: cover;

}

.virtual-tours__stretched-image__text {
    color: white;
    font-size: 2em;
    max-width: 600px;
    width: 90%;
    margin: 0 auto;
    position: absolute;
    text-align: center;
    bottom: 43px;
    font-family: var(--primary-font-family);
    line-height: 1.25em;
    font-weight: 600;
}

.virtual-tours__content {
    max-width: 1440px;
    margin: 0 auto;
    padding-top: 100px;
}

.virtual-tours__content__title {
    font-size: 40px;
    text-align: center;
    width: 300px;
    margin: 0 auto;
}


.virtual-tours__content__wrapper {
    max-width: 1200px;
    width: 100%;
    margin: 0 auto;
}

.virtual-tours__show-all {
    height: 50px;
    max-width: 200px;
    margin: 15px auto 0;
    display: flex;
    justify-content: center;
    align-content: center;
}

.virtual-tours__show-all__cta {
    background-color: var(--primary-accent);
    color: var(--primary-neutral-light);
    text-decoration: none;
    padding: 10px 15px;
    border-radius: 5px;
    display: none;
    justify-self: center;
    align-self: center;
    transition: .4s all;
    animation: fadeIn .3s;
}

.virtual-tours__show-all__cta:hover {
    background-color: var(--primary-accent-shade);
}

.virtual-tours__content__cards {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
}

.virtual-tours__content__card {
    height: 300px;
    width: 300px;
    margin: 30px 10px;
    border-radius: 5px;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.16), 0 2px 4px rgba(0, 0, 0, 0.23);
    cursor: pointer;
    animation: fadeIn 1s;
    transition: .3s all;
}

.virtual-tours__content__card:hover {
    box-shadow: 0 6px 12px rgba(0, 0, 0, 0.16), 0 6px 12px rgba(0, 0, 0, 0.23);
}

.virtual-tours__link {
    text-decoration: none;
}

.virtual-tours__link:hover {
    text-decoration: none !important;
}

.virtual-tours__label {
    display: inline-block;
}

.virtual-tours__icon {
    color: var(--primary-neutral-light);
    position: relative;
    bottom: 35px;
    left: 4%;
    z-index: 7;
}

.virtual-tours__content__card__thumbnail {
    max-height: 200px;
    height: 100%;
    width: 100%;
    border-radius: 5px 5px 0 0;
}

.virtual-tours__content__card__thumbnail__image {
    object-fit: cover;
    border-radius: 5px;
    height: 100%;
}

.virtual-tours__content__card__title {
    font-size: 20px;
    color: var(--primary-accent);
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 10px;
}

.virtual-tours__content__filter-list__item {
    list-style: none;
}

/* create line on sides */
.virtual-tours__content__title span {
    display: inline-block;
    position: relative;
}

.virtual-tours__content__title span:before,
.virtual-tours__content__title span:after {
    content: "";
    position: absolute;
    height: 5px;
    border-top: 1px solid black;
    top: 20px;
    width: 50px;
}

.virtual-tours__content__title span:before {
    right: 100%;
    margin-right: 15px;
}

.virtual-tours__content__title span:after {
    left: 100%;
    margin-left: 15px;
}

.virtual-tours__content__video-wrapper {
    width: 100%;
    height: min-content;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-evenly;
    align-content: space-between;
    margin-top: 50px;
}

.virtual-tours__content__video {
    height: 300px;
    width: 300px;
    background-color: green;
    margin-top: 20px;
    display: flex;
    justify-content: center;
    align-content: center;
}

.filter {
    display: none;
}

.virtual-tours__content__video p {
    text-align: center;
    font-size: 28px;
    color: white;
    width: 100px;
    margin: 0 auto;
    height: auto;
    display: flex;
    justify-self: center;
    align-self: center;
}

.virtual-tours__footer {
    height: 50px;
    background-color: orange;
    margin: 100px 0 0;
}

.virtual-tours__modal {
    height: 100%;
    width: 100%;
    position: fixed;
    z-index: 10;
    background-color: rgba(0, 48, 87, 0.75);
    top: 20%;
    left: 0;
    overflow: hidden;
    display: none;
    animation: fadeIn .2s;
}

.virtual-tours__modal__close {
    color: var(--primary-neutral-light);
    font-size: 40px;
    position: absolute;
    left: 90%;
    top: 5%;
    cursor: pointer;
}

.virtual-tours__modal__content {
    height: 80%;
    width: 80%;
    margin: 50% auto;
}

.virtual-tours__modal__video {
    height: 100%;
    width: 100%;
    animation: fadeIn .6s;
}






/****** MEDIA QUERIES *****/
@media screen and (min-width: 600px) {
    .virtual-tours__media__image-wrapper {
        height: 500px;
    }

    .virtual-tours__stretched-image__text {
        left: 25%;
        text-align: left;
        width: 100%;
        margin: 0;
    }

    .virtual-tours__content__title {
        width: 100%;
        padding-top: 60px;
    }

    .virtual-tours__content__title span:before,
    .virtual-tours__content__title span:after {
        width: 100%;
    }
}

@media screen and (min-width: 600px) and (max-width: 899px) {
    .virtual-tours__ctas {
        width: 80%;
        margin: 0 auto;
    }
}

@media (min-width: 800px) {
  .banner--tour {
    height: 33.5em;
  }
  
  .banner--tour .banner__button {
    font-size: 2.25rem;
  }
}

@media screen and (min-width: 900px) {
    #modalIframe {
        height: 63%;
        width: 66%;
    }

    .virtual-tours__section__hero__image {
        height: 60vh;
    }

    .virtual-tours__copy {
        width: 100%;
        padding-top: 100px;
    }

    .virtual-tours__title {
        width: 100%;
        font-size: 60px;
    }

    .virtual-tours__p {
        width: 70%;
    }

    .virtual-tours__media {
        max-height: 600px;
        height: auto;
    }

    .virtual-tours__ctas {
        justify-content: space-between;
    }

    .virtual-tours__cta {
        margin-top: 0;
    }

    .virtual-tours__stretched-image-wrapper {
        position: relative;
    }

    .virtual-tours__content__wrapper {
        width: 80%;
        margin-top: 30px;
    }

    .virtual-tours__content__video-wrapper {
        align-content: space-between;
        margin-top: 0;
    }

    .virtual-tours__modal__close {
        left: 95%;
    }

    .virtual-tours__modal__content {
        margin: 5% auto;
    }
}
