<style>
/* Remove tap highlight on all elements */
* {
  -webkit-tap-highlight-color: transparent;
}

/* Equal Card Height Fix */
.product_hero_cards .dce-acf-repeater-grid .dce-acf-repeater-item {
    display: flex;
    align-self: auto !important;
}

.product_hero_cards .dce-acf-repeater-grid .dce-acf-repeater-item > [data-elementor-type="section"] {
  display: flex;
}



/* Allows image to be flush with the sides of the product hero */
/*
Then to position an image bottom, in the Custom CSS field do this:

.product-hero > .elementor-element:last-child {
    align-self: flex-end;
    align-items: center;
}

*/

/* Set the max-width of an image (change 625px to be half of the native width of the image)

.product-hero > .elementor-element:last-child .elementor-widget-image img {
    max-width: 625px !important;
    width: 100% !important;
}

 */

.product-hero {
    padding: 0 !important;
}

.product-hero > .elementor-element:first-child {
    padding: 125px 0 125px 60px !important;
}

.product-hero > .elementor-element:last-child {
    padding: 0 !important;
}

.product-hero > .elementor-element:last-child img {
    width: auto !important;
    max-height: inherit !important;
}

@media screen and (max-width: 1200px) {

  .product-hero > .elementor-element {
      width: 100% !important;
  }

  .product-hero > .elementor-element:first-child {
      padding: 100px 40px !important;
      max-width: 720px;
  }

  .product-hero > .elementor-element:last-child .elementor-widget-image {
    width: 100% !important;
  }

  .product-hero > .elementor-element:last-child img {
    width: 100% !important;
    height: auto;
  }

}



/* Add extra bottom padding to the product heroes to compensate for the cards, so the elements appear to be vertically centered */
.product-hero > .elementor-element:first-child {
    padding-bottom: 205px !important;
}

@media screen and (max-width: 2399px) {
  .product-hero > .elementor-element:first-child {
      padding-botom: 165px !important;
  }
}

@media screen and (max-width: 1200px) {
  .product-hero > .elementor-element:first-child {
      padding-bottom: 0 !important;
  }
}



/* Allows images in Full Width CTA (a) to be flush with the sides */
/*

Then to position an image bottom, in the Custom CSS field do this:

.full-width-cta-a > .elementor-element:last-child {
    align-self: flex-end;
    align-items: center;
}

*/

/* Set the max-width of an image (change 625px to be half of the native width of the image)

.full-width-cta-a > .elementor-element:last-child .elementor-widget-image img {
    max-width: 625px !important;
    width: 100% !important;
}

 */


.full-width-cta-a {
    padding: 0 !important;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
  .full-width-cta-a {
    gap: 0 !important;
  }
}

.full-width-cta-a > .elementor-element:first-child {
  padding: 60px 0 60px 60px !important;
}

@media screen and (max-width: 767px) {
  .full-width-cta-a > .elementor-element:first-child {
    padding: 60px 60px 0 60px !important;
  }
}

