
/*
font-family: 'Poppins', sans-serif;
font-family: 'Permanent Marker', cursive;
*/





/* THE STYLES WE WILL ALWAYS USE */
/* override Bootstrap stuff in the CMS */

/* FORM BUILDER */
.way-offsides {
    position: absolute;
    left: -50000px;
}


/* NEW NAVIGATION STUFF */
.dropdown-toggle {
  display: inline-block;
  position: absolute;
  top: 0;
  right: 0;
  z-index: 0;
  width: 60px;
  height: 60px;
  padding: 0;
  font-size: 14px;
  line-height: 60px;
  color: white;
  background: transparent;
  border: none;
}

  /* // this variant makes the button look more like a button -- it's not as tall as its parent and it's vertically centered (but the vertical centering has to be done manually) */
  .dropdown-toggle.button {
    top: 0;
    right: 0;
    width: 75px;
    height: 66px;
    font-size: 12px;
    line-height: 0;
    background: transparent;
    padding: 0;
  }
  .dropdown-toggle.button:hover,
  .dropdown-toggle.button:focus,
  .dropdown-toggle.button:active,
  .dropdown-toggle.button.active {
    background: #016fb9;
  }
  .dropdown-toggle.button .glyphicon {
    color: white;
  }
.dropdown-toggle.button .glyphicon {
    vertical-align: middle;
  }
.dropdown-toggle.button .glyphicon.glyphicon-minus {
    right: 1px;
  }


  @media (min-width: 768px) {
      .dropdown-toggle.button { display: none; }
  }

  /* .glyphicon {
    width: 100%;
    text-align: center;
  } */



.stacktable {

margin-bottom:35px;

}


article table .table-row:last-child {

border-bottom: 1px solid #666666;

}


.hidden-from-view {

display:none;

}

#cms_overall .cms_hide_me { display: none; } 
#cms_overall .globalcmsnav {
  box-sizing: initial;
}
#cms_overall .cmselemtitle img, #cms_overall  .cmselemdelete img {
float:none;
margin:0px;

}
/* remove scrollbar from Bootstrap mobile navigation */
.navbar-collapse {
  max-height: none;
  border-top:none;
}

.navbar-collapse {
  position: relative;
  /* FOR TESTING */
}

/* expand/collapse +/- icons in mobile navigation */
.navbar-nav .open .glyphicon-chevron-down,
.navbar-nav .glyphicon-chevron-right,
.navbar-nav .open .glyphicon-menu-down,
.navbar-nav .glyphicon-menu-right {
  display: inline;
}
.navbar-nav .glyphicon-chevron-down,
.navbar-nav .open .glyphicon-chevron-right,
.navbar-nav .glyphicon-menu-down,
.navbar-nav .open .glyphicon-menu-right {
  display: none;
}

/* generate file type and external link icons because that's neat-o */
/* NOTE: images URLs are relative for this demo but should be absolute (/images/ instead of images/) */
#content a[rel~="external"],
#content a[target="_blank"] {
  padding-right: 15px;
}

#content a[href*=".pdf"],
#content a[href*=".doc"],
#content a[href*=".docx"],
#content a[href*=".ppt"],
#content a[href*=".pptx"],
#content a[href*=".xls"],
#content a[href*=".xlsx"],
#content a[href*=".xlt"] {
  padding-right: 25px;
}

/*
#content a[rel~="external"]:after,
#content a[target="_blank"]:after {
  content: url(/images/icon_external_link_small.png);
  position: absolute;
  padding-left: 5px;
}

#content a[href*=".pdf"]:after {
  content: url(/images/icon_pdf_small.png);
  position: absolute;
  padding-left: 3px;
}

#content a[href*=".doc"]:after,
#content a[href*=".docx"]:after {
  content: url(/images/icon_word_small.png);
  position: absolute;
  padding-top: 1px;
  padding-left: 4px;
}

#content a[href*=".ppt"]:after,
#content a[href*=".pptx"]:after {
  content: url(/images/icon_powerpoint_small.png);
  position: absolute;
  padding-top: 1px;
  padding-left: 4px;
}

#content a[href*=".xls"]:after,
#content a[href*=".xlsx"]:after,
#content a[href*=".xlt"]:after {
  content: url(/images/icon_excel_small.png);
  position: absolute;
  padding-top: 1px;
  padding-left: 4px;
}
*/

/* place link icons outside Bootstrap buttons */
#content a[rel~="external"].btn,
#content a[target="_blank"].btn {
  position: relative;
}

#content a[href*=".pdf"].btn,
#content a[href*=".doc"].btn,
#content a[href*=".docx"].btn,
#content a[href*=".ppt"].btn,
#content a[href*=".pptx"].btn,
#content a[href*=".xls"].btn,
#content a[href*=".xlsx"].btn,
#content a[href*=".xlt"].btn {
  position: relative;
}

#content a.btn {
  padding-right: 25px;
}

#content a.btn:after {
  padding-left: 35px;
}

#content a[rel~="external"].btn:after,
#content a[target="_blank"].btn:after {
  top: 0;
}

#content a[href*=".pdf"].btn:after,
#content a[href*=".doc"].btn:after,
#content a[href*=".docx"].btn:after,
#content a[href*=".ppt"].btn:after,
#content a[href*=".pptx"].btn:after,
#content a[href*=".xls"].btn:after,
#content a[href*=".xlsx"].btn:after,
#content a[href*=".xlt"].btn:after {
  top: 4px;
}

.hide-mobile {

display:none;

}

#mobile-login-page .maroon {

border: medium none;
    display: inline-block;
    font-size: 12px;
    letter-spacing: 0.7px !important;
    width: 45%;

}

/* MOBILE LOGIN STUFF */
#mobile-login-page .online-banking-form form {
  margin-bottom: 20px;
}
#mobile-login-page .login-choice label {
  color: #333;
}
#mobile-login-page .online-banking-forms .radio-inline {
  display: inline;
}

.username {
margin-bottom:20px;
}

/*.button,
.form-group .btn.btn-primary.btn-custom {
font-weight: 500;
color:#ffffff !important;
letter-spacing: 1px;
padding-top:12px;
padding-bottom:12px;
text-align: center;
font-size: 16px;
line-height: 1;
}*/

/*MOBILE HEADER AND NAVIGATION STYLES*/
.navbar-default {
background-color: transparent;
border:none;
margin-bottom:0px;
}

.navbar-default .navbar-header{
padding-top:13px;
padding-bottom:13px;
}

#menu-label {
float:right;
font-weight: 700;
font-size: 16px;
margin:8px 0px;
padding-right:5px;
color:#353535;
line-height: 49px;

}

.navbar-default .navbar-brand {
padding:8px 15px;
}

.navbar-default .navbar-toggle {
border:none;
margin-right:25px;
}

.navbar-default .navbar-toggle:focus, .navbar-default .navbar-toggle:hover {
background-color: #0d3b66;
}

.navbar-default .navbar-toggle:focus .icon-bar, .navbar-default .navbar-toggle:hover .icon-bar{
background-color: #ffffff;
}

.navbar-default .navbar-toggle .icon-bar {
background-color:#353535;
width:30px;
height:7px;

}

.navbar-default .navbar-toggle .icon-bar + .icon-bar {
margin-top: 5px;
}

