/* Base
================================================================================== */
html {
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* Focus Style
----------------------------- */

html:not(.msie) :focus-visible {
    /* Replace the standard focus style */
    outline: 0;
    box-shadow: 0 0 0 .1875rem rgba(131,192,253,.75);
}

html:not(.msie) .no-focus-indicator:focus {
    /* Hide focus style for certain elements */
    outline: 0;
    box-shadow: none;
}

::-moz-focus-inner {
    /* Hide default focus style in Firefox */
    border: 0;
}

/* Bootstrap Grid Overrides 
==================================================================================*/

/* Increase default container widths and add XXL Size */

/* SM */
@media screen and (min-width: 576px) {.container { max-width: 540px; } }

/* MD */
@media screen and (min-width: 768px) { .container { max-width: 720px; } }

/* LG */
@media screen and (min-width: 992px) { .container { max-width: 960px; } }

/* XL */
@media screen and (min-width: 1200px) { .container { max-width: 1240px; } }

/* XXL */
@media screen and (min-width: 1800px) { .container { max-width: 1440px; } }


/* Global Styles
============================================================= */

.site--main {
	overflow: hidden;
}

.site--body {
	background-color: #ffffff;
}

body {
    font-family: 'Open Sans', sans-serif;
    overflow-x: hidden;
    color: #333f48;
}

img {
    max-width: 100%;
    height: auto;
    border-style: none;
    vertical-align: middle;
}

a {
    color: #3F808A;
    text-decoration: none;
    background-color: transparent;
}

a:hover {
    color: #00808b;
    text-decoration: underline;
}

.module--accordion, .module--announcement, .module--button, .module--header, .module--iframe-embed, .module--image-text-block-cta, .module--tabs, .module--text-block, .module--video-embed, .module--emergency-info, .module--social-share {
	margin-bottom: 2rem;
    /* border: 1px dashed #ff0000; For dev purposes only */
}
 
.text-caption {
    margin-bottom: .75rem;
    font-size: .875rem;
    padding-top: .125rem;
}


/* Header 
==================================================================================*/

/* Skip Link Button
----------------------------- */
.site--header .skip-link {
	position: absolute;
	top: .75rem;
	left: 50%;
	z-index: 4000;
	opacity: 0;
	-webkit-transform: translateX(-50%);
	        transform: translateX(-50%);
	pointer-events: none;
}

.site--header .skip-link:focus {
	opacity: 1;
	pointer-events: auto;
}

.site--header .skip-link.button {
    display: inline-block;
    min-width: 16rem;
    padding: .75rem 1.3125rem;
    border-radius: 1.3125rem;
    text-align: center;
    font-size: .875rem;
    line-height: 1.125rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: .0625rem;
    color: #ffffff;
    background-color: #005F86;
    border-color: #005F86;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

.site--header .skip-link.button:hover {
    background-color: #005F86;
    border-color: #005F86;
}

/* Logo and Icon Links
----------------------------- */
.section--header {
    padding-top: 1rem;
}

.section--header .navbar-nav .nav-link {
    font-size: 1rem;
    color: #333f48;
    font-weight: 600;
    line-height: 2rem;
}

.section--header .navbar-nav .nav-link:hover {
    color: #005F86;
}

.section--header .dropdown-item {
    display: block;
    width: 100%;
    padding: .25rem 1.5rem;
    clear: both;
    font-weight: 400;
    color: #333f48;
    text-align: inherit;
    white-space: normal;
    background-color: transparent;
    border: 0;
}

.section--header .dropdown-item:hover {
    color: #005F86;
}

hr.header-separator {
    margin-top: .5rem;
    margin-bottom: 1rem;
}

.section--header .logo .image {
    width: auto;
    height: 4.375rem;
    margin-bottom: .5rem;
}

.section--header .navbar {
    padding: .5rem 0;
}

.main-menu-mobile .navbar {
    padding: 0;
}

.section--header .fa-bars-icon, .section--header .fa-times-icon {
    padding: 0 0 0 0;
    margin-top: .75rem;
    font-size: 1.875rem;
    color: #333f48;
    line-height: 1;
    background-color: transparent;
    border: none;
    border-radius: .25rem;
}

.section--header .fa-home-icon {
    display: block;
    margin-top: .75rem;
    font-size: 1.875rem;
    padding: 0;
    color: #333f48;
    line-height: 1;
}

.section--header .fa-home-icon:hover {
    color: #005F86;
}

.section--header .fa-search-icon {
    font-size: 1.5rem;
    color: #333f48;
    padding: 0;
    margin-top: .5rem;
    margin-right: .5rem;
    line-height: 1.75rem;
}

.section--header .fa-search-icon:hover {
	color: #333f48;
}

.section--header .search-label {
    display: none;
    padding-right: .5rem;
    font-size: 1.125rem;
    font-weight: 700;
    vertical-align: middle;
}

#search-drawer-icon {
    vertical-align: middle;
}

/* LG */
@media screen and (min-width: 992px) {
    .section--header .logo .image {
        height: 5rem;
    }
    .section--header .search-label {
        display: inline-block;
    }

    .section--header .search {
        margin-top: auto !important;
        margin-bottom: auto !important;
    }

    .section--header .fa-search-icon {
        margin-top: 0rem;
        font-size: 1.25rem;
        padding: 0;
        margin-right: 0;
        margin-top: auto !important;
        margin-bottom: auto !important;
    }
    .section--header .fa-home-icon {
        margin-top: 0rem;
        font-size: 1.25rem;
        padding-right: 1rem;
        margin-right: 0;
        margin-top: 0;
    }

    .section--header .dropdown-item {
        white-space: nowrap;
    }
}

  /* Language Links
  ----------------------------- */

  .phone-and-lang-links hr {
    margin-top: .5rem;
    margin-bottom: .375rem;
    border-color: #dcdcdc;
}

.site-lang-links {
    margin-bottom: .3rem;
}

.site-lang-links, .site-lang-wrapper {
    width: auto;
}

.site-lang-wrapper .lang-link {
    margin-left:auto;
}

.site-lang-links, .site-lang-wrapper, .lang-link {
    display: flex !important;
}

.site-lang-links .fa-globe-americas {
    padding-top: .375rem;
    margin-right: .375rem;
}

.goog-te-gadget .goog-te-combo {
    font-family: 'Open Sans', sans-serif;
    font-size: .75rem;
    font-weight: 700;
    margin: 0px !important;
    line-height: 1.775rem;
    color: #005F86;
    cursor: pointer;
    width: 120px;
    text-transform: uppercase;
}

@media screen and (min-width: 992px) {

    .site-lang-links {
        margin-bottom: 0;
    }
  
    .site-lang-wrapper .lang-link {
        margin-left:0;
    }

    .site-link .text {
        font-weight: 600;
    }

    .goog-te-gadget .goog-te-combo {
        font-weight: 600;
        width: 112px;
    }
}

.language-toggle {
    display: flex;
}

.language-toggle::after {
    content: '';
    border: 4px solid transparent;
    border-top: 4px solid #333f48;
    margin-left: 2px;
    margin-bottom: 10px;
    display: inline-block;
    vertical-align: bottom;
    height: 5px !important;
	margin-top: 12px;
    margin-bottom: 0px;
}

.goog-te-gadget .goog-te-combo:hover {
	color: #00466b;
	border-bottom:0;
}

/* Helper Spacing
============================================================= */

.h-space-after-1rem {
	margin-bottom: 1rem;
}

.h-space-after-2rem {
	margin-bottom: 2rem;
}

.h-space-after-3rem {
	margin-bottom: 3rem;
}

/* Screen Reader Only
============================================================= */

.readeronly {
	position: absolute;
	left: -99999px;
}

/* Footer 
==================================================================================*/
.site--footer {
    background: #333f48;
    padding-top:3rem;
}

.site--footer .logo .link .image {
    height: 6rem;
}

.site--footer .logo .link {
    display: inline-block;
}

hr.footer-separator {
    border-top: 1px solid rgb(220 220 220 / 25%);
    margin-top: 1rem;
    margin-bottom: 1rem;
}

.site--footer .copy {
    color: #ffffff;
    text-align: center;
}

.site--footer .copy-2 {
    color: #ffffff;
    text-align: center;
}


.site--footer .footer-copyright p {
    margin-bottom: 1rem;
}


/* MD */
@media screen and (min-width: 768px) {
	.page--homepage .module--header {
		margin-bottom: 1rem;
	}
}

/* LG */
@media screen and (min-width: 992px) {
    .site--footer .footer-copyright p {
        margin-bottom: .5rem;
    }
}