.full-width-cta-a > .elementor-element:last-child .elementor-widget-image {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.full-width-cta-a > .elementor-element:last-child .elementor-widget-image img {
  object-fit: inherit !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
}



/* Allows images in Full Width CTA (b) to be flush with the sides and flips the order of image and text when it stacks for smaller screens */
/*
Then to position an image bottom, in the Custom CSS field do this:

.full-width-cta-b > .elementor-element:first-child {
    align-self: flex-end;
    align-items: center;
}

*/

/* Set the max-width of an image (change 625px to be half of the native width of the image)

.full-width-cta-b > .elementor-element:first-child .elementor-widget-image img {
    max-width: 625px !important;
    width: 100% !important;
}

*/

.full-width-cta-b {
    padding: 0 !important;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
  .full-width-cta-b {
    flex-direction: column-reverse !important;
    gap: 0 !important;
  }
}

.full-width-cta-b > .elementor-element:last-child {
  padding: 60px 60px 60px 0 !important;
}

@media screen and (max-width: 767px) {
  .full-width-cta-b > .elementor-element:last-child {
    padding: 60px 60px 0 60px !important;
  }
}

.full-width-cta-b > .elementor-element:first-child .elementor-widget-image {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.full-width-cta-b > .elementor-element:first-child .elementor-widget-image img {
  object-fit: inherit !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
}



/* Allows images in Two Column CTA (b) to be flush with the sides */
/*
Then to position an image bottom, in the Custom CSS field do this:

@media screen and (min-width: 1367px) {
  .two-column-cta-b-right > .elementor-element:last-child {
      align-self: flex-end;
      align-items: center;
  }
}

*/

/* Set the max-width of an image (change 625px to be half of the native width of the image)

.two-column-cta-b-right > .elementor-element:last-child .elementor-widget-image img {
    max-width: 625px !important;
    width: 100% !important;
}

*/

.two-column-cta-b-right {
    padding: 0 !important;
    overflow: hidden;
}

@media screen and (max-width: 767px) {
  .two-column-cta-b-right {
    gap: 0 !important;
  }
}

.two-column-cta-b-right > .elementor-element:first-child {
  padding: 60px 0 60px 60px !important;
}

@media screen and (max-width: 767px) {
  .two-column-cta-b-right > .elementor-element:first-child {
    padding: 60px 60px 0 60px !important;
  }
}

.two-column-cta-b-right > .elementor-element:last-child .elementor-widget-image {
  flex: 1 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
}

.two-column-cta-b-right > .elementor-element:last-child .elementor-widget-image img {
  object-fit: inherit !important;
  width: auto !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: 100% !important;
}



/* Force Product Hero components and Full Width CTA (a) components with a gray selection to actually be gray and update the text colors too */
.color_gray, /* the old light gray class */
.color_light_gray {
  background-color: #F4F6FC !important;
}

/* Force text and links on a gray background to get navy text and arrow */
/* Force text and links on a sky blue background to get navy text and arrow */
.product-hero.color_gray .elementor-heading-title,  /* the old light gray class */
.product-hero.color_gray p,  /* the old light gray class */
.color_gray p,  /* the old light gray class */
.color_gray .dce-visibility-event.elementor-align-left.e_link_arrow .elementor-button-text,  /* the old light gray class */
.color_gray .dce-visibility-event.elementor-align-left.e_link_arrow .elementor-button-icon svg,  /* the old light gray class */
.product-hero.color_light_gray .elementor-heading-title,
.product-hero.color_light_gray p,
.color_light_gray p,
.color_light_gray .dce-visibility-event.elementor-align-left.e_link_arrow .elementor-button-text,
.color_light_gray .dce-visibility-event.elementor-align-left.e_link_arrow .elementor-button-icon svg,
.product-hero.color_sky_blue p,
.color_sky_blue p,
.color_sky_blue .dce-visibility-event.elementor-align-left.e_link_arrow .elementor-button-text,
.color_sky_blue .dce-visibility-event.elementor-align-left.e_link_arrow .elementor-button-icon svg {
  color: #0A2447 !important;
}

/* Align text left if using a text link with arrow */
.e_link_arrow a {
    text-align: left;
}

/* Force headings on a sky blue background to get white headings */
.product-hero.color_sky_blue .elementor-heading-title,
.color_sky_blue .elementor-heading-title {
  color: #fff !important;
}

/* Force text links to put the arrow after the text */
.elementor-button-content-wrapper {
  flex-direction: row-reverse !important;
}

/* Force all buttons and link text to be bold and use REM */
.elementor-button-text {
  font-family: "REM Regular", Sans-serif;
  font-weight: 700;
  line-height: 1.3 !important;
}

/* Overrides to all buttons */
.button_color_yellow a.elementor-button-link,
.yellow-btn a.elementor-button,
.button_color_royal_blue a.elementor-button-link,
.royal-blue-btn a.elementor-button,
.hs-button,
.hs-form-html button,
.button_color_navy a.elementor-button-link,
.navy-btn a.elementor-button {
  background-repeat: repeat !important;
  background-size: 1024px !important;
  background-position: center !important;
  border-radius: 6px !important;
}

/* Apply texture to yellow buttons */
.button_color_yellow a.elementor-button-link,
.yellow-btn a.elementor-button {
    background-color: #FBBB00 !important;
    background-image: url(/wp-content/uploads/2025/05/yellow-texture.png) !important;
}

.button_color_yellow a.elementor-button-link:hover,
.yellow-btn a.elementor-button:hover {
    background-color: #FAD400 !important;
}

/* Apply texture to royal blue buttons */
.button_color_royal_blue a.elementor-button-link,
.royal-blue-btn a.elementor-button,
.hs-button,
.hs-form-html button {
    background-color: #1550D7 !important;
    background-image: url(/wp-content/uploads/2025/05/royal-blue-texture.png) !important;
}

.button_color_royal_blue a.elementor-button-link:hover,
.royal-blue-btn a.elementor-button:hover,
.hs-button:hover,
.hs-form-html button:hover {
    background-color: #0E3EAA !important;
}

/* Apply texture to navy buttons */
.button_color_navy a.elementor-button-link,
.navy-btn a.elementor-button {
    background-color: #0A2447 !important;
    background-image: url(/wp-content/uploads/2025/05/navy-texture.png) !important;
}

.button_color_navy a.elementor-button-link:hover,
.navy-btn a.elementor-button:hover {
    background-color: #143969 !important;
}



/* Adding shadow to top of mega menu */
@media screen and (min-width: 1025px) {
  nav .e-n-tabs-mobile,
  nav .e-n-menu-content.e-active > div {
      overflow: hidden;
      position: relative;
  }

  nav .e-n-tabs.e-activated::before,
  nav .e-n-menu-content.e-active > div::before {
      content: "";
      box-shadow: 0px 2px 38px 14px rgba(10, 36, 71, 0.1);
      height: 40px;
      width: 100%;
      position: absolute;
      left: 0;
      right: 0;
      top: -40px;
      z-index: 2;
      background: none !important;
  }

  nav .e-n-tabs.e-activated::before {
      box-shadow: 0px 2px 38px 14px rgba(10, 36, 71, 0.06);
  }

}

@media screen and (max-width: 1024px) {
  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-wrapper {
      padding: 0 0 40px;
      background: transparent !important;
  }

  .elementor-widget-n-menu .e-n-menu-heading::after,
  .elementor-widget-n-menu .e-n-menu-heading::before {
      content: "";
      box-shadow: 0px 2px 38px 14px rgba(10, 36, 71, 0.1);
      height: 67px;
      width: 100%;
      position: absolute;
      left: 0;
      right: 0;
      top: -67px;
      z-index: 2;
      background: none !important;
      pointer-events: none;
  }

  .elementor-widget-n-menu .e-n-menu-heading::after {
      bottom: 40px;
      top: inherit;
      z-index: -1;
  }
}



/* Menu Style Overrides */
button#tab-one,
button#tab-two,
button#tab-three,
button#tab-four,
button#tab-five {
  margin: 0;
}

button#tab-one[aria-selected="true"],
button#tab-two[aria-selected="true"],
button#tab-three[aria-selected="true"],
button#tab-four[aria-selected="true"],
button#tab-five[aria-selected="true"] {
  transition: none !important;
  background-image: url(/wp-content/uploads/2025/05/navy-texture.png);
  background-repeat: repeat;
  background-size: 1024px;
  background-position: center;
}

@media screen and (max-width: 767px) {
  button#tab-one,
  button#tab-two,
  button#tab-three,
  button#tab-four,
  button#tab-five {
    width: 100%;
  }
}

@media (max-width: 767px) {
    button#tab-two,
    button#tab-four {
        margin: 0 !important;
    }
}

