/*
Converts a pixel value to matching rem value. *Any* value passed, regardless of unit, is assumed to be a pixel value. By default, the base pixel value used to calculate the rem value is taken from the `$global-font-size` variable.
@access private
@param {Number} $value - Pixel value to convert.
@param {Number} $base [null] - Base for pixel conversion.
@returns {Number} A number in rems, calculated based on the given value and the base pixel value. rem values are passed through as is.
*/
/*
Removes the unit (e.g. px, em, rem) from a value, returning the number only.
@param {Number} $num - Number to strip unit from.
@returns {Number} The same number, sans unit.
*/
/*
Converts one or more pixel values into matching rem values.
@param {Number|List} $values - One or more values to convert. Be sure to separate them with spaces and not commas. If you need to convert a comma-separated list, wrap the list in parentheses.
@param {Number} $base [null] - The base value to use when calculating the `rem`. If you're using Foundation out of the box, this is 16px. If this parameter is `null`, the function will reference the `$base-font-size` variable as the base.
@returns {List} A list of converted values.
*/
/**
 * Contrast
 */
/**
*	Basic link hover function
*/
/*
* Fluid Type function
*/
/*
* Breakpoint Handler
* @usage: respond-to('tablet_small') { ... } to target 'tablet_small' and aboe
*/
/*
* Grid Layout
*/
/*
* Responsive Type mixins
*/
/*
* Helpers
*/
.hero {
  position: relative;
  background-color: var(--black);
  overflow: hidden;
}
.hero:before, .hero:after {
  content: "";
  position: absolute;
  z-index: 3;
  pointer-events: none;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}
