body {
    --main-button-color: #fff;
    --main-button-background-color: #004890;
    --main-button-color-hover: #111;
    --main-button-background-color-hover: #5aacff;
}

/* Format Content */
.entry h2, .entry h3, .entry h4, .entry p, .entry ul, .entry ol, .entry hr, .entry blockquote, article h2, article h3, article h4, article p, article ul, article ol, article hr, article blockquote, .wp-block-group, .wp-block-image, .wp-block-media-text {
    margin-bottom: 30px;
}

.entry hr {
    margin: 50px auto;
}

.entry h2 {
    color: #3e96ee;
    font-weight: 500;
}

.entry li {
    line-height: 1.8;
}

blockquote {
    color: var(--main-button-background-color);
    line-height: 1.5em;
    font-weight: 400;
    font-style: italic;
}

cite {
    color: #757575;
    font-weight: 400;
    font-style: normal;
}

.wp-caption-text {
    margin-top: 30px;
    font-style: italic;
    text-align: center;
}

img, .entry img {
    height: auto
}

a {
    transition: all 100ms ease;
    -o-transition: all 100ms ease;
}

.location_name a {
    color: #5aacff;
}

.entry a {
    color: #45555f;
    text-decoration: underline;
    font-weight: 600;
}

.bc-nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-start;
}

.bc-item {
    padding: 0.6em 1em;
}

.cpt-location-info a, .post-type-archive-locations a {
    text-decoration: none;
}

.button.slideshow:hover, .button:hover {
    color: var(--main-button-color-hover);
    background: var(--main-button-background-color-hover)
}

a:hover {
    color: var(--main-button-background-color);
}

.entry a:hover, .bc-item.current-related {
    color: var(--main-button-background-color);
}

.bottom_nav_button {
    font-size: 1em;
}

/* Button Code */
a.ui-button,
a.wp-block-button__link,
.entry a.moretag,
.dr-clear-btn,
.dr-clear-btn:active,
button.dr-clear-btn:focus {
    color: var(--main-button-color);
    font-size: 1em;
    font-weight: 500;
    margin: 0 20px 30px 0;
    border-radius: 0;
    text-transform: uppercase;
    display: inline-block;
    padding: 0.8em 1.2em;
    text-align: center;
    text-decoration: none;
    line-height: 1.5;
    background: var(--main-button-background-color);
}

.dr-clear-btn,
.dr-clear-btn:active,
button.dr-clear-btn:focus {
    display: block;
    outline: 0;
    margin: 1em auto;
}

a.ui-button:hover,
a.wp-block-button__link:hover,
.entry a.moretag:hover,
.dr-clear-btn:hover {
    background: var(--main-button-background-color-hover);
    color: var(--main-button-color-hover);
}

.doc_read_more_div:hover {
    background: var(--main-button-background-color-hover);
}

.doc_read_more_div:hover .read_more_text {
    color: var(--main-button-color-hover)
}

.entry a.moretag {
    display: block;
    margin: 15px 0;
    padding: 0.6em;
    width: 150px;
}

/* Button Code End */

h2 a {
    text-decoration: none;
}

/* Alignment */
.alignleft {
    float: left;
    margin: 0 15px 8px 0;
}

.alignright {
    float: right;
    margin: 0 0 8px 15px;
}

.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto;
}

/* Alignment End */

.embed-container {
    position: relative;
    padding-bottom: 45.25%;
    height: 0;
    overflow: hidden;
    max-width: 80%;
    margin: auto auto 20px;
}

.embed-container.location-page {
    max-width: 100%;
}

.embed-container iframe, .embed-container object, .embed-container embed {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.wp-block-column .embed-container {
    padding-bottom: 56.25%;
    max-width: 100%;
}

.flex-wrapper, .flex-wrapper .wp-block-group__inner-container {
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    flex-wrap: wrap;
    justify-content: space-around;
}

.flex-wrapper .ui-button, .flex-wrapper .wp-block-button {
    width: 100%;
    max-width: 300px;
    margin-right: 0 !important;
    display: flex !important;
    justify-content: center;
    align-items: center;
    margin-bottom: 30px;
}

.flex-wrapper .wp-block-button__link {
    margin-right: 0 !important;
    margin-bottom: 0 !important;
    height: 100%;
    width: 100%;
    display: flex !important;
    justify-content: center;
    align-items: center;
}

.flex-item {
    text-align: center;
    margin-bottom: 30px;
}

.featured-img-post {
    float: right;
    margin: 0 0 8px 15px;
}

#primary-sidebar h2 {
    font-size: 20px;
    font-weight: 700;
    border-bottom: 1px solid #2f7896;
    color: #2f7896;
    text-transform: uppercase;
    margin-bottom: 30px;
}