@media (max-width: 767px) {
  button#tab-one,
  button#tab-two,
  button#tab-three,
  button#tab-four,
  button#tab-five {
        border-bottom: none !important;
        border-top: 1px solid #D0D7E8 !important;
  }

  button#tab-one {
    border-top: none !important;
  }
}

button#tab-one,
button#tab-three {
    border-radius: 8px 8px 0 0;
}

button#tab-two,
button#tab-four {
    border-radius: 0 0 8px 8px;
}

button#tab-five {
  border-radius: 8px;
}

button#tab-one {
  margin-top: 14px;
}

button#tab-two,
button#tab-four {
  margin-bottom: 42px;
}

button#tab-one::after,
button#tab-three::after,
button#tab-five::after {
  top: -24px;
}

button#tab-one::before,
button#tab-two::before,
button#tab-three::before,
button#tab-four::before,
button#tab-five::before {
  height: 68px;
  transition: none;
}

button#tab-one::before {
  width: 139px;
}

button#tab-two::before {
  width: 139px;
}

button#tab-three::before {
  width: 144px;
}

button#tab-four::before {
  width: 113px;
}

button#tab-five::before {
  width: 171px;
}

button#tab-one::after,
button#tab-three::after,
button#tab-five::after {
  font-family: "REM Regular", Sans-serif;
}

.e-n-tabs-heading {
  padding: 30px 20px 20px 20px;
  background-color: #F4F6FC;
  background-image: url(/wp-content/uploads/2025/05/light-gray-texture2x.png);
  background-repeat: repeat;
  background-size: 1024px;
  background-position: center;
}

button#tab-one,
button#tab-three {
  border-bottom: 1px solid #D0D7E8;
}

nav .elementor-icon-list-items .elementor-icon-list-item {
  border-bottom: 1px solid #D0D7E8;
  padding: 14px 0 !important;
  margin: 0 !important;
}

nav .elementor-icon-list-items .elementor-icon-list-item:first-child {
  border-top: 1px solid #D0D7E8;
}

.main-menu nav .e-n-menu-wrapper .e-n-menu-title {
  border: 0 !important;
}

@media (min-width: 1025px) {
  .main-menu nav .e-n-menu-wrapper .e-n-menu-content > .elementor-element {
    align-self: flex-end !important;
    position: relative !important;
    left: 0 !important;
    top: 0 !important;
  }
}

@media (max-width: 1024px) {
  .main-menu nav .e-n-menu-wrapper {
    top: 45px !important;
    background: #fff !important;
  }

  .main-menu nav .e-n-menu-wrapper .e-n-menu-item {
    border-top: 1px solid #D0D7E8 !important;
  }

  .main-menu nav .e-n-menu-wrapper .e-n-menu-item:first-child {
    border-top: none !important;
  }

  .main-menu nav .e-n-menu-wrapper li.e-n-menu-item > .e-n-menu-content.e-active {
    border-top: 1px solid #D0D7E8 !important;
  }

  .main-menu nav .e-n-menu-wrapper .e-n-menu-content,
  .elementor-widget-n-menu.e-fit_to_content :where(.e-n-menu-content >.e-con) {
    width: 100% !important;
  }

  .elementor-widget-n-menu .e-n-menu[data-layout=dropdown] .e-n-menu-content >.e-con {
    height: auto !important;
  }
}

button#tab-one .e-n-tab-title-text::after,
button#tab-two .e-n-tab-title-text::after,
button#tab-three .e-n-tab-title-text::after,
button#tab-four .e-n-tab-title-text::after,
button#tab-five .e-n-tab-title-text::after {
  content: "";
  background: url(https://instinct.vet/wp-content/uploads/2025/07/icon-mega-menu-large-chevron.svg);
  width: 9px;
  height: 15px;
  background-size: 9px;
  background-repeat: no-repeat;
}

button#tab-one[aria-selected="true"] .e-n-tab-title-text::after,
button#tab-two[aria-selected="true"] .e-n-tab-title-text::after,
button#tab-three[aria-selected="true"] .e-n-tab-title-text::after,
button#tab-four[aria-selected="true"] .e-n-tab-title-text::after,
button#tab-five[aria-selected="true"] .e-n-tab-title-text::after {
  background: url(https://instinct.vet/wp-content/uploads/2025/07/icon-mega-menu-large-chevron-white.svg);
}

@media (max-width: 767px) {
  button#tab-one .e-n-tab-title-text::after,
  button#tab-two .e-n-tab-title-text::after,
  button#tab-three .e-n-tab-title-text::after,
  button#tab-four .e-n-tab-title-text::after,
  button#tab-five .e-n-tab-title-text::after {
    rotate: 90deg;
  }

  button#tab-one[aria-selected="true"] .e-n-tab-title-text::after,
  button#tab-two[aria-selected="true"] .e-n-tab-title-text::after,
  button#tab-three[aria-selected="true"] .e-n-tab-title-text::after,
  button#tab-four[aria-selected="true"] .e-n-tab-title-text::after,
  button#tab-five[aria-selected="true"] .e-n-tab-title-text::after {
    rotate: 270deg;
  }
}

button#tab-one:hover,
button#tab-two:hover,
button#tab-three:hover,
button#tab-four:hover,
button#tab-five:hover {
  background-color: #DEE4F1;
  background-image: url(/wp-content/uploads/2025/05/light-gray-texture2x.png);
  background-repeat: repeat;
  background-size: 1024px;
  background-position: center;
}

@media (max-width: 767px) {
  button#tab-one[aria-selected="false"],
  button#tab-two[aria-selected="false"],
  button#tab-three[aria-selected="false"],
  button#tab-four[aria-selected="false"],
  button#tab-five[aria-selected="false"] {
    background-color: #F4F6FC;
    background-image: url(/wp-content/uploads/2025/05/light-gray-texture2x.png);
    background-repeat: repeat;
    background-size: 1024px;
    background-position: center;
  }
}

