:root {
  --brand--black: #060606;
  --fluid--16-18: clamp(1rem, .929rem + .36vw, 1.125rem);
  --fluid--16-32: clamp(1rem, .6522rem + 1.7391vw, 2rem);
  --brand--smoke: #f0f0f0;
  --brand--white: white;
  --fluid--32-48: clamp(2rem, 1.6522rem + 1.7391vw, 3rem);
  --brand--tangerine: #ff4f30;
  --fluid--14-16: clamp(.875rem, .8239rem + .2273vw, 1rem);
  --fluid--64-128: clamp(4rem, 2.6087rem + 6.9565vw, 8rem);
  --fluid--20-24: clamp(1.25rem, 1.163rem + .4348vw, 1.5rem);
  --fluid--4-8: clamp(.25rem, .162rem + .3756vw, .5rem);
  --fluid--18-20: clamp(1.125rem, 1.0739rem + .2273vw, 1.25rem);
  --fluid--48-80: clamp(3rem, 2.3043rem + 3.4783vw, 5rem);
  --brand--light-grey: #e6e6e6;
  --fluid--8-16: clamp(.5rem, .3261rem + .8696vw, 1rem);
  --fluid--16-24: clamp(1rem, .8261rem + .8696vw, 1.5rem);
  --fluid--24-32: clamp(1.5rem, 1.3261rem + .8696vw, 2rem);
  --fluid--48-64: clamp(3rem, 2.7143rem + 1.4286vw, 4rem);
  --fluid--64-80: clamp(4rem, 3.7143rem + 1.4286vw, 5rem);
  --fluid--24-48: clamp(1.5rem, .9783rem + 2.6087vw, 3rem);
  --fluid--24-64: clamp(1.5rem, .6304rem + 4.3478vw, 4rem);
  --fluid--24-80: clamp(1.5rem, .2826rem + 6.087vw, 5rem);
  --brand--stone: whitesmoke;
  --fluid--24-56: clamp(1.5rem, .8043rem + 3.4783vw, 3.5rem);
  --brand--grey: grey;
  --brand--blueberry: #2638de;
  --brand--papaya: #ff9173;
  --brand--ice: #cfe5ff;
  --brand--peach: #ffc7ab;
  --brand--lavender: #8094ff;
  --fluid--12-16: clamp(.75rem, .663rem + .4348vw, 1rem);
  --fluid--18-22: clamp(1.125rem, .964rem + .8vw, 1.375rem);
  --fluid--12-24: clamp(.75rem, .4891rem + 1.3043vw, 1.5rem);
  --fluid--22-28: clamp(1.375rem, 1.161rem + 1.07vw, 1.75rem);
  --fluid--8-32: clamp(.5rem, -.0217rem + 2.6087vw, 2rem);
  --fluid--28-36: clamp(1.75rem, 1.464rem + 1.43vw, 2.25rem);
  --fluid--16-40: clamp(1rem, .4783rem + 2.6087vw, 2.5rem);
  --fluid--24-40: clamp(1.5rem, 1.1522rem + 1.7391vw, 2.5rem);
  --fluid--32-40: clamp(2rem, 1.8261rem + .8696vw, 2.5rem);
  --fluid--16-48: clamp(1rem, .3043rem + 3.4783vw, 3rem);
  --fluid--36-48: clamp(2.25rem, 1.893rem + 1.79vw, 3rem);
  --fluid--16-56: clamp(1rem, .1304rem + 4.3478vw, 3.5rem);
  --fluid--32-56: clamp(2rem, 1.4783rem + 2.6087vw, 3.5rem);
  --fluid--16-64: clamp(1rem, -.0435rem + 5.2174vw, 4rem);
  --fluid--32-64: clamp(2rem, 1.3043rem + 3.4783vw, 4rem);
  --fluid--32-80: clamp(2rem, .9565rem + 5.2174vw, 5rem);
  --fluid--24-96: clamp(1.5rem, -.0652rem + 7.8261vw, 6rem);
  --fluid--32-96: clamp(2rem, .6087rem + 6.9565vw, 6rem);
  --fluid--48-96: clamp(3rem, 1.9565rem + 5.2174vw, 6rem);
  --fluid--32-128: clamp(2rem, -.087rem + 10.4348vw, 8rem);
  --fluid--48-128: clamp(3rem, 1.2609rem + 8.6957vw, 8rem);
}

