
@import url('https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,600;0,700;0,800;1,600;1,700;1,800&family=Roboto:ital,wght@0,100;0,300;0,400;0,700;1,300;1,400;1,700&display=swap');

h1, h2, h3, h4, h5, h6,
.theme-heading,
.page-header-title,
.heading-typography,
.widget-title,
.wpex-widget-recent-posts-title,
.comment-reply-title,
.vcex-heading,
.sidebar-box .widget-title,
.search-entry h2 {
    font-family: 'Montserrat', sans-serif;
}
p, ul, ol, .entry-title {
    font-family: 'Roboto', sans-serif;
    font-weight: 300;
}

/* utilities */
.p-font-size-20 p,
.p-font-size-20 ul,
.p-font-size-20 ol { font-size: 22px; line-height: 29px; letter-spacing: .25px; font-weight: 300 !important; }

.p-font-size-25 p,
.p-font-size-25 ul,
.p-font-size-25 ol { font-size: 25px; line-height: 34px; letter-spacing: .25px; font-weight: 300 !important; }

@media screen and (min-width: 768px) {
    .hide-desktop { display: none; }
}

@media screen and (max-width: 767px) {
    .hide-mobile { display: none; }
}

:root {
    --theme-color--black: rgb(46, 46, 47);
    --theme-color--gray: rgb(46, 46, 47);
    --theme-color--lightgray: rgb(237, 237, 237);
}

body {
    background-image: url(/wp-content/uploads/2023/09/bg-repeat-pattern.webp);
    background-position: center top;
    font-family: 'Roboto', sans-serif;
}

header#site-header {
    background: white !important;
    position: relative;
    z-index: 10000;
}

header#site-header #site-logo a {
    width: 100%;
}

header#site-header .utility-nav ul li a {
    color: var(--theme-color--black);
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
    font-size: 15px;
    line-height: 29px;
}

header#site-header #site-navigation-wrap,
header#site-header .is-sticky #site-navigation-wrap {
    background: var(--theme-color--lightgray);
    width: 100% !important;
}
#site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu li a {
    line-height: 44px;
    font-size: 12.5px;
    padding: 0 22px 0 5px;
    border: none !important;
    color: #2e2e2f;
    font-family: 'Montserrat', sans-serif;
    font-weight: 600;
}
@media screen and (min-width: 1300px) {
    #site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu li a { padding-left: 16px; }
}
@media screen and (min-width: 1400px) {
    #site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu > li > a { margin-right: 12px; }
}
@media screen and (min-width: 1500px) {
    #site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu > li > a { margin-right: 24px; }
}
@media screen and (min-width: 1600px) {
    #site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu > li > a { margin-right: 34px; }
}
@media screen and (min-width: 1700px) {
    #site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu > li > a { margin-right: 47px; }
}

#site-navigation-sticky-wrapper.is-sticky #site-navigation-wrap #site-navigation .menu-main-navigation-container #menu-main-navigation.sf-menu li a {
    padding-right: 18px;
}

    #site-header #site-navigation .dropdown-menu ul.sub-menu { border: none; }
    #site-header #site-navigation .dropdown-menu ul.sub-menu li { border: none; border-bottom: 1px solid; }
    #site-header #site-navigation .dropdown-menu ul.sub-menu a { background-color: #4d4d4d; }
    #site-header #site-navigation .dropdown-menu ul.sub-menu a:hover { background-color: #2e2e2f !important; text-decoration: none !important; cursor: pointer; }

    ul.sub-menu li {
        white-space: nowrap;
        /* overflow: hidden; */
        text-overflow: ellipsis;
    }

    @media only screen and (min-width: 768px) {
        #mobile-menu {
            display: none;
        }
    }

    @media only screen and (min-width: 960px) {
        #site-navigation-sticky-wrapper {
            display: none;
        }
            #site-navigation-sticky-wrapper:after {
                display: none;
            }
        #mobile-menu {
            display: block;
        }
    }


    @media only screen and (min-width: 767px) {
        #site-navigation-sticky-wrapper {
            display: block;
        }
        #mobile-menu {
            display: none;
        }
        .utility-nav {
            display: block !important;
        }
        .utility-nav ul li {
            padding-left: 10px;
            padding-right: 10px;
        }
    }



/* section: footer */
#footer.site-footer:before { display: none; }
#footer .site-footer-inner { padding-top: 120px; padding-bottom: 60px; }

#footer-widgets svg { margin-bottom: 2rem; height: auto; width: 100%; }

footer#footer {
    background: var(--theme-color--gray);
    background-image: none !important;
}