button#tab-one[aria-selected="true"]:hover,
button#tab-two[aria-selected="true"]:hover,
button#tab-three[aria-selected="true"]:hover,
button#tab-four[aria-selected="true"]:hover,
button#tab-five[aria-selected="true"]:hover {
  background-color: #0A2447;
  background-image: url(/wp-content/uploads/2025/05/navy-texture.png);
  background-repeat: repeat;
  background-size: 1024px;
  background-position: center;
}

button#tab-one:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-full-color-instinct-emr.svg');
}
button#tab-two:hover::before  {
  background-image: url('/wp-content/themes/Instinct/images/menu-full-color-instinct-treatment-plan.svg');
}
button#tab-three:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-full-color-standards.svg');
}
button#tab-four:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-full-color-plumbs.svg');
}
button#tab-five:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-full-color-clinicians-brief.svg');
}


button#tab-one[aria-selected="true"]:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-dark-mode-instinct-emr.svg');
}
button#tab-two[aria-selected="true"]:hover::before  {
  background-image: url('/wp-content/themes/Instinct/images/menu-dark-mode-instinct-treatment-plan.svg');
}
button#tab-three[aria-selected="true"]:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-dark-mode-standards.svg');
}
button#tab-four[aria-selected="true"]:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-dark-mode-plumbs.svg');
}
button#tab-five[aria-selected="true"]:hover::before {
  background-image: url('/wp-content/themes/Instinct/images/menu-dark-mode-clinicians-brief.svg');
}

nav .elementor-icon-list-item > a {
    flex-direction: row-reverse;
    justify-content: flex-end !important;
    gap: 6px;
}

nav .elementor-icon-list-item:hover > a svg path {
    fill: #0A2447;
}

/* Show the compare buttons in mobile */
.elementor-element-b6ad6fb,
.elementor-element-5843e0a,
.elementor-element-88ff258,
.elementor-element-a2aa181 {
  display: flex !important;
}


/* Hubspot Forms */
/* Remove border and background */
.hs-form input,
.hs-form-html input,
.hs-form select,
.hs-form-html select,
.hs-form textarea,
.hs-form-html textarea,
.hs-form button,
.hs-form-html button {
  border: none;
  background: none;
  color: inherit;
  font: inherit;
  line-height: inherit;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}

/* Remove outlines, but re-add on focus for accessibility */
.hs-form input:focus,
.hs-form-html input:focus,
.hs-form select:focus,
.hs-form-html select:focus,
.hs-form textarea:focus,
.hs-form-html textarea:focus,
.hs-form button:focus,
.hs-form-html button:focus {
  outline: none;
}

/* You should handle focus-visible yourself */
:focus-visible {
  outline: 2px solid blue; /* Example focus style */
}

/* Remove resize handle for textarea if you don’t want it */
.hs-form textarea,
.hs-form-html textarea {
  resize: none;
}

