﻿/*Top Navigation
------------------------------------------------*/
.header .header-grid {
    display: grid;
    grid-template-columns: 1fr;
}

    .header .header-grid div:nth-child(2) {
        justify-content: center;
        display: flex;
        margin-bottom: 2rem;
        padding-top: 1rem;
    }

.header .main-menu {
    align-items: center;
    border-top: solid 1px rgba(0, 0, 0, 0.12);
}

.links {
    display: flex;
    flex-direction: row;
    justify-content: center;
    padding-inline-start: 0;
    list-style-type: none;
    margin: 0 0 0 0;
}

    .header .main-menu .links li {
        margin-left: 3.5rem;
    }

        .header .main-menu .links li.blue {
            background-color: rgba(0, 95, 154, 0.5);
            padding: 0 2rem;
            cursor: pointer;
            transition: all .25s;
        }
            .header .main-menu .links li.blue:hover {
                background-color: #005F9A;
                transition: all .25s;
            }

            .header .main-menu .links li.blue a {
                color: #fff;
            }
                .header .main-menu .links li.blue a:hover {
                    color: #fff;
                }


.header .main-menu .links li a {
    font-family: "Gotham Bold";
    font-size: 1.2rem;
    text-transform: uppercase;
    line-height: 45px;
    color: #000;
    transition: color .25s;
}
    .header .main-menu .links li a:hover {
        color: #005F9A;
        transition: color .25s;
    }
        .header .main-menu .links li.has-submenu {
            position: relative;
        }
        .header .main-menu .links li span {
            font-family: "Gotham Bold";
            font-size: 1.2rem;
            text-transform: uppercase;
            line-height: 45px;
            color: #000;
            transition: color .25s;
            cursor: pointer;
        }
        .header .main-menu .links li.has-submenu ul.sub-menu {
            display: none;
            position: absolute;
            top: 4.5rem;
            box-shadow: 0px 4px 5px 0px #c9c9c9;
            border: solid 0.5px rgba(151, 151, 151, 0.5);
            padding: 0;
            min-width: 32rem;
            background-color: #fff;
            z-index: 1000;
        }
            .header .main-menu .links li.has-submenu ul.sub-menu li {
                list-style: none;
                margin: 0;
                padding-left: 2rem;
                transition: all .25s;
            }
                .header .main-menu .links li.has-submenu ul.sub-menu li:hover {
                    background-color: #005F9A;
                    transition: all .25s;
                }
                    .header .main-menu .links li.has-submenu ul.sub-menu li:hover a {
                        color: #fff;
                        transition: all .25s;
                        display: inline-block;
                        width: 100%;
                        height: 100%;
                    }

.context-icon {
    align-self: end;
    display: none;
}

.bar1, .bar2, .bar3 {
    width: 35px;
    height: 2px;
    background-color: #000;
    margin: 6px 0 !important;
    transition: 0.4s;
    padding: 0 !important;
}

.change .bar1 {
    -webkit-transform: rotate(135deg) translate(6px, -7px);
    transform: rotate(135deg) translate(6px, -7px);
    background-color: #000;
}

.change .bar2 {
    opacity: 0;
    margin-right: 0;
    background-color: #000;
}

.change .bar3 {
    -webkit-transform: rotate(-135deg) translate(4px, 6px);
    transform: rotate(-135deg) translate(4px, 6px);
    background-color: #000;
}

@media (max-width: 1023px) {
    .context-icon {
        display: block;
    }
    .header .main-menu {
        display: none;
        grid-column: 1/3;
        height: calc(100vh - 10.5rem);
    }
    .header .header-grid {
        grid-template-columns: 5.5rem 1fr;
    }
    .logo {
        width: 13rem;
        margin-right: 6rem;
    }
    .header .header-grid div:nth-child(1) {
        margin-bottom: 0;
        padding: 1rem 0 1rem 2rem;
    }
    .header .header-grid div:nth-child(1) {
        align-self: center;
    }
    .header .links {
        flex-direction: column;
    }
    .header .main-menu .links li {
        margin: 0 0rem;
        border-bottom: 1px solid #ccc;
    }
        .header .main-menu .links li.has-submenu ul.sub-menu {
            position: initial;
            top: 0;
            box-shadow: none;
            border: none;
            padding: 0;
            min-width: initial;
            background-color: #f5f5f5;
            margin-top: -4.6rem;
            padding-top: 4.6rem;
            
        }
        .header .main-menu .links li.has-submenu ul.sub-menu li {
            padding: 0;
            border: none;
        }
}

