#hero-main {
    position: relative;
    top: 0;
    height: 105vh;
    background-size: cover;
}


#home-title {
    width: 100vw;
    max-height: 550px;
}

#home-hero-button {
    position: relative;
}

.home-button-bounce {
    animation: bounce 0.8s linear 0s infinite alternate none;
}

#home-hero-image {
    height: 20vh;
    max-height: 88vh;
}

#home-shuffle-text {
    display: inline-block;
    transition: opacity 0.5s ease-in-out;
}

.shuffle-text-fade-out {
    opacity: 0;
}

.home-subhero-icons {
    filter: invert(88%) sepia(25%) saturate(6371%) hue-rotate(351deg)
        brightness(101%) contrast(102%);
}

#home-service-container {
    width: 95vw;
    height: 650px;
    max-width: 1500px;
    background-size: cover;
    box-shadow: 14px 13px 5px 0px rgba(148,148,148,1);
-webkit-box-shadow: 14px 13px 5px 0px rgba(148,148,148,1);
-moz-box-shadow: 14px 13px 5px 0px rgba(148,148,148,1);
}

#home-service-background {
    width: 100vw;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    z-index: -1;
    opacity: 0.3;
}

.slide-out {
    transform: translateY(200px);
    opacity: 0;
    transition: all 1s ease;
}

.slide-in {
    transform: translateY(0px);
    opacity: 1;
    transition: all 1s ease;
}

.slideDelay50 {
    transform: translateY(0px);
    opacity: 1;
    transition: all 1s 0.2s ease;
}

.slideDelay100 {
    transform: translateY(0px);
    opacity: 1;
    transition: all 1s 0.4s ease;
}

.home-service-links {
    display: flex;
    align-items: center;
    justify-content: end;
    width: 200px;
    height: 70px;
    background-color: hsla(0, 0%, 95%, 0.85);
    text-align: right;
    border-radius: 0 20px 20px 0;
    cursor: pointer;
    transition: all 0.4s ease-in-out;
}

.home-service-links-hover {
    background-color: hsla(44, 100%, 64%, 0.85);
    width: 270px;
    transition: all 0.4s ease-in-out;
}

.home-service-links > p {
    margin: 0 40px 0 0;
    padding: 0;
    font-size: 22px;
}

#home-service-text {
    background: linear-gradient(
        163deg,
        rgba(255, 255, 255, 0.2) 2%,
        rgba(37, 37, 37, 0.6) 50%,
        rgba(255, 255, 255, 0.2) 95%
    );
    -webkit-backdrop-filter: blur(13px);
    backdrop-filter: blur(13px);
    padding: 20px;
}

@media (min-width: 992px) {
    #home-hero-image {
        height: 90vh !important;
    }

    #home-title {
        width: 40vw;
        max-width: 800px;
        max-height: none;
    }

    #customer-form-notification {
        animation: hearthbeat 2s linear 0s infinite reverse forwards;
    }
}

@keyframes bounce {
    0% {
        animation-timing-function: ease-in;
        transform: translateY(-18px);
    }

    100% {
        animation-timing-function: ease-out;
        transform: translateY(0px);
    }
}

@keyframes slideIn {
    from {
        opacity: 0;
        transform: translateY(100px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}

@keyframes hearthbeat {
    0% {
        animation-timing-function: ease-out;
        transform: translateX(0px);
        transform-origin: center center;
    }

    10% {
        animation-timing-function: ease-in;
        transform: translateX(-5px);
    }

    17% {
        animation-timing-function: ease-out;
        transform: translateX(0px);
    }

    33% {
        animation-timing-function: ease-in;
        transform: translateX(-5px);
    }

    45% {
        animation-timing-function: ease-out;
        transform: translateX(0px);
    }
}