@media only screen and (min-width: 992px) {
  .hero.tall-landing-hero {
    height: 80vh;
  }
}
.hero:before {
  top: 0;
  left: 0;
  right: 0;
  border-radius: 40px 0 0;
  border-top: 1px solid rgba(255, 255, 255, 0.3);
  border-left: 1px solid rgba(255, 255, 255, 0.3);
}
@media (min-width: 769px) {
  .hero:before {
    bottom: 30%;
    left: 35px;
  }
}
.hero:after {
  bottom: 1%;
  height: 29%;
  width: 50px;
  left: -14px;
  border-radius: 0 0 40px 0;
  border-right: 1px solid rgba(255, 255, 255, 0.3);
  border-bottom: 1px solid rgba(255, 255, 255, 0.3);
  display: none;
}
@media (min-width: 769px) {
  .hero:after {
    display: block;
  }
}
.hero__subheading {
  font-size: 12px;
}
@media only screen and (min-width: 320px) {
  .hero__subheading {
    font-size: calc(12px + 4 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero__subheading {
    font-size: 16px;
  }
}
.hero__subheading {
  font-weight: 800;
  letter-spacing: 0.05em;
  text-transform: uppercase;
  line-height: 1.6;
  display: block;
  margin-bottom: 16px;
  color: var(--white);
  opacity: 0.001;
  -webkit-animation: reveal-down 2s ease 0.1s forwards;
          animation: reveal-down 2s ease 0.1s forwards;
}
.hero__heading {
  font-size: 26px;
}
@media only screen and (min-width: 320px) {
  .hero__heading {
    font-size: calc(26px + 28 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero__heading {
    font-size: 54px;
  }
}
.hero__heading {
  font-weight: 800;
  text-transform: uppercase;
  letter-spacing: 0.1em;
  line-height: 1;
  word-break: break-word;
  color: var(--white);
  opacity: 0.001;
  -webkit-animation: reveal-down 2s ease 0.4s forwards;
          animation: reveal-down 2s ease 0.4s forwards;
}
@media (min-width: 530px) {
  .hero__heading {
    padding-right: 5%;
  }
}
.hero__heading > span {
  color: var(--aqua);
}
.hero__lede {
  opacity: 0.001;
  -webkit-animation: reveal-down 2s ease 0.7s forwards;
          animation: reveal-down 2s ease 0.7s forwards;
}
.hero__lede p {
  color: var(--white);
}
.hero__cta {
  font-size: 14px;
}
@media only screen and (min-width: 320px) {
  .hero__cta {
    font-size: calc(14px + 4 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero__cta {
    font-size: 18px;
  }
}
.hero__cta {
  line-height: 1.6;
  border: 0;
  background: none;
  outline: none;
  padding: 0;
  -webkit-appearance: none;
     -moz-appearance: none;
          appearance: none;
  font-weight: 500;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-column-gap: 16px;
     -moz-column-gap: 16px;
          column-gap: 16px;
  cursor: pointer;
}
.hero__cta:hover {
  color: var(--white);
}
.hero__cta:hover > span {
  background-color: var(--magenta);
  border-color: var(--magenta);
}
.hero__cta > span {
  width: 32px;
  height: 32px;
  display: block;
  border: 1px solid var(--white);
  border-radius: 50%;
  background-image: url("/wp-content/themes/bodytalk/assets/images/arrow-right-white.svg");
  background-repeat: no-repeat;
  background-size: 11px 10px;
  background-position: 10px center;
  background-color: transparent;
  -webkit-transition: all 0.3s linear;
  transition: all 0.3s linear;
}
@media (min-width: 1200px) {
  .hero__cta > span {
    width: 50px;
    height: 50px;
    background-size: 17px 16px;
    background-position: 16px center;
  }
}
.hero__cta {
  color: var(--white);
  text-decoration: none;
}
.hero__cta > span {
  -webkit-transform: rotate(90deg);
          transform: rotate(90deg);
}
.hero__lede + .button, .hero__cta,
.hero .inline-buttons {
  opacity: 0.001;
  -webkit-animation: reveal-down 2s ease 1s forwards;
          animation: reveal-down 2s ease 1s forwards;
}
.hero__bg-image {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
  overflow: hidden;
}
.hero__bg-image:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  content: "";
  z-index: 1;
  background: linear-gradient(45deg, #181422 20%, rgba(24, 20, 34, 0) 90%);
  content: "";
  opacity: 0.6;
}
.hero__bg-image img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.5;
}
.hero__bg-video {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  z-index: 0;
}
.hero__bg-video:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  content: "";
  z-index: 1;
  background: linear-gradient(45deg, #181422 20%, rgba(24, 20, 34, 0) 90%);
  content: "";
}
.hero__bg-video video,
.hero__bg-video iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  opacity: 0.8;
}
.hero__inset {
  position: relative;
  padding-top: 56px;
  opacity: 0.001;
  -webkit-animation: reveal-down 2s ease 1.3s forwards;
          animation: reveal-down 2s ease 1.3s forwards;
}
@media (min-width: 1023px) {
  .hero__inset {
    padding-top: 0;
  }
}
.hero__inset > .video, .hero__inset > picture {
  position: relative;
  left: 0;
  width: 100%;
  z-index: 100;
}
@media (min-width: 1023px) {
  .hero__inset > .video, .hero__inset > picture {
    height: 115%;
    position: absolute;
    top: 50%;
    -webkit-transform: translate3d(0, -50%, 0);
            transform: translate3d(0, -50%, 0);
  }
}
.hero__inset > .video img, .hero__inset > picture img {
  width: auto;
  height: 100%;
}
.hero__inset > picture {
  border-radius: 16px;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
}
.hero .grid-container {
  z-index: 2;
}
.hero .breadcrumbs {
  padding: 16px 0 32px;
}
@media (min-width: 769px) {
  .hero .breadcrumbs {
    padding: 32px 0;
    margin-bottom: 32px;
  }
}
.hero .breadcrumbs li,
.hero .breadcrumbs a,
.hero .breadcrumbs span {
  color: var(--white);
}
.hero a:not(.button) {
  border-bottom-color: var(--white);
}
.hero .inline-buttons {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
}
.hero .inline-buttons .button {
  width: 100%;
}
.hero--home {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding: 140px 0 80px;
  min-height: 41.125rem;
}
@media (min-width: 768px) {
  .hero--home {
    min-height: 51.25rem;
  }
}
@media (min-width: 1024px) {
  .hero--home {
    min-height: 44.375rem;
  }
}
.hero--home.hero--home__first-block {
  top: -70px;
  margin-bottom: -70px;
}
@media (min-width: 1200px) {
  .hero--home.hero--home__first-block {
    padding: 180px 0 100px;
    top: -90px;
    margin-bottom: -90px;
  }
}
.hero--home:before {
  top: 70px;
}
@media (min-width: 1200px) {
  .hero--home:before {
    top: 90px;
  }
}
.hero--home .hero__heading {
  margin-bottom: 25px;
}
.hero--home .hero__lede {
  font-size: 18px;
}
@media only screen and (min-width: 320px) {
  .hero--home .hero__lede {
    font-size: calc(18px + 6 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero--home .hero__lede {
    font-size: 24px;
  }
}
.hero--home .hero__lede {
  line-height: 1.4;
  color: var(--white);
  margin-bottom: 50px;
}
.hero--home .hero__bg-video {
  height: calc(100% + 90px);
  top: -90px;
}
.hero--landing {
  height: auto;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: 70px 0 30px;
  top: -70px;
  margin-bottom: -70px;
}
@media (min-width: 1200px) {
  .hero--landing {
    min-height: 37.5rem;
    max-height: 80vh;
  }
}
.hero--landing.block:not([class*=pad-]):not([class*=m-]) {
  padding: 70px 0 56px;
}
@media (min-width: 1200px) {
  .hero--landing.block:not([class*=pad-]):not([class*=m-]) {
    padding: 90px 0 56px;
  }
}
@media (min-width: 1200px) {
  .hero--landing {
    padding: 90px 0 56px;
    top: -90px;
    margin-bottom: -90px;
  }
}
.hero--landing:before {
  top: 70px;
}
@media (min-width: 1200px) {
  .hero--landing:before {
    top: 90px;
  }
}
.hero--landing .row {
  display: block;
}
@media (min-width: 1200px) {
  .hero--landing .row {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
  }
}
.hero--landing .hero__heading {
  margin-bottom: 32px;
}
@media (min-width: 1200px) {
  .hero--landing .hero__heading {
    margin-bottom: 0;
  }
}
.hero--landing .hero__lede {
  font-size: 14px;
}
@media only screen and (min-width: 320px) {
  .hero--landing .hero__lede {
    font-size: calc(14px + 4 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero--landing .hero__lede {
    font-size: 18px;
  }
}
.hero--landing .hero__lede {
  line-height: 1.6;
  color: var(--white);
}
.hero--landing .hero__lede + .hero__cta {
  margin-top: 32px;
}
.hero--sub-landing {
  border-radius: 0 0 40px 40px;
  padding: 100px 0 30px;
  overflow: visible;
  top: -90px;
}
@media (min-width: 530px) {
  .hero--sub-landing {
    padding: 100px 0 60px;
  }
}
@media (min-width: 769px) {
  .hero--sub-landing {
    padding: 90px 0;
  }
}
.hero--sub-landing:before {
  top: 90px;
}
@media (min-width: 769px) {
  .hero--sub-landing:before {
    bottom: 0;
  }
}
.hero--sub-landing:after {
  display: none;
}
.hero--sub-landing .hero__heading {
  margin-bottom: 16px;
}
.hero--sub-landing .inline-buttons {
  margin-top: 3rem;
}
.hero--sub-landing .hero__lede + .inline-buttons,
.hero--sub-landing .wysiwyg + .inline-buttons {
  margin-top: 0;
}
.hero--sub-landing .hero__lede-container * {
  color: #fff;
}
.hero--sub-landing .hero__lede,
.hero--sub-landing .wysiwyg {
  font-size: 14px;
}
@media only screen and (min-width: 320px) {
  .hero--sub-landing .hero__lede,
  .hero--sub-landing .wysiwyg {
    font-size: calc(14px + 4 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero--sub-landing .hero__lede,
  .hero--sub-landing .wysiwyg {
    font-size: 18px;
  }
}
.hero--sub-landing .hero__lede,
.hero--sub-landing .wysiwyg {
  line-height: 1.6;
  color: var(--white);
  margin-bottom: 48px;
}
.hero--sub-landing .hero__bg-image {
  border-radius: 0 0 40px 40px;
  overflow: hidden;
  -webkit-mask-image: -webkit-radial-gradient(white, black);
  height: calc(100% + 90px);
  top: -90px;
}
.hero--sub-landing .cpd_logo {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  padding: 2rem 1rem 0;
}
@media (min-width: 768px) {
  .hero--sub-landing .cpd_logo {
    -webkit-box-align: end;
        -ms-flex-align: end;
            align-items: flex-end;
    -webkit-box-pack: end;
        -ms-flex-pack: end;
            justify-content: flex-end;
  }
}
.hero--sub-landing .cpd_logo svg {
  max-width: 6.125rem;
  aspect-ratio: 196/104;
}
@media (min-width: 768px) {
  .hero--sub-landing .cpd_logo svg {
    max-width: 12.25rem;
  }
}
.hero--sub-landing .hero__solutions-row {
  color: #fff;
  margin-top: 2rem;
  gap: 2rem 0;
  opacity: 0.001;
  -webkit-animation: reveal-down 2s ease 1.5s forwards;
          animation: reveal-down 2s ease 1.5s forwards;
}
@media (min-width: 768px) {
  .hero--sub-landing .hero__solutions-row {
    gap: 0;
    margin-top: 3.75rem;
  }
}
@media (min-width: 1024px) {
  .hero--sub-landing .hero__solutions-row {
    margin-top: 8.125rem;
  }
}
.hero--sub-landing .hero__solutions-row .title {
  font-size: 18px;
}
@media only screen and (min-width: 320px) {
  .hero--sub-landing .hero__solutions-row .title {
    font-size: calc(18px + 14 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero--sub-landing .hero__solutions-row .title {
    font-size: 32px;
  }
}
.hero--sub-landing .hero__solutions-row .title {
  line-height: 1.25;
  font-weight: 600;
  margin-bottom: 1rem;
}
.hero--sub-landing .hero__solutions-row ol,
.hero--sub-landing .hero__solutions-row ul {
  font-size: 14px;
}
@media only screen and (min-width: 320px) {
  .hero--sub-landing .hero__solutions-row ol,
  .hero--sub-landing .hero__solutions-row ul {
    font-size: calc(14px + 4 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero--sub-landing .hero__solutions-row ol,
  .hero--sub-landing .hero__solutions-row ul {
    font-size: 18px;
  }
}
.hero--sub-landing .hero__solutions-row ol,
.hero--sub-landing .hero__solutions-row ul {
  line-height: 1.6;
}
.hero--sub-landing .hero__solutions-row ol {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  padding-left: 0;
  gap: 0.5rem 0;
  list-style-type: none;
}
.hero--sub-landing .hero__solutions-row ol ::marker {
  color: #E60665;
  font-weight: 700;
}
.hero--sub-landing .hero__solutions-row ol li {
  background-image: url("data:image/svg+xml,%3Csvg clip-rule='evenodd' fill-rule='evenodd' stroke-linejoin='round' stroke-miterlimit='2' viewBox='0 0 24 24' xmlns='http://www.w3.org/2000/svg' fill='%23E60665'%3E%3Cpath d='m11.998 2.005c5.517 0 9.997 4.48 9.997 9.997 0 5.518-4.48 9.998-9.997 9.998-5.518 0-9.998-4.48-9.998-9.998 0-5.517 4.48-9.997 9.998-9.997zm-5.049 10.386 3.851 3.43c.142.128.321.19.499.19.202 0 .405-.081.552-.242l5.953-6.509c.131-.143.196-.323.196-.502 0-.41-.331-.747-.748-.747-.204 0-.405.082-.554.243l-5.453 5.962-3.298-2.938c-.144-.127-.321-.19-.499-.19-.415 0-.748.335-.748.746 0 .205.084.409.249.557z' fill-rule='nonzero'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: left 0.25rem;
  background-size: 1.125rem;
  padding-left: 1.625rem;
}
.hero--sub-landing .hero__solutions-row ul.inline-tags {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: normal;
      -ms-flex-direction: row;
          flex-direction: row;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  gap: 0.625rem;
}
.hero--sub-landing .hero__solutions-row ul.inline-tags li {
  font-size: 14px;
}
@media only screen and (min-width: 320px) {
  .hero--sub-landing .hero__solutions-row ul.inline-tags li {
    font-size: calc(14px + 2 * (100vw - 320px) / (1720 - 320));
  }
}
@media only screen and (min-width: 1720px) {
  .hero--sub-landing .hero__solutions-row ul.inline-tags li {
    font-size: 16px;
  }
}
.hero--sub-landing .hero__solutions-row ul.inline-tags li {
  background-color: #1D1D1D;
  text-transform: none;
  border-radius: 0.625rem;
}
.hero--sub-landing .hero__solutions-row ul.inline-tags--light li {
  background-color: var(--white);
  color: var(--black);
}

body.training-landing .hero--landing {
  top: 0;
  margin-bottom: 0;
}

body.single-team .hero--sub-landing .hero__inset {
  max-width: 80%;
  padding: 0;
  margin: 0 auto;
}
body.single-team .hero--sub-landing .hero__inset picture {
  height: auto;
}
/*# sourceMappingURL=block-hero-landing.css.map */
