h1 {
    font-weight: 600;
}

#arrow {
    padding-top: 10vh;
    -webkit-animation: pulse 2s infinite;
    animation: pulse 2s infinite;
}

.carousel-item a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    padding: 2em;
}

.carousel-item:hover .carousel-image{
    transform: scale(1.005);
}

.carousel-caption {
    position: relative;
    height:20vh;
    left: auto;
    right: auto;
    color: darkslategray;

}

.carousel-caption-text {
    position: relative;
    padding-top: 2em;
    padding-left: 10vw;
    padding-right: 10vw;
}

.carousel-image {
    margin: 0 auto;
    border-radius: 10px;
    max-height: 40vh;
    max-width: 100%;
    box-shadow: 0px 20px 40px rgba(128,128,128,0.5);
}

.carousel-control-prev,
.carousel-control-next {
    color: black;
    opacity: 50%;
    font-size: 2em;
    z-index: 100;
}

.carousel-control-prev:hover,
.carousel-control-prev:focus,
.carousel-control-next:hover,
.carousel-control-next:focus {
    color: black;
    opacity: 90%;
    font-size: 2em;
}

.padding-btm-10 {
    padding-bottom: 10vh;
}

@media only screen and (max-width: 768px) {
    h5 {
        background-color: rgb(255, 255, 255, 0.5);
        border-radius: 10px;
    }
    
    .carousel-caption {
        padding-bottom: 0;
        height: auto;
        max-width: 60vw;
    }
}

@-webkit-keyframes pulse {
    0% {
        -webkit-transform: scale(0.9);
        -webkit-transform: translate(0px, 0px);
        opacity: 1;
    }

    50% {
        opacity: 1;
    }

    90% {
        -webkit-transform: scale(1);
        -webkit-transform: translate(0px, 10px);
        opacity: 0;
    }

    100% {
        -webkit-transform: scale(1);
        -webkit-transform: translate(0px, 10px);
        opacity: 0;
    }
}

@keyframes pulse {
    0% {
        transform: scale(0.9);
        transform: translate(0px, 0px);
        opacity: 1;
    }

    50% {
        opacity: 1;
    }

    90% {
        transform: scale(1);
        transform: translate(0px, 10px);
        opacity: 0;
    }

    100% {
        transform: scale(1);
        transform: translate(0px, 10px);
        opacity: 0;
    }
}

.header {
    padding-top: 30vh;
    height: 100vh;
    font-size: 2.5vh;
}

.title {
    vertical-align: middle;
    font-size: 6.5vh;
    font-weight: 600;
}

.container {
    padding-top: 6em;
}

.special-nav-link {
    color: black;
}