.hs-form,
.hs-form-html .hsfc-Step__Content {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.hs-form-html .hsfc-Step__Content {
    gap: 0;
}

.hs-form label,
.hs-form-html label,
.hs-form-html label span,
.hs-form-html .hsfc-ErrorAlert {
  font-family: "REM Regular", Sans-serif !important;
  gap: 3px;
  display: flex;
  flex-direction: row;
}

.hs-form label,
.hs-form-html label,
.hs-form-html label span {
  font-size: 12px;
  text-transform: uppercase;
  color: #0A2447;
  font-weight: 700;
  line-height: 1.2;
}

.hs-form-html label span {
  display: inline;
}

.hs-form input[type=date],
.hs-form-html input[type=date],
.hs-form input[type=email],
.hs-form-html input[type=email],
.hs-form input[type=number],
.hs-form-html input[type=number],
.hs-form input[type=password],
.hs-form-html input[type=password],
.hs-form input[type=search],
.hs-form-html input[type=search],
.hs-form input[type=tel],
.hs-form-html input[type=tel],
.hs-form input[type=text],
.hs-form-html input[type=text],
.hs-form input[type=url],
.hs-form-html input[type=url],
.hs-form select,
.hs-form-html select,
.hs-form textarea,
.hs-form-html textarea {
    border: 2px solid #81B7FF;
    border-radius: 8px;
    font-family: "REM Regular", Sans-serif;
    font-size: 16px;
    color: #535E79;
    font-weight: 400;
    padding: 17px 17px;
}

.hs-form input[type=date]:focus,
.hs-form-html input[type=date]:focus,
.hs-form input[type=email]:focus,
.hs-form-html input[type=email]:focus,
.hs-form input[type=number]:focus,
.hs-form-html input[type=number]:focus,
.hs-form input[type=password]:focus,
.hs-form-html input[type=password]:focus,
.hs-form input[type=search]:focus,
.hs-form-html input[type=search]:focus,
.hs-form input[type=tel]:focus,
.hs-form-html input[type=tel]:focus,
.hs-form input[type=text]:focus,
.hs-form-html input[type=text]:focus,
.hs-form input[type=url]:focus,
.hs-form-html input[type=url]:focus,
.hs-form select:focus,
.hs-form-html select:focus,
.hs-form textarea:focus,
.hs-form-html textarea:focus {
    border: 2px solid #1550D7;
}

.hs-form .hs-input,
.hs-form-html .hs-input {
    width: 100% !important;
}

.hs-form fieldset.form-columns-2 {
  display: flex !important;
  flex-direction: row;
  gap: 32px;
}

@media screen and (max-width: 767px) {
  .hs-form fieldset.form-columns-2,
  .hs-form-html fieldset.form-columns-2,
  .hsfc-Row:not([style="display:none"]) {
    display: flex !important;
    flex-direction: column;
  }

  .hs-form fieldset.form-columns-2 .hs-form-field,
  .hs-form-html fieldset.form-columns-2 .hs-form-field,
  .two-column-with-form .hsfc-Row:not([style="display:none"]) > div {
    width: 100% !important;
  }
}

.hs-form .hs-form-field,
.hs-form-html .hs-form-field {
    display: flex;
    flex-direction: column;
    gap: 10px;
}

.hs-form input[type="button"],
.hs-form-html button[type="button"],
.hs-form input[type="submit"],
.hs-form-html button[type="submit"] {
    font-family: "REM Regular", Sans-serif;
    font-size: 16px;
    font-weight: 700;
    font-style: normal;
    text-transform: none;
    padding: 24px 30px 24px 30px;
    border: none;
    outline: none;
    line-height: 1.3;
    background-color: #1550D7 !important;
}

.hs-form input[type="button"]:hover,
.hs-form-html button[type="button"]:hover,
.hs-form input[type="submit"]:hover,
.hs-form-html button[type="submit"]:hover {
  background-color: #0E3EAA !important;
}

.hs-error-msgs,
.hsfc-ErrorAlert,
.hs-error-msgs li,
.hsfc-ErrorAlert li,
.hs-error-msgs label,
.hsfc-ErrorAlert label {
    color: #D8003B !important;
    text-transform: inherit;
    font-weight: 400;
    font-size: 14px !important;
}

.form-wrapper {
    align-items: center;
}

.form-wrapper > div {
    width: 100%;
}

.hs-form fieldset,
.hs-form-html fieldset {
  max-width: 100% !important;
}

.hs-form ul.hs-error-msgs,
.hs-form-html  ul.hs-error-msgs {
    padding: 0;
}

.hs-form span.hs-form-required,
.hs-form-html span.hsfc-FieldLabel__RequiredIndicator {
  color: #1550D7;
}

.hs-form-html span.hsfc-FieldLabel__RequiredIndicator {
  padding-left: 3px;
}

.hs-form select,
.hs-form-html select,
.hsfc-DropdownInput__Caret > span {
  background-image: url('data:image/svg+xml,<svg width="10" height="6" viewBox="0 0 10 6" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M0.521094 1.74989L4.32409 5.58889C4.50109 5.76789 4.74709 5.86989 4.99909 5.86989C5.25409 5.86989 5.49409 5.76989 5.67409 5.58789C6.36185 4.89417 6.87766 4.37388 7.22154 4.02702C7.72322 3.52099 8.47574 2.76195 9.47909 1.74989C9.65609 1.57089 9.75409 1.33289 9.75409 1.08089C9.75409 0.82589 9.65409 0.58589 9.47309 0.40589C9.29209 0.22689 9.05409 0.12989 8.80009 0.130867C8.54609 0.13189 8.30809 0.23189 8.13009 0.41189L4.99909 3.56989L1.87109 0.411889C1.50209 0.0398893 0.899094 0.0378893 0.527094 0.405889C0.346094 0.585889 0.246094 0.825889 0.246094 1.08089C0.246094 1.33289 0.344094 1.57089 0.521094 1.74989Z" fill="%231550D7"/></svg>');
  background-size: 10px;
  background-position: calc(100% - 20px) center;
  background-repeat: no-repeat !important;
}

.hsfc-DropdownInput__Caret > span {
  background-size: 10px;
  background-position: center !important;
  width: 10px !important;
  height: 10px !important;
  border: none !important;
}

.hs-form input[type="checkbox"].hs-input,
.hs-form-html input[type="checkbox"].hsfc-CheckboxInput {
  /* Hide the native checkbox */
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  position: relative;
  width: 20px !important;
  min-width: 20px;
  height: 20px;
  border: 2px solid #81B7FF;
  border-radius: 4px; /* Optional for rounded corners */
  cursor: pointer;
}

.hs-form input[type="checkbox"].hs-input:checked,
.hs-form-html input[type="checkbox"].hsfc-CheckboxInput:checked {
  border: 2px solid #1550D7;
}

/* Add the checkmark when checked */
.hs-form input[type="checkbox"]::before,
.hs-form-html input[type="checkbox"]::before  {
  content: "";
  position: absolute;
  top: 1px;
  left: 5px;
  width: 6px;
  height: 12px;
  border: solid #1550D7;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.2s ease;
}

/* Show the checkmark when checked */
.hs-form input[type="checkbox"]:checked::before,
.hs-form-html input[type="checkbox"]:checked::before {
  opacity: 1;
}

.hsfc-CheckboxInput:checked::after {
  display: none;
}

.hs-form ul,
.hs-form-html ul,
.hs-form ol,
.hs-form-html ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

.hs-form label.hs-form-booleancheckbox-display,
.hs-form-html label.hs-form-booleancheckbox-display {
    display: flex;
    flex-direction: row;
    gap: 12px;
    align-items: center;
}

.hs-form label.hs-form-booleancheckbox-display span,
.hs-form-html label.hs-form-booleancheckbox-display span {
  font-size: 14px;
  font-weight: 400;
  text-transform: none;
}

.hs-form .hs-richtext,
.hs-form-html .hsfc-RichText {
  font-family: "REM Regular", Sans-serif !important;
  font-size: 14px !important;
  font-weight: 400;
  color: #0A2447 !important;
}

/* Pattern Overrides */
.color_yellow,
.color_royal_blue,
.color_navy,
.color_sky_blue,
.color_orange,
.color_gray, /* the old light gray class */
.color_light_gray {
  background-size: 1024px !important;
}

/* Link color for links in form and form response */
.hbspt-form a,
.hsfc-PostSubmit .hsfc-RichText a {
  color: #1550D7;
}

.hbspt-form a:hover,
.hsfc-PostSubmit .hsfc-RichText a:hover {
  color: #0E3EAA;
}

/* Heading styles in form responses */
.hbspt-form .submitted-message h1,
.hbspt-form .submitted-message h2,
.hbspt-form .submitted-message h3,
.hbspt-form .submitted-message h4,
.hbspt-form .submitted-message h5,
.hbspt-form .submitted-message h6 {
  color: #0A2447;
}

/* Paragraph styles in form response */
.hbspt-form .submitted-message p,
.hbspt-form .submitted-message ul,
.hbspt-form .submitted-message li {
  font-family: "REM Regular", Sans-serif;
  font-size: 18px;
  font-weight: 400;
  line-height: 30px;
  color: #535E79;
}

.hbspt-form .submitted-message p strong {
  font-weight: 700;
}

/* Hubspot form style overrides specifically for the new hubspot form builder forms using the "developer" embed option */
.hsfc-Step__Content {
    padding: 0 !important;
}

.hsfc-Row {
    padding: 0 !important;
    margin: 0 !important;
}

.hsfc-DropdownOptions {
    padding: 0 !important;
    border: 2px solid #D0D7E8 !important;
    border-radius: 8px !important;
}

.hsfc-DropdownOptions__Search input.hsfc-TextInput {
    padding: 10px !important;
}

.hsfc-DropdownOptions__List {
    padding: 0 14px 10px !important;
}

.hsfc-DropdownOptions__List__ListItem {
    font-weight: 400;
    color: #0A2447 !important;
    padding: 4px 8px !important;
    margin: 4px 0;
    line-height: 1.4;
    border-radius: 4px;
}

.hsfc-DropdownOptions__List__ListItem:hover {
  background-color: #F4F6FC !important;
  filter: none !important;
}

.hsfc-DropdownOptions__List__ListItem.hsfc-DropdownOptions__List__ListItem--selected {
    background-color: #1550D7 !important;
    color: #fff !important;
    filter: none !important;
}

.hsfc-CheckboxFieldGroup__Options label,
.hsfc-CheckboxFieldGroup__Options label span {
    text-transform: none !important;
    font-weight: 400;
    font-size: 16px !important;
}

.hsfc-CheckboxFieldGroup__Options>*:not(:last-child) {
    margin: 16px 0 !important;
}

.hsfc-DataPrivacyField {
    display: flex;
    flex-direction: column;
    gap: 32px;
}

.hsfc-DataPrivacyField .hsfc-CheckboxField .hsfc-FieldLabel span {
    font-size: 14px;
    text-transform: none;
    font-weight: 400;
}

.hsfc-NavigationRow__Buttons {
    justify-content: flex-start !important;
}

.hsfc-Step .hsfc-Step__Content>:last-child {
    margin: 0 !important;
}

.hsfc-NavigationRow__Alerts {
  margin: 0 !important;
}

.hsfc-NavigationRow__Alerts .hsfc-ErrorAlert {
  margin: 0 0 20px;
}

.hs-form-html button {
  transform: none !important;
}

.hsfc-DropdownInput > input {
    padding-right: 44px !important;
}

.hsfc-PostSubmit .hsfc-RichText p {
    font-family: "REM Regular", Sans-serif !important;
    font-size: 18px !important;
    font-weight: 400 !important;
    line-height: 30px !important;
    color: #535E79 !important;
}

/* Hubspots form builder doesn't allow you to add heading tags in the form response so forcing the strong tag to look like an h3 */
.hsfc-PostSubmit .hsfc-RichText strong {
    color: #0A2447;
    font-size: 32px;
    font-weight: 700;
    line-height: 38.4px;
    letter-spacing: 0px;
    display: block;
}

/* This aligns the fields to the bottom of the row so the input fields align even one label in the row has more lines of text than another label in the same row*/
.hsfc-Row {
  align-items: flex-end;
}

/*
Because we're aligning the fields to the bottom of the row, we add padding below each field that doesn't have a validation error.
The padding amount equals the height of the validation error, keeping the inputs aligned when one has an error and the other doesn't
*/
.hsfc-Step__Content > .hsfc-Row > div:not(.hsfc-error-wrapper) {
    padding-bottom: 32px;
}

@media screen and (max-width: 1200px) {
  .two-column-with-form .hsfc-Step__Content > .hsfc-Row > div {
    padding-bottom: 32px !important;
  }
}

/* This pushes the next row down if there's any error present in this row */
@media screen and (min-width: 1201px) {
  .two-column-with-form .hsfc-error-row-wrapper {
      margin-bottom: 20px !important;
  }
}

.hsfc-ErrorAlert {
    margin-top: 1px;
}

@media screen and (max-width: 1200px) {
  .two-column-with-form .hsfc-Step__Content > .hsfc-Row {
    gap: 0 !important;
  }
}

/* Replacing the validation text so I can shorten it so it doesn't wrap to 2 lines causing the inputs to get out of alignment again */
.hsfc-ErrorAlert {
    text-indent: -99999px;
}

.hsfc-ErrorAlert::before {
    content: "Please complete this field.";
    text-indent: 0;
}


/* ────────────────────────────────────────────────────────────────
   DCE ACF Repeater Grid
───────────────────────────────────────────────────────────────── */

@media (min-width: 1025px) {
  .dce-acf-repeater-grid {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
  }
  .grid-box-comp .dce-acf-repeater-item {
    border-right: 1px solid rgba(255, 255, 255, 0.2);
    border-bottom: 1px solid rgba(255, 255, 255, 0.2);
  }
  .grid-box-comp .dce-acf-repeater-item:nth-child(2n) { border-right: none; }
  .grid-box-comp .dce-acf-repeater-item:nth-child(n+5) { border-bottom: none; }
}

/* Forcing text color to white for summary text in Component F */
.component_f .elementor-widget-text-editor p {
  color: #fff !important;
}

/* Yellow button hover fix */
.yellow-btn .elementor-button:hover,
.yellow-btn .elementor-button:hover .elementor-button-text {
    background-color: #FAD400 !important;
}

/* Carousel Nav Positioning */
.dce-carousel-effect-slide .elementor-widget-container {
  display: flex !important;
  flex-direction: column !important;
  gap: 40px;
}

.dce-carousel-controls {
    display: flex;
    flex-direction: row;
    align-items: center;
    justify-content: center;
}

.dce-carousel-controls .dce-container-navigation {
  transform: unset !important;
  position: unset !important;
  display: flex;
  flex-direction: row;
  width: 140px !important;
  gap: 20px;
  align-items: center;
  justify-content: center;
}

.dce-carousel-controls .swiper-button-left,
.dce-carousel-controls .swiper-button-right {
    position: unset !important;
    margin-top: 0 !important;
}

/* Responsive based color classes */
@media (max-width: 767px) {
  .color_navy_mobile {
    background-color: #0A2447;
    background-image: url(/wp-content/uploads/2025/05/navy-texture.png);
    background-repeat: repeat;
    background-size: 1024px;
    background-position: center;
  }
}

/* Fixing Company News font */
.single-news .elementor-widget-theme-post-content p,
.page-template-default .elementor-widget-theme-post-content p {
  font-family: "REM Regular", Sans-serif !important;
}

/* Remove bottom padding from logos in client logo slider so that they're not adding additional unwanted padding */
.logo-slider .logo,
.logo-slider .logo .swiper-slide > .e-con-inner {
  padding-bottom: 0 !important;
}

/* Accordion overrides */
.accordionjs .acc_section > .acc_head {
    padding: 0 !important;
}

.acc_button:hover .accordion-title {
  color: #1550D7 !important;
}

.dce-accordion-icon svg {
    font-size: 30px;
}

/* Product hero cards -- making cards go flex: 1 in tablet */
.hero-cards .dce-acf-repeater-item [data-elementor-type="section"] {
  flex: 1;
}

/* Fix for serif fonts in lists on legal pages */
.page-template-default .elementor-widget-theme-post-content ul {
    font-family: "REM Regular", Sans-serif;
    font-size: 18px;
    font-style: normal;
    font-weight: 400;
    line-height: 30px;
    color: #535E79;
    margin-bottom: 32px;
}

/* Override to allow text in a royal blue box to be a non-white color if it's in a white box */
.color_royal_blue [data-dce-background-color="#FFFFFF"] h2 {
  color: #1550D7;
}

.color_royal_blue [data-dce-background-color="#FFFFFF"] p {
  color: #535E79;
}



/* ────────────────────────────────────────────────────────────────
   2-Column with Form Component
───────────────────────────────────────────────────────────────── */
.two-column-with-form .elementor-widget-text-editor > * {
    padding: 0 0 20px 0;
}

.two-column-with-form .elementor-widget-text-editor > ul {
    padding: 0 0 0 20px;
}

/* Solve for smaller screen heights -- allows for scrolling the form while it's in a fixed position */
@media (min-width: 1366px) {
  .two-column-with-form .sticky-form-container .sticky-form {
    max-height: calc(100vh - 227px);
    overflow-y: auto;
  }
}

@media (min-width: 768px) and (max-width: 1365px) {
  .two-column-with-form .sticky-form-container .sticky-form {
    max-height: calc(100vh - 180px);
    overflow-y: auto;
  }
}

/* Change the form from 2-columns to 1-column */
@media (max-width: 1200px) {
  .two-column-with-form .hs-form fieldset.form-columns-2,
  .two-column-with-form .hsfc-Row:not([style="display:none"]) {
    display: flex;
    flex-direction: column;
  }
  .two-column-with-form .hs-form fieldset.form-columns-2 .hs-form-field,
  .two-column-with-form .hsfc-Row:not([style="display:none"]) > div {
    width: 100%;
  }
}

.two-column-with-form .fill-me-out {
  pointer-events: none;
}

/* Swap in the "Get the Goods" on successful form submit */
.hubspot-form-submitted .fill-me-out.fill-me-out-sky-blue {
  background-image: url(/wp-content/uploads/2025/07/get-the-goods-sky-blue.png) !important;
}

.hubspot-form-submitted .fill-me-out.fill-me-out-royal-blue {
  background-image: url(/wp-content/uploads/2025/07/get-the-goods-royal-blue.png) !important;
}

@media (max-width: 767px) {
  .hubspot-form-submitted .fill-me-out.fill-me-out-sky-blue {
    background-image: url(/wp-content/uploads/2025/07/get-the-goods-sky-blue-mobile.png) !important;
  }

  .hubspot-form-submitted .fill-me-out.fill-me-out-royal-blue {
    background-image: url(/wp-content/uploads/2025/07/get-the-goods-royal-blue-mobile.png) !important;
  }
}

/* ────────────────────────────────────────────────────────────────
   ND Component Image Positions
───────────────────────────────────────────────────────────────── */

.image-shortcode-container {
  display: flex;
  flex: 1;
}

.image-shortcode-container .elementor-shortcode {
  display: grid;
  width: 100%;
}

.image-shortcode-container .elementor-shortcode .contextual-image-wrapper {
  display: flex;
}

.image-shortcode-container .image-position-center-center {
  align-self: center;
  justify-self: center;
}

.image-shortcode-container .image-position-center-left {
  align-self: center;
  justify-self: start;
}

.image-shortcode-container .image-position-center-right {
  align-self: center;
  justify-self: end;
}

.image-shortcode-container .image-position-top-center {
  align-self: start;
  justify-self: center;
}

.image-shortcode-container .image-position-top-left {
  align-self: start;
  justify-self: start;
}

.image-shortcode-container .image-position-top-right {
  align-self: start;
  justify-self: end;
}

.image-shortcode-container .image-position-bottom-center {
  align-self: end;
  justify-self: center;
}

.image-shortcode-container .image-position-bottom-left {
  align-self: end;
  justify-self: start;
}

.image-shortcode-container .image-position-bottom-right {
  align-self: end;
  justify-self: end;
}

.contextual-image-fallback {
    display: flex;
    align-items: center;
    justify-content: center;
}

.contextual-image-fallback div {
    color: #fff;
    font-family: "REM Regular", sans-serif;
    font-size: 20px;
    text-align: center;
    max-width: 720px;
    width: 100%;
}

.color_white .contextual-image-fallback div,
.color_gray .contextual-image-fallback div, /* the old light gray class */
.color_light_gray .contextual-image-fallback div,
.color_yellow .contextual-image-fallback div {
  color: #0A2447
}

/* ────────────────────────────────────────────────────────────────
   Background Textures
───────────────────────────────────────────────────────────────── */

.color_light_gray {
    background-color: #F4F6FC;
    background-image: url(/wp-content/uploads/2025/05/light-gray-texture2x.png);
    background-repeat: repeat;
    background-size: contain;
    background-position: center;
}

/* ────────────────────────────────────────────────────────────────
   Blog
───────────────────────────────────────────────────────────────── */

.blog-hero {
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

/* ────────────────────────────────────────────────────────────────
   Hide external site icon
───────────────────────────────────────────────────────────────── */

.elementor-icon-box-title a[data-no-icon="true"]::after {
  display: none;
}

/* ────────────────────────────────────────────────────────────────
   Buttons
───────────────────────────────────────────────────────────────── */

/* Add animation to text link arrow icons */
.elementor-widget-button.text-link .elementor-button-icon svg {
    transition: all 250ms;
}

.elementor-widget-button.text-link:hover .elementor-button-icon svg {
    transform: translateX(5px);
}

/* Text Link Colors */

/* White Text Links */
.color_royal_blue .text-link a,
.color_navy .text-link a {
  color: #fff !important;
}

/* Navy Text Links */
.color_sky_blue .text-link a,
.color_yellow .text-link a,
.color_light_gray .text-link a,
.color_white .text-link a,
.color_orange .text-link a {
  color: #0A2447 !important;
}

/* Yellow Button */
.color_royal_blue .elementor-widget-button.button .elementor-button-link,
.color_orange .elementor-widget-button.button .elementor-button-link {
  background-color: #FBBB00 !important;
  background-image: url(/wp-content/uploads/2025/05/yellow-texture.png) !important;
  background-size: 1024px;
  background-repeat: repeat;
}

.color_royal_blue .elementor-widget-button.button .elementor-button-link:hover,
.color_orange .elementor-widget-button.button .elementor-button-link:hover {
  background-color: #FAD400 !important;
}

/* Sky Blue Button */
.color_navy .elementor-widget-button.button .elementor-button-link {
  background-color: #81B7FF !important;
  background-image: url(/wp-content/uploads/2025/05/sky-blue-texture.png) !important;
  background-size: 1024px;
  background-repeat: repeat;
}

.color_navy .elementor-widget-button.button .elementor-button-link:hover {
  background-color: #A1C9FF !important;
}

/* Royal Blue Button */
.color_sky_blue .elementor-widget-button.button .elementor-button-link,
.color_light_gray .elementor-widget-button.button .elementor-button-link,
.color_yellow .elementor-widget-button.button .elementor-button-link {
  background-color: #1550D7 !important;
  background-image: url(/wp-content/uploads/2025/05/royal-blue-texture.png) !important;
  color: #fff !important;
  background-size: 1024px;
  background-repeat: repeat;
}

.color_sky_blue .elementor-widget-button.button .elementor-button-link:hover,
.color_light_gray .elementor-widget-button.button .elementor-button-link:hover,
.color_yellow .elementor-widget-button.button .elementor-button-link:hover  {
  background-color: #0E3EAA !important;
}

/* Navy Button */
.color_white .elementor-widget-button.button .elementor-button-link {
  background-color: #0A2447 !important;
  background-image: url(/wp-content/uploads/2025/05/navy-texture.png) !important;
  background-size: 1024px;
  background-repeat: repeat;
}

.color_white .elementor-widget-button.button .elementor-button-link:hover {
  background-color: #143969 !important;
}

/* Navy Text in Button */
.color_royal_blue .elementor-widget-button.button .elementor-button-link .elementor-button-text, /* Yellow Button */
.color_navy .elementor-widget-button.button .elementor-button-link .elementor-button-text, /* Yellow Button */
.color_orange .elementor-widget-button.button .elementor-button-link .elementor-button-text /* Yellow Button */ {
  color: #0A2447 !important;
}

/* White Text in Button */
.color_sky_blue .elementor-widget-button.button .elementor-button-link .elementor-button-text, /* Royal Blue Button */
.color_light_gray .elementor-widget-button.button .elementor-button-link .elementor-button-text, /* Royal Blue Button */
.color_gray .elementor-widget-button.button .elementor-button-link .elementor-button-text, /* Royal Blue Button for old light gray class */
.color_yellow .elementor-widget-button.button .elementor-button-link .elementor-button-text, /* Royal Blue Button */
.color_white .elementor-widget-button.button .elementor-button-link .elementor-button-text /* Navy Button */ {
  color: #fff !important;
}

/* Secondary Buttons */
.button-secondary .elementor-button {
  border-style: solid !important;
  border-width: 2px !important;
  padding: 22px 28px 22px 28px !important;
  border-radius: 6px !important;
  background: none !important;
}

.button-secondary.button-secondary-navy .elementor-button {
  color: #0A2447 !important;
  border-color: #0A2447 !important;
}

/* ────────────────────────────────────────────────────────────────
   Overriding something that was causing the icons in the menu to shrink
───────────────────────────────────────────────────────────────── */

.elementor-icon i, .elementor-icon svg {
    width: inherit !important;
    height: auto !important;
    display: inherit !important;
}

/* ────────────────────────────────────────────────────────────────
   Blog/News Styles
───────────────────────────────────────────────────────────────── */

blockquote {
    margin-right: 0;
    margin-left: 0;
}

blockquote p, blockquote p span {
    color: #0a2447;
    font-weight: 700 !important;
}

.single-news p strong a,
.single-post p strong a {
    font-weight: 700;
}

</style>
