.microsite,
.microsite * {
  box-sizing: border-box; }

.microsite {
  margin: 0;
  padding: 0;
  background: #f4f9f9;
  color: #003d42;
  font-family: "poppins", helvetica, sans-serif;
  font-size: 16px;
  line-height: 1.6;
  -webkit-font-smoothing: antialiased; }
  @media (max-width: 1300px) {
    .microsite {
      font-size: 17px; } }
.ms-h2 {
  font-family: "Merriweather", georgia, serif;
  font-weight: 400;
  color: #003d42;
  font-size: 2.3em;
  line-height: 1.15;
  margin: 0 0 0.35em; }
  @media (max-width: 850px) {
    .ms-h2 {
      font-size: 1.9em; } }
.ms-subtitle {
  font-family: "poppins", helvetica, sans-serif;
  font-weight: 500;
  color: #169095;
  font-size: 1.3em;
  line-height: 1.3;
  margin: 0 0 1.1em; }
  @media (max-width: 850px) {
    .ms-subtitle {
      font-size: 1.15em; } }
.ms-richtext {
  font-size: 1em; }
  .ms-richtext p {
    margin: 0 0 1.1em; }
    .ms-richtext p:last-child {
      margin-bottom: 0; }
  .ms-richtext a {
    color: #003d42;
    text-decoration: underline; }
    .ms-richtext a:hover {
      color: #169095; }
  .ms-richtext ul,
  .ms-richtext ol {
    margin: 0 0 1.1em 1.2em;
    padding: 0; }
    .ms-richtext ul li,
    .ms-richtext ol li {
      margin-bottom: 0.5em; }
      .ms-richtext ul li::marker,
      .ms-richtext ol li::marker {
        color: #169095; }
  .ms-richtext strong,
  .ms-richtext b {
    font-weight: 600; }

.ms-button {
  display: inline-block;
  margin-top: 1.6em;
  padding: 0.85em 1.6em;
  background: #169095;
  color: #fff;
  font-weight: 500;
  text-decoration: none;
  border: 0;
  transition: background 0.2s ease; }
  .ms-button:hover, .ms-button:focus {
    background: #003d42;
    color: #fff; }

.ms-shell {
  display: flex;
  flex-direction: column;
  min-height: 100vh; }

.ms-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.5em; }
  @media (max-width: 850px) {
    .ms-header {
      padding: 1.2em 1.4em 0.4em; } }
  .ms-header .ms-logo {
    display: inline-block;
    line-height: 0; }
    .ms-header .ms-logo img {
      width: 140px;
      height: auto; }
      @media (max-width: 850px) {
        .ms-header .ms-logo img {
          width: 110px; } }
  .ms-header .ms-progress {
    font-family: "Merriweather", georgia, serif;
    color: #36b780;
    font-size: 1.4em; }
    @media (max-width: 850px) {
      .ms-header .ms-progress {
        font-size: 1.05em; } }
.ms-stage {
  flex: 1 1 auto;
  display: grid;
  grid-template-columns: 2fr 20fr 2fr;
  grid-template-rows: 700px;
  align-items: stretch;
  align-content: center;
  padding: 3.5em 0;
  min-height: 0; }
  @media (max-width: 850px) {
    .ms-stage {
      grid-template-columns: 1fr;
      padding: 0.8em 1em; } }
.ms-viewport {
  grid-column: 2;
  position: relative;
  overflow: hidden;
  width: 100%; }
  @media (max-width: 850px) {
    .ms-viewport {
      grid-column: 1; } }
.ms-track {
  display: flex;
  height: 100%;
  transition: transform 0.5s cubic-bezier(0.22, 0.61, 0.36, 1);
  will-change: transform; }

.ms-slide {
  flex: 0 0 100%;
  width: 100%;
  min-width: 100%;
  display: flex; }

.ms-card {
  background: #fff;
  width: 100%;
  display: flex;
  overflow: hidden;
  box-shadow: 0 0.4em 1.6em rgba(0, 61, 66, 0.06); }

.ms-card-inner {
  width: 100%;
  min-height: 0;
  overflow-y: auto;
  display: flex;
  flex-direction: column;
  justify-content: center; }

.ms-pad {
  padding: 3.4em 4em; }
  @media (max-width: 1024px) {
    .ms-pad {
      padding: 2.6em 2.8em; } }
  @media (max-width: 850px) {
    .ms-pad {
      padding: 1.8em 1.6em; } }
.ms-controls {
  display: grid;
  grid-template-columns: 2fr 20fr 2fr;
  padding: 0.4em 0 3.5em; }
  @media (max-width: 850px) {
    .ms-controls {
      grid-template-columns: 1fr;
      padding: 0.4em 1em 3.5em; } }
.ms-controls-inner {
  grid-column: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1em; }
  @media (max-width: 850px) {
    .ms-controls-inner {
      grid-column: 1; } }
.ms-arrow {
  width: 2.9em;
  height: 2.9em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #169095;
  color: #fff;
  border: 0;
  cursor: pointer;
  transition: background 0.2s ease, opacity 0.2s ease; }
  .ms-arrow svg {
    width: 1.05em;
    height: auto;
    display: block; }
  .ms-arrow.ms-next svg, .ms-arrow:last-child svg {
    transform: scaleX(-1); }
  .ms-arrow:hover:not(:disabled) {
    background: #003d42; }
  .ms-arrow:disabled {
    background: #c9dfdf;
    cursor: default;
    opacity: 0.7; }

.ms-dots {
  flex: 1 1 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  gap: 0.45em;
  list-style: none;
  margin: 0;
  padding: 0; }
  .ms-dots li {
    line-height: 0; }

.ms-dot {
  width: 0.7em;
  height: 0.7em;
  padding: 0;
  border: 0;
  cursor: pointer;
  background: #c9dfdf;
  transition: background 0.2s ease, transform 0.2s ease; }
  .ms-dot.is-active {
    background: #169095; }
  .ms-dot.is-current {
    background: #003d42;
    transform: scale(1.1); }
  .ms-dot:hover {
    background: #169095; }

.ms-counter {
  display: none;
  color: #169095;
  font-family: "poppins", helvetica, sans-serif;
  font-weight: 500;
  font-size: 1.1em;
  text-align: center; }

@media (max-width: 850px) {
  .ms-dots {
    display: none; }
  .ms-counter {
    display: block;
    flex: 1 1 auto; } }

.ms-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 2.5em;
  background: #003d42;
  color: #fff;
  font-size: 0.85em; }
  @media (max-width: 850px) {
    .ms-footer {
      padding: 1em 1.4em; } }
  .ms-footer .ms-privacy {
    color: #fff;
    text-decoration: underline; }
    .ms-footer .ms-privacy:hover {
      color: #aed8da; }

.ms-imageContent {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  width: 100%;
  min-height: 100%;
  align-items: stretch; }
  @media (max-width: 1024px) {
    .ms-imageContent {
      grid-template-columns: 1fr; } }
  .ms-imageContent.ms-img-right .ms-imageContent-media {
    order: 2; }
  .ms-imageContent.ms-img-right .ms-imageContent-body {
    order: 1; }
  @media (max-width: 1024px) {
    .ms-imageContent.ms-img-right .ms-imageContent-media {
      order: 1; }
    .ms-imageContent.ms-img-right .ms-imageContent-body {
      order: 2; } }
  .ms-imageContent .ms-imageContent-media {
    position: relative;
    overflow: hidden;
    min-height: 18em; }
    .ms-imageContent .ms-imageContent-media img {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%;
      object-fit: cover; }
    .ms-imageContent .ms-imageContent-media.is-tinted::after {
      content: "";
      position: absolute;
      inset: 0;
      background: #003d42;
      mix-blend-mode: multiply;
      opacity: 0.55; }
    @media (max-width: 1024px) {
      .ms-imageContent .ms-imageContent-media {
        min-height: 0;
        height: 22em; } }
    @media (max-width: 850px) {
      .ms-imageContent .ms-imageContent-media {
        height: 15em; } }
  .ms-imageContent .ms-imageContent-body {
    display: flex;
    align-items: center; }

.ms-splitQuote {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 3.4em;
  align-items: center; }
  @media (max-width: 1024px) {
    .ms-splitQuote {
      grid-template-columns: 1fr;
      gap: 2em; } }
  .ms-splitQuote .ms-splitQuote-quote blockquote {
    margin: 0;
    padding: 1.1em 0;
    border-top: 2px solid #169095;
    border-bottom: 2px solid #169095;
    font-family: "Merriweather", georgia, serif;
    color: #169095;
    font-size: 2.4em;
    line-height: 1.25;
    text-align: center; }
    @media (max-width: 850px) {
      .ms-splitQuote .ms-splitQuote-quote blockquote {
        font-size: 1.7em; } }
.ms-iconGrid {
  display: grid;
  grid-template-columns: 1fr 1.15fr;
  gap: 3em;
  align-items: center; }
  @media (max-width: 1024px) {
    .ms-iconGrid {
      grid-template-columns: 1fr;
      gap: 2em; } }
  .ms-iconGrid .ms-iconGrid-tiles {
    display: grid;
    gap: 0.9em;
    list-style: none;
    margin: 0;
    padding: 0; }
    .ms-iconGrid .ms-iconGrid-tiles.ms-cols-2 {
      grid-template-columns: repeat(2, 1fr); }
    .ms-iconGrid .ms-iconGrid-tiles.ms-cols-3 {
      grid-template-columns: repeat(3, 1fr); }
      @media (max-width: 850px) {
        .ms-iconGrid .ms-iconGrid-tiles.ms-cols-3 {
          grid-template-columns: repeat(2, 1fr); } }
    .ms-iconGrid .ms-iconGrid-tiles.ms-cols-4 {
      grid-template-columns: repeat(4, 1fr); }
      @media (max-width: 1024px) {
        .ms-iconGrid .ms-iconGrid-tiles.ms-cols-4 {
          grid-template-columns: repeat(3, 1fr); } }
      @media (max-width: 850px) {
        .ms-iconGrid .ms-iconGrid-tiles.ms-cols-4 {
          grid-template-columns: repeat(2, 1fr); } }
    .ms-iconGrid .ms-iconGrid-tiles .ms-tile {
      background: #f4f9f9;
      padding: 1.4em 0.6em;
      text-align: center; }
      .ms-iconGrid .ms-iconGrid-tiles .ms-tile a {
        text-decoration: none;
        color: inherit;
        display: block; }
      .ms-iconGrid .ms-iconGrid-tiles .ms-tile .ms-tile-icon {
        display: block; }
        .ms-iconGrid .ms-iconGrid-tiles .ms-tile .ms-tile-icon img {
          width: 3.4em;
          height: 3.4em;
          object-fit: contain;
          margin: 0 auto 0.7em; }
      .ms-iconGrid .ms-iconGrid-tiles .ms-tile .ms-tile-label {
        display: block;
        color: #003d42;
        font-size: 0.95em;
        line-height: 1.25; }

.ms-accordion .ms-accordion-head-block {
  margin-bottom: 1.6em; }

.ms-accordion .ms-accordion-list {
  list-style: none;
  margin: 0;
  padding: 0; }

.ms-accordion .ms-accordion-item {
  border-top: 1px solid #c9dfdf; }
  .ms-accordion .ms-accordion-item:last-child {
    border-bottom: 1px solid #c9dfdf; }
  .ms-accordion .ms-accordion-item .ms-accordion-head {
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 1em;
    padding: 1.1em 0;
    background: none;
    border: 0;
    cursor: pointer;
    text-align: left; }
    .ms-accordion .ms-accordion-item .ms-accordion-head .ms-accordion-title {
      font-family: "Merriweather", georgia, serif;
      color: #003d42;
      font-size: 1.4em; }
    .ms-accordion .ms-accordion-item .ms-accordion-head .ms-accordion-chevron {
      flex: 0 0 auto;
      display: flex;
      opacity: 0.35;
      transition: opacity 0.2s ease; }
      .ms-accordion .ms-accordion-item .ms-accordion-head .ms-accordion-chevron svg {
        width: 1.1em;
        height: auto;
        display: block;
        transform: rotate(180deg);
        transition: transform 0.25s ease; }
  .ms-accordion .ms-accordion-item .ms-accordion-body {
    display: none;
    padding: 0 0 1.4em; }
  .ms-accordion .ms-accordion-item.is-open .ms-accordion-body {
    display: block; }
  .ms-accordion .ms-accordion-item.is-open .ms-accordion-chevron {
    opacity: 1; }
    .ms-accordion .ms-accordion-item.is-open .ms-accordion-chevron svg {
      transform: rotate(0deg); }

.ms-valuesOverview {
  display: grid;
  grid-template-columns: 1fr 1.1fr;
  gap: 3em;
  align-items: center; }
  @media (max-width: 1024px) {
    .ms-valuesOverview {
      grid-template-columns: 1fr;
      gap: 2em; } }
  .ms-valuesOverview.ms-boxes-right .ms-valuesOverview-boxes {
    order: 2; }
  .ms-valuesOverview.ms-boxes-right .ms-valuesOverview-text {
    order: 1; }
  .ms-valuesOverview .ms-valuesOverview-boxes {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0.9em;
    list-style: none;
    margin: 0;
    padding: 0; }
    .ms-valuesOverview .ms-valuesOverview-boxes .ms-valueBox {
      background: #f4f9f9;
      padding: 2em 1em;
      text-align: center; }
      .ms-valuesOverview .ms-valuesOverview-boxes .ms-valueBox .ms-valueBox-icon img {
        width: 3.6em;
        height: 3.6em;
        object-fit: contain;
        margin: 0 auto 0.8em; }
      .ms-valuesOverview .ms-valuesOverview-boxes .ms-valueBox .ms-valueBox-label {
        display: block;
        font-family: "Merriweather", georgia, serif;
        color: #003d42;
        font-size: 1.05em;
        line-height: 1.25; }

.ms-textWithCard {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 3em;
  align-items: center; }
  @media (max-width: 1024px) {
    .ms-textWithCard {
      grid-template-columns: 1fr;
      gap: 2em; } }
  .ms-textWithCard .ms-textWithCard-card {
    background: #f4f9f9;
    padding: 2.4em; }
    .ms-textWithCard .ms-textWithCard-card .ms-textWithCard-icon img {
      width: 2.6em;
      height: 2.6em;
      object-fit: contain;
      margin-bottom: 0.8em; }
    .ms-textWithCard .ms-textWithCard-card .ms-card-title {
      font-family: "Merriweather", georgia, serif;
      font-weight: 400;
      color: #003d42;
      font-size: 1.7em;
      margin: 0 0 0.6em; }
    .ms-textWithCard .ms-textWithCard-card .ms-textWithCard-list {
      list-style: none;
      margin: 0;
      padding: 0; }
      .ms-textWithCard .ms-textWithCard-card .ms-textWithCard-list li {
        color: #003d42;
        padding: 0.2em 0; }

.ms-valuesDetail .ms-h2 {
  margin-bottom: 1em; }

.ms-valuesDetail .ms-valuesDetail-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 1.8em 2.4em;
  list-style: none;
  margin: 0;
  padding: 0; }
  @media (max-width: 1024px) {
    .ms-valuesDetail .ms-valuesDetail-grid {
      grid-template-columns: 1fr; } }
.ms-valuesDetail .ms-valueDetail {
  display: grid;
  grid-template-columns: 5em 1fr;
  gap: 1em;
  align-items: start; }
  .ms-valuesDetail .ms-valueDetail .ms-valueDetail-icon {
    background: #f4f9f9;
    display: flex;
    align-items: center;
    justify-content: center;
    aspect-ratio: 1; }
    .ms-valuesDetail .ms-valueDetail .ms-valueDetail-icon img {
      width: 60%;
      height: 60%;
      object-fit: contain; }
  .ms-valuesDetail .ms-valueDetail h3 {
    font-family: "Merriweather", georgia, serif;
    font-weight: 400;
    color: #003d42;
    font-size: 1.3em;
    margin: 0 0 0.4em; }
  .ms-valuesDetail .ms-valueDetail .ms-valueDetail-points {
    list-style: none;
    margin: 0;
    padding: 0; }
    .ms-valuesDetail .ms-valueDetail .ms-valueDetail-points li {
      position: relative;
      padding-left: 1em;
      margin-bottom: 0.3em;
      font-size: 0.95em; }
      .ms-valuesDetail .ms-valueDetail .ms-valueDetail-points li::before {
        content: "\2022";
        position: absolute;
        left: 0;
        color: #169095; }

.ms-videoFeature {
  display: grid;
  grid-template-columns: 1.1fr 1fr;
  gap: 3em;
  align-items: center; }
  @media (max-width: 1024px) {
    .ms-videoFeature {
      grid-template-columns: 1fr;
      gap: 2em; } }
  .ms-videoFeature.ms-video-right .ms-videoFeature-media {
    order: 2; }
  .ms-videoFeature.ms-video-right .ms-videoFeature-text {
    order: 1; }
  .ms-videoFeature .ms-videoFeature-media img,
  .ms-videoFeature .ms-videoFeature-media video {
    width: 100%;
    height: auto;
    display: block; }
  .ms-videoFeature .ms-videoFeature-media .ms-videoEmbed {
    position: relative;
    padding-bottom: 56.25%;
    height: 0; }
    .ms-videoFeature .ms-videoFeature-media .ms-videoEmbed iframe {
      position: absolute;
      inset: 0;
      width: 100%;
      height: 100%; }

.ms-imageCollage .ms-h2 {
  margin-bottom: 0.9em; }

.ms-imageCollage .ms-imageCollage-grid {
  display: grid;
  gap: 0.5em;
  list-style: none;
  margin: 0;
  padding: 0; }
  .ms-imageCollage .ms-imageCollage-grid.ms-cols-2 {
    grid-template-columns: repeat(2, 1fr); }
  .ms-imageCollage .ms-imageCollage-grid.ms-cols-3 {
    grid-template-columns: repeat(3, 1fr); }
  .ms-imageCollage .ms-imageCollage-grid.ms-cols-4 {
    grid-template-columns: repeat(4, 1fr); }
  @media (max-width: 850px) {
    .ms-imageCollage .ms-imageCollage-grid {
      grid-template-columns: repeat(2, 1fr); } }
  .ms-imageCollage .ms-imageCollage-grid li {
    line-height: 0; }
  .ms-imageCollage .ms-imageCollage-grid img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    aspect-ratio: 4 / 3; }

.ms-benefits .ms-benefits-head {
  margin-bottom: 1.6em; }

.ms-benefits .ms-benefits-carousel {
  position: relative;
  display: flex;
  align-items: center;
  gap: 0.8em; }

.ms-benefits .ms-benefits-nav {
  flex: 0 0 auto;
  width: 2.2em;
  height: 2.2em;
  display: flex;
  align-items: center;
  justify-content: center;
  background: none;
  border: 0;
  cursor: pointer;
  color: #169095;
  transition: opacity 0.2s ease, color 0.2s ease; }
  .ms-benefits .ms-benefits-nav svg {
    width: 0.8em;
    height: auto;
    display: block; }
  .ms-benefits .ms-benefits-nav:hover:not(:disabled) {
    color: #003d42; }
  .ms-benefits .ms-benefits-nav:disabled {
    color: #c9dfdf;
    cursor: default; }

.ms-benefits .ms-benefits-viewport {
  flex: 1 1 auto;
  overflow: hidden; }

.ms-benefits .ms-benefits-track {
  display: flex;
  transition: transform 0.45s cubic-bezier(0.22, 0.61, 0.36, 1); }

.ms-benefits .ms-benefits-card {
  position: relative;
  flex: 0 0 100%;
  min-width: 100%;
  border: 1px solid #c9dfdf;
  padding: 2.4em 1.6em 1.6em; }
  .ms-benefits .ms-benefits-card .ms-benefits-logo {
    position: absolute;
    top: 1.2em;
    right: 1.4em;
    width: 70px;
    height: auto; }

.ms-benefits .ms-benefits-cols {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 1.4em; }
  @media (max-width: 1024px) {
    .ms-benefits .ms-benefits-cols {
      grid-template-columns: repeat(2, 1fr); } }
  @media (max-width: 850px) {
    .ms-benefits .ms-benefits-cols {
      grid-template-columns: 1fr; } }
.ms-benefits .ms-benefits-col {
  background: #f4f9f9;
  padding: 1.4em 1.2em; }
  .ms-benefits .ms-benefits-col .ms-benefits-icon img {
    width: 2.2em;
    height: 2.2em;
    object-fit: contain;
    margin-bottom: 0.8em; }
  .ms-benefits .ms-benefits-col .ms-benefits-title {
    color: #169095;
    font-family: "poppins", helvetica, sans-serif;
    font-weight: 600;
    font-size: 1em;
    margin: 0 0 0.6em; }
  .ms-benefits .ms-benefits-col .ms-benefits-points {
    list-style: none;
    margin: 0;
    padding: 0; }
    .ms-benefits .ms-benefits-col .ms-benefits-points li {
      position: relative;
      padding-left: 1em;
      margin-bottom: 0.4em;
      font-size: 0.85em;
      line-height: 1.35; }
      .ms-benefits .ms-benefits-col .ms-benefits-points li::before {
        content: "\2022";
        position: absolute;
        left: 0;
        color: #169095; }

.ms-questionCards .ms-questionCards-head {
  margin-bottom: 1.8em; }

.ms-questionCards .ms-qcard {
  flex: 0 0 100%;
  min-width: 100%;
  display: grid;
  grid-template-columns: 5fr 7fr;
  align-items: stretch; }
  @media (max-width: 1024px) {
    .ms-questionCards .ms-qcard {
      grid-template-columns: 1fr; } }
.ms-questionCards .ms-qcard-q {
  background: #169095;
  color: #fff;
  padding: 2.4em;
  display: flex;
  flex-direction: column; }
  .ms-questionCards .ms-qcard-q .ms-qcard-icon {
    display: block;
    margin-bottom: 2.2em; }
    .ms-questionCards .ms-qcard-q .ms-qcard-icon img {
      width: 2.6em;
      height: 2.6em;
      object-fit: contain;
      filter: brightness(0) invert(1); }
  .ms-questionCards .ms-qcard-q .ms-qcard-question {
    font-family: "Merriweather", georgia, serif;
    font-weight: 400;
    color: #fff;
    font-size: 1.8em;
    line-height: 1.2;
    margin: 0; }
    @media (max-width: 850px) {
      .ms-questionCards .ms-qcard-q .ms-qcard-question {
        font-size: 1.5em; } }
.ms-questionCards .ms-qcard-a {
  background: #f4f9f9;
  padding: 2.4em; }

.ms-card img {
  cursor: zoom-in; }

.ms-imageContent img,
.ms-benefits-logo,
.ms-card a img {
  cursor: auto; }

.ms-card a img {
  cursor: pointer; }

.ms-lightbox {
  position: fixed;
  inset: 0;
  z-index: 1000;
  display: none;
  align-items: center;
  justify-content: center;
  padding: 4vh 4vw;
  background: #c9dfdf80; }
  .ms-lightbox.is-open {
    display: flex; }
  .ms-lightbox img {
    max-width: 92vw;
    max-height: 92vh;
    width: auto;
    height: auto;
    object-fit: contain;
    background: #fff;
    box-shadow: 0 1em 3em rgba(0, 61, 66, 0.25);
    cursor: auto; }
  .ms-lightbox .ms-lightbox-close {
    position: absolute;
    top: 1.2rem;
    right: 1.5rem;
    width: 2.6rem;
    height: 2.6rem;
    display: flex;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: 50%;
    background: #169095;
    color: #fff;
    font-size: 1.6rem;
    line-height: 1;
    cursor: pointer; }
    .ms-lightbox .ms-lightbox-close:hover {
      background: #003d42; }
