@import url("https://use.typekit.net/tjn8hat.css");

/***********************************************/
/* CSS @imports must be at the top of the file */
/* Add them above this section                 */
/***********************************************/

/*****************************************/
/* Start your style declarations here    */
/*****************************************/

/*  BASIC HTML  */

body {
  font-family: graphie, Arial, Helvetica, sans-serif;
}

h1, h2, h3, h4, h5, h6 {
  font-family: graphie, Arial, Helvetica, sans-serif;
}

p:last-child, ul:last-child, .kl-rich-text p:last-child, .kl-rich-text  ul:last-child {
  margin-bottom: 0px;
}

input[type=file] {
    background-color: #fff;
    padding: .75rem 1rem
}

/* don't know what happened to the blog landing page but... */
  
._hsBlogPostListing_1hg5v_8 {
  gap: 50px;
 }
  
._hsBlogPostListing_1hg5v_8 article {
  margin: 0px!important;
}
  
@media screen and (max-width: 1100px) {
  ._hsBlogPostListing_1hg5v_8 article {
    width: calc(50% - 25px);
  }
}
  
@media screen and (max-width: 766px) {
  ._hsBlogPostListing_1hg5v_8 {
      gap: 25px!important;
  }
  
  ._hsBlogPostListing_1hg5v_8 article {
      width:100%;
  }
}

/* SHARED LAYOUT STYLES */

@media screen and (min-width: 768px) {
  .content-wrapper {
      padding: 0 40px;
  }
}

@media screen and (min-width: 1380px) {
  .content-wrapper {
      padding: 0 20px;
  }
}

.kl-rich-text__buttons {
  margin-top: 25px;
  margin-bottom: 25px;
}

.kl-cards-slider__button {
  width: 100%;
  margin-top: 25px; 
}

.kl-cards-slider__content {
  padding-top: 25px;
  padding-bottom: 25px;
}

.kl-features-04__content-title {
  margin-bottom: 25px;
}

.kl-features-03__titles {
  justify-content: flex-start;
  gap: 25px;
}

/* 5 col features on products page */

.kl-features-01 {
  gap: 25px;
}


.kl-features-01 h4 {
  font-size: 1em;
}

.kl-features-01 p {
  font-size: .875em;
}

.kl-features-01__card {
  margin: 0px!important;
}

.kl-features-01__image img, .kl-features-01__image svg {
  max-height: 40px;
}

.kl-features-01__image {
  height: 40px;
  margin: 0 0 .5em 0;
}

@media screen and (max-width: 1000px) {
  .kl-features-01 {
    flex-wrap: wrap;
  }
  .kl-features-01__card {
    flex-basis: 45%;
    max-width: 45%;
  }
}

@media screen and (max-width: 768px) {
  .kl-features-01 {
    display: flex;
  }
}

@media screen and (max-width: 520px) {
  .kl-card-grid__image {
    height: 80vw;
  }
}

@media screen and (max-width: 500px) {
  .kl-features-01 {
    display: flex;
    flex-direction: column;
  }
  .kl-features-01__card {
    flex-basis: 100%;
    max-width: 100%;
  }
}

/* hero row */
.row-number-1 {
  text-shadow: 0px 0px 10px rgba(0,0,0,0.5);
  word-break: keep-all
}

.row-number-1 p {
  font-size: 1.25em;
}

.row-number-1 button, .row-number-1 .button {
  text-shadow: none;
}

.row-number-1 .dnd-column.span5 {
  flex-grow: 1;
}

@media screen and (max-width: 1000px) {
  .row-number-1 .dnd-column.span7 {
    max-width: 40vw;
  }
}

@media screen and (max-width: 768px) {
  .row-number-1 .dnd-column.span7 {
    max-width: 100%;
  }
  .row-number-1 .dnd-column.span7 img {
    max-height: 50vw!important;
    max-width: 64.75vw!important;
  }
}

/* testimonial slider on homepage */
.kl-slider-testimonial__author-photo img {
  border-radius: 0;
  object-fit: contain;
}

