/* ==========================================================================
   BASE FORMS
   ========================================================================== */
.wpcf7-form {
  display: flex;
  flex-direction: column;
}

.wpcf7-form textarea {
  width: 100%;
  max-width: 100%;
  height: 40px;
  padding: 0 15px;
  border-radius: 15px;
  background-color: #f5f8fa;
  border: 1px solid #bbb;
  color: #4e4e4e;
  font-size: 13.3333px;
  line-height: 1.45em;
  margin-top: 2px;
}

.wpcf7-form textarea {
  height: 74px;
}

.wpcf7-form input[type="submit"] {
  width: 100%;
}

.wpcf7-form hr {
  margin: 9px 0;
  border: 1px solid;
  border-top: 0;
  opacity: 0.4;
}

.wpcf7-form label {
  font-size: 14px;
  line-height: 1.45em;
  color: #666;
  margin-bottom: 10px;
}

.wpcf7-form p {
  font-size: 14px;
  line-height: 1.45em;
  color: #666;
}

.wpcf7-form input,
.wpcf7-form select,
.wpcf7-form textarea {
  width: 100%;
  max-width: 100%;
  height: 40px;
  padding: 0 15px;
  border-radius: 15px;
  background-color: #f5f8fa;
  border: 1px solid #bbb;
  color: #4e4e4e;
  font-size: 13.3333px;
  line-height: 1.45em;
  margin-top: 2px;
}

/* ==========================================================================
   FLEXBOX UTILITIES
   ========================================================================== */

.diff__d-flex {
  display: flex;
  flex-wrap: wrap;
}

.diff__row-reverse {
  flex-direction: row-reverse;
}

.diff__align-items-center {
  align-items: center !important;
}

.diff__3col-flex {
  gap: 3%;
}

.diff__3col-flex>.diff__column {
  width: 31.3333%;

  @media (max-width: 980px) {
    width: 100%;
    margin-bottom: 30px;
  }
}

/* ==========================================================================
     WIDTH UTILITIES
     ========================================================================== */

.diff__half-width {
  width: 50%;

  @media (max-width: 479px) {
    width: 100% !important;
  }
}

.diff__quarter-width {
  width: 25%;

  @media (max-width: 479px) {
    width: 100% !important;
  }
}

.diff__w-85 {
  width: 85%;
  margin-left: auto;
  margin-right: auto;
}

/* ==========================================================================
     BACKGROUND COLORS
     ========================================================================== */

.diff__bg-gray {
  background-color: #f7f7f7 !important;
}

.diff__bg-deep-blue {
  background-color: #234c97;
}

.diff__bg-deep-blue * {
  color: #fff;
}

.diff__bg-teal {
  background-color: #2bb7c4;
}

.diff__sec-default.diff__bg-teal *,
.diff__bg-teal * {
  color: #fff !important;
}

.diff__bg-pink {
  background-color: #fb65a2;
}

.diff__sec-default.diff__bg-pink * {
  color: #fff !important;
}

/* ==========================================================================
     BORDER RADIUS UTILITIES
     ========================================================================== */

.diff__border-radius {
  border-radius: 180px !important;
  overflow: hidden;
}

.diff__border-top-left-radius {
  border-top-left-radius: 180px !important;
  overflow: hidden;
}

.diff__border-top-right-radius {
  border-top-right-radius: 180px !important;
  overflow: hidden;
}

.diff__border-bottom-right-radius {
  border-bottom-right-radius: 180px !important;
  overflow: hidden;
}

.diff__border-bottom-left-radius {
  border-bottom-left-radius: 180px !important;
  overflow: hidden;
}

/* ==========================================================================
     TYPOGRAPHY UTILITIES
     ========================================================================== */

.diff__fs-44 {
  font-size: 44px;

  @media (max-width: 767px) {
    font-size: 38px;
  }
}

.diff__fs-32 {
  font-size: 32px;
}