body {
  color: var(--brand--black);
  font-family: Guillon, Arial, sans-serif;
  font-size: var(--fluid--16-18);
  line-height: 1.5;
}

h1 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 4rem;
  line-height: 1.1;
}

h2 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 3rem;
  line-height: 1.2;
}

h3 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 2.25rem;
  line-height: 1.3;
}

h4 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.75rem;
  line-height: 1.3;
}

h5 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.375rem;
  line-height: 1.4;
}

h6 {
  margin-top: 0;
  margin-bottom: 0;
  font-size: 1.125rem;
  line-height: 1.4;
}

p {
  margin-bottom: 0;
}

a:focus-visible, a[data-wf-focus-visible] {
  outline-offset: 0px;
  outline: 3px solid red;
}

ul {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 0;
  list-style-type: none;
}

ol {
  margin-top: 0;
  margin-bottom: 0;
  padding-left: 1.5rem;
}

img {
  max-width: 100%;
  display: inline-block;
}

label {
  margin-bottom: .25rem;
  font-weight: 500;
}

blockquote {
  border-left: .25rem solid #e2e2e2;
  margin-bottom: 0;
  padding: 0 1.25rem;
  font-size: 1.25rem;
  line-height: 1.5;
}

figure {
  margin-top: 2rem;
  margin-bottom: 2rem;
}

figcaption {
  text-align: center;
  margin-top: .25rem;
}

.global-styles {
  display: block;
  position: fixed;
  inset: 0% auto auto 0%;
}

.padding-global {
  padding-right: var(--fluid--16-32);
  padding-left: var(--fluid--16-32);
}

.page-wrapper {
  overflow: clip;
}

.container {
  max-width: var(--size-container);
}

.container.is_m {
  max-width: calc(var(--size-container) * .8);
}

.container.is_s {
  max-width: calc(var(--size-container) * .6);
}

.u-hide {
  display: none;
}

.padding-section-m {
  padding-top: var(--fluid--48-80);
  padding-bottom: var(--fluid--48-80);
}

.section.is-category {
  min-height: 750px;
}

.section.is-cta {
  min-height: 500px;
}

.section.is-program {
  min-height: 750px;
}

.h2 {
  font-size: 3rem;
  line-height: 1.2;
}

.u-gap-l {
  gap: var(--fluid--32-48);
}

.u-vflex-stretch-top {
  flex-flow: column;
  justify-content: flex-start;
  align-items: stretch;
  display: flex;
}

.u-width-60 {
  max-width: calc(var(--size-container) * .6);
  width: 100%;
}

.policy_rich_text {
  font-size: 1rem;
  font-weight: 300;
}

.policy_rich_text h2 {
  margin-top: 1.5rem;
  margin-bottom: 1.25rem;
  font-size: 1.5rem;
}

.policy_rich_text h3 {
  margin-top: 1.5rem;
  margin-bottom: 1.25rem;
  font-size: 1.25rem;
  font-weight: 600;
}

.policy_rich_text h4 {
  margin-top: 1.5rem;
  margin-bottom: 1.25rem;
  font-size: 1.325rem;
}

.policy_rich_text h5 {
  margin-top: 1.5rem;
  margin-bottom: 1.3rem;
}

.policy_rich_text p {
  margin-bottom: 1rem;
}

.policy_rich_text li {
  margin-bottom: .5rem;
}

.policy_letter {
  border: 1px solid var(--brand--black);
  padding: 1.5rem;
}