#primary-sidebar ul {
    padding-left: 0;
    margin-bottom: 30px;
}

#primary-sidebar ul li {
    list-style: none;
}

#primary-sidebar ul li a {
    text-decoration: none;
}

hr {
    border: 0;
    height: 1px;
    background-image: -webkit-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
    background-image: -moz-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
    background-image: -ms-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
    background-image: -o-linear-gradient(left, #f0f0f0, #8c8b8b, #f0f0f0);
}

.search-form {
    margin-bottom: 30px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
}

.search-field, .search-submit {
    height: 35px;
}

.search-field {
    border-radius: 0;
    border: 1px solid #666;
    padding-left: 0.5em;

}

.search-submit {
    -webkit-appearance: none;
    border: none;
    font-weight: 500;
    cursor: pointer;
    padding: 0 15px;
    text-transform: uppercase;
    background: var(--main-button-background-color);
    color: var(--main-button-color);
    transition: all 100ms ease;
}

.search-submit:hover {
    background: var(--main-button-background-color-hover);
    color: var(--main-button-color-hover);
}

.location-phone-list {
    list-style: none;
    padding-left: 0;
}

.menu-footer-menu-container {
    width: 100%;
}

#menu-footer-menu {
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    justify-content: space-between;
    flex-wrap: wrap;
    padding-left: 0;
}

#menu-footer-menu li {
    list-style: none;
}

/* Dropdown Menus */
/* ===== Top ===== */

#navigation ul {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    justify-content: center;
}

#navigation ul li {
    display: inline-block;
    text-align: left;
}

/* ===== First Level ===== */
#navigation ul li {
    position: relative;
    padding: 0;
    margin: 0;
}

#navigation ul ul li {
    border: none;
}

#navigation ul li a {
    margin-bottom: 0;
    color: #1a252c;
    display: inline-block;
    font-size: 15px;
    line-height: 1.7;
    padding: 8px 12px;
    font-weight: 600;
    text-transform: uppercase;
    text-decoration: none;
    transition: 0s;
    font-family: Stosnos, sans-serif;;
}

#navigation ul li:hover a {
    background: var(--main-button-background-color);
}

#navigation .current-menu-item a {
    background: var(--main-button-background-color);
}

#navigation ul li:hover a,
#navigation ul li.menu-item-has-children:hover > a:after,
#navigation .current-menu-item a,
#navigation .current-menu-item a:after {
    color: #fff;

}

#navigation ul ul, #navigation ul li:hover ul ul {
    position: absolute;
    display: none;
}

#navigation ul ul li:hover ul, #navigation ul li:hover ul li:hover ul {
    display: block;
    top: 0px;
    left: 100%;
}

/* ===== Second and Third Level ===== */
#navigation ul li:hover ul {
    display: block;
    position: absolute;
    left: 0;
    top: 100%;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}

#navigation ul ul ul {
    margin-left: -14px;
}

#navigation ul li ul.sub-menu {
    border-top: 1px none hsla(0, 0%, 100%, 0.2);
    border-bottom: 2px none #fff;
    color: #fff;
}

#navigation ul ul.sub-menu li a {
    float: none;
    font-size: 0.9em;
    line-height: normal;
    font-variant: normal;
    font-weight: 500;
    width: 280px;
    text-transform: uppercase;
    padding: 10px;
    background: var(--main-button-background-color);
}

#navigation ul ul li a {
    color: #fff;
}

#navigation ul ul li:hover a {
    color: #000 !important;
    background-color: var(--main-button-background-color-hover)
}

#navigation ul li:hover ul li:hover ul {
    display: block;
    position: absolute;
    left: 40px;
    top: 100%;
    width: auto;
    height: auto;
    margin: 0;
    padding: 0;
}

#navigation ul ul li:hover ul li a {
    color: var(--main-button-background-color) !important;
    background: #fff !important;
}

#navigation ul ul li:hover ul li:hover a {
    color: #fff !important;
    background: var(--main-button-background-color) !important;
}

.menu-item-has-children {
    margin-top: 0px !important;
}

.menu-item-has-children > a:after {
    color: #000;
    content: '\e603';
    font-size: 12px;
    vertical-align: 1px;
    font-family: 'webflow-icons';
    margin-left: 5px;
}

/* Add class to make sure dropdown stays on screen see glacial.js */
#navigation ul li.edge ul.sub-menu {
    left: auto;
    right: 0 !important;
}

/* Dropdown Menus End */

/* Full Width Blocks Tempalte Stuff*/
.entry-content > * {
    margin-left: auto;
    margin-right: auto;
}

.wp-block-group__inner-container {
    margin: 0 auto;
}

.alignfull {
    margin-top: 5rem;
    margin-right: auto;
    margin-bottom: 5rem;
    margin-left: auto;
    max-width: 100vw;
    position: relative;
    width: 100%;
}