.diff__fs-23 {
  font-size: 23px !important;
}

.diff__text-center {
  text-align: center;
}

.diff__text-align-right {
  text-align: right;
}

.diff__font-poppins {
  font-family: "Poppins", sans-serif;
}

.diff__fw-700 {
  font-weight: 700;
}

.diff__mt-8 {
  margin-top: 8px;
}

.diff__strong--pink strong {
  color: #fb65a2 !important;
}

/* ==========================================================================
     SECTION PADDING
     ========================================================================== */

.diff__sec-full-width {
  padding: 4% 0;
}

.diff__sec-text-and-piechart,
.diff__sec-genetype {
  padding: 4% 0;
}

.diff__sec-textbox {
  padding: 60px 0;
}

/* ==========================================================================
     BANNER SECTIONS
     ========================================================================== */

.diff__banner .img-banner__home {
  border-radius: 180px 0 180px 0;
}

.diff__banner .description-banner__home {
  margin-bottom: 16px;
  padding-right: 0;
}

.diff__top .wavy-bottom.wavy-teal {
  top: auto;
  background-size: 100% 72px;
  bottom: 0;
  height: 72px;
  z-index: 1;
  transform: scale(1, -1);
}

.section-content-sph .image-section-content img {
  height: auto;
}

/* ==========================================================================
     CONTENT SAMPLE SECTION
     ========================================================================== */

.diff__content-sample.section-content-sample {
  padding: 40px 30px 60px;
}

.diff__content-sample .main-content-sample {
  margin-right: 3%;
  width: 58.8%;
}

.diff__content-sample .main-content-sample h2 {
  color: #fff !important;
  line-height: 1.2;
}

.diff__content-sample .desc-content-sample {
  margin-top: 38px;
}

.diff__content-sample .image-sample {
  width: 38.2%;
}

.diff__content-sample.section-content-sample h6 {
  color: #fff;
  font-size: 18px;
  margin-bottom: 11px;
}

.diff__content-sample .image-sample img {
  width: 74.5%;
}

.diff__content-sample.section-content-sample h4 {
  font-family: "Poppins", Helvetica, Arial, Lucida, sans-serif;
  font-weight: 600;
  font-size: 24px;
  color: #ffffff !important;
  line-height: 1.6;
  padding-bottom: 5px;
}

.diff__content-sample .content-sample__wrapper {
  gap: unset;
}

.diff__content-sample .desc-content-sample p {
  line-height: 1.6;
}

/* ==========================================================================
     SCIENTIFIC SECTION
     ========================================================================== */

.diff__scientific {
  padding: 51px 0 103px;
}

.diff__scientific .container {
  max-width: 1400px;
}

.diff__scientific h2 {
  padding-bottom: 0.45em;
}

.diff__scientific .desc-content-center p {
  line-height: 1.55;
  padding-bottom: 1em;
}

.diff__scientific .scientific__team {
  justify-content: center;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;

  @media (max-width: 980px) {
    flex-direction: column;
  }
}

.diff__scientific .scientific__member {
  width: calc(100% / 3);

  @media (max-width: 980px) {
    width: 100%;
  }
}

.scientific__member-image {
  border-radius: 180px 180px 180px 180px;
  overflow: hidden;
  margin: auto;
  max-width: 320px;
  line-height: 0 !important;
  position: relative;
  filter: saturate(0%);
  backface-visibility: hidden;
}

.scientific__member-description {
  margin-top: 15px;
}

.scientific__member .scientific__member-header {
  font-size: 24px;
  color: #234c97;
  line-height: 2em;
  text-align: center;
}

.scientific__member .scientific__member-position {
  color: #000000 !important;
  line-height: 2em;
  text-align: center;
}

.scientific__member .scientific__member-position+div {
  margin-top: 20px;
}

.scientific__member .scientific__member-position+div p {
  line-height: 1.4;
}

/* ==========================================================================
     CONTENT IMAGE SECTION
     ========================================================================== */