/*Footer Nav
---------------------------------------------- */
.footer {
    background-color: #f5f5f7;
    padding: 4rem 0;
}

.footer .footer-grid {
    display: grid;
    grid-template-columns: 1fr;
}
    .footer .footer-grid div:nth-child(1) {
        text-align: center;
    }

.footer .footer-menu {
    display: grid;
    grid-template-columns: 1fr;
    width: 90rem;
    margin: auto;
    align-items: center;
}


    .footer .footer-menu .social-links {
        list-style-type: none;
        display: flex;
        flex-direction: row;
        justify-content: center;
        padding-inline-start: 0;
    }

    .footer .social-links .footer-social {
        padding-left: 1rem;
    }

.footer .footer-menu .footer-social a {
    justify-content: center;
    align-items: center;
}

    .footer .footer-menu .links li a {
        font-family: "Gotham Book";
        font-size: 1.6rem;
        line-height: 45px;
        letter-spacing: -0.2px;
        color: #666;
        border-right: 1px solid #666;
        padding: 0 2rem;
    }
        .footer .footer-menu .links li a:hover {
            color: #005F9A;
        }

    .footer .footer-menu .links li:last-child a {
        border-right: none;
    }

    /*.footer .footer-menu .links span {
        margin: 0 2rem;
        font-family: Gotham;
        font-weight: 500;
        color: #666;
    }*/

    .footer .footer-grid .copyright {
        font-family: 'Gotham Book';
        font-size: 1.6rem;
        text-align: center;
        margin-top: 1rem;
    }
    .footer .footer-grid .copyright > div {
        margin: 1.6rem 0;
    }

        .footer .footer-grid .copyright a {
            font-weight: 500;
            color: #005f9a;
        }

    .footer .bbb {
        display: flex;
        align-content: center;
        justify-content: center;
        padding: 1.5rem 0;
    }

@media (max-width: 1024px) {
    .footer .footer-menu {
        width: 100%;
    }
    .line-short {
        width: 90%;
    }
}
@media (max-width: 1023px) {
    .footer .footer-menu .links li a {
        border: none;
    }
    .links {
        display: block;
        text-align: center;
    }
    .footer .footer-menu {
        grid-template-columns: 1fr;
        width: 100%;
    }
    .footer .social-links .footer-social {
        padding: 0 1rem;
    }
}

/* Liability Page Text Section Fix
*******************************************************/
.liability .umb-block-list .text-section {
    margin: -5rem 0 10rem 0;
}

    .liability .umb-block-list .text-section .wrap {
        padding-top: 5rem;
        background-color: #fff;
    }

/* Contact Page
********************************************************/
.contact.page .hero-image {
    height: 27.9rem;
}

.contact .contact-columns {
    background-color: #f7f7f7;
    padding: 5rem 0;
    margin-bottom: 5rem;
}

.contact .contact-content {
    display: flex;
    flex-direction: row;
    justify-content: center;
}

.contact .contact-content .contact-block {
    width: 30%;
    padding: 0 4rem;
}
    .contact .contact-content .contact-block img {
        max-width: 100%;
    }
    .contact .contact-content .contact-block a {
        color: #005f9a;
        font-family: "Gotham Medium";
        font-weight: 500;
    }

    .contact .contact-content .contact-block strong {
        font-family: "Gotham Medium";
        font-weight: 500;
    }

.contact .contact-block .contact-file {
    display: flex;
    flex-direction: row;
    grid-gap: 1rem;
    align-items: center;
    padding-bottom: 2rem;
}

.contact .contact-block .contact-file a {
    line-height: 1.29;
}

.contact .contact-content .border-vertical-tall:last-child {
    display: none;
}

.contact .contact-content .border-vertical-tall {
    margin: 0 3rem;
}

.contact .wrap .contact-form {
    display: flex;
    justify-content: center;
    width: 60%;
    margin: 0 auto;
}