.navbar-default .navbar-nav {

margin-top:0px;
margin-bottom:0px;

}

.navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > a.active {
font-size: 14px;
font-weight: 700;
color:#ffffff;
line-height: 18px;
padding-top:24px;
padding-bottom:24px;
background-color: #9a3040;
text-transform: none;
border-bottom:1px solid white;
position: relative;
}

.navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:focus, .navbar-default .navbar-nav > .open > a:hover  {
color:#ffffff;
background-color: #016fb9;
}

.navbar-nav .open .dropdown-menu {
padding-top:0px;
padding-bottom:0px;
}

.navbar-default .navbar-nav .open .dropdown-menu > li > a {
font-weight: 400;
line-height: 16px;
font-size: 12px;
line-height: 18px;
padding-top:18px;
padding-bottom:18px;
color:#ffffff;
background-color: #0d3b66;
border-bottom:1px solid white;

}

.navbar-default .navbar-nav .open .dropdown-menu > li > a:hover, .navbar-default .navbar-nav .open .dropdown-menu > li > a:focus {
color:#ffffff;
background-color: #016fb9;

}

/*MOBILE BANKGING LOGIN*/

#mobile-login {

padding:20px 15px;
background-color: #0d3b66;
text-align: center;
}

#mobile-login .dark-green {
display:inline-block;
color: #ffffff;
text-decoration: none;
background-color: #9a3040; /* it's not green anymore */
padding-left:50px;
padding-right:50px;
text-transform: uppercase;
}

#mobile-login .dark-green:hover {

background-color: #016fb9;
text-decoration: none;
color:#ffffff;

}


/*MOBILE SEARCH */
.search-form {
  margin:0px -15px;
  padding:15px;
  text-align: center;
  background-color: #9a3040;
}

.search-form #header-searchform {
  text-align: center;
}

.search-form .input-group {
  display:block;
  text-align: center;
}

.search-form .form-control {
  border: 1px solid white;
  background-color: #ffffff;
  padding:5px;
  display:inline;
  width:86%;
  font-weight: 400;
  line-height: 18px;
}

.search-form .btn {
  padding: 0px 10px;
  background-color: #0d3b66;
  display: inline;
  border-radius: 0px;
  border: none;
  width: 14%;
  height: 35px;
  position: relative;
  top: 0px;
  left: 0;
  color: #ffffff;
}

.search-form .btn:hover,
.search-form .btn:active,
.search-form .btn:focus {
  background-color: #016fb9;
}

/*MOBILE SLIDER */

.the-slider {
margin-bottom:0px !important;
}

.the-slider .the-slides {
padding:0 0;
background-color: #353535;

}
.the-slider .the-slides::after{
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  opacity: 1;
  z-index: 0;
  background-color: #353535;
}
.the-slider .the-slides .container {
  position: relative;
  z-index: 1;
}
.the-slider .slide-bg {
min-height: 352px;
padding-top:25px;
padding-bottom:25px;

}

.the-slider .the-slides h1 {
font-weight: 700;
font-size: 48px;
color:#ffffff;
line-height: 48px;
margin-bottom:6px;
margin-top:0px;
}

.the-slider .the-slides h2 {
font-weight: 600;
font-size: 24px;
line-height: 24px;
margin-bottom:10px;
color:#ffffff;
margin-top:0px;
}

.the-slider .the-slides p {
font-weight: 400;
font-size: 16px;
line-height: 23px;
margin-bottom:20px;
color:#ffffff;
}

.the-slider .maroon {
display:block;
text-transform: uppercase;
text-align: center;
background-color: #9a3040;
margin-bottom:10px;
max-width:300px;
margin-left:auto;
margin-right:auto;
}

.the-slider .maroon:hover {
background-color: #0d3b66;
color: #ffffff;
text-decoration: none;
}


#banking-login {
height: 90px;
padding-top:18px;
padding-bottom:20px;
color: white;
background-color: #0d3b66;
text-align: left;
}

@media (min-width: 768px) {
  #home #banking-login {
    position: fixed;
    bottom: 0;
    left: 0;
    z-index: 1;
    width: 100%;
  }
}

#banking-login h2 {
font-weight: 600;
color:#ffffff;
text-transform: normal;
font-size: 20px;
line-height: 14px;
display:block;
margin-right:0px;
margin-top:0px;
margin-bottom:10px;
letter-spacing: normal;
}
#cms_overall:not(.cms_staging) .banking-login-desktop {
  display: none !important;
}
.banking-login-desktop .login-links {
padding-right: 107px;
font-weight: 500;
font-size: 12px;
line-height: 12px;
letter-spacing: 0.76px;
color:white;
}

.banking-login-desktop .login-links span::before {
  content: " | ";
  margin-right: 0.5em;
  margin-left: 0.5em;
}

#banking-login a {
font-weight: 400;
font-size: 12px;
line-height: 12px;
letter-spacing: 0.76px;
color:white;
}



#banking-login a:hover {

text-decoration: underline;

}

#banking-login form {
display:inline-block;
padding-right:0px;
}

#banking-login form #user-id {
border:none;
height:28px;
padding:6px;
font-weight: 700;
color:#2a5558;
margin-right:6px;
}

.login-choice {
  padding-top: 5px;
}

.login-choice label {
  font-size: 15px;
  line-height: 20px;
  letter-spacing: 0.23px;
  color: white;
}

@media (max-width: 767px) {
  .online-banking-forms .radio-inline {
    display: block;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .login-choice {
    width: 35.6%;
  }

  .online-banking-form {
    width: 64.3%;
  }
}

@media (min-width: 992px) {

/* search medium desktop */

  .search-form {
    right: 50px;
  }
  .search-form .form-control {
    width: 160px !important;
  }
}

#banking-login form #submit-id,
.online-banking-form .button {
text-transform: normal;
padding:7px 25px 7px;
font-weight: 500;
color:#ffffff;
border:none;
font-size: 16px;
line-height: 16px;
letter-spacing: normal;
background-color: #9a3040;
}

.banking-login-desktop .form-group + .form-group {
  margin-right: 10.25px;
  margin-left: 10.25px;
}

.online-banking-form .text {
width: 150px;
height: 30px;
font-weight: 600;
color:#777777;
border: none;
border-radius: 0;
box-shadow: none;
}

@media (min-width: 992px) {
  .online-banking-form .text {
    width: 190px;
  }
}



.banking-login-desktop .button {
  width: 92px;
  height: 30px;
  vertical-align: bottom;
}

.online-banking-form .button:hover {
  background-color: #016fb9;
}

.online-banking-form p {
  margin: 0 0 10px 0;
}

#online-banking-form-business {
  display: none;
}

.callout {

padding:0px;
}

.bg-opacity {
height:100%;
width:100%;
padding:45px 40px;

}

.callout img.icon {

width:67px;
height:67px;

}

.callout h1{
font-weight: 700;
font-size: 24px;
margin-bottom: 10px;
margin-top:0px;
color:#ffffff;
text-transform: uppercase;
}

.callout h2{
font-weight: 600;
font-size: 20px;
margin-bottom: 10px;
margin-top:0px;
color:#ffffff;
}