footer#footer .widget_recent_entries .widget-title { margin-bottom: 1rem; }
footer#footer .widget_recent_entries li:first-child,
footer#footer .widget_recent_entries li { border: none; }
footer#footer address { color: #fff; }

#footer-bottom { background-color: #1f1f1f; }
#footer-bottom p,
#footer-bottom a {
    color: #fff;
    font-size: 13px;
    letter-spacing: .14px;
    font-weight: 300;
}
@media screen and (min-width: 480px) {
    #footer-bottom p {
        display: inline-block;
        margin: 0 2rem;
    } 
}

#footer-inner #mc_embed_shell { margin: 4rem 0; }
#footer-inner #mc_embed_shell h3 {
    color: #fff;
    text-transform: uppercase;
    font-size: 13px;
    line-height: 14px;
    font-weight: 600;
    letter-spacing: .52px;
    margin: 1em 0;
}
#footer-inner .mc-field-group {
    border: 1px solid white;
    padding: 3px;
    display: flex;
    flex-flow: row; 
}
    #footer-inner #mc_embed_shell input[type="email"] {
        width: 80%;
        background: transparent;
        border: none;
        color: #fff;
        padding: 0.25rem 1rem;
        font-size: 14px;
    }
    #footer-inner #mc_embed_shell input[type="email"]::placeholder { color: #fff; }
    #footer-inner #mc_embed_shell input[type="submit"] {
        flex: 1;
        border-radius: 0;
        padding: .25rem 2rem;
    }

    #footer-inner #mc_embed_shell input[type="submit"]:hover {
        background-color: #dd3333;
        color: #fff;
    }

#book-a-consultation .center-row.container { max-width: 75%; }

.sidebar-widget-icons .widget_recent_entries a:before { display: none; }
.sidebar-widget-icons .widget_recent_entries li:after {
    background: #707070;
    content: '';
    height: 1px;
    max-width: 130px;
    width: 100%;
    display: block;
    margin-top: 1.35em;
}
.sidebar-widget-icons .widget_recent_entries li:last-child:after { display: none; }

/* home: footer 'calculators' section */
.footer-calculators a { white-space: nowrap; }

/* home: 'check my account' section */
.check-my-account .center-row-inner {
    display: flex;
    align-items: center;
    justify-content: center;
}

    .check-my-account .center-row-inner .wpb_column p { color: #fff; }

@media screen and (max-width: 1000px) {
    .check-my-account .center-row-inner {
        flex-direction: column;
      text-align: center;
    }
    .check-my-account .center-row-inner .wpb_column { width: 100%; }
}


/* about: staff */
.staff-entry { font-family: 'Montserrat', sans-serif; }
.staff-entry-details > div { display: flex; flex-flow: column; }
h2.staff-entry-title { font-size: 30px; line-height: 30px; font-weight: 900; margin-bottom: 1em; margin-top: 0; font-family: 'Montserrat', sans-serif; }
.staff-entry-position { color: #2e2e2f; font-size: 20px; line-height: 31px; font-weight: 600; margin-top: .75em; margin-bottom: .25em; width: 100%; font-family: 'Montserrat', sans-serif; }
.staff-entry-excerpt { font-size: 20px; line-height: 27px; font-weight: 300; letter-spacing: .25px; font-family: 'Roboto', sans-serif; }

/* two-column */
.group-two-column .center-row-inner { display: flex; flex-wrap: wrap; }
.group-two-column .vc_col-sm-6 { display: flex; }
.group-two-column .link-find-out-more a { display: block; color: #2e2e2f; margin-top: 30px; font-weight: 600; font-size: 17px; line-height: 27px; letter-spacing: .17px; }
.group-two-column .link-find-out-more a:hover { color: #ED1B30; }
@media (min-width: 768px) {
    .group-two-column .vc_col-sm-6 {
        width: 100%;
    }
}
@media (min-width: 1100px) {
    .group-two-column .vc_col-sm-6 {
        width: 50%;
    }
}

/* buttons */
.theme-button {
    display: inline-block;
    background-color: #2c87f0;
    color: #fff;
    padding: 0.538em 1.077em;
    font-family: 'Montserrat', sans-serif;
    font-size: .923em;
    font-weight: 400;
    margin: 0;
    border: 0;
    cursor: pointer;
    line-height: 1.65;
    -webkit-appearance: none;
    -webkit-font-smoothing: inherit;
    text-decoration: none !important;
    max-width: 100%;
    transition: 0.15s all ease;
    border-radius: 0;
}
.button-key-red { }
.button-white {}