.diff__sec-content-image .image-section-content {
  border-radius: unset;
  margin-top: -10px;
}

.diff__img-sub {
  margin-top: -4px;
}

/* ==========================================================================
     DEFAULT SECTION STYLES
     ========================================================================== */

.diff__sec-default h2 {
  font-family: "Comfortaa", display;
  font-weight: 700;
  color: #234c97;
  line-height: 1.28em;
}

.diff__sec-default h3 {
  font-size: 32px;
  color: #3e5660;
  line-height: 1.3em;
}

.diff__sec-default .container {
  max-width: 1440px;
  padding: 0 30px;
}

.diff__sec-default>.container>.diff__d-flex>.diff__half-width {
  @media (max-width: 980px) {
    width: 100%;
  }
}

.diff__sec-default>.container>.diff__d-flex>.diff__quarter-width {
  @media (max-width: 980px) {
    width: 50%;
  }
}

/* ==========================================================================
     CONTACT FORM SECTION
     ========================================================================== */

.diff__sec-contact-form {
  padding: 61px 0 43px;
  position: relative;
  overflow: hidden;
  z-index: 1;
}

.diff__sec-contact-form::after {
  content: "";
  position: absolute;
  display: block;
  background-size: initial;
  background-position: center bottom 0px;
  background-image: url(../images/diff__section/join-decor-3.png);
  background-repeat: no-repeat;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 700px;
  height: 298px;
  z-index: -1;
}

.diff__sec-contact-form .sec-contact-form__intro {
  width: 47.25%;
  margin-right: 5.5%;

  @media (max-width: 980px) {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 30px;
  }
}

.diff__sec-contact-form .sec-contact-form__form {
  width: 47.25%;

  @media (max-width: 980px) {
    width: 100%;
    margin-left: 0;
  }
}

/* ==========================================================================
     FORM STYLES
     ========================================================================== */

.diff__form {
  margin-top: 35px;
}

.diff__form label {
  font-size: 14px;
}

.diff__form p {
  padding-bottom: 12px;
}

.diff__form .wpcf7 input[type="text"],
.diff__form .wpcf7 input[type="email"],
.diff__form .wpcf7 input[type="number"],
.diff__form .wpcf7 input[type="tel"],
.diff__form .wpcf7 select,
.diff__form .wpcf7 textarea {
  width: 100%;
  max-width: 100%;
  height: 40px;
  padding: 0 15px;
  border-radius: 15px;
  background-color: #f5f8fa;
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
  border: 1px solid #bbb;
  color: #4e4e4e !important;
}

.diff__form input.text:focus,
.diff__form input.title:focus,
.diff__form input[type="text"]:focus,
.diff__form select:focus,
.diff__form textarea:focus {
  border-color: #2d3940;
  color: #3e3e3e;
}

.diff__form .wpcf7 input[type="submit"] {
  background: #2bb7c4;
  font-size: 14px;
  padding: 10px 25px;
  border-radius: 25px;
  color: #fff;
  cursor: pointer;
  border-width: 2px;
  border-style: outset;
  border-color: buttonborder;
}

/* ==========================================================================
     TEXT AND PIECHART SECTION
     ========================================================================== */

.diff__sec-text-and-piechart h2 {
  margin-bottom: 8px;
}

.diff__sec-text-and-piechart .sec-text-and-piechart__content {
  padding-top: 1px !important;
  padding-right: 0px !important;
  padding-bottom: 1px !important;
  padding-left: 0px !important;
  margin-right: auto !important;
  margin-left: auto !important;
}

.diff__sec-text-and-piechart .sec-text-and-piechart__text {
  width: 48.5%;
  margin-right: 3%;

  @media (max-width: 980px) {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 30px;
  }
}

.diff__sec-text-and-piechart .sec-text-and-piechart__piechart {
  width: 48.5%;
  margin-left: auto;
  padding-right: 3%;

  @media (max-width: 980px) {
    width: 100%;
    margin-left: 0;
    padding-right: 0;
  }
}