.callout p{
font-weight: 400;
font-size: 14px;
color:#ffffff;
margin-bottom:25px;
line-height: 22px;
}

.callout img {

margin-bottom:15px;

}

.callout .maroon, .page-content .maroon,
.form-group .btn.btn-primary.btn-custom {
display:block;
text-align: center;
background-color: #016fb9;
margin-bottom:10px;
max-width:300px;
margin-left:auto;
margin-right:auto;
}

.cms-form .form-group .btn.btn-primary.btn-custom {
  display: inline-block;
}

.callout .maroon:hover, .page-content .maroon:hover,
.form-group .btn.btn-primary.btn-custom:hover {
background-color: #9a3040;
color: #ffffff;
text-decoration: none;
}

.form-group .btn.btn-primary.btn-custom {
	
}

#blog-post {

 background: #353535 url("../images/callout1.jpg") no-repeat center center;
 background-size: cover;

}

#blog-post .bg-opacity {
background-color: rgba(0, 0, 0, 0.5);
}

#calculator {
background: #353535 url("../images/callout2.jpg") no-repeat center center;
background-size: cover;
}

#callout-2 .bg-opacity {
background-color: rgba(0, 0, 0, 0.5);
}

#callout-1, #callout-2 {
background-size: cover;
}

#callout-1 .bg-opacity {
background-color: rgba(0, 0, 0, 0.5);
}

#callout-1 .bg-opacity:hover,  #blog-post .bg-opacity:hover, #callout-2  .bg-opacity:hover{
background-color: rgba(42, 85, 88, 0.80);
}

.blog-post-footer {
	background: #fff;
	padding: 25px 0 0 0;
	font-style: italic;
}

#newsletter {
padding-top:50px;
padding-bottom:50px;
background-color:#353535;

}

#newsletter-info h1{
font-weight: 700;
font-size: 22px;
margin-bottom: 12px;
margin-top:0px;
color:#ffffff;
text-transform: uppercase;
}

#newsletter-info p {
font-weight: 400;
font-size: 14px;
color:#ffffff;
margin-bottom:10px;
line-height: 22px;
}

#newsletter .form-group .form-control  {
border: none;
background-color: #ffffff;
height: 40px;
margin-right: 0.5em;
padding:10px;
display:block;
float:none !important;
font-weight: 400;
font-size: 16px;
line-height: 1;
color:#353535;
border-radius: 0px;
}

#newsletter .maroon{
display:block;
text-transform: uppercase;
text-align: center;
background-color: #9a3040;
margin-bottom:0px;
max-width:300px;
margin-left:auto;
margin-right:auto;
border:none;
width:100%;
font-size: 12px;
line-height: 22px;
}

#newsletter .maroon:hover {
background-color: #0d3b66;
color: #ffffff;
text-decoration: none;
}

footer {
background-color: #9a3040;
padding-top:20px;
padding-bottom:20px;
font-size: 14px;
line-height: 1.42857143;
letter-spacing: normal;
}

#footer-main {

padding-top:20px;
padding-bottom:20px;

}

@media (min-width: 768px) {
  #home #footer-main {
    padding-bottom: 90px; /* space for the fixed-position login banner */
  }
}

#footer-links ul {
padding-left:0px;
margin-bottom:0px;
list-style: none;
text-align: center;
border-bottom:1px solid white;
padding-bottom:20px;
}

#footer-links ul li {
display:inline;
list-style: none;
}

#footer-links ul li a{
display:inline;
list-style: none;
font-weight: 500;
font-size: 14px;
color:#ffffff;
padding:0 8px;
text-transform: uppercase;
}
#footer-main #footer-logo img {

position: relative;
top:6px;

}
#footer-main #footer-links-extra ul {
  padding-left:0px;
margin-bottom:0px;
list-style: none;
position: relative;
top:-3px;
}

#footer-main #footer-links-extra ul li {
display:block;
list-style: none;
}
#footer-main #footer-links-extra ul li a {
font-weight: 400;
font-size: 12px;
color:#ffffff;
margin-bottom:10px;
}

#footer-main h3,
#footer-main h2 {
font-weight: 700;
font-size: 12px;
color:#ffffff;
margin-bottom:8px;
margin-top:0px;
text-transform: uppercase
}
#routing-info {

padding-left:10px;
padding-right:10px;

}
#routing-info p {
font-weight: 400;
font-size: 12px;
color:#ffffff;
margin-bottom:16px;
}


/* Oct 2022 changes */
#footer-main .container a.btn.btn-footer       { background: white;   color: #9a3040; } 
#footer-main .container a.btn.btn-footer:hover { background: #016fb9; color: white; } 
#routing-info p                                { margin: 0; } 
#routing-info h2                               { margin: 10px 0 0 0; } 
#routing-info #routing h2                      { margin: 0; } 



#hours-loc #hours {
margin-bottom:16px;

}
#hours-loc .time p {
font-weight: 400;
font-size: 12px;
color:#ffffff;
margin-bottom:16px;
display:inline;
}
#lender-container #lender .ehl {

margin-left:10px;

}

#lender-container #lender {

margin-bottom:10px;

}

#lender-container #lender p {
font-weight: 400;
font-size: 11px;
color:#ffffff;
display:inline;
margin-left:10px;
}

#footer-main a {
color:#ffffff;
}

#locations a {
font-weight: 400;
font-size: 12px;
margin-bottom:16px;
text-transform: uppercase;
}

#lender-container #notice p {
font-weight: 400;
font-size: 11px;
color:#ffffff;
margin-bottom:0px;
}

#lender-container #notice a {
font-weight: 400;
font-size: 11px;
color:#ffffff;
text-decoration: underline;
}
#lender-container #notice a:hover,
#lender-container #notice a:active,
#lender-container #notice a:focus {
  text-decoration: double underline;
}
#mobile-border-container {

padding:0 15px;
margin-bottom:15px;
}
#mobile-border {
height:1px;
display:block;
background-color: white;
}

.no-padding {
padding-left:0px;
padding-right:0px;
}

#footer-main .dark-green {
display:block;
text-align: center;
margin-bottom:40px;
max-width:300px;
margin-left:auto;
margin-right:auto;
border:none;
width:100%;
background: #0d3b66;
}
#footer-main .dark-green:hover {

background-color: white;
text-decoration: none;
color: #0d3b66 !important;
}

#footer-main .footer-contact {
  display: block;
  max-width: 300px;
  margin: 0 auto 40px;
  border-color: #0d3b66;
  background-color: #0d3b66;
}

#footer-main .footer-contact:hover,
#footer-main .footer-contact:active,
#footer-main .footer-contact:focus {
  background-color: #016fb9;
  border-color: #016fb9;
}



aside {
background-color: #353535;
padding-left:0px !important;
padding-right:0px !important;
padding-bottom:35px;
padding-top:30px;
}

aside .sidebar-header {
padding:35px 30px 10px;
}

aside img {
display:block;
}

aside h1 {
font-weight: 700;
font-size: 20px;
color:#ffffff;
text-transform: uppercase;
border-bottom:5px solid #9a3040;
padding-bottom:19px;
padding-left:1px;
padding-right:30px;
display:inline-block;
}

aside #subnav > li > a {
font-weight: 400;
font-size: 17px;
color:#ffffff;
padding: 15px 15px 15px 30px;
display:block;
line-height: 20px;
}