/* page nav (about page) */

.widget-type-simple_menu a {
  color: #fff;
  text-transform: uppercase;
  font-size: .75em;
  font-weight: 700;
}

.widget-type-simple_menu .hs-menu-wrapper ul {
  justify-content: space-between;
}

.hs-menu-wrapper.hs-menu-flow-horizontal ul {
  gap: 12px;
}

@media (max-width: 767px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    flex-direction: row;
  }
}

@media (min-width: 768px) {
  .hs-menu-wrapper.hs-menu-flow-horizontal ul {
    gap: 12px;
    padding: 0 20px;
  }
}


/*  NAV BAR  */

.kl-header {
  border-bottom: 1px solid #0D5C80;
}

@media (max-width: 1000px) {
  .kl-navbar__end a:first-child {
    display: none;
  }
}

  

/*  ARROW BUTTONS  */

.kl-navbar__button, .button, .button_cta a, button, .kl-rich-text__preheader {
  font-family: graphie, Arial, Helvetica, sans-serif;
}

.button--arrow, .button_cta.button--arrow a, ._hsBlogPostButton_h9t9t_134 {
  color: #D14900;
  border-radius: 0px;
  border-bottom: 2px solid transparent
}

.button--arrow:after,.button_cta.button--arrow a:after, ._hsBlogPostButton_h9t9t_134:after {
  content: url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 38 13'%3E%3Cpath fill='%23D14900' d='M37.53 7.03a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 0 0-1.06 1.06L35.939 6.5l-4.242 4.243a.75.75 0 0 0 1.06 1.06zM0 7.25h37v-1.5H0z'/%3E%3C/svg%3E");
}

.button--arrow:active,.button--arrow:focus,.button--arrow:hover,.button_cta.button--arrow a:active,.button_cta.button--arrow a:focus,.button_cta.button--arrow a:hover, ._hsBlogPostButton_h9t9t_134:active, ._hsBlogPostButton_h9t9t_134:focus, ._hsBlogPostButton_h9t9t_134:hover {
  outline: none;
  border-bottom: 2px solid currentColor;
}

/* CARDS */

.kl-cards-slider__image {
  margin: 0px;
}

.kl-cards-slider__header {
  background-color: #F4F7F9;
}

.kl-cards-slider__arrow {
  background-color: #0D5C80;
  color: #fff;
}

.kl-cards-slider__arrow svg {
  fill: currentColor;
}

/* FEATURES CAROUSEL features-3 module, correcting gray bg */

.kl-features-03__section {
  background-color: #E9EFF2;
}


/*  FEATURES CAROUSEL features-4 module, correctly right/left alignment  */

.kl-features-04__wrapper {
    justify-content: space-between;
}

/* FOOTER */

.kl-footer__content {
  padding: 80px 0px;
}

.kl-footer__info {
  position: relative;
  top: -33px;
}

.kl-footer__menu {
  flex-wrap: nowrap;
  gap: 80px;
  margin: 0;
}

.kl-footer__group {
  margin: 0;
}

.kl-footer__menu a:active, .kl-footer__menu a:focus, .kl-footer__menu a:hover {
  color: #CEEA57;
}

.kl-footer__legal {
  margin: 0;
}

.kl-footer__legal p {
  font-size: .875em;
}

.kl-footer__social a {
  display: flex;
  align-items: center;
  transition: color .25s ease-in-out;
}

.kl-footer__social a svg {
  fill: currentColor!important;
  transition: none;
}

.kl-footer__social a span {
  color: currentColor;
  display: inline-block;
  margin: 0 .5em 0 16px;
}

.kl-footer__social a:hover, .kl-footer__social a:focus {
  color: #CEEA57;
  text-decoration: none;
}

.kl-footer__social a[href*="linkedin"]::after {
  content: 'Follow us on LinkedIn';
  display: inline-block;
  font-size:  12px;
}

.kl-footer__legal a {
  text-decoration: underline;
}

@media screen and (max-width: 1024px) {
  .kl-footer__content {
    padding: 40px 0!important;
  }
}