.diff__sec-text-and-piechart .sec-text-and-piechart__text ul {
  padding-left: 32px !important;
  padding-bottom: 1em;
  list-style-type: disc;
  padding: 0 0 23px 1em;
  line-height: 26px;
}

.diff__sec-text-and-piechart .sec-text-and-piechart__text ul li {
  font-size: 18px;
}

/* ==========================================================================
     GENETYPE SECTION
     ========================================================================== */

.diff__sec-genetype .sec-genetype__img {
  width: 75%;
}

.diff__sec-genetype .sec-genetype__content {
  gap: 11%;
  flex-wrap: nowrap;

  @media (max-width: 480px) {
    flex-wrap: wrap;
  }
}

/* ==========================================================================
     ACTIONABLE RISK SECTION
     ========================================================================== */

.diff__sec-actionable-risk {
  padding: 60px 0;
  background-color: #f2f2f2 !important;
}

.diff__sec-actionable-risk h6 {
  margin-top: 3.093%;
}

.diff__sec-actionable-risk .sec-actionable-risk__media img {
  margin-right: 0;
  margin-left: auto;

  @media (max-width: 980px) {
    margin-right: auto;
  }
}

.diff__sec-actionable-risk .diff__half-width {
  width: 48.5%;
}

.diff__sec-actionable-risk .sec-actionable-risk__inner {
  max-width: 1200px;
  gap: 3%;
  margin-right: auto;
  margin-left: auto;
}

/* ==========================================================================
     MULTI-RISK TEST BANNER
     ========================================================================== */

.diff__multi-risk-test .diff__sec-banner {
  background-color: #f2f2f2;
  background-image: url(../images/diff__section/comp-decor.png);
  background-position: center top;
  background-size: cover;
  padding: 60px 0;
  overflow: hidden;

  @media (max-width: 1360px) {
    background-position: left top;
  }
}

.diff__multi-risk-test .diff__sec-banner h2 {
  line-height: 1.7em;
  padding-bottom: 0.4em;
}

/* ==========================================================================
     BANNER SECTION
     ========================================================================== */

.diff__sec-banner .sec-banner__img {
  width: 65.667%;
  margin-right: 3%;

  @media (max-width: 980px) {
    width: 100%;
    margin-right: auto;
    margin-left: auto;
    margin-bottom: 30px;
  }
}

.diff__sec-banner .sec-banner__img img {
  padding-right: 100px;
  padding-left: 100px;
  margin-right: 100px !important;
  margin-left: 100px !important;
  width: 85%;

  @media (max-width: 768px) {
    padding-right: 0;
    padding-left: 0;
    margin-right: 0 !important;
    margin-left: 0 !important;
    width: 100%;
  }
}

.diff__sec-banner .sec-banner__patient {
  width: 31.333%;
  border: 1px solid #bebebe;
  background-color: #fcfcfc;

  @media (max-width: 980px) {
    width: 100%;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 30px;
  }
}

.diff__sec-banner .sec-banner__patient-heading {
  padding: 10px 0 0;
}

.diff__sec-banner .sec-banner__patient-content-top {
  padding: 18px 35px 9px;
  border-bottom: 1px #bebebe;
  border-style: solid;

  @media (max-width: 980px) {
    padding: 18px 35px 9px;
  }
}

.diff__sec-banner .sec-banner__patient-content-top p {
  color: #999;

  @media (max-width: 980px) {
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    transform: translatex(-45%);
  }

  @media (max-width: 768px) {
    width: max-content;
    margin-left: auto;
    margin-right: auto;
    transform: unset;
  }
}

.diff__sec-banner .sec-banner__patient-content {
  padding: 29px 22px 41px 47px;
}

.diff__sec-banner .sec-banner__patient-note {
  font-size: x-small;
  line-height: 2.2em;
}

