@media (min-width: 992px) {
    /* Allows the container to make better user of larger screens */
    .container {
        max-width: 80vw;
    }
}

.small-top-div {
    margin-top: -10vh;
}

#home {
    width: 75%;
}

.h1-welcome {
    font-size: 5vw;
    font-weight: bold;
    text-shadow: 2px 2px 8px #4a4a4a;
}

.h2-info {
    font-size: 56px;
    font-weight: bold;
    color: #008B98;
    margin: 30px auto;
    width: 80%;
}

.h2-info2 {
    font-size: 56px;
    font-weight: bold;
    color: #008B98;
    margin: 30px 0px;
    width: 80%;
}

.middle-heading {
    transform: translateY(-50%);
}

.particles {
    position: absolute;
    min-width: 100%;
    min-height: 100vh;
    background-size: cover;
    background-position: 50% 50%;
    background-repeat: no-repeat;
    left: 0;
    z-index: -1;
}

.particles-small {
    width: 100vw;
    height: 20vh;
    position: relative;
    margin-left: -50vw;
    left: 50%;
    z-index: -1;
}

#particles-home, #particles-faq, #particles-contact {
    background-image: -webkit-linear-gradient(top, #aed778 0%, #4daeb7 100%);
    background-image: -moz-linear-gradient(top, #aed778 0%, #4daeb7 100%);
    background-image: -ms-linear-gradient(top, #aed778 0%, #4daeb7 100%);
    background-image: -o-linear-gradient(top, #aed778 0%, #4daeb7 100%);
    background-image: linear-gradient(top, #aed778 0%, #4daeb7 100%);
}

#particles-base {
    background-image: -webkit-linear-gradient(top, rgba(256, 256, 256, 1) 0%, rgba(198, 198, 198, 1) 100%);
    background-image: -moz-linear-gradient(top, rgba(256, 256, 256, 1) 0%, rgba(198, 198, 198, 1) 100%);
    background-image: -ms-linear-gradient(top, rgba(256, 256, 256, 1) 0%, rgba(198, 198, 198, 1) 100%);
    background-image: -o-linear-gradient(top, rgba(256, 256, 256, 1) 0%, rgba(198, 198, 198, 1) 100%);
    background-image: linear-gradient(top, rgba(256, 256, 256, 1) 0%, rgba(198, 198, 198, 1) 100%);
}

.display-section {
    min-height: 100vh;
    width: 100%;
    display: flex;
    align-items: center;
}

.display-section-small {
    height: 20vh;
}

#home {
    margin-bottom: -110px;
}

.main-promo-image {
    max-height: 100%;
}

.promo-image {
    max-height: 45vh;
}

.promo-image-overflow {
    width: 130%;
}

.promo-image-side {
    width: 90%;
}

/*Adds a red asterisk to required form fields*/
.form-group.required .control-label:after {
    content: " *";
    color: red;
}

.evolve-blue {
    color: #4daeb7;
}

.h1-welcome {
    font-size: calc(3em + 2vw);
}

.h2-info {
    font-size: calc(2em + 2vw);
}

.h2-sub-heading {
    font-size: calc(1em + 2vw);
}

.h3-info {
    font-size: calc(.5em + 2vw);
}

.h4-info {
    font-size: calc(.5em + 1.5vw);
}

.h5-sub-heading {
    font-size: calc(.5em + 2vw);
}

.info-text {
    font-size: calc(.5em + .5vw);
}

.card-header-text {
    font-size: calc(.3em + .5vw);
}

.teal {
    color: #008B98;
}

.plans-card-body .card-body {
    padding: 2rem;
}

.plans .card {
    border: none;
    border-radius: 1rem;
    transition: all 0.2s;
    box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.1);
}

.plans hr {
    margin: 1.5rem 0;
}

.plans .card-title {
    margin: 0.5rem 0;
    font-size: 2rem;
    letter-spacing: .1rem;
    font-weight: bold;
}

.plans .card-price {
    font-size: 3rem;
    margin: 0;
}

.plans .card-price .period {
    font-size: 0.8rem;
}

.plans ul li {
    margin-bottom: 1rem;
}

.plans .text-muted {
    opacity: 0.7;
}

.custom-btn {
    font-size: 20px;
    border-radius: 5rem;
    letter-spacing: .1rem;
    font-weight: normal;
    padding: 1rem;
    opacity: 0.7;
    transition: all 0.2s;
    border: none;
    display: block;
    margin: 0 auto;
}

.fa-check:before {
    content: "\f00c";
    color: #8CC63F;
}

.icon {
    margin: 0 auto;
    display: block;
    width: 65px;
    height: auto;
}

/* Hover Effects on Card */
@media (min-width: 992px) {
    .plans .card:hover {
        margin-top: -.25rem;
        margin-bottom: .25rem;
        box-shadow: 0 0.5rem 1rem 0 rgba(0, 0, 0, 0.3);
    }

    .plans .card:hover .btn, .btn:hover {
        opacity: 1;
    }
}

.checkbox-card {
    cursor: pointer;
}

@media (min-width: 768px) {
    .modal-xl {
        width: 90%;
        max-width: 1200px;
    }
}