aside #subnav > li.active > ul  {
list-style: none;
padding-left:0px;
}

aside #subnav > li.active > a, aside #subnav > li > a:hover {

background-color: #414141;

}

aside #subnav > li.active > ul > li > a {
font-weight: 400;
font-size: 15px;
line-height: 18px;
color:#ffffff;
padding: 10px 15px 10px 45px;
display:block;
background-color: transparent;
}
aside #subnav > li.active > ul > li > a.active {

text-decoration: underline;
}

aside #subnav > li.active > ul > li > a:hover {

text-decoration: none;
background-color: #414141;

}


#subpage-content article {
padding-left:0px;
padding-right:0px;

}
article .page-title {
padding:30px 15px;
background: #353535 url("../images/page-title-bg.jpg") repeat left bottom;
}

article .page-title h1 {
font-weight: 700;
font-size: 24px;
line-height: 24px;
margin-top:0px;
color:#9a3040;
margin-bottom:10px;
text-transform: uppercase;
}

article .page-title h2 {
font-weight: 700;
font-size: 18px;
line-height: 24px;
margin-top:0px;
color:#9a3040;
margin-bottom:0px;
}

article .page-content {
padding-left:15px;
padding-right:15px;
padding-bottom: 40px;
padding-top:30px;
}

/* commented-out typographic styles starting from here have been replaced by the styles in the 2021 section at the end of this file */
/*article .page-content h1 {
font-weight: 700;
font-size: 18px;
line-height: 20px;
margin-bottom:10px;
color:#9a3040;
margin-top:0px;
}

article .page-content h2 {
font-weight: 700;
font-size: 16px;
color:#0d3b66;
margin-bottom:10px;
margin-top:0px;
}*/

article .page-content ul {
padding-left:5px;
list-style: none;
margin-bottom:20px;
}
/*article .page-content ul li {
font-size: 14px;
font-weight: 400;
line-height: 20px;
padding-left: 18px;
text-indent: -12px;
}*/
article .page-content ul li:before {
color:#0d3b66;
content: "• ";
font-size:18px;
}
article .page-content .privacy_table ul li::before {
  content: "";
  display: none;
}
.page-content .privacy_table ul {
  padding-left: 1em;
}

/*article .page-content p {
font-weight: 400;
line-height: 20px;
margin-bottom:10px;
font-size: 14px;
}*/


article .page-content .location h1 a{
    font-size: 14px;
    font-weight: 400;
    line-height: 20px;
    margin-bottom: 10px;
color:#0d3b66;
padding-left:10px;

}

article .page-content .location h2 {
margin-top:20px;
}


article .page-content .location p {
line-height: 16px;
margin-bottom:7px;
}


article .page-content img {
margin:10px 0;
}


article .large-only {

display:none;

}



article table.small-only tr:nth-child(2n) {
    background-color: #eeeeee;
}

article table.small-only tr.st-head-row-main td, article table.small-only tr.table-row th {

padding:40px 20px;
background-color: #9a3040 !important;
border-left: 1px solid #9a3040;
border-right: 1px solid #9a3040;
text-align: center;
}

article table.small-only tr.st-head-row-main td a, article table.small-only tr.st-head-row-main td p, article table.small-only tr.table-row th {
font-weight: 700;
text-transform: uppercase;
color:#ffffff;
font-size: 16px;
margin-bottom:0px;
text-align: center;
line-height: 31px;
text-decoration: none;
}

article table.small-only tr.st-head-row-main td a:hover {

text-decoration: underline;

}
article table.small-only tr td:first-child {

border-left:1px solid #666666;

}
article table.small-only tr td {
padding:40px 20px;
border-right:1px solid #666666;
text-align: center;
}

article table.small-only .table-row td:first-child {
border-left:1px solid #666666;


}

article table.small-only tr td:first-child p {
font-weight: 700;
color:#9a3040;
font-size: 14px;
margin-bottom:0px;
}
article table.small-only tr td p  {
font-weight: 400;
font-size: 14px;
margin-bottom:0px;
}

article table.small-only tr td a {

font-weight: 400;
font-size: 14px;
text-decoration: underline;
margin-bottom:0px;
}

.sidebar-header .subnav-image {

height:65px;
width:65px;

}

.alert .glyphicon-remove-sign {
    color: #ffffff;
}

.alert .close {
    opacity: 1;
}

#alert-box {
background-color: #0d3b66;
}

#alert-box .alert {
    margin: 0;
    padding-bottom: 30px;
    padding-top: 30px;
}

#alert-box .glyphicon-exclamation-sign {
color: #ffffff;
font-size: 50px;
opacity: 0.5;
}


#alert-box .alert h2 {
    color: #ffffff;
    font-size: 22px;
    font-weight: 700;
    margin-top: 0;
}
#alert-box .alert p {
color: #ffffff;
font-size: 14px;
font-weight: 400;
margin-bottom: 0;
margin-top: 0;
}
#alert-box .alert a {
  color: white;
  text-decoration: underline;
}
#alert-box .alert a:hover,
#alert-box .alert a:active,
#alert-box .alert a:focus {
  color: white;
  text-decoration: double underline;
}


.alert-message-box {
  padding-top: 16px;
  padding-bottom: 16px;
  color: white;
}

.alert-message-box button {
	float: right;
	width: 20px;
	height: 20px;
	margin: 0 0 0 5px;
	padding: 5px;
	line-height: 0;
	background-color: transparent;
	border: none;
}

.alert-message-box button svg {
	width: 10px;
	height: 10px;
	stroke: white;
	fill: white;
}

.alert-message-box button:hover,
.alert-message-box button:focus,
.alert-message-box button:active {
  outline: 2px dotted white;
  outline-offset: 5px;
}

.alert-message-box .alert-message {
	padding: 0;
}

@media (min-width: 768px) {
	.alert-message-box .alert-message {
		display: flex;
    align-items: center;
	}
}

.alert-message-box img {
	flex: 0 0 auto;
	float: left;
	width: auto;
	height: 2.5ex;
	margin-right: 30px;
	margin-bottom: 0;
}

@media (min-width: 768px) {
	.alert-message-box img {
		width: 50px;
		height: auto;
		margin-right: 30px;
		margin-left: 30px;
	}
}

.alert-message-box .alert-message-text:last-child  {
	margin-bottom: 0;
}

@media (min-width: 768px) {
	.alert-message-box .alert-message-text {
		flex: 1 1 auto;
	}
}

.alert-message-box .heading {
	font-size: 22px;
	font-weight: 700;
	margin-bottom: 10px;
  color: inherit;
}

.alert-message-box a {
	text-decoration: underline;
  color: white;
}

.alert-message-box a:hover,
.alert-message-box a:focus,
.alert-message-box a:active {
	color: inherit;
  border-bottom: 2px solid white;
}

.alert-message-box.notification {
  background-color: #0d3b66;
}

.alert-message-box.maintenance  {
	background-color: #016fb9;
}

.alert-message-box.warning {
	background-color: #9a3040;
}

article .location {
border-bottom: 2px solid #414141;
margin-bottom:20px;
padding-bottom:20px;
}

article .location:last-child {

border-bottom: none;

}