.diff__sec-banner .sec-banner__content {
  margin-top: 2em;

  @media (max-width: 980px) {
    flex-direction: column;
  }
}

.diff__sec-banner p {
  line-height: 1em;
}

.diff__sec-banner .sec-banner__patient-content p {
  padding-bottom: 1.6em;
}

/* ==========================================================================
     LISTS
     ========================================================================== */

ul.diff__list-disc {
  padding-left: 32px !important;
  padding-bottom: 1em;
  list-style-type: disc;
  padding: 0 0 23px 1em;
  line-height: 26px;
}

ul.diff__list-disc li {
  font-size: 18px;
}

/* ==========================================================================
     SCREENING SECTION
     ========================================================================== */

.sec-screening__content {
  max-width: 1200px;
  margin-left: auto;
  margin-right: auto;
}

.sec-screening__img-caption {
  font-size: small;
  line-height: 2.2em;
}

.sec-screening__caption {
  font-size: 9px;
  line-height: 2.2em;
}

.diff__sec-screening h2 {
  @media (max-width: 767px) {
    font-size: 32px !important;
  }
}

.diff__sec-screening p {
  color: #666;
}

/* ==========================================================================
     NEARLY SECTION
     ========================================================================== */

.diff__sec-nearly {
  background-color: #f2f2f2;
  padding: 60px 0;
}

.diff__sec-nearly h4 {
  font-size: 18px;
}

.diff__sec-nearly p {
  font-size: 18px;
  line-height: 1.5em;
  font-weight: 500;
}

/* ==========================================================================
     SIMPLE SECTION
     ========================================================================== */

.diff__sec-simple {
  padding: 40px 0 60px;
  position: relative;
  background-image: url(../images/diff__section/invest-main-decor-2-2.png);
  background-position: right bottom;
  background-repeat: no-repeat;
  padding: 60px 0;
  overflow: hidden;
}

.diff__sec-simple h4 {
  font-family: "Poppins", Helvetica, Arial, Lucida, sans-serif;
  font-size: 24px;
  font-weight: 600;
}

.diff__sec-simple .sec-simple__content-left {
  width: 22.75%;
  margin-top: 6.8em;
  margin-right: 3%;

  @media (max-width: 980px) {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 30px;
  }
}

.diff__sec-simple .sec-simple__content-center {
  width: 48.5%;
  margin-right: 3%;

  @media (max-width: 980px) {
    width: 100%;
    margin-right: 0;
    margin-left: 0;
    margin-bottom: 30px;
  }
}

.diff__sec-simple .sec-simple__content-center img {
  display: block;
  margin-left: auto;
  margin-right: auto;
  width: 65%;
}

.diff__sec-simple .sec-simple__content-right {
  width: 22.75%;
  margin-top: 6.8em;

  @media (max-width: 980px) {
    width: 100%;
  }
}

.diff__sec-simple ul.diff__list-disc {
  padding-left: 18px !important;
}

/* ==========================================================================
     LEARNING CENTER BANNER
     ========================================================================== */

.diff__learning-center-banner {
  padding: 60px 0 110px;
}

.diff__learning-center-banner .container {
  max-width: 1460px;
  padding: 0 30px;
}

.diff__learning-center-banner * {
  font-family: unset;
}

.diff__learning-center-banner p {
  line-height: 1.6em;
  font-family: "Poppins", sans-serif;
  font-size: 20px;
}

.diff__learning-center-banner p strong {
  font-weight: 700;
}

/* ==========================================================================
     CHECKOUT SECTION
     ========================================================================== */

.diff__checkout .checkout__item-img {
  display: block;
  margin-bottom: 30px;
}

.diff__checkout .checkout__item-img img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.diff__checkout .checkout__item-title a {
  font-family: "Comfortaa", display;
  color: inherit;
  font-size: 18px;
}

.diff__checkout h3 {
  margin-bottom: 4%;
}