@media (max-width: 1000px) {
  .kl-footer__group:nth-child(2) li:first-child {
    display: none;
  }
}

@media (max-width: 900px) {
  .kl-footer__menu {
    gap: 25px;
  }
  .kl-footer__menu .kl-footer__group {
    width: 33%;
  }
}


@media (max-width: 400px) {
  .kl-footer__menu {
    flex-wrap: wrap;
  }
  
  .kl-footer__menu .kl-footer__group {
    width: 100%;
  }
}

@media (min-width: 768px) {
  .kl-footer__wrapper {
    padding-bottom: 32px;
    padding-top: 32px;
  }
}

@media (min-width: 800px) {
  .kl-footer__legal {
    flex-wrap: nowrap;
    justify-content: space-between;
  }
  .kl-footer__legal p {
    max-width: 50%;
  }
}




/* FORMS */

form .hs-error-msg, .hs-form-required {
  color: #E2F29A;
}

.hs-input.invalid.error {
  border-color: #0D5C80;
  box-shadow: 0px 0px 4px 0px #CEEA57;
}

input[type=email], input[type=file], input[type=number], input[type=password], input[type=tel], input[type=text], select, textarea, input[type=email]:focus, input[type=file]:focus, input[type=number]:focus, input[type=password]:focus, input[type=tel]:focus, input[type=text]:focus, select:focus, textarea:focus {
  border-width: 2px;
  border-radius: 2em;
}

form .hs-button, form input[type=submit] {
  background-color: transparent;
  border: 2px solid #fff;
  color: #fff;
}

form .hs-button:active, form .hs-button:focus, form .hs-button:hover, form input[type=submit]:active, form input[type=submit]:focus, form input[type=submit]:hover {
  background-color: #0D5C80;
  border: 2px solid #fff;
  color: #fff;
}

form .hs-error-msgs {
  display: none;
}

.hs-fieldtype-textarea.hs-input {
  min-height: 6.5em;
}

form .hs-richtext {
  color: #fff;
}

.hs-form-booleancheckbox-display input[type="checkbox"] {
  position: relative;
  top: .25em;
}


/* BLOG */

.blog-index__post, .blog-more-posts__post {
  background-color: #fff;
}

/* hubspot blog listing module (not the theme one) */
._hsBlogPostGrid_h9t9t_23 {
  justify-content: left!important;
  gap: 50px;
}

._hsBlogPostGrid_h9t9t_23 article {
  box-shadow: 0 11px 30px rgba(154,161,177,.2);
  border: .5px solid rgba(142,83,147,.2);
}

.blog-subscribe__header a {
  color: currentColor;
  text-decoration: underline;
}

.blog-subscribe__header a:hover, .blog-subscribe__header a:focus {
  color: #CEEA57;
}

.content-wrapper.more-posts-wrapper {
  background-color: #E9EFF2;
  max-width: 100%;
  padding: 40px 0px;
}

.content-wrapper.more-posts-wrapper .blog-more {
  max-width: 1240px;
  margin: 0 auto;
  padding: 40px 20px;
}

.content-wrapper.more-posts-wrapper .blog-more-posts {
  gap: 25px;
}

.content-wrapper.more-posts-wrapper .blog-more-posts article {
  padding: 0;
}

.blog-index__post-content h3 a, .blog-index__post-content h3 a:hover, .blog-index__post-content h3 a:visited, .blog-more-posts__post-content h3 a, .blog-more-posts__post-content h3 a:hover, .blog-more-posts__post-content h3 a:visited {
  color: currentColor;
}

@media (min-width: 767px) {
  ._hsBlogPostListingPostColumn3_h9t9t_32 {
    gap: 0px!important;
  }
 .content-wrapper.more-posts-wrapper {
    padding: 40px 0px;
  }
  .content-wrapper.more-posts-wrapper .blog-more {
    padding: 40px;
  }
  .blog-index__post-wrapper, .blog-more-posts__post-wrapper {
    flex-basis: calc(50% - 12.5px);
  }
}

