/* These are all adjustable pieces of the theme that are customizable by the creator using the 'Design' setting when editing a page in Hubspot */
/* ----- Manual override for max-width effecting Slick carousel ----- */
.header-container-wrapper; .body-container-wrapper, .footer-container-wrapper, .feature-slide-wrapper, .feature-slide { max-width: 3840px;}

/* 
Index:
1. Setup main, hover, body and accent colors.
2. All typography for all viewports.
3. Links, buttons and Hubspot CTA styles.
4. Other Elements, such as UL styles, OL styles, Blockquote, Horizontal Rules.
5. Misc items that were pulled from individual style sheets and are assigned the mainColor variable first, then hoverColor, bodyColor and the accent1 pieces.
*/

/* setting up some main color variables that will auto style some elements so they look nice */
 /* Main Orange Color for links and buttons. */
 /* Main Purple Color for link and button hovers / active state. */
 /* Main / default font color. */
 /* #33e9da This was originally the bright Teal color. It is used as a subtle decorator in some places. Blog for instance. */

/* typography => Body and headings all media queries. */
body {
  color: #000000;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 14px;
  line-height: 1.6;
  overflow-x: hidden;
}

body.modal-open {
  height: 100vh;
  overflow-y: hidden;
}

h1 {
  color: #000000;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 36px;
  line-height: 1.3;
}

h2, p.search-title {
  color: #000000;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 28px;
  line-height: 1.3;
}

h3 {
  color: #000000;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 24px;
  line-height: 1.3;
}

h4 {
  color: #1e427c;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 24px;
  line-height: 1.3;
}

h5 {
  color: #000000;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 25px;
  line-height: 1.3;
}

h6 {
  color: #000000;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  font-family: helvetica, sans-serif;
  font-size: 22px;
  line-height: 1.3;
}

p {
  margin: 0 0 20px 0;
}

@media(min-width: 992px) {
  body {
    font-size: 14px;
  }

  h1 {
    font-size: 36px;
  }

  h2, p.search-title {
    font-size: 35px;
  }

  h3 {
    font-size: 30px;
  }

  h4 {
    font-size: 25px;
  }

  h5 {
    font-size: 23px;
  }

  h6 {
    font-size: 20px;
  }
}

@media(min-width: 1600px) {
  body {
    font-size: 14px;
  }

  h1 {
    font-size: 40px;
  }

  h2, p.search-title {
    font-size: 35px;
  }

  h3 {
    font-size: 35px;
  }

  h4 {
    font-size: 28px;
  }

  h5 {
    font-size: 25px;
  }

  h6 {
    font-size: 22px;
  }
}
/* end Body and headings typography */

/* link options */
a,
a:visited {
  color: rgba(30, 66, 124, 1);
}

a:hover,
a:active {
  color: rgba(30, 66, 124, 1);
  
  text-decoration: underline;
  
}

a.reverse-link,
a.reverse-link:visited {
  color: rgba(30, 66, 124, 1);
}

a.reverse-link:hover,
a.reverse-link:focus {
  color: rgba(30, 66, 124, 1);
}

a.dark-link,
a.dark-link:visited {
  color: #000000;
}

a.dark-link:hover,
a.dark-link:focus {
  color: rgba(30, 66, 124, 1);
}
/* end link options */

.button, .button:visited, .btn-primary, .btn-primary:visited, .hs-button, .hs-button:visited,
.btn-secondary, .btn-secondary:visited, .btn-tertiary, .btn-tertiary:visited {
  -webkit-appearance: none !important; 
}

/* Button Primary Styles */
.button,
.button:visited,
.btn-primary,
.btn-primary:visited,
.hs-button,
.hs-button:visited {
  display: inline-block;
  padding: 10px 25px;
  position: relative;
  font-family: helvetica;
  font-size: 16px;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  color: #ffffff;
  text-align: center;
  margin: 10px 0;
  text-transform: none;
  border-radius: 3px;
  
  
    background-color: rgba(30, 66, 124, 1);
  
  
    border: 1px solid rgba(30, 66, 124, 1);
  
}

.button:hover,
.button:focus,
.btn-primary:hover,
.btn-primary:focus,
.hs-button:hover,
.hs-button:focus {
  color: rgba(30, 66, 124, 1);;
  cursor: pointer;
  text-decoration: none;
  
    background-color: rgba(255, 255, 255, 1);
  
  
    border: 1px solid rgba(30, 66, 124, 1);
  
}

.white .hs-button,
.white .hs-button:visited {
  background: #fff;
  border: 1px solid #fff;
  padding: 10px 25px;
  transition: all 0.1s ease 0s;
}

.white .hs-button:hover,
.white .hs-button:focus {
  color: #fff;
  background: transparent;
} 