/*Calculator Styles*/
#questions .ui-state-default .glyphicon-menu-right {
display:inline-block;
color:#0f5469;
}
#questions .ui-state-default .glyphicon-menu-down {
display:none;
}
#questions .ui-state-active .glyphicon-menu-down {
display:inline-block;
color:#0f5469;
}
#questions .ui-state-active .glyphicon-menu-right {
display:none;
}

#questions .ui-accordion-header:hover {
cursor: pointer;
border: 1px solid #dee2e4;
padding:9px 9px;

}

#questions .ui-state-default {
padding:10px 10px;
background-color: #f1f6f8;
}

#questions .ui-accordion-content p{
  padding:10px;


}

/*.page-content form .button,
.form-group .btn.btn-primary.btn-custom {
border: none;
display: inline-block;
width:45%;
font-size:12px;
letter-spacing: .7px !important;
border-radius: 0;
}*/

.page-content form .required label:first-child::after {
    content: "*";
    position: relative;
    left: 5px;
    color: #9a3040;
}

/*.page-content form .button:hover,
.form-group .btn.btn-primary.btn-custom:hover {
text-decoration: none;
color:#ffffff;

}*/

.page-content a:not(.btn-custom) {

color:#0d3b66;

}

.page-content a:not(.btn-custom):hover,
.page-content a:not(.btn-custom):active,
.page-content a:not(.btn-custom):focus {
  color: #9a3040;
}

.page-content .title-row a:hover,
.page-content .title-row a:active,
.page-content .title-row a:focus,
.page-content .st-head-row a:hover,
.page-content .st-head-row a:active,
.page-content .st-head-row a:focus {
  color: white;
  text-decoration: double underline;
}

@media (max-width: 767px) {
  .page-content .stack-columns .title-row a:hover,
  .page-content .stack-columns .title-row a:active,
  .page-content .stack-columns .title-row a:focus {
    color: #9a3040;
  }
}

.page-content :not(h1):not(h2):not(h3) > a:not(.btn-custom) {
  text-decoration: underline;
}

.table-condensed tr.title {

background-color: #9a3040 !important;
    border:none !important;
    padding: 10px;

}

.table-condensed tr.title th {

color: #ffffff;
    font-size: 14px;
    font-weight: 700;
    margin-bottom: 0;
    text-transform: uppercase;
  letter-spacing: 0.05em;

}


.table-row td {
    font-size: 14px;
    font-weight: 400;

}

.staff .img-responsive {
width:75% ;
float:none !important;
display:inline-block;
margin-left:auto ;
margin-right:auto;
}

.staff h2 {

margin-top:20px !important;

}

.staff-col .staff-member {
margin-bottom:20px;

}

.staff-col .staff-member p {
line-height: 24px;
margin-bottom:0px;
}

/* Search results */

#left_col_search {
  margin: 30px 0 0 23px;
}

#searchsubmitsmall {
  display: block;
  margin: 10px 0 30px 0;
}

#result_header {
  margin: 10px 0 25px 0;
}

#results {
  width: 660px;
}

#results ul li > strong {
  display: none;
}

#results .title em.sml {
  font-weight: bold;
  font-style: normal;
}

#results .description ul {
  margin: 5px 0 5px 20px;
  padding: 0;
}

article .page-content .description ul li::before { content: none; }

#results .description li {
  margin: 0;
  padding: 0;
  text-indent: 0px;
}

#results .description .mak_1 {
  color: #b38e5d;
}

#results .url {
  margin-bottom: 20px;
  font: 12px Arial, sans-serif;
}

#results .url strong {
  font-weight: normal;
}

#results #other_pages {
  margin: 40px 0 20px 0;
}

#results #other_pages a,
#results #other_pages strong {
  margin-right: 5px;
  margin-left: 5px;
}

#sitemap_container div.col > ul > li > a {
color: #0d3b66;
    font-size: 16px;
    font-weight: 700;
    margin-bottom: 10px;
    margin-top: 0;
}

#sitemap_container div.col > ul > li > a {
margin-bottom:12px;
display:block;
}

#sitemap_container div.col > ul {
list-style: none !important;
}

#sitemap_container div.col > ul > li > ul {
list-style: circle;
}

#sitemap_container div.col > ul > li > ul > li > a{
margin-bottom:8px;
display:block;
}

#sitemap_container div.col > ul > li > ul > li > ul {
list-style: square;
}

#sitemap_container div.col > ul > li > ul > li > ul > li > a {
margin-bottom:4px;
display:block;
}

#sitemap_container div.col ul li::before {

content:none;

}

@media (min-width: 768px) {

  .the-slider .the-slides::after{
    opacity: 0;
  }

#callouts .container {

width:100% !important;

}

article .page-content img {
margin:10px;
float:right;
}

article .page-content .location img {
margin-top:0px;
margin-bottom:0px;
}

.hide-mobile {

display:block !important;

}

.hide-desktop {

display:none !important;

}

.navbar-default .navbar-collapse {
  float:right;
  padding-left:15px;
}

.navbar-nav .dropdown:hover > .dropdown-menu {
display: block;
}

.navbar-nav .glyphicon-chevron-down,
.navbar-nav .glyphicon-chevron-right,
.navbar-nav .open .glyphicon-chevron-down,
.navbar-nav .open .glyphicon-chevron-right,
.navbar-nav .glyphicon-menu-right,
.navbar-nav .glyphicon-menu-down,
.navbar-nav .open .glyphicon-menu-right,
.navbar-nav .open .glyphicon-menu-down {
display: none;
}

.break {
display:block;
}

#top-navigation {

background-color: #ffffff;
padding-top:12px;
}

.navbar-default {
background-color: #9a3040;
margin-bottom:0px;
border-radius: 0px !important;
}

#logo-nav {

padding-bottom:1px;

}

#top-navigation .navbar-brand {
padding:0px;
}

@media (min-width: 768px) and (max-width: 991px) {
  .navbar-brand img {
    width: 135px;
    height: auto;
  }
}

.navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > a.active{
padding-right:25px;
padding-left:25;
font-size: 14px;
letter-spacing: 1px;
border-bottom:none;
}

.navbar-default .navbar-nav > li:last-child > a {
margin-right:0px;
}

.navbar-default .navbar-nav > li:hover > a,
.navbar-default .navbar-nav > li > a.active:hover, .navbar-default .navbar-nav > li > a.active:focus, .navbar-default .navbar-nav > li > a:focus, .navbar-default .navbar-nav > li > a:hover, .navbar-default .navbar-nav > .open > a, .navbar-default .navbar-nav > .open > a:focus, .navbar-default .navbar-nav > .open > a:hover, .navbar-default .navbar-nav > .open > a:focus {
border-bottom:none;
background-color: #0d3b66;
color:#ffffff;
}



#utility-nav-desktop {
padding-left:0px;
list-style: none;
float:right;
margin-bottom:0px;
padding-top:20px;
font-size: 0; /* doing this collapses all whitespace between the links */
}

#utility-nav-desktop > li{
display:inline;
}

#utility-nav-desktop > li > a {
  font-weight: 600;
  font-size: 12px;
  padding-right:8px;
  padding-left:8px;
  color:#666666;
  border-right:1px solid #666666;
  text-transform: capitalize;
  }

