body {
    font-family: Arial,sans-serif;
    margin: 0;
    padding: 0;
    background-color: #f4f4f4
}

header {
    border: 80%;
    background-color: #f7f7f7;
    white-space: nowrap;
    display: flex;
    flex-direction: row;
    justify-content: center;
    align-items: center;
    padding: 2rem
}

header img {
    max-width: 300px;
    margin-bottom: .25em;
    max-height: fit-content;
    align-items: center;
    justify-content: center;
    object-fit: contain;
    margin-right: 5%
}

nav a {
    margin-left: 10px;
    white-space: nowrap;
    font-size: 1.25rem;
    text-decoration: none;
    color: #006577;
    font-weight: 700;
    padding: 5px 5px;
    border-radius: 5px;
    transition: background-color .3s
}

nav a:hover {
    background-color: #ddd
}

.flex-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    gap: 10px;
    margin-left: 5%;
    margin-right: 5%
}

.flex-item {
    flex-basis: 40%;
    margin-bottom: 60px;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    font-size: 1.5rem;
    text-align: left;
    color: #666
}

.flex-item img {
    max-width: 100%;
    height: auto;
    display: block;
    align-items: center;
    justify-content: center;
    margin-left: auto;
    margin-right: auto
}

.footer-flex-container {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
    margin-top: 40px;
    margin-left: 10%;
    margin-right: 10%
}

.footer-flex-item {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    font-size: 1.25rem;
    color: #666;
    margin: 0;
    padding: 0
}

.footer-flex-item:last-child {
    margin-left: auto;
    align-items: end;
    justify-content: baseline;
    align-content: flex-end
}

.footer-flex-item img {
    max-width: 50%;
    height: auto;
    display: block;
    align-items: center;
    justify-content: center
}

.banner {
    background-color: #006577;
    color: #fff;
    font-size: 1.5rem;
    font-weight: 700;
    padding: 10px 20px;
    text-align: center;
    padding-left: 41%
}

.phone-link {
    color: inherit;
    text-decoration: none;
    font-weight: 400
}

.phone-link:hover {
    text-decoration: underline;
    cursor: pointer
}

h1 {
    color: #006577;
    text-align: center;
    margin-bottom: 3pt
}

h4 {
    color: #006577;
    margin-bottom: 0
}

strong {
    color: #006577
}

.video-container {
    overflow: hidden;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 100%
}

.video-container video {
    width: 75%;
    height: 75%;
    display: block;
    margin: auto
}

header {
    background: #f1f0f0
}

footer {
    background: #f1f0f0
}

.slideshow-container {
    width: 33%;
    height: auto;
    position: relative;
    margin: auto
}

.text {
    color: #f2f2f2;
    font-size: 2rem;
    font-weight: 400;
    padding: 8px 12px;
    position: absolute;
    bottom: 8px;
    width: 100%;
    text-align: center
}

.dot {
    height: 1rem;
    width: 1rem;
    margin: 0 2px;
    background-color: #bbb;
    border-radius: 50%;
    display: inline-block;
    transition: background-color .6s ease
}

.active {
    background-color: #717171
}

.fade {
    animation-name: fade;
    animation-duration: 1.5s
}

@keyframes fade {
    from {
        opacity: .4
    }

    to {
        opacity: 1
    }
}

@media only screen and (max-width:720px) {
    body {
        font-family: Arial,sans-serif;
        margin: 0;
        padding: 0
    }

    .slideshow-container {
        width: 85%;
    }
    .text {
        font-size: 1rem;
    }
    

    header {
        display: flex;
        justify-content: center;
        align-items: center;
        gap: 5%;
        position: relative;
        padding: 2rem
    }

    header img {
        max-width: 150px;
        margin-bottom: .25em;
        max-height: fit-content;
        align-items: center;
        justify-content: center;
        object-fit: contain;
        padding-right: 5px
    }

    nav a {
        display: flex;
        margin-right: 20px;
        font-size: 1rem;
        text-decoration: none;
        color: #006577;
        font-weight: 700;
        padding: 5px 5px;
        border-radius: 5px;
        transition: background-color .3s
    }

    nav a:hover {
        background-color: #ddd
    }

    .flex-container {
        display: flex;
        flex-basis: auto;
        flex-wrap: wrap;
        justify-content: center;
        gap: 10px;
        margin-bottom: 40px;
        background-color: #f7f7f7;
        font-size: .75rem
    }

    .flex-item {
        flex-basis: 100%;
        box-sizing: border-box;
        padding: 10px;
        font-size: .75rem;
        text-align: left
    }

    .flex-container>.flex-item:nth-child(1) {
        order: 0
    }

    .flex-container>.flex-item:nth-child(2) {
        order: 1
    }

    .flex-container>.flex-item:nth-child(3) {
        order: 4
    }

    .flex-container>.flex-item:nth-child(4) {
        order: 3
    }

    .flex-container>.flex-item:nth-child(5) {
        order: 5
    }

    .flex-container>.flex-item:nth-child(6) {
        order: 6
    }

    .flex-container>.flex-item:nth-child(7) {
        order: 8
    }

    .flex-container>.flex-item:nth-child(8) {
        order: 7
    }

    .video-container {
        overflow: hidden
    }

    .video-container video {
        width: 100%;
        height: 100%;
        object-fit: fill
    }

    .banner {
        display: flex;
        align-items: center;
        justify-content: flex-end;
        background-color: #006577;
        color: #fff;
        font-size: .75rem;
        font-weight: 700;
        padding: .75rem;
        text-align: right
    }

    .phone-link {
        color: inherit;
        text-decoration: none;
        font-weight: 400
    }

    .phone-link:hover {
        text-decoration: underline;
        cursor: pointer
    }

    h1 {
        font-size: 1.5rem;
        color: #006577;
        text-align: center;
        margin-bottom: 3pt
    }

    h4 {
        color: #006577;
        margin-bottom: 0
    }

    strong {
        color: #006577
    }

    .footer-flex-container {
        display: flex;
        flex-wrap: nowrap;
        justify-content: flex-end;
        padding: 0;
        height: 100px
    }

    .footer-flex-item {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        font-size: .75rem;
        margin: 0;
        padding: 0;
        white-space: nowrap
    }

    .footer-flex-item:last-child {
        align-items: end;
        justify-content: baseline;
        align-content: end
    }

    .footer-flex-item a {
        display: inline-block;
        padding: 0;
        margin: 0
    }

    .footer-flex-item img {
        max-width: 75%;
        height: auto
    }
}