@media screen and (max-width: 991px) {
  h1 {
    font-size: 3.5rem;
  }

  h2 {
    font-size: 2.5rem;
  }

  h3 {
    font-size: 2rem;
  }

  h4 {
    font-size: 1.5rem;
  }

  h5 {
    font-size: 1.25rem;
  }

  .u-hide-tablet {
    display: none;
  }

  .style_1-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
  }

  .style_4-col, .style_3-col {
    grid-template-columns: 1fr;
  }

  .nav_menu {
    background-color: var(--brand--white);
    color: var(--brand--black);
    font-size: 1rem;
  }

  .nav_button.w--open {
    background-color: #0000;
  }

  .section.is-category, .section.is-program, .section.is-category, .section.is-program {
    height: auto;
    min-height: 500px;
  }

  .h3 {
    font-size: 2rem;
  }

  .h1 {
    font-size: 3.5rem;
  }

  .h4 {
    font-size: 1.5rem;
  }

  .h2 {
    font-size: 2.5rem;
  }

  .style_2-col {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }

  .h5 {
    font-size: 1.25rem;
  }

  .nav_menu-inner {
    padding: 1rem var(--fluid--24-32);
    grid-column-gap: 0px;
    grid-row-gap: 0px;
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .u-hide-desktop {
    display: block;
  }

  .u-hide-desktop-tablet {
    display: none;
  }

  .nav_dropdown {
    width: 100%;
  }

  .text-rich-text h4 {
    font-size: 1.25rem;
  }

  .home_header_background {
    filter: brightness(70%);
  }

  .home_header_content {
    grid-column-gap: 1.5rem;
    grid-row-gap: 1.5rem;
  }

  .home_motivation_wrapper {
    flex-flow: column;
    justify-content: flex-start;
    align-items: flex-start;
  }

  .swiper.is-video {
    width: 100%;
  }

  .swiper-slide.is-success {
    width: 50%;
  }

  .category_slider {
    display: block;
  }

  .home_step_tabs {
    grid-column-gap: 3rem;
    grid-row-gap: 3rem;
    grid-template-columns: 1fr;
  }

  .home_step_visual {
    display: none;
  }

  .home_result_grid {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
    grid-template-columns: 1fr;
  }

  .home_result_card {
    flex-flow: row;
  }

  .home_result_before, .home_result_after {
    position: static;
  }

  .home_result_content {
    justify-content: flex-end;
    align-items: flex-end;
    position: absolute;
    inset: auto 0% 0%;
  }

  .home_result_arrow {
    display: none;
  }

  .logo_wrapper {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr;
    grid-auto-columns: 1fr;
  }

  .footer_wrapper {
    grid-template-rows: auto auto;
    grid-template-columns: 1fr 1fr 1fr;
    grid-auto-columns: 1fr;
    display: grid;
  }

  .home_motivation_content {
    width: 100%;
    min-width: 100%;
  }

  .nav_menu_link {
    border-bottom: 1px solid var(--brand--light-grey);
    text-align: left;
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .nav_right {
    font-size: .875rem;
  }

  .nav_menu_button {
    width: 100%;
    padding-top: 1rem;
    padding-bottom: 1rem;
  }

  .category_header_image {
    filter: brightness(70%);
  }

  .home_header_container {
    min-height: 500px;
  }

  .category_program_wrapper, .category_program_gallery {
    grid-column-gap: 1rem;
    grid-row-gap: 1rem;
  }

  .category_program_item {
    width: 33%;
  }

  .nutrition_creator_grid {
    margin-right: -2rem;
    display: flex;
    overflow: auto;
  }

  .nutrition_creator_video {
    flex: none;
    width: 33.33%;
  }

  .cta_content {
    color: var(--brand--white);
  }

  .cta_background {
    filter: brightness(60%);
    object-position: 70% 50%;
  }

  .home_floater {
    z-index: 1000;
    padding: 1rem;
    display: block;
    inset: auto 0% 0%;
  }

  .policy_rich_text h4 {
    font-size: 1.25rem;
  }

  .success_other_card {
    flex-flow: row;
  }

  .success_other_content {
    justify-content: flex-end;
    align-items: flex-end;
    position: absolute;
    inset: auto 0% 0%;
  }

  .programs_grid {
    grid-template-columns: 1fr 1fr;
  }

  .program_header_image {
    filter: brightness(70%);
  }

  .program_about_rich h4 {
    font-size: 1.25rem;
  }
}

@media screen and (max-width: 767px) {
  h1 {
    font-size: 3rem;
  }

  h2 {
    font-size: 2.25rem;
  }

  h3 {
    font-size: 1.75rem;
  }

  h4 {
    font-size: 1.375rem;
  }

  h5 {
    font-size: 1.125rem;
  }

  .u-hide-mobile-landscape {
    display: none;
  }

  .u-text-size-l {
    font-size: 1.25rem;
  }

  .section.is-program {
    min-height: 400px;
  }

  .h3 {
    font-size: 1.75rem;
  }

  .h1 {
    font-size: 3rem;
  }

  .h4 {
    font-size: 1.375rem;
  }

  .h2 {
    font-size: 2.25rem;
  }

  .h5 {
    font-size: 1.125rem;
  }

  .u-hide-desktop-tablet {
    display: block;
  }

  .button-2 {
    font-size: 1.125rem;
  }

  .home_header_background {
    object-position: 70% 0%;
  }

  .swiper-slide.is-video {
    width: 50%;
  }

  .swiper-slide.is-success {
    width: 75%;
  }

  .home_result_card {
    flex: none;
    height: auto;
  }

  .home_result_before, .home_result_after {
    width: 50%;
  }

  .logo_logo {
    margin-left: 1rem;
    margin-right: 1rem;
  }

  .footer_wrapper {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    flex-flow: column;
    grid-template-columns: 1fr 1fr;
    justify-content: flex-start;
    align-items: stretch;
    display: flex;
  }

  .faq_icon {
    width: 1rem;
    height: 1rem;
  }

  .footer_inner {
    text-align: center;
    flex-flow: column;
    justify-content: flex-start;
    align-items: center;
  }

  .footer_block {
    border-bottom: 1px solid var(--brand--light-grey);
    max-height: 50px;
    padding-bottom: 1rem;
    overflow: hidden;
  }

  .footer_block.is-first {
    border-top: 1px solid var(--brand--light-grey);
    border-top: 1px solid var(--brand--light-grey);
  }

  .footer_list {
    grid-column-gap: 0rem;
    grid-row-gap: 0rem;
    text-align: center;
  }

  .footer_list.is_badge {
    margin-top: 1.5rem;
  }

  .footer_link {
    padding-top: .5rem;
    padding-bottom: .5rem;
    display: inline-block;
  }

  .home_motivation_content {
    height: 6em;
  }

  .category_about_grid {
    grid-column-gap: 4rem;
    grid-row-gap: 4rem;
    grid-template-columns: 1fr;
  }

  .category_program_wrapper, .category_program_gallery {
    grid-column-gap: .5rem;
    grid-row-gap: .5rem;
  }

  .category_program_item {
    width: 50%;
  }

  .about_header_grid, .training_about_grid {
    grid-template-columns: 1fr;
  }

  .nutrition_creator_video {
    width: 50%;
  }

  .popup_container {
    grid-template-columns: 1fr;
    height: auto;
    overflow: auto;
  }

  .footer_headline {
    text-align: center;
    padding-top: 1rem;
    padding-bottom: 1rem;
    font-size: .9rem;
  }

  .training_header_grid, .success_box {
    grid-template-columns: 1fr;
  }

  .success_other_card {
    flex: none;
  }

  .program_about_grid {
    grid-column-gap: 2rem;
    grid-row-gap: 2rem;
    grid-template-columns: 1fr;
  }
}

@media screen and (max-width: 479px) {
  .style_row {
    flex-wrap: wrap;
  }

  .u-hide-mobile-portrait {
    display: none;
  }

  .button-2 {
    text-align: left;
  }

  .button-2.is-form-submit {
    text-align: center;
    text-align: center;
  }

  .swiper-slide.is-success {
    width: 100%;
  }

  .home_step_wrap {
    height: auto;
  }

  .home_result_grid {
    grid-template-columns: 1fr;
  }

  .footer_wrapper {
    justify-content: flex-start;
  }

  .nav_line {
    width: 25px;
  }

  .nav_menu_button {
    flex-flow: column;
    justify-content: flex-start;
    align-items: stretch;
  }

  .nutrition_creator_video {
    width: 80%;
  }

  .popup_field_wrapper {
    flex-flow: column;
  }

  .programs_grid {
    grid-template-columns: 1fr;
  }
}