#utility-nav-desktop > li:last-child > a {
  border-right:none;
}

/* search desktop */
.search-form {
  position: absolute;
  right: 40px;
  top: -67px;
  background-color: transparent;
  vertical-align: bottom;
}

.search-form .input-group {
  padding-top:15px;
}

.search-form .form-control {
  display:inline;
  width: 120px;
  border: 1px solid #b2b7bb;
  background-color: #ffffff;
  font-weight: 400;
  padding-top:2px;
  padding-bottom:2px;
  height: 26px;
}

@media (min-width: 768px) and (max-width: 991px) {
  .search-form .form-control {
    width: 100px;
  }
}

.search-form .btn {
  display:inline;
  padding:0px 6px;
  background-color: #9a3040;
  border-radius: 0px;
  border:none;
  height:26px;
  position:relative;
  top:0px;
  left:0px;
  width: auto;
  color:#ffffff;
}

.search-form .btn:hover,
.search-form .btn:active,
.search-form .btn:focus {
  background-color: #0d3b66;
}

.navbar-nav .dropdown-menu {
padding:0px;
border:none;
box-shadow: none !important;
}

.dropdown-menu > li > a {
font-weight: 700;
font-size: 14px;
color:#0d3b66;
line-height: 18px;
padding:20px 25px;
background-color: #ffffff;
min-width: 200px;
}

.dropdown-menu > li > a:focus,
.dropdown-menu > li > a:hover {
background-color: #016fb9;
color:white;
}

.the-slider .slide-bg {
padding:50px 25px;
background-color: rgba(0, 0, 0, 0.5);

}

.slide-1 {
 /* background: #353535 url("/images/slider1.jpg") no-repeat center center; */
 background-size: cover;
}

.the-slider .maroon {
display:inline-block;
max-width: 150px;
margin-right:15px;
padding-left:20px;
padding-right:20px;
}

#callouts {

background-color:#232323;

}

.callout {
min-height:450px;
}

.callout .maroon{
display:inline-block;
margin-left:0px;
margin-right:0px;
padding-left:25px;
padding-right:25px;
}

.bg-opacity {
min-height:550px;
}
form.newsletter {
  padding-top: 40px;
  padding-bottom: 25px;

}

#newsletter .maroon{
display:inline-block;
width:25%;
padding:7px 0px;
margin-left: 10px
}

#footer-main #footer-links-extra ul {
padding-left:20px;
}

footer {
padding-top:50px;
padding-bottom:50px;
}

/*Subpage*/

#subpage-banner {
 background: #353535 url("../images/about-us.jpg") no-repeat center center;
 background-size: cover;
}

.estimators #subpage-banner {
 background: #353535 url("../images/rates-and-resources.jpg") no-repeat center center;
 background-size: cover;
}

#banner-text {
padding:50px 50px;
background-color:  rgba(0, 0, 0, 0.5);
min-height: 320px;
}

#banner-text h1 {
font-weight: 400;
font-size: 30px;
color:#ffffff;
line-height: 34px;
margin-top:0px;
margin-bottom:25px;
text-shadow: 1px 1px #000000;
}

#banner-text p {
font-weight: 600;
font-size:16px;
line-height: 34px;
margin-bottom:0px;
color:#ffffff;
text-shadow: 1px 1px #000000;
}

article .page-title h1 {
font-size: 30px;
line-height: 30px;
}

article .page-title h2 {
line-height: 22px;
line-height: 22px;
}

article .page-title {
padding:50px;
}

article .page-content {
padding-top:30px;
padding-left:20px;
padding-right:0px;
}

article .stacktable {

margin-bottom:35px;

}

article .small-only {
display:none;
}

article .large-only {
display:block;
}

article table.large-only tr.table-row:nth-child(2n) {
    background-color: #eeeeee;
}

article table .title-row td {

padding:10px 10px;
color: white;
background-color: #9a3040;
border-left: 1px solid #9a3040;
border-right: 1px solid #9a3040;
}

article table .title-row td a,  article table .title-row td p{
font-weight: 700;
text-transform: uppercase;
color: white !important;
font-size: 14px;
margin-bottom:0px;
letter-spacing: 0.05em;
}

article table .table-row td {
padding:10px 6px;
border-right:1px solid #666666;
}

article table .table-row td:first-child {
border-left:1px solid #666666;


}

article table .table-row td:first-child p {
font-weight: 700;
color:#9a3040;
font-size: 12px;
}
article table .table-row td p  {
font-weight: 400;
font-size: 14px;
margin-bottom:0px;
}

article table .table-row td a {

font-weight: 400;
font-size: 14px;
text-decoration: underline;
margin-bottom:0px;
}









}
@media (min-width: 992px) {

article table .title-row td {
padding:20px;

}

article table .table-row td {
padding:20px;
}

article table .title-row th {
padding:10px 10px;
color: white;
background-color: #9a3040;
border-left: 1px solid #9a3040;
border-right: 1px solid #9a3040;
}

article table .title-row th a, 
article table .title-row td p{
font-weight: 700;
text-transform: uppercase;
color: white !important;
font-size: 14px;
margin-bottom:0px;
letter-spacing: 0.05em;
}

article table .title-row th a,
article table .title-row td a {
font-size: 16px;

}

article table .table-row th {
padding:10px 6px;
border-right:1px solid #666666;
}

article table .table-row th:first-child {
border-left:1px solid #666666;
}

article table .title-row th {
padding:20px;
}

article table .table-row th:first-child p {
font-weight: 700;
color:#9a3040;
font-size: 14px;
}

article table .table-row td:first-child p {
font-size: 14px;

}
article table .table-row td p {
font-size: 14px;

}
article table .table-row td a {
font-size: 14px;

}

.navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > a.active, .navbar-default .navbar-nav > li > a.active:hover {
padding-right:35px;
padding-left:35px;
font-size: 16px;
letter-spacing: 1.2px;
}

#utility-nav-desktop > li > a {
font-size: 13px;
letter-spacing: 1.3px;
padding-left:12px;
padding-right:12px;
}

.dropdown-menu > li > a {
min-width: 250px;
}

.the-slider .slide-bg{
padding:60px 40px;
}

.the-slider .maroon {
padding-left:30px;
padding-right:30px;
max-width:175px;
}

.callout {
min-height:465px;

}

.bg-opacity {
min-height:465px;
}

#footer-links ul li a{
padding:0 20px;
}

#banking-login h2 {
margin-right:0px;
}

#banking-login form {
padding-right:0px;
}

article .page-content {

padding-left:50px;

}


}

@media (min-width: 1200px) {
.navbar-default .navbar-nav > li > a {
padding-right:45px;
padding-left:45px;
}

.navbar-default .navbar-nav > li > a, .navbar-default .navbar-nav > li > a.active, .navbar-default .navbar-nav > li > a.active:hover {
padding-right:45px;
padding-left:45px;
}

.dropdown-menu > li > a {
min-width: 300px;
}

.the-slider .slide-bg {
padding:75px 45px;
}

.callout {
min-height:415px;

}

.bg-opacity {
min-height:415px;
}

#footer-links ul li a{
padding:0 30px;
}

.page-content form .button,
.form-group .btn.btn-primary.btn-custom {
width:29%;
}


}