@media(min-width: 992px) {
  .button,
  .button:visited,
  .btn-primary,
  .btn-primary:visited,
  .hs-button,
  .hs-button:visited {
    font-size: 16px;
  } 
}
/* end Primary Button Styles */

/* Button Secondary Styles */
.btn-secondary,
.btn-secondary:visited {
  display: inline-block;
  padding: 10px 25px;
  position: relative;
  font-family: helvetica;
  font-size: 16px;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  color: #ffffff;
  text-align: center;
  margin: 10px 0;
  text-transform: none;
  border-radius: 3px;
  
  
    background-color: rgba(30, 66, 124, 1);
  
  
    border: none;
  
}

.btn-secondary:hover,
.btn-secondary:focus {
  color: rgba(255, 255, 255, 1);;
  cursor: pointer;
  text-decoration: none;
  
    background-color: rgba(30, 66, 124, .0);
  
  
    border: none;
  
}

@media(min-width: 992px) {
  .btn-secondary,
  .btn-secondary:visited {
    font-size: 16px;
  } 
}
/* end Secondary Button Styles */

/* Button Tertiary Styles */
.btn-tertiary,
.btn-tertiary:visited {
  display: inline-block;
  padding: 10px 25px;
  position: relative;
  font-family: helvetica;
  font-size: 16px;
  font-family: helvetica; font-style: normal; font-weight: normal; text-decoration: none;
  color: #1e427c;
  text-align: center;
  margin: 10px 0;
  text-transform: none;
  border-radius: 6px;
  
  
    background-color: rgba(255, 255, 255, 1);
  
  
    border: none;
  
}

.btn-tertiary:hover,
.btn-tertiary:focus {
  color: rgba(30, 66, 124, 1);;
  cursor: pointer;
  text-decoration: none;
  
    background-color: rgba(255, 255, 255, 1);
  
  
    border: none;
  
}

@media(min-width: 992px) {
  .btn-tertiary,
  .btn-tertiary:visited {
    font-size: 16px;
  } 
}
/* end Tertiary Button Styles */

/* Form Styles */

label {
  color: #000000
}

form input,
form textarea {
  font-family: helvetica, sans-serif;
}

form input[type="text"],
form input[type="email"],
form input[type="number"],
form input[type="phone"],
form input[type="url"],
form input[type="tel"],
form input[type="password"] {
  border: 1px solid rgba(30, 66, 124, 1.0);
  font-family: helvetica, sans-serif;
}

form input::-webkit-input-placeholder { 
  color: #000000;
  font-family: helvetica, sans-serif;
  font-size: 14px;
}

form input::-moz-placeholder { 
  color: #000000;
  font-family: helvetica, sans-serif;
  font-size: 14px;
}

form input:-ms-input-placeholder { 
  color: #000000;
  font-family: helvetica, sans-serif;
  font-size: 14px;
}

.white form input::-webkit-input-placeholder { 
  color: #fff;
}

.white form input::-moz-placeholder { 
  color: #fff;
}

.white form input:-ms-input-placeholder { 
  color: #fff;
}

form select,
.resource-filter select {
  border: 1px solid #1e427c;
}

form textarea {
  border: 1px solid #1e427c;
}

h3.form-title {
  color: #000000;
  opacity: 100;
  background-color: #ffffff;
}

@media(min-width: 992px) {
  form input::-webkit-input-placeholder { 
    font-size: 14px;
  }

  form input::-moz-placeholder { 
    font-size: 14px;
  }

  form input:-ms-input-placeholder { 
    font-size: 14px;
  }
}

@media(min-width: 1600px) {
  form input::-webkit-input-placeholder { 
    font-size: 14px;
  }

  form input::-moz-placeholder { 
    font-size: 14px;
  }

  form input:-ms-input-placeholder { 
    font-size: 14px;
  }
}

/* End Form Styles */

/* Other Element Styles */
hr {
  border-left: none;
  border-bottom: none;
  border-right: none;
  border-top: 3px solid rgba(30, 66, 124, 1);;
  color: transparent;
  background: transparent;
  height: 1px;
  margin: 25px 0;
  clear: both;
} 

.column-content ul {
  list-style-type: disc;
  margin: 10px 0 25px;
  padding: 0 0 0 20px;
}

.column-content ol {
  margin: 10px 0 25px;
  padding: 0 0 0 20px;
}

.column-content ul li,
.column-content ol li {
  margin-bottom: 0px;
}

blockquote {
  background: rgba(235, 235, 235, 1);;
  font-family: helvetica;
  color: #000000;
  font-size: 17px;
  position: relative;
  margin: 30px 0;
  padding: 25px 25px 25px;
}

blockquote p {
  font-family: helvetica;
  color: #000000;
  font-size: 17px;
  margin: 0;
}

