  /* Focus */
input[type=text]:focus, 
input.search-box.form-control:focus, 
select:focus,
input[type=checkbox]:focus,
input[type=radio]:focus,
textarea:focus,
a:focus,
button:focus {
  outline: 3px solid rgba(81, 203, 238, 1) !important;
}
input[type="text"]:focus, input[type="tel"]:focus, input[type="email"]:focus, input[type="search"]:focus, input[type="password"]:focus, input[type="url"]:focus, input[type="date"]:focus, textarea, .form-control:focus {
  outline: 3px solid rgba(81, 203, 238, 1) !important;
	background: #fff !important;
}

.header .bg-stretch:before {
    background: -webkit-linear-gradient(top, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%) !important;
    background: linear-gradient(to bottom, rgba(0, 0, 0, .5) 0%, rgba(0, 0, 0, 0) 100%) !important;
}
.screenreader {
    position: absolute;
    left: -10000px;
    top: auto;
    width: 1px;
    height: 1px;
    overflow: hidden;
}
.screenreader:focus {
	left: 0;
	top: 0;
	width: auto;
	height: auto;
	padding: 15px 25px;
	background: #B6CFDD;
	color: #315473;
	z-index: 999;
	text-decoration: underline;
}
.btn-cta-block { 
	border: 1px solid transparent;
}
/* START New nav */
.nav-container {
    -webkit-transition: none;
    transition: none;
    -webkit-transform: none;
    -ms-transform: none;
    transform: none;
    overflow: visible;
    max-height: inherit;
    -webkit-box-flex: 1;
    -ms-flex-positive: 1;
    flex-grow: 1;
    padding: 0 0 0 15px;
    position: relative;
    top: auto;
    left: auto;
    right: auto;
    min-height: inherit;
}
#main-nav {
    -webkit-transition: -webkit-transform .45s ease;
    transition: -webkit-transform .45s ease;
    transition: transform .45s ease;
    transition: transform .45s ease, -webkit-transform .45s ease;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-flow: column nowrap;
    flex-flow: column nowrap;
    font-size: 16px;
    line-height: 22px;
    font-weight: 300;
    min-height: inherit;
}
@media (min-width: 992px) {
	#main-nav {
		-webkit-transform: none;
		-ms-transform: none;
		transform: none;
		-webkit-box-pack: end;
		-ms-flex-pack: end;
		justify-content: flex-end;
		-webkit-box-orient: horizontal;
		-webkit-box-direction: normal;
		-ms-flex-direction: row;
		flex-direction: row;
		-webkit-box-align: center;
		-ms-flex-align: center;
		align-items: center;
		padding: 0;
		background: none;
	}
}
@media (max-width: 991.9px) {
	.home .banner.container {
		border-left: 0px !important;
		border-right: 0px !important;
		padding-top: 120px;
		padding-bottom: 0px;
	}
	.header-top > .container {
		padding-top: 10px;
		padding-bottom: 10px;
	}
}
/* END New nav */
#nav > ul > li > a:focus {
    background: #B6CFDD;
    color: #315473;
    text-decoration: none;
}
@media (max-width: 991.9px) {
	#nav {
		padding-bottom: 150px;
	}
	#nav > ul#navigation > li > .subnav {
		opacity: 1 !important;
		visibility: visible !important;
	}

  /* Additional styles for sub-menu if needed */
}

#nav > ul > li:hover > a.has-drop-down-a:before {
    opacity: 1;
    visibility: visible;
}

@media screen and (min-width: 992px) {
    #nav > ul > li.active > a.has-drop-down-a:after {
        border-top: 4px solid #315473;
    }

    @media (min-width: 992px) {
        #nav > ul > .has-drop-down:hover a:before {
            border-bottom: 1px solid #315473 !important;
            border-left: none !important;
            border-right: none !important;
            display: block;
            position: absolute;
            bottom: 0;
            right: 0;
            width: 100%;
            height: 1px;
            margin: 0;
        }

        @media (min-width: 992px) {
            #nav > ul > li > a.has-drop-down-a:before {
                -webkit-transition: opacity .4s ease, visibility .4s ease;
                transition: opacity .4s ease, visibility .4s ease;
                content: "";
                bottom: 0;
                position: absolute;
                left: 50%;
                -webkit-transform: translateX(-50%);
                -ms-transform: translateX(-50%);
                transform: translateX(-50%);
                -webkit-transform-origin: 0 100%;
                -ms-transform-origin: 0 100%;
                transform-origin: 0 100%;
                height: 0;
                width: 0;
                border-bottom: 16px solid #063567;
                border-left: 16px solid transparent;
                border-right: 16px solid transparent;
                margin: 0 0 0 -8px;
                opacity: 0;
                visibility: hidden;
            }
        }
    }
}