article .disclaimer,
article .disclaimer p {
  font-size: 12px;
  font-style: italic;
  letter-spacing: 0.03em;
}





.staff-photo-group {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
        justify-content: space-between;
  -webkit-box-align: stretch;
      -ms-flex-align: stretch;
          align-items: stretch;
  margin: 0 -15px 30px -15px;
}
@supports (display: grid) {
  .staff-photo-group {
    display: -ms-grid;
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));
    grid-gap: 30px 30px;
    margin: 0 0 30px 0;
  }
}
.staff-individual .staff-photo-group {
  display: block;
  padding: 0;
}
.staff-photo {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  -ms-grid-column-align: start;
      justify-self: start;
  width: 200px;
  max-width: 200px;
  margin: 15px;
  padding: 0;
  border: none;
}
@supports (display: grid) {
  .staff-photo {
    width: auto;
    margin: 0;
  }
}
.staff-photo img {
  display: block;
  max-width: 100%;
  height: auto;
}
.staff-photo .caption {
  padding: 10px 0 0 0;
  line-height: normal;
}
.staff-photo .caption span {
  display: block;
}
.staff-photo .caption span:empty {
  display: none;
}

.staff-photo .staff-name {
  margin-bottom: 0.5ex;
  font-weight: 600;
  font-size: 18px;
  line-height: 1.15;
  color: #9a3040;
}

.staff-photo .staff-job-title {
  margin-bottom: 0.5ex;
  font-weight: 500;
  line-height: 1.25;
  /*color: #9a3040;#0d3b66*/
}

.staff-photo .staff-tel,
.staff-photo .staff-email,
.staff-photo .staff-nmls {
  font-size: 14px;
}



/* most of the new 2021 stuff, but some styles are above, too */


/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.3.6,
* Autoprefixer: v10.3.1
* Browsers: last 4 version
*/

body {
  font-size: 16px;
  /*line-height: 22px;
  letter-spacing: 0.48px;*/
  line-height: normal;
  letter-spacing: normal;
  font-family: 'Poppins', sans-serif;
  color: #333333;
}

.page-content h1,
.h1 {
  margin: 0 0 15px 0;
  font-weight: 600;
  font-size: 28px;
  line-height: 36px;
  letter-spacing: 0.66px;
  color: #0d3b66;
}

h2,
.h2 {
  margin: 0 0 15px 0;
  font-weight: 600;
  font-size: 24px;
  line-height: 30px;
  letter-spacing: 0.66px;
  color: #0d3b66;
}

h3,
.h3 {
  margin: 0 0 15px 0;
  font-weight: 600;
  font-size: 22px;
  line-height: 26px;
  letter-spacing: 0.66px;
  color: #0d3b66;
}

p {
  margin: 0 0 15px 0;
}

.button,
.btn {
  padding: 11px 20px;
  font-weight: 500;
  font-size: 16px;
  line-height: 1;
  letter-spacing: normal;
  border-radius: 0;
}

.btn-primary {
  background-color: #016fb9;
  border-color: #016fb9;
}

.btn-primary:hover,
.btn-primary:active,
.btn-primary:focus {
  background-color: #9a3040;
  border-color: #9a3040;
}

.form-control {
  font-size: 15px;
  line-height: 1;
  border-radius: 0;
  -webkit-box-shadow: none;
          box-shadow: none;
}

.homepage-banner {
  background-color: #eeeeee;
}

.homepage-banner {
  position: relative;
  overflow: hidden;
}

.homepage-banner .image {
  width: 100vw;
  height: 100%;
  margin-left: -15px;
}

@media (min-width: 768px) {
  .homepage-banner .image {
    position: absolute;
    top: 0;
    overflow: hidden;
  }
}

/*
EXPLANATION OF THE MATH BELOW:

The big images are relative to the viewport but the text is always a percentage of the fixed-width container, and so the image widths need to be calculated based on the container width for each breakpoint.

  (100vw - 750px) / 2    ---- subtract the container width from the viewport to get the leftover width of the page gutters, and then divide by 2 to get only one of the gutter widths
  (720px * 0.56)         ---- using the intended percentage value calculate the px width the image would have occupied if it were relative to the container instead of the viewport; 30px has already been subtracted from the container width to compensate for its left and right padding
  + 15px                 ---- add back the padding on the image's side
  ---- then we add those three pieces to get the final image width
  
*/

@media (min-width: 768px) {
  .banner-top .image {
    left: 0;
    /*width: 56%;*/
    width: calc(((100vw - 750px) / 2) + (720px * 0.56) + 15px); /* some of the parentheses are probably unnecessary but they help for clarity */
    margin-right: 0;
  }
}

@media (min-width: 992px) {
  .banner-top .image {
    width: calc(((100vw - 970px) / 2) + (940px * 0.56) + 15px);
  }
}

@media (min-width: 1200px) {
  .banner-top .image {
    width: calc(((100vw - 1170px) / 2) + (1140px * 0.56) + 15px);
  }
}

@media (min-width: 768px) {
  .banner-middle .image {
    right: 0;
    /*width: 45%;*/
    width: calc(((100vw - 750px) / 2) + (720px * 0.44) + 15px);
    margin-left: 0;
  }
}

@media (min-width: 992px) {
  .banner-middle .image {
    width: calc(((100vw - 970px) / 2) + (940px * 0.44) + 15px);
  }
}

@media (min-width: 1200px) {
  .banner-middle .image {
    width: calc(((100vw - 1170px) / 2) + (1140px * 0.44) + 15px);
  }
}

/* but in the CMS editor the image is inside a container and so we can use the normal percentage values to set the width */
#cms_overall .banner-top .image {
  width: 56%;
}

#cms_overall .banner-middle .image {
  width: 44%;
}

.homepage-banner .image img {
  width: 100%;
  height: auto;
}

@supports ((-o-object-fit: cover) or (object-fit: cover)) {
  .homepage-banner .image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}


.homepage-banner h2,
.homepage-banner h3,
.tsb-cke-format-list-item {
  color: #9a3040;
}

.homepage-banner h2,
h2.tsb-cke-format-list-item {
  font-weight: 400;
  font-family: 'Permanent Marker', cursive;
}




.banner-top {
  margin-bottom: 30px;
}

.banner-top .text {
  margin: 60px 0;
}

@media (min-width: 768px) {
  .banner-top {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    min-height: 600px;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
  }

  .banner-top .text {
    float: right;
    width: 44%;
    margin-top: 90px;
    margin-bottom: 100px;
    padding-left: 40px;
  }

  .banner-top .text > * {
    max-width: 400px;
  }
}

.banner-top h2 {
  margin-bottom: 25px;
  font-size: 56px;
  line-height: 1;
}

.banner-top h3 {
  margin-bottom: 45px;
  font-size: 41px;
  line-height: 46px;
  letter-spacing: 0.61px;
}

.banner-top .btn {
  padding: 15px 50px;
  font-size: 22px;
}

.banner-middle .text {
  margin: 40px 0 80px;
}

@media (min-width: 768px) {
  .banner-middle .text {
    width: 56%;
    margin: 80px 0;
    padding-right: 40px;
  }
}

.banner-middle h2 {
  margin-bottom: 10px;
  font-size: 36px;
  line-height: 46px;
}