@media (min-width: 1000px) {
  .blog-index__post-wrapper, .blog-more-posts__post-wrapper {
    flex-basis: calc(33.33% - 16.67px);
  }
}

@media (max-width: 1100px) {
  ._hsBlogPostGrid_h9t9t_23 article {
    min-width: 45%;
    min-width: calc(50% - 25px);
  }
}
  
@media screen and (min-width: 1380px) {
  .content-wrapper.more-posts-wrapper .blog-more {
    padding: 40px 20px;
  }
}
  



/* hubspot blog listing button, mimicking theme arrow button */

._hsBlogPostButton_h9t9t_134::after {
  display: inline-block;
  margin-left: 6px;
  transition: margin .15s linear;
  vertical-align: middle;
  width: 36px;
}

._hsBlogPostButton_h9t9t_134:hover::after {
    content: url(data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 38 13'%3E%3Cpath fill='%230D5C80' d='M37.53 7.03a.75.75 0 0 0 0-1.06l-4.773-4.773a.75.75 0 0 0-1.06 1.06L35.939 6.5l-4.242 4.243a.75.75 0 0 0 1.06 1.06zM0 7.25h37v-1.5H0z'/%3E%3C/svg%3E);
    margin-left: 10px;
}

._hsBlogPostButton_h9t9t_134:hover {
  transform: none;
}

.blog-post__meta a, .blog-post__timestamp {
  color: #657177;
}

.blog-post__meta a:hover, .blog-post__meta a:focus {
  color: #8E5393;
  text-decoration: underline;
}

.blog-comments {
  padding: 25px;
  background-color: #0D5C80;
}

._hsBlogPostAuthorImage_h9t9t_93 {
  border-radius: 50%;
}

/* PW PROTECT PAGE */

.systems-page--membership {
  background-image: none;
}

.systems-page--membership .hs-button {
  background-color: #0D5C80;
  color: #fff;
}

/* careers page */

.hs-content-id-150316905489 .row-number-1>.row-fluid>.span6:first-child {
  flex-grow: 1
}

@media (max-width: 1000px) {
  .hs-content-id-150316905489 .row-number-1>.row-fluid>.span6:nth-child(2) {
    display: none!important;
  }
}
}


/* PRODUCT PAGES */

/* class is being added in head javascript in page settings */

@media (max-width: 900px) {
  .product-page .row-number-2 > .row-fluid {
    flex-direction: column;   
  }
  .product-page .row-number-2 > .row-fluid > .dnd-column {
    width: 100%;
  }
  .product-page .row-number-2 > .row-fluid > .dnd-column.span5 img {
    width: 50vw;
    height: auto;
  }
}

@media (max-width: 768px) {
  .kl-features-03__titles {
    display: flex;
    margin-bottom: 24px;
  }
  .kl-features-03__titles li {
    background: transparent;
  }
  .kl-features-03__titles li + li {
    border-top: 0px;
  }
  .kl-features-03__titles li.active h4:after {
    visibility: visible;
  }
  .product-page .row-number-9 > .row-fluid {
    display: flex;
    flex-direction: column-reverse;
  }
  .product-page .span5 img {
    margin-bottom: 50px; 
    max-height: 200px!important;
    height: 50vw!important;
    width: auto!important;
  }
  .product-page .row-number-2 > .row-fluid > .dnd-column.span5 img {
    margin-bottom: 0px;
    max-height: none!important;
    width: 50vw!important;
    height: auto!important;
  }
  .product-page .span7 h2 {
    text-align: center;
  }
}

@media (max-width: 500px) {
  .product-page .row-number-2 > .row-fluid > .dnd-column.span5 img {
    width: 100%!important;
    height: auto!imiportant;
  }
  .kl-features-03__titles h4 {
    font-size: .75em;
  }
}

@media (max-width: 400px) {
  .kl-features-03__titles {
    flex-direction: column;
    gap: 0px;
  }
  .kl-features-03__titles h4 {
    font-size: 1em;
  }
  .kl-features-03__titles li {
    text-align: left;
  }
}