/* ==========================================================================
     TEXTBOX SECTION
     ========================================================================== */

.sec-textbox__inner {
  padding: 20px;
}

/* ==========================================================================
     TABLES
     ========================================================================== */

table:not(.variations).key-features__table {
  border: none;
}

.key-features__table td {
  width: 50%;
  padding: 6px 24px;
  font-size: 18px;
  line-height: 1.45em;
  border: none;
  border-top: 1px solid #eee;
}

.key-features__table tr:first-child td {
  border-top: none;
}

.key-features__table td:first-child {
  border-right: 1px solid #eee;
}

/* ==========================================================================
     READY SECTION
     ========================================================================== */

.diff__sec-ready {
  padding-top: 95px;
  padding-bottom: 114px;
  background-image: url(../images/diff__section/image-3.png);
  background-size: cover;
  background-repeat: no-repeat;
  background-position: 50%;
}

.diff__sec-ready h2 {
  margin-bottom: 35px;
}

.diff__sec-ready p {
  margin-bottom: 25px;
}

.diff__sec-ready a {
  width: fit-content;
  display: block;
  margin: 0 auto;
}

/* ==========================================================================
     SITE CONTAINER UPDATES
     ========================================================================== */

header .container,
nav sub-menu,
section .container,
.diff__sec-default .container,
.main-footer .container {
  max-width: 1440px;
}

/* ==========================================================================
     MENU FIXES
     ========================================================================== */

@media (max-width: 1024px) {
  .top-menu-nav.open {
    height: auto;
  }
}

.top-menu-nav ul.sub-menu {
  left: 0;
  right: 0;
}

.main-menu>li>.sub-menu {
  border-radius: 0 0 10px 10px;
}

.top-menu-nav a {
  font-size: 18px;
}

.top-menu-nav ul.main-menu>li.menu-item-has-children>a {
  margin-right: 10px;
}

@media (min-width: 1024px) and (max-width: 1430px) {
  li#menu-item-31.menu-cta.menu-item.menu-item-type-custom.menu-item-object-custom.menu-item-31 {
    display: none !important;
  }
}

/* ==========================================================================
     MISC UTILITIES
     ========================================================================== */

.divider-support-right,
.act-risk-assessment {
  display: flex;
  flex-direction: column;
  justify-content: center;
}



/* ==========================================================================
     SEARCH
     ========================================================================== */

/* Search Results Styling */

.search-results .main-blogs-page {
  flex-direction: column;
}

.search-results.main-blogs-page article {
  border-bottom: 1px solid #e0e0e0;
  padding: 20px 0;
  margin-bottom: 20px;
}

.search-results.main-blogs-page article:last-child {
  border-bottom: none;
}

.search-results.main-blogs-page .entry-title {
  font-size: 24px !important;
  line-height: 1.3em;
  margin-bottom: 10px;
}

.search-results.main-blogs-page .entry-title a {
  color: #234C97;
  text-decoration: none;
}

.search-results.main-blogs-page .entry-title a:hover {
  color: #2bb7c4;
}

.search-results.main-blogs-page .post-thumbnail {
  width: 100%;
  max-width: 200px;
  height: 150px;
  object-fit: cover;
  border-radius: 8px;
  margin: 10px 0;
}

.search-results.main-blogs-page .post-thumbnail img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.search-results.main-blogs-page .entry-summary {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 10px;
}

.search-results.main-blogs-page .entry-meta {
  font-size: 14px;
  color: #666;
  margin-bottom: 10px;
}

.search-results.main-blogs-page .entry-footer {
  font-size: 14px;
  color: #666;
}

@media (max-width: 768px) {
  .search-results .main-blogs-page .entry-title {
    font-size: 20px !important;
  }

  .search-results .main-blogs-page .post-thumbnail {
    max-width: 150px;
    height: 120px;
  }
}

/* Button fixes */
.divider-box a {
  display: contents !important;
}