.homepage-quick-links .flex-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -15px -15px 15px;
}

@media (min-width: 768px) {
  .homepage-quick-links .flex-wrapper {
    margin-right: -30px;
    margin-left: -30px;
  }
}

.homepage-quick-links .quick-link {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  /*min-width: 12ch;*/
  max-width: 20ch;
  margin: 15px;
  padding: 15px;
  font-weight: 600;
  font-size: 20px;
  color: #0d3b66;
}

.homepage-quick-links .quick-link img {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
  display: block;
  width: 48px;
  height: 48px;
  margin-right: 15px;
}

.homepage-quick-links .quick-link:hover,
.homepage-quick-links .quick-link:focus,
.homepage-quick-links .quick-link:active {
  text-decoration: none;
  color: white;
  background: #0d3b66;
}

.homepage-quick-links .quick-link:hover img,
.homepage-quick-links .quick-link:focus img,
.homepage-quick-links .quick-link:active img {
  -webkit-filter: brightness(0) invert(1);
  filter: brightness(0) invert(1); /* Turn Any SVG White with This One Weird Trick! Doctors Are Furious! */
}

/* IE-only styles */
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
  .homepage-quick-links .quick-link:hover,
  .homepage-quick-links .quick-link:focus,
  .homepage-quick-links .quick-link:active {
    text-decoration: underline;
    color: #0d3b66;
    background: none;
  }
  .homepage-quick-links .quick-link:hover img,
  .homepage-quick-links .quick-link:focus img,
  .homepage-quick-links .quick-link:active img {
    
  }
}


.homepage-callouts {
  margin-top: 55px;
  margin-bottom: 75px;
  text-align: center;
}

.homepage-callouts h2,
.homepage-callouts p {
  padding-right: 20px;  /* padding instead of margin for IE */
  padding-left: 20px;
  color: white;
}

.homepage-callouts h2 {
  font-size: 22px;
  line-height: 26px;
}

.homepage-callouts .flex-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  width: 100%;
}

.homepage-callouts .newsletter-flex.flex-wrapper {
  -ms-flex-wrap: nowrap;
      flex-wrap: nowrap;
}

@media (min-width: 992px) and (max-width: 1199px) {
  .homepage-callouts .newsletter-flex.flex-wrapper {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

@media (min-width: 768px) {
  .homepage-callouts .flex-wrapper {
    margin: -25px;
  }
}

@media (min-width: 992px) {
  .homepage-callouts .flex-wrapper {
    -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
  }
}

.homepage-callouts .col {
  -webkit-box-flex: 1;
      -ms-flex: 1 1 auto;
          flex: 1 1 auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  margin: 25px 0;
  padding-bottom: 25px;
  color: white;
  background: #0d3b66;
}

@media (min-width: 768px) {
  .homepage-callouts .col {
    -webkit-box-flex: 0;
        -ms-flex: 0 1 auto;
            flex: 0 1 auto;
    width: calc(50% - 50px);
    margin: 25px;
  }
}

@media (min-width: 768px) and (max-width: 991px) {
  .homepage-callouts .col.newsletter {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    -webkit-box-ordinal-group: 4;
        -ms-flex-order: 3;
            order: 3;
    width: 100%;
  }
}

@media (min-width: 992px) {
  .homepage-callouts .col {
    -webkit-box-flex: 1;
        -ms-flex: 1 1 auto;
            flex: 1 1 auto;
    width: calc(33% - 50px);
  }
}

.homepage-callouts .col > * {
  max-width: 100%; /* fix for IE */
}

.homepage-callouts .col:not(.newsletter) > :last-child,
.homepage-callouts .blog-feed-post > :last-child {
  /*margin-top: auto;*/
  margin-bottom: 0;
}

.homepage-callouts .col:not(.newsletter) .btn  {
  width: 180px;
}

.homepage-callouts .col.newsletter {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  color: inherit;
  background: transparent;
}

.homepage-callouts .image {
  width: 100%;
  overflow: hidden; /* IE can't render the resized images correctly as a vertical-orientation flex item, so the fix for that is to wrap it in something else. but then the wrapper's height is too big because it's calculated as if the image hadn't been resized yet, so we have to set overflow hidden to prevent that. */
}

@media (min-width: 768px) {
  .homepage-callouts .image {
    height: 160px;
  }
}

.homepage-callouts .image img {
  width: 100%;
  height: auto;
}

@supports ((-o-object-fit: cover) or (object-fit: cover)) {
  .homepage-callouts .image img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
       object-fit: cover;
  }
}

.homepage-callouts .col.newsletter h2 {
  color: #0d3b66;
}

.homepage-callouts .col.newsletter p {
  color: inherit;
}

.homepage-callouts .col.newsletter .flex-wrapper {
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  margin: 0;
}

.homepage-callouts form {
  margin: 20px 20px 0;
}

.homepage-callouts .form-group {
  margin: 0;
}

.homepage-callouts .form-control {
  height: 40px;
}

.homepage-callouts .col.newsletter .btn {
  min-width: 100px; /* fix for IE */
  margin-left: 10px;
}

@media (min-width: 992px) and (max-width: 1199px) {
  .homepage-callouts .col.newsletter .btn {
    margin-top: 10px;
    margin-left: 0;
  }
}

.homepage-callouts .image,
.homepage-callouts svg {
  margin-bottom: 20px;
}

.homepage-callouts svg {
  display: block;
  margin-right: auto;
  margin-left: auto;
  fill: #0d3b66;
}

.modal-content {
  border-radius: 0;
}
.modal .modal-title {
  margin-top: 0 !important;
  line-height: 1.15;
}
@media (min-width: 768px) {
  .modal .modal-title {
    line-height: 1.15;
  }
}
@media (min-width: 768px) {
  .modal .modal-header {
    padding: 30px 30px 15px 30px;
  }
  .modal .modal-body {
    padding: 15px 30px 15px 30px;
  }
  .modal .modal-footer {
    padding: 30px;
  }
}
.modal .modal-body > *:last-of-type {
  margin: 0;
}
.modal .modal-footer {
  text-align: left;
}
.modal .modal-footer .btn {
  display: inline-block;
}
.modal .modal-footer .btn + .btn {
  margin-left: 0;
}
@media (max-width: 370px) {
  .modal .modal-footer .btn {
    min-width: 0;
  }
}
@media (max-width: 767px) {
  .modal .modal-footer .btn {
    width: auto;
  }
}
@media (max-width: 349px) {
  .modal .modal-footer .modal-cancel {
    font-size: 14px;
  }
}
@media (min-width: 350px) {
  .modal .modal-footer .modal-cancel {
    position: relative;
    bottom: 4px;
  }
}
.modal .modal-footer .modal-continue {
  float: right;
  width: auto;
}
.modal.external-link-disclaimer-modal-popup code {
  overflow-wrap: break-word;
  word-wrap: break-word;
  -ms-word-break: break-all;
  word-break: break-all;
  word-break: break-word;
  -ms-hyphens: auto;
  -webkit-hyphens: auto;
  hyphens: auto;
}

.modal .btn-link {
  text-decoration: underline;
  color: #0d3b66;
}

.modal .btn-link:hover,
.modal .btn-link:active,
.modal .btn-link:focus {
  color: #9a3040;
}