.alignnone, .aligncenter, .alignleft, .alignright, .alignwide {
    margin: 2rem auto;
}

.entry-content > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    max-width: 48rem;
    width: calc(100% - 2rem);
}

.entry-content > .alignwide {
    max-width: 64rem;
    width: calc(100% - 2rem);
}

.entry-content > .wp-block-group.alignfull.has-background {
    padding: 2rem;
    margin-bottom: 0;
    margin-top: 0;
}

.entry-content [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright):not(.is-style-wide) {
    max-width: 58rem;
    width: 100%;
}

.entry-content [class*="__inner-container"] > *:not(.alignwide):not(.alignfull):not(.alignleft):not(.alignright) {
    margin-left: auto;
    margin-right: auto;
}

.wp-block-group.has-background {
    padding: 2rem;
}

.nav-links {
    display: flex;
    justify-content: space-between;
}

.brand > img {
    width: 100%;
    max-width: 260px;
}

.footer-menu-link {
    padding: 1em;
}

/** Column Shadow Boxes **/

.wp-block-columns.box-columns {
    margin-bottom: 30px !important;
}

.box-columns .wp-block-column {
    border: 1.2px solid #e5e5e5;
    padding: 20px 20px 0 20px;
    height: auto;
    min-height: 280px;
    background-color: #fbfbfb;
    box-shadow: 2px 2px 6px 0 rgba(0, 0, 0, .19);
    transition: all 400ms ease;
    -webkit-transition: all 400ms ease;
    -moz-transition: all 400ms ease;
    -ms-transition: all 400ms ease;
}

.box-columns .wp-block-column:hover {
    /*box-shadow: 2px 2px 6px 0 rgba(0, 0, 0, .49);*/
}

/*** GUTTENBERG CALLOUT BOX GROUPS ***/
.box-outline {
    border: 1px solid var(--main-button-background-color);
    padding: 30px 30px 0 30px;
    margin: 0 0 30px 0;
    display: block;
}

.box-solid {
    background-color: var(--main-button-background-color);
    padding: 30px 30px 0 30px;
    margin: 0 0 30px 0;
    display: block;
    color: #fff !important;
}

.box-solid h2, .box-solid h3, .box-solid h4, .box-solid p, .box-solid a, .box-solid li, .box-solid figcaption, .box-solid blockquote, .box-solid cite {
    color: #fff !important;
}

.box-solid .ui-button, .box-solid .wp-block-button__link {
    background-color: #fff !important;
    color: var(--main-button-background-color) !important;
}

.box-solid .ui-button:hover, .box-solid .wp-block-button__link:hover {
    background: var(--main-button-background-color-hover) !important;
    color: var(--main-button-color) !important;
}

@media (max-width: 1140px) {

    #navigation ul li a {
        font-size: 12px;
    }
}

@media (max-width: 1080px) {
    /** Center images to avoid narrow text wrap **/
    .alignleft, .alignright, .aligncenter, .wp-block-image .alignright, .wp-block-image .alignleft {
        display: block;
        float: none;
        margin: auto;
        margin-bottom: 20px;
        text-align: center;
    }

    figcaption {
        display: block !important;
    }
}