@media(min-width: 992px) {
  blockquote {
    font-size: 20px;
    padding: 40px 40px 40px;
  }

  blockquote p {
    font-size: 20px;
  }
}
/* End Other Element Styles */

/* MainColor items first */

form input[type="text"].search-box:focus {
  border-bottom: 1px solid #1e427c;
}

.search-button:hover,
.search-button:focus {
  color: #1e427c;
  outline: none;
}

.hs_cos_wrapper_type_post_listing li a:hover,
.hs_cos_wrapper_type_post_listing li a:focus {
  color: #1e427c;
}

.hs_cos_wrapper_type_post_filter li a:hover,
.hs_cos_wrapper_type_post_filter li a:focus {
  background: #1e427c;
}

.blog-sharing p span {
  color: #1e427c;
}

.blog-sharing a:hover,
.blog-sharing a:focus {
  color: #1e427c;
}

.service-icon i {
  color: #1e427c;
}

.event-details p span {
  color: #1e427c;
}

.event-grid-location p {
  background: #1e427c;
}

.event-grid-details span {
  color: #1e427c;
}

.carousel-pager, .carousel-pager:visited {
  color: #1e427c;
}

.pager {
  background: #1e427c;
}

.popup-vid:hover,
.popup-vid:focus {
  color: #1e427c;
}

.popup-vid:hover .video-image span,
.popup-vid:focus .video-image span,
.image-wrap:hover span,
.image-wrap:focus {
  color: #1e427c;
}

.counter-item:before {
  background: #1e427c;
}

form select:focus {
  border: 1px solid #1e427c;
}

form input[type="text"]:focus,
form input[type="email"]:focus,
form input[type="number"]:focus,
form input[type="phone"]:focus,
form input[type="url"]:focus,
form input[type="tel"]:focus,
.form-control:focus {
  border: 1px solid #1e427c;
}

/* hoverColor items here */
.alert-bar-close span {
  background: #1e427c;
}

a.marketing-cta:hover .marketing-cta-content p.marketing-cta-title,
a.marketing-cta:focus .marketing-cta-content p.marketing-cta-title {
  color: #1e427c;
} 

.service-item:hover .service-icon i,
.service-item:focus .service-icon i {
  color: #1e427c;
}

.service-item.no-link:hover .service-icon i,
.service-item.no-link:focus .service-icon i {
  color: #1e427c;
}

.carousel-pager:hover .pager, .carousel-pager:focus .pager {
  background: #1e427c;
}

.vert-test-name {
  color: #1e427c;
}

/* bodyColor items here */
.white .hs-button,
.white .hs-button:visited {
  color: #000000;;
}

.alert-bar p span:after {
  background: #000000;;
}

.marketing-cta,
.marketing-cta:visited {
  color: #000000;;
}

.blog-sidebar h3 {
  background: #000000;;
}

.hs_cos_wrapper_type_post_listing li a,
.hs_cos_wrapper_type_post_listing li a:visited {
  color: #000000;;
}

.hs_cos_wrapper_type_post_filter li a,
.hs_cos_wrapper_type_post_filter li a:visited {
  color: #000000;;
}

.blog-pagination a,
.blog-pagination a:visited {
  color: #000000;;
}

.blog-pagination a:hover,
.blog-pagination a:focus,
.blog-pagination-center a.active {
  background: #000000;;
  color: #fff;
}

.blog-topics a,
.blog-topics a:visited {
  color: #000000;;
}

.blog-topics a:hover,
.blog-topics a:focus {
  background: #000000;;
}

.blog-sharing a,
.blog-sharing a:visited {
  color: #000000;;
}

.service-item,
.service-item:visited {
  color: #000000;;
}

.service-item:hover, 
.service-item:focus {
  color: #000000;;
}

.service-title {
  color: #000000;;
}

.video-item {
  color: #000000;;
}

/* label {
  color: #000000;;
}

form input[type="text"],
form input[type="email"],
form input[type="number"],
form input[type="phone"],
form input[type="url"],
form input[type="tel"] {
  color: #000000;;
} */

form select {
  color: #000000;;
}

/* accent1 items here */
.feature-content h1:before {
  background: #1e427c;
}

.blog-list-content p {
  color: #1e427c;
}

.blog-list-content p a,
.blog-list-content p a:visited {
  color: #1e427c;
}

.blog-detail-title p {
  color: #1e427c;
}

.blog-detail-title p a,
.blog-detail-title p a:visited {
  color: #1e427c;
}

.test-author:before {
  background: #1e427c;
}

.hs-error-msgs {
  color: #1e427c;
}

label.hs-error-msg {
  color: #1e427c;
}

.white label.hs-error-msg {
  color: #fff;
}

/* end other items using the variables */