@media (max-width: 1024px) {
    .contact .contact-content .contact-block {
        padding: 0 2rem;
    }
    .contact .wrap .contact-form {
        width: 50%;
    }
}
@media (max-width: 768px) {
    .contact .contact-content {
        flex-direction: column;
    }
    .border-vertical-tall {
       display: none;
    }
    .contact .contact-content .contact-block {
        width: 100%;
        border-bottom: none;
    }
    .contact .contact-content .contact-block:last-of-type {
        border: none;
    }
    .contact .wrap .contact-form {
        width: 70%;
    }
}
@media (max-width: 550px) {
    .contact .wrap .contact-form {
        width: 100%;
    }
}
/* Home Page */
.home.page {
    padding-bottom: 10rem;
}


/* Legal Page */
.page.legal {
    border-top: solid 1px rgba(0, 0, 0, 0.12);
    padding: 4rem 0;
}

    .page.legal .intro {
        margin: 0 0 4rem 0;
    }

    .page.legal .table-of-contents {
        margin: 0 0 3rem 0;
    }

        .page.legal .table-of-contents h3 {
            margin: 0 0 2rem 0;
            text-transform: none;
        }

    .page.legal .doc-section {
        padding: 12rem 0 0 0;
        margin-top: -8rem;
    }

        .page.legal .doc-section h4 {
            margin: 0 0 2rem 0;
        }

/* About Page */
.page.about .banner-text-section {
    padding-bottom: 0 !important;
}

/* Contact Page */

.page.contact .map-area #map {
    width: 100%;
    height: 25rem;
}

/* Privacy Page */
.page.contact.privacy {
    padding: 5rem 0 10rem 0;
    font-size: 1.6rem;
}
.page.contact.privacy p {
    font-size: 1.6rem;
}
    .page.contact.privacy label {
        font-size: 1.6rem;
        font-weight: 400;
    }

    .page.contact.privacy .intro-text {
        border-bottom: 1px solid #ccc;
        padding-bottom: 2rem;
        margin-bottom: 2rem;
    }

    .page.contact.privacy .form-group {
        margin-bottom: 2rem;
    }

    .page.contact.privacy input[type=text],
    .page.contact.privacy input[type=date] {
        max-width: 30rem;
        display: block;
    }
    .page.contact.privacy textarea {
        width: 60rem;
        display: block;
        border: 1px solid #ccc;
    }

    .page.contact.privacy .note {
        margin: 2rem 0;
        background-color: #f0f0f0;
        border: 1px solid #ccc;
        padding: 5px 10px;
        max-width: 40rem;
    }

    .page.contact.privacy .intro {
        margin-bottom: 1rem;
        font-weight: 600;
    }

    .page.contact.privacy .other {
        margin: 2rem 0 2rem 2rem;
        background-color: #f0f0f0;
        border: 1px solid #ccc;
        padding: 5px 10px;
    }

        .page.contact.privacy .other .note {
            background-color: #fff;
        }

    .page.contact.privacy button {
        margin-top: 1rem;
    }
    .page.contact.privacy .contact-form {
        justify-content: flex-start;
    }
    .page.contact.privacy .contact-form form {
        width: 100%;
    }
        .page.contact.privacy .contact-form label {
            font-weight: 600;
            font-size: 1.5rem;
        }
        .page.contact.privacy .contact-form input[type=text],
        .page.contact.privacy .contact-form input[type=date],
        .page.contact.privacy .contact-form input[type=email],
        .page.contact.privacy .contact-form textarea,
        .page.contact.privacy .contact-form select {
            max-width: initial;
            width: 100%;
        }
    .page.contact.privacy h5:first-of-type {
        margin: 0 0 2rem 0;
    }
    .page.contact.privacy h5 {
        font-size: 2.2rem;
        margin: 7rem 0 2rem 0;
        border-bottom: 1px solid #ccc;
        font-family: "Gotham Bold";
    }

    .page.contact.privacy .text-section h5 {
        font-size: 1.4rem;
        border: none;
    }

    .page.contact.privacy #quote {
        cursor: pointer;
    }

    .page.contact.privacy .hero-image {
        margin-top: -5rem;
    }


/* Website Page (Generic Page) */
.website-page {
    padding-bottom: 10rem;
}

    .website-page a.blue-button {
        min-width: 21rem;
        padding: 0.8rem 1.6rem;
        text-align: center;
    }