@media (max-width: 991px) {

    #navigation ul li a {
        font-size: 15px;
    }

    /*Mobile menu backgrounds*/
    .menu_btn.w--open,
    #navigation ul li,
    #navigation.navmenu,
    #navigation ul li:hover a,
    #navigation ul ul.sub-menu li a,
    .menu_btn:hover,
    #navigation ul li:hover a,
    #navigation .current-menu-item a,
    .menu_btn {

        background-color: var(--main-button-background-color);
    }

    #navigation ul ul li:hover a {
        color: #fff !important;
        background-color: var(--main-button-background-color);
    }

    .menu_btn {
        margin-right: 10px;
    }

    .entry h2 {
        font-size: 24px;
    }

    .entry h3 {
        font-size: 20px;
    }

    #navigation.navmenu {
        padding-top: 1em;
        overflow: auto;
        top: auto;
    }

    ul#menu-primary-navigation {
        padding-bottom: 160px;
    }

    .w-nav-overlay .w--nav-menu-open, .w-nav-overlay [data-nav-menu-open] {
        top: 69px;
    }

    .w-nav-menu {
        height: 100%;
        overflow: auto;
        -webkit-overflow-scrolling: touch;
        position: fixed;
    }

    .menu-item-has-children > a:after {
        display: none;
    }

    #navigation ul {
        display: block;
    }

    #navigation ul li {
        float: none;
        width: 100%;
        display: block;
        text-align: center;
    }

    #navigation ul li a {
        color: #fff;
    }

    #navigation ul li:hover ul {
        display: none;
    }

    .menu-main-navigation-container > ul {
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -ms-flex-direction: column;
        flex-direction: column;
    }

    #navigation ul li a {
        padding: 10px 30px 10px 0;
    }

    #navigation ul li {
        width: 100%;
        text-align: left;
        padding-left: 1em;
    }

    #navigation ul li ul {
        width: 100%;
        position: relative;
        padding-top: 0px;
        margin-top: 0px;
    }

    #navigation ul li:hover ul {
        position: relative;
        display: none;
    }

    #navigation ul ul li a {
        width: 100% !important;
        padding-right: 50px;
    }

    #navigation ul li:hover a {
        width: 100%;
    }

    .menu li.has-children > a:after {
        display: none;
    }

    #navigation ul ul li:hover ul, #navigation ul li:hover ul li:hover ul {
        display: none;
    }

    /* Drop Down Arrows  Mobile */
    /* Drop Down Arrows */
    #navigation > ul > li > a:hover, #navigation > ul > li.active > a, #navigation > ul > li.open > a {
        color: #eeeeee;
        background: #1fa0e4;
        background: -webkit-linear-gradient(#1fa0e4, #1992d1);
        background: -moz-linear-gradient(#1fa0e4, #1992d1);
        background: -o-linear-gradient(#1fa0e4, #1992d1);
        background: -ms-linear-gradient(#1fa0e4, #1992d1);
        background: linear-gradient(#1fa0e4, #1992d1);
    }

    #navigation > ul > li.open > a {
        box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.15), 0 1px 1px rgba(0, 0, 0, 0.15);
        border-bottom: 1px solid #1682ba;
    }

    li.open .holder {
        transform: rotate(180deg);
    }

    .holder {
        position: absolute;
        top: 0;
        right: 0px;
        z-index: 1000;
        width: 60px;
        height: 42px;
        display: flex;
        justify-content: center;
        align-items: center;
        color: #fff;
        transition: all 100ms ease;
    }

    .holder::before {
        display: inline-block;
        content: "";
        width: 6px;
        height: 6px;
        right: 20px;
        z-index: 10;
        -webkit-transform: rotate(-135deg);
        -moz-transform: rotate(-135deg);
        -ms-transform: rotate(-135deg);
        -o-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }

    .holder::after {
        top: 17px;
        border-top: 2px solid #ffffff;
        border-left: 2px solid #ffffff;
    }

    #navigation > ul > li > a:hover > span::after, #navigation > ul > li.active > a > span::after, #navigation > ul > li.open > a > span::after {
        border-color: #eeeeee;
    }

    .holder::before {
        top: 18px;
        border-top: 2px solid;
        border-left: 2px solid;
        border-top-color: inherit;
        border-left-color: inherit;
    }

    .w--open .w-icon-nav-menu:before {
        content: "\2715";
        padding: 2px;
    }

    #navigation > ul > li > a:hover > span::after, #navigation > ul > li.active > a > span::after, #navigation > ul > li.open > a > span::after {
        border-color: #eeeeee;
    }

    #navigation ul ul li:hover > a, #navigation ul ul li.open > a, #navigation ul ul li.active > a {
        background: #012855;
        color: #ffffff;
    }

    #navigation > ul > li > ul > li.open:last-child > a, #navigation > ul > li > ul > li.last.open > a {
        border-bottom: 1px solid #32373e;
    }

    #navigation > ul > li > ul > li.open:last-child > ul > li:last-child > a {
        border-bottom: 0;
    }

    #navigation ul ul li.active > a::after, #navigation ul ul li.open > a::after, #navigation ul ul li > a:hover::after {
        border-color: #ffffff;
    }

    /* Rollover LASIK Callouts */
    .colorbox {
        display: block;
        z-index: 99999999;
        transform: translateX(0px) translateY(0px) translateZ(0px) !important;
        opacity: 1 !important;
    }

    .project-name {
        transform: translateX(0px) translateY(0px) translateZ(0px) !important;
    }

    .embed-container {
        max-width: 100%;
        padding-bottom: 56.25%;
    }
}

@media (max-width: 800px) {
    /** Stack Gutenberg Columns & Media Text **/

}

@media (max-width: 767px) {

    .w-nav-overlay .w--nav-menu-open, .w-nav-overlay [data-nav-menu-open] {
        top: 59px;
    }

}

@media only screen
and (min-device-width: 375px)
and (max-device-width: 667px)
and (-webkit-min-device-pixel-ratio: 2)
and (orientation: landscape) {

}

@media (max-width: 479px) {

    .entry hr {
        margin: 30px auto;
    }

    .featured-img-post {
        float: none;
        margin: 0 0 30px 0;
        text-align: center;
    }
}