html { scroll-behavior: smooth; }

@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
}

body {
  margin: 0;
  background: var(--color-gray-0);
  font-family: var(--font-family-base);
  color: var(--color-gray-900);
  font-optical-sizing: none;
}

.page {
  position: relative;
  overflow-x: hidden;
}

.page *,
.page *::before,
.page *::after { box-sizing: border-box; }

.page p { margin: 0; }

.fl-top {
  position: relative;
  z-index: 2;
  overflow: hidden;
  background: var(--color-accent-300);
}

.fl-top__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: var(--spacing-4);
  min-height: 36px;
  padding-block: var(--spacing-8);
}

.fl-top__icon {
  flex: none;
  width: 16px;
  height: 16px;
}

.fl-top__text {
  color: var(--color-gray-0);
  text-align: center;
  white-space: nowrap;
  font-size: calc(
    var(--text-body-12m-size)
    + var(--bp-tablet) * (var(--text-body-14m-size) - var(--text-body-12m-size))
  );
  line-height: calc(
    var(--text-body-12m-line-height)
    + var(--bp-tablet) * (var(--text-body-14m-line-height) - var(--text-body-12m-line-height))
  );
}

.fl-hero {
  position: relative;
  isolation: isolate;
}

.fl-hero__art {
  --fl-art-height: calc(
    (1 - var(--bp-tlandscape)) * (320px + var(--bp-mlandscape) * 40px)
    + var(--bp-tlandscape) * 816px
  );
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: var(--fl-art-height);
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - 72px), transparent 100%);
  mask-image: linear-gradient(to bottom, #000 calc(100% - 72px), transparent 100%);
  pointer-events: none;
}

.fl-hero__bg {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center center;
}

.fl-hero__stage {
  position: absolute;
  inset-block: 0;
  left: 50%;
  width: 100%;
  max-width: 1440px;
  transform: translateX(-50%);
}

.fl-hero__figure {
  position: absolute;
  right: 0;
  -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent 100%);
  mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent 100%);
  top: calc(var(--fl-art-height) * 0.136);
  width: auto;
  height: calc(var(--fl-art-height) * 0.864);
  aspect-ratio: 815 / 705;
}

.fl-header {
  position: relative;
  z-index: 20;
  box-shadow: inset 0 -1px 0 var(--color-alpha-dark-12);
}

.fl-header__inner {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--spacing-16);
  min-height: 80px;
}

.fl-header__logo {
  display: flex;
  flex: none;
  width: 212px;
  height: 32px;
}

.fl-header__logo svg { display: block; width: 100%; height: 100%; }

.fl-header__nav {
  display: var(--only-desktop);
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  align-items: center;
}

.fl-header__actions {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
}

.fl-header__cta { display: var(--from-mlandscape); }

.fl-header__burger { display: var(--below-desktop); }

.fl-header__menu {
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  z-index: 1;
  flex-direction: column;
  align-items: stretch;
  gap: var(--spacing-4);
  max-height: calc(100dvh - var(--fl-header-h, 80px));
  padding: var(--spacing-8) var(--spacing-8) var(--spacing-12);
  border-radius: 0 0 var(--radius-12) var(--radius-12);
  background: var(--color-gray-0);
  box-shadow: inset 0 1px 0 0 var(--color-gray-50), var(--shadow-12);
  overflow-x: hidden;
  overflow-y: auto;
}

.fl-header__menu--open { display: flex; }

.fl-header__menu .btn { justify-content: flex-start; }

.fl-header__menu .fl-header__menu-cta {
  justify-content: center;
  margin-top: var(--spacing-8);
}

.fl-banner__inner {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  padding-top: calc(
    var(--spacing-20)
    + var(--bp-tablet) * (var(--spacing-40) - var(--spacing-20))
  );
}

.fl-banner__badge {
  margin-bottom: calc(
    var(--spacing-24)
    + var(--bp-tablet) * (var(--spacing-32) - var(--spacing-24))
    + var(--bp-tlandscape) * (var(--spacing-40) - var(--spacing-32))
  );
  cursor: default;
}

.fl-banner__badge .badge-int__label { line-height: var(--text-display-12c-line-height); }

.fl-banner__title {
  margin: 0;
  max-width: 640px;
  color: var(--color-gray-900);
  font-size: calc(
    var(--text-display-28-size)
    + var(--bp-mlandscape) * (var(--text-display-40-size) - var(--text-display-28-size))
    + var(--bp-tablet) * (var(--text-display-48-size) - var(--text-display-40-size))
  );
  line-height: calc(
    var(--text-display-28-line-height)
    + var(--bp-mlandscape) * (var(--text-display-40-line-height) - var(--text-display-28-line-height))
    + var(--bp-tablet) * (var(--text-display-48-size) - var(--text-display-40-line-height))
  );
  font-weight: var(--text-display-48-weight);
}

.fl-banner__lead {
  max-width: 520px;
  padding-top: var(--spacing-32);
  color: var(--color-gray-700);
}

.fl-banner__clock-label {
  padding-top: calc(
    var(--spacing-20)
    + var(--bp-tablet) * (var(--spacing-32) - var(--spacing-20))
    + var(--bp-tlandscape) * (var(--spacing-40) - var(--spacing-32))
  );
  color: var(--color-gray-900);
}

.fl-clock {
  --fl-clock-gap: calc(var(--spacing-2) + var(--bp-mlandscape) * (var(--spacing-4) - var(--spacing-2)));
  --fl-clock-tile: min(40px, calc((100cqw - 6 * var(--fl-clock-gap) - 4 * var(--spacing-2) - 3 * 6px) / 8));
  display: flex;
  align-items: flex-start;
  gap: var(--fl-clock-gap);
  padding-top: calc(var(--spacing-16) - var(--bp-tlandscape) * (var(--spacing-16) - var(--spacing-12)));
}

.fl-clock__group {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-4);
}

.fl-clock__digits {
  display: flex;
  gap: var(--spacing-2);
}

.fl-clock__tile {
  display: flex;
  align-items: center;
  justify-content: center;
  width: var(--fl-clock-tile);
  height: calc(var(--fl-clock-tile) * 1.4);
  border-radius: var(--radius-12);
  background: var(--color-gray-0);
  box-shadow: var(--shadow-4);
  color: var(--color-gray-900);
  font-family: var(--font-family-base);
  font-size: calc(
    var(--text-display-18-size)
    + var(--bp-mlandscape) * (var(--text-display-22-size) - var(--text-display-18-size))
  );
  line-height: calc(
    var(--text-display-18-line-height)
    + var(--bp-mlandscape) * (var(--text-display-22-line-height) - var(--text-display-18-line-height))
  );
  font-weight: var(--text-display-22-weight);
}

.fl-clock__label {
  color: var(--color-gray-500);
  text-align: center;
}

.fl-clock__sep {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6px;
  height: calc(var(--fl-clock-tile) * 1.4);
  color: var(--color-gray-200);
  font-size: var(--text-display-22-size);
  line-height: var(--text-display-22-line-height);
  font-weight: var(--text-display-22-weight);
}

.fl-banner__actions {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-8);
  width: 100%;
  padding-top: calc(var(--spacing-32) + var(--bp-tlandscape) * (var(--spacing-40) - var(--spacing-32)));
}

.fl-banner__actions .btn {
  flex-grow: calc(1 - var(--bp-mlandscape));
  flex-basis: calc((1 - var(--bp-mlandscape)) * 100%);
}

.fl-timeline {
  display: flex;
  flex-direction: column;
  padding-top: calc(var(--spacing-40) + var(--bp-tablet) * (var(--spacing-60) - var(--spacing-40)));
  padding-bottom: calc(var(--spacing-60) + var(--spacing-80));
  --bleed: var(--bleed-below-tablet);
}

.fl-timeline__lane {
  display: flex;
  overflow-x: var(--scrollx-below-tablet);
  overflow-y: hidden;
  overscroll-behavior-x: contain;
  scrollbar-width: none;
}

.fl-timeline__lane::-webkit-scrollbar { display: none; }

.fl-timeline__body {
  display: flex;
  flex-direction: column;
  flex: 1 0 0;
  gap: var(--spacing-24);
  min-width: calc(var(--bp-mlandscape) * (1 - var(--bp-tablet)) * (4 * 240px + 3 * var(--spacing-16)));
}

.fl-timeline__track {
  display: var(--from-mlandscape-flex);
  flex-direction: column;
}

.fl-timeline__marks {
  display: flex;
  gap: 0;
}

.fl-timeline__mark {
  display: flex;
  align-items: center;
  gap: var(--spacing-2);
  flex: 1 1 0;
  min-width: 0;
  color: var(--color-gray-400);
}

.fl-timeline__mark--now { color: var(--color-positive-500); }

.fl-timeline__dot {
  flex: none;
  color: var(--color-gray-400);
}

.fl-timeline__mark--now .fl-timeline__dot { color: var(--color-positive-400); }

.fl-timeline__mark > span:last-child { line-height: var(--text-display-12c-line-height); }

.fl-timeline__mark--inline {
  display: var(--below-mlandscape-flex);
  padding-bottom: var(--spacing-4);
}

.fl-timeline__bar {
  width: 100%;
  margin-top: var(--spacing-12);
}

.fl-timeline__bar .progress-bar__track {
  height: var(--spacing-4);
  border-radius: var(--radius-4);
}

.fl-timeline__bar .progress-bar__scale { width: var(--fl-progress); }

.fl-timeline__vbar {
  display: var(--below-mlandscape-flex);
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  align-items: stretch;
}

.fl-timeline__vbar .progress-bar__track {
  flex: none;
  width: var(--spacing-4);
  height: auto;
  border-radius: var(--radius-4);
}

.fl-timeline__vbar .progress-bar__scale { height: var(--fl-progress); }

.fl-timeline__cols {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  gap: calc(var(--spacing-16) + (1 - var(--bp-mlandscape)) * var(--spacing-8));
  padding-left: calc((1 - var(--bp-mlandscape)) * var(--spacing-20));
}

.fl-timeline__col {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4);
  flex: 1 1 calc((100% - (var(--fl-cols) - 1) * var(--spacing-16)) / var(--fl-cols));
  min-width: 0;
  --fl-cols: calc(1 + 3 * var(--bp-mlandscape));
}

.fl-timeline__name { color: var(--color-gray-900); }

.fl-timeline__date { color: var(--color-gray-500); }

.fl-section { padding-bottom: var(--spacing-80); }

.fl-section__inner {
  display: flex;
  flex-direction: column;
  align-items: stretch;
}

.fl-head {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-16);
  width: 100%;
  max-width: 640px;
  margin-inline: auto;
  padding-bottom: var(--spacing-40);
  text-align: center;
}

.fl-head--wide {
  max-width: none;
  gap: var(--spacing-12);
}

.fl-eyebrow { color: var(--color-accent-400); }

.fl-title {
  margin: 0;
  color: var(--color-gray-900);
  font-size: calc(
    var(--text-display-24-size)
    + var(--bp-tablet) * (var(--text-display-32-size) - var(--text-display-24-size))
  );
  line-height: calc(
    var(--text-display-24-line-height)
    + var(--bp-tablet) * (var(--text-display-32-line-height) - var(--text-display-24-line-height))
  );
  font-weight: var(--text-display-32-weight);
}

.fl-title--sm {
  font-size: calc(
    var(--text-display-22-size)
    + var(--bp-tablet) * (var(--text-display-28-size) - var(--text-display-22-size))
  );
  line-height: calc(
    var(--text-display-22-line-height)
    + var(--bp-tablet) * (var(--text-display-28-line-height) - var(--text-display-22-line-height))
  );
}

.fl-lead { color: var(--color-gray-700); }

.fl-facts {
  display: flex;
  flex-wrap: wrap;
  gap: 0;
  width: 100%;
}

.fl-fact {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-20);
  flex: 1 1 calc((100% - (var(--fl-cols) - 1) * (49px)) / var(--fl-cols));
  min-width: 0;
  padding-block: var(--spacing-40);
  text-align: center;
  --fl-cols: calc(1 + var(--bp-mlandscape) + var(--bp-tablet));
}

.fl-fact {
  box-sizing: border-box;
  padding-inline: calc((1 - var(--bp-tablet)) * var(--bp-mlandscape) * var(--spacing-16));
  --fl-line: calc((1 - var(--bp-tablet)) * 1px);
  --fl-line-left: calc(var(--fl-line) * var(--bp-mlandscape));
}

.fl-fact:nth-of-type(n+3) { box-shadow: inset 0 var(--fl-line) 0 var(--color-gray-100); }

.fl-fact:nth-of-type(2) {
  box-shadow:
    inset 0 calc(var(--fl-line) * (1 - var(--bp-mlandscape))) 0 var(--color-gray-100),
    inset var(--fl-line-left) 0 0 var(--color-gray-100);
}

.fl-fact:nth-of-type(2n+4) {
  box-shadow:
    inset 0 var(--fl-line) 0 var(--color-gray-100),
    inset var(--fl-line-left) 0 0 var(--color-gray-100);
}

.fl-fact__icon {
  flex: none;
  width: 24px;
  height: 24px;
  color: var(--color-information-500);
}

.fl-fact__icon svg { display: block; width: 100%; height: 100%; }

.fl-fact__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
  width: 100%;
  max-width: 304px;
}

.fl-fact__title { color: var(--color-gray-900); }

.fl-fact__desc { color: var(--color-gray-600); }

.fl-facts__vdiv {
  display: var(--from-tablet);
  flex: none;
  width: 1px;
  margin-inline: var(--spacing-24);
  background: var(--color-gray-100);
}

.fl-facts__hdiv {
  display: var(--from-tablet);
  flex: 1 0 100%;
  height: 1px;
  background: var(--color-gray-100);
}

.fl-strip {
  display: block;
  width: 100%;
  height: auto;
}

.fl-focus,
.fl-minor {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-24);
  width: 100%;
  --fl-cols: calc(1 + var(--bp-mlandscape) + var(--bp-tablet));
}

.fl-minor { padding-top: var(--spacing-24); }

.fl-fcard,
.fl-mcard { --fl-basis: calc((100% - (var(--fl-cols) - 1) * var(--spacing-24)) / var(--fl-cols)); }

.fl-fcard:first-of-type,
.fl-mcard:first-of-type {
  flex-basis: calc(var(--fl-basis) + (100% - var(--fl-basis)) * var(--bp-mlandscape) * (1 - var(--bp-tablet)));
}

.fl-fcard {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  flex: 1 1 var(--fl-basis);
  min-width: 0;
  padding: var(--spacing-32);
  border-radius: var(--radius-16);
  background: var(--color-gray-25);
}

.fl-fcard__badge {
  position: absolute;
  top: var(--spacing-32);
  right: var(--spacing-32);
  z-index: 1;
  display: flex;
}

.fl-fcard__art {
  display: flex;
  align-items: center;
  justify-content: center;
  height: 238px;
}

.fl-fcard__art--short { height: 214px; }

.fl-fcard__art img {
  display: block;
  width: auto;
  max-width: 100%;
  height: 100%;
  object-fit: contain;
}

.fl-fcard__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
}

.fl-fcard__title { color: var(--color-gray-900); }

.fl-fcard__desc { color: var(--color-gray-600); }

.fl-fcard__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-4);
  padding-top: var(--spacing-28);
}

.fl-fcard__item,
.fl-mcard__item {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
  color: var(--color-gray-900);
}

.fl-fcard__check {
  flex: none;
  width: 16px;
  height: 16px;
  color: var(--color-positive-400);
}

.fl-fcard__check svg {
  display: block;
  width: 100%;
  height: 100%;
}

.fl-mcard {
  position: relative;
  display: flex;
  flex-direction: column;
  flex: 1 1 var(--fl-basis);
  min-width: 0;
  padding: var(--spacing-32);
  border-radius: var(--radius-16);
  background: var(--color-gray-0);
  box-shadow: inset 0 0 0 1px var(--color-gray-50), var(--shadow-4);
}

.fl-mcard__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: var(--radius-12);
  background: var(--color-accent-25);
  color: var(--color-information-500);
}

.fl-mcard__icon svg { display: block; width: 24px; height: 24px; }

.fl-mcard__badge {
  position: absolute;
  top: var(--spacing-32);
  right: var(--spacing-32);
  display: flex;
}

.fl-mcard__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
  padding-top: var(--spacing-20);
}

.fl-mcard__title { color: var(--color-gray-900); }

.fl-mcard__desc { color: var(--color-gray-600); }

.fl-services__cta {
  width: 100%;
  margin-top: var(--spacing-24);
}

.fl-perks {
  display: flex;
  flex-wrap: wrap;
  column-gap: 0;
  row-gap: calc((1 - var(--bp-tablet)) * var(--spacing-40));
  width: 100%;
  padding-top: var(--spacing-20);
}

.fl-perk {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-24);
  flex: 1 1 calc((100% - (var(--fl-cols) - 1) * 65px) / var(--fl-cols));
  min-width: 0;
  text-align: center;
  --fl-cols: calc(1 + 2 * var(--bp-tablet));
}

.fl-perk__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 48px;
  height: 48px;
  border-radius: var(--radius-12);
  background: var(--color-positive-25);
  color: var(--color-positive-400);
}

.fl-perk__icon svg { display: block; width: 24px; height: 24px; }

.fl-perk__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
  width: 100%;
}

.fl-perk__title { color: var(--color-gray-900); }

.fl-perk__desc { color: var(--color-gray-500); }

.fl-perks__vdiv {
  display: var(--from-tablet);
  flex: none;
  width: 1px;
  margin-inline: var(--spacing-32);
  background: var(--color-gray-100);
}

.fl-signup__panel {
  position: relative;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: calc((1 - var(--bp-tlandscape)) * var(--spacing-32));
  width: 100%;
  padding: calc(
    var(--spacing-20)
    + var(--bp-mlandscape) * var(--spacing-12)
    + var(--bp-tablet) * var(--spacing-28)
  );
  border-radius: var(--radius-16);
  overflow: hidden;
  background: var(--color-navy-900);
  isolation: isolate;
}

.fl-signup__pattern {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.fl-signup__pattern path {
  fill: none;
  stroke: var(--color-accent-400);
  stroke-width: 175;
  stroke-linejoin: round;
}

.fl-signup__col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 1 calc(50% + (1 - var(--bp-tlandscape)) * 50%);
  min-width: 0;
  padding-block: var(--spacing-12);
  padding-right: calc(var(--bp-tlandscape) * var(--spacing-60));
}

.fl-signup__title {
  margin: 0;
  padding-top: var(--spacing-12);
  color: var(--color-gray-0);
  font-size: calc(
    var(--text-display-24-size)
    + var(--bp-tablet) * (var(--text-display-32-size) - var(--text-display-24-size))
  );
  line-height: calc(
    var(--text-display-24-line-height)
    + var(--bp-tablet) * (var(--text-display-32-line-height) - var(--text-display-24-line-height))
  );
  font-weight: var(--text-display-32-weight);
}

.fl-signup__eyebrow { color: var(--color-accent-100); }

.fl-signup__lead {
  padding-top: var(--spacing-12);
  color: var(--color-accent-100);
}

.fl-signup__list {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
  width: 100%;
  margin-top: var(--spacing-40);
  padding-top: var(--spacing-24);
  padding-bottom: var(--spacing-16);
  border-top: 1px solid var(--color-alpha-light-12);
}

.fl-signup__item {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
  color: var(--color-gray-0);
}

.fl-signup__check {
  flex: none;
  width: 16px;
  height: 16px;
  color: var(--color-positive-400);
}

.fl-signup__check svg { display: block; width: 100%; height: 100%; }

.fl-signup__card {
  display: flex;
  flex-direction: column;
  align-items: stretch;
  flex: 1 1 calc(50% + (1 - var(--bp-tlandscape)) * 50%);
  min-width: 0;
  padding: calc(var(--spacing-20) + var(--bp-mlandscape) * var(--spacing-12));
  border-radius: var(--radius-16);
  background: var(--color-gray-0);
}

.fl-signup__card-title {
  color: var(--color-gray-900);
  font-size: var(--text-display-20-size);
  line-height: var(--text-display-20-line-height);
  font-weight: var(--text-display-20-weight);
}

.fl-signup__count {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
  padding-top: var(--spacing-8);
  color: var(--color-positive-500);
}

.fl-signup__count .indicator { flex: none; }

.fl-signup__field {
  width: 100%;
  padding-top: var(--spacing-24);
}

.fl-signup__submit { margin-top: var(--spacing-24); }

.fl-signup__consent { margin-top: var(--spacing-16); }

.fl-signup__consent-input {
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  padding: 0;
  border: 0;
  clip-path: inset(50%);
  overflow: hidden;
  white-space: nowrap;
}

.fl-signup__consent-input:checked + .checkbox__box {
  background: var(--color-accent-400);
  border-color: var(--color-accent-400);
}

.fl-signup__consent-input:checked + .checkbox__box .checkbox__mark { display: block; }

.fl-signup__consent:hover .fl-signup__consent-input:checked + .checkbox__box {
  background: var(--color-accent-600);
  border-color: var(--color-accent-600);
}

.fl-signup__consent-input:focus-visible + .checkbox__box {
  outline: 2px solid var(--color-accent-400);
  outline-offset: 2px;
}

.fl-signup__consent--error .fl-signup__consent-input:not(:checked) + .checkbox__box { border-color: var(--color-negative-500); }

.fl-signup__status {
  padding-top: var(--spacing-12);
  color: var(--color-gray-500);
}

.fl-signup__status--error { color: var(--color-negative-500); }

.fl-signup__form { display: contents; }

.fl-signup__form[hidden],
.fl-signup__done[hidden] { display: none; }

.fl-signup__done {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-24);
}

.fl-signup__done-head {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-8);
}

.fl-signup__done-icon {
  display: flex;
  padding: var(--spacing-12);
  border-radius: var(--radius-16);
  background: var(--color-positive-25);
  color: var(--color-positive-400);
}

.fl-signup__done-icon svg { display: block; width: 24px; height: 24px; }

.fl-signup__done-head .fl-signup__card-title:focus { outline: none; }

.fl-signup__done-text { color: var(--color-gray-700); }

.fl-signup__done-email {
  color: var(--color-accent-400);
  overflow-wrap: anywhere;
}

.fl-signup__done-hint { color: var(--color-gray-500); }

.fl-signup__done-again {
  padding: 0;
  border: 0;
  background: none;
  font: inherit;
  --link-c: var(--color-accent-400);
  --link-h: var(--color-accent-600);
  --link-a: var(--color-accent-400);
}

.page .fl-signup__divider {
  display: flex;
  align-items: center;
  gap: var(--spacing-12);
  margin-top: var(--spacing-24);
  color: var(--color-gray-400);
}

.page .fl-signup__divider::before,
.page .fl-signup__divider::after {
  content: "";
  flex: 1 1 auto;
  height: 1px;
  background: var(--color-gray-100);
}

.fl-signup__social { margin-top: var(--spacing-24); }

.fl-signup__divider-done,
.fl-signup__card--done .fl-signup__divider-form { display: none; }

.fl-signup__card--done .fl-signup__divider-done { display: inline; }

.fl-steps {
  display: flex;
  flex-wrap: wrap;
  gap: var(--spacing-8);
  width: 100%;
}

.fl-step {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  flex: 1 1 calc((100% - (var(--fl-cols) - 1) * var(--spacing-8)) / var(--fl-cols));
  min-width: 0;
  padding: var(--spacing-24);
  border-radius: var(--radius-16);
  background: var(--color-information-25);
  --fl-cols: calc(1 + var(--bp-mlandscape) + 2 * var(--bp-desktop));
}

.fl-step__num {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
  width: 32px;
  height: 32px;
  border-radius: var(--radius-8);
  background: var(--color-gray-0);
  color: var(--color-gray-800);
}

.fl-step__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-12);
  padding-top: var(--spacing-20);
}

.fl-step__title { color: var(--color-gray-800); }

.fl-step__desc { color: var(--color-gray-800); }

.fl-reviews .fl-head { padding-bottom: var(--spacing-20); }

.fl-reviews.fl-section { padding-bottom: var(--spacing-24); }

.fl-reviews__pill {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin-top: var(--spacing-8);
  align-items: center;
  gap: var(--spacing-4) var(--spacing-16);
  margin-inline: auto;
  padding: var(--spacing-8) var(--spacing-16);
  border-radius: calc(var(--radius-8) + var(--bp-tablet) * (var(--radius-32) - var(--radius-8)));
  text-align: center;
  background: var(--color-positive-25);
  box-shadow: inset 0 0 0 1px var(--color-positive-100);
}

.fl-reviews__pill-text { color: var(--color-gray-900); }

.fl-reviews__pill-divider {
  display: var(--from-tablet);
  flex: none;
  width: 1px;
  height: 24px;
  background: var(--color-positive-100);
}

.fl-reviews__slider { --bleed: var(--bleed-below-desktop); }

.fld .fl-grab { cursor: grab; }

.fl-cta {
  position: relative;
  overflow: hidden;
  background: var(--color-navy-900);
  isolation: isolate;
}

.fl-cta__pattern {
  position: absolute;
  inset: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}

.fl-cta__pattern path {
  fill: none;
  stroke: var(--color-accent-400);
  stroke-width: 220;
  stroke-linejoin: round;
}

.fl-cta__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: var(--spacing-16);
  padding-top: var(--spacing-80);
  padding-bottom: calc(var(--spacing-80) + var(--spacing-24));
  text-align: center;
}

.fl-cta__title {
  margin: 0;
  color: var(--color-gray-0);
  font-size: calc(
    var(--text-display-24-size)
    + var(--bp-tablet) * (var(--text-display-32-size) - var(--text-display-24-size))
  );
  line-height: calc(
    var(--text-display-24-line-height)
    + var(--bp-tablet) * (var(--text-display-32-line-height) - var(--text-display-24-line-height))
  );
  font-weight: var(--text-display-32-weight);
}

.fl-cta__lead {
  max-width: 600px;
  padding-top: var(--spacing-4);
  color: var(--color-alpha-light-76);
}

.fl-cta__clock { padding-top: var(--spacing-24); }

.fl-cta__clock .fl-clock__tile {
  background: var(--color-alpha-light-12);
  color: var(--color-gray-0);
}

.fl-cta__clock .fl-clock__label { color: var(--color-alpha-light-76); }

.fl-cta__clock .fl-clock__sep { color: var(--color-alpha-light-44); }

.fl-cta__action { padding-top: var(--spacing-24); }

.fl-about .bau__inner { padding-bottom: var(--spacing-80); }

.fl-about .bau__content { background: var(--color-accent-50); }

.fl-about .bau__pattern {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
}

.fl-about .bau__pattern path {
  fill: none;
  stroke: var(--color-information-50);
  stroke-width: 154.721;
  stroke-linejoin: round;
}

.fl-about .bau__art {
  display: var(--only-desktop);
  inset: auto;
  top: var(--spacing-24);
  left: -33px;
  width: 644px;
  height: 644px;
  border-radius: 0;
  object-fit: contain;
  opacity: 1;
}

.fl-about .bau__text { color: var(--color-gray-900); }

.fl-about .bau__subtitle { color: var(--color-gray-700); }

.fl-about .bau__item { color: var(--color-gray-900); }

.fl-about .bau__list {
  gap: var(--spacing-8);
  padding-top: var(--spacing-24);
  padding-bottom: var(--spacing-16);
  box-shadow: inset 0 1px 0 var(--color-gray-100);
}

.fl-why .vprop__inner { --vprop-head-gap: var(--spacing-40); }

.fl-why .vprop__title {
  font-size: calc(
    var(--text-display-24-size)
    + var(--bp-tablet) * (var(--text-display-32-size) - var(--text-display-24-size))
  );
  line-height: calc(
    var(--text-display-24-line-height)
    + var(--bp-tablet) * (var(--text-display-32-line-height) - var(--text-display-24-line-height))
  );
}

.fl-why .vprop__container { padding-bottom: var(--spacing-40); }

.fld-hero {
  position: relative;
  z-index: 2;
  isolation: isolate;
  background: var(--color-navy-900);
}

.fld .fl-banner__inner {
  padding-bottom: calc(var(--spacing-20) + var(--bp-tablet) * (var(--spacing-40) - var(--spacing-20)));
}

.fld-hero__art {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: calc((1 - var(--bp-desktop)) * 100% + var(--bp-desktop) * 774px);
  overflow: hidden;
  -webkit-mask-image: linear-gradient(to bottom, #000 calc(100% - var(--fld-art-fade)), transparent 100%);
  mask-image: linear-gradient(to bottom, #000 calc(100% - var(--fld-art-fade)), transparent 100%);
  --fld-art-fade: calc(var(--bp-desktop) * 184px);
  pointer-events: none;
}

.fld-hero__pattern {
  display: var(--below-desktop);
  position: absolute;
  top: 0;
  left: calc(
    (1 - var(--bp-tablet)) * (100cqw - 1070px)
    + var(--bp-tablet) * -424px
  );
  width: calc(2680px - var(--bp-tablet) * 260px);
  height: max(100%, calc(857px - var(--bp-tablet) * 83px));
  background: var(--color-accent-400);
  color: var(--color-navy-900);
}

.fld-hero__stage {
  display: var(--only-desktop);
  position: absolute;
  inset-block: 0;
  left: 50%;
  width: 100%;
  max-width: 1440px;
  transform: translateX(-50%);
}

.fld-hero__img {
  position: absolute;
  top: 0;
  right: min(0px, 100cqw - 1280px);
  width: auto;
  height: 100%;
  aspect-ratio: 1280 / 774;
  object-fit: cover;
  object-position: right top;
  -webkit-mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent 100%);
  mask-image: linear-gradient(to right, #000 calc(100% - 32px), transparent 100%);
}

.fld-after { background: var(--color-gray-0); }

.fld .fl-header { box-shadow: none; }

.fld .fl-header--light {
  background: var(--color-gray-0);
  box-shadow: inset 0 -1px 0 0 var(--color-gray-50);
}

.fld .fl-header--fixed {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 30;
  box-shadow: inset 0 -1px 0 0 var(--color-gray-50), var(--shadow-4);
}

.fl-header__spacer { height: 0; }

.fld [id] { scroll-margin-top: calc(var(--fl-header-h, 0px) + var(--spacing-12)); }

.fld .fl-header__nav .btn--overlay:hover { background: var(--color-alpha-light-12); }

.fld .fl-header__nav .btn--ghost {
  padding-inline: calc(var(--spacing-8) + var(--bp-desktop) * (var(--spacing-12) - var(--spacing-8)));
}

.fld .fl-banner__title { color: var(--color-gray-0); }

.fld .fl-banner__clock-label { color: var(--color-gray-0); }

.fld .fl-clock__tile {
  background: var(--color-alpha-light-12);
  box-shadow: none;
  color: var(--color-gray-0);
}

.fld .fl-clock__label { color: var(--color-alpha-light-76); }

.fld .fl-clock__sep { color: var(--color-alpha-light-44); }

.fl-offer {
  width: 100%;
  max-width: 520px;
  margin-top: calc(var(--spacing-20) + var(--bp-tlandscape) * (var(--spacing-32) - var(--spacing-20)));
  padding-top: calc(var(--spacing-24) + var(--bp-tlandscape) * (var(--spacing-32) - var(--spacing-24)));
  border-top: 1px solid var(--color-alpha-light-12);
}

.fl-offer__title { color: var(--color-gray-0); }

.fl-offer__list {
  display: flex;
  flex-direction: column;
  gap: calc(var(--spacing-4) + var(--bp-tlandscape) * (var(--spacing-8) - var(--spacing-4)));
  padding-top: var(--spacing-16);
}

.fl-offer__item {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
  color: var(--color-alpha-light-76);
}

.fl-offer__check {
  flex: none;
  width: 16px;
  height: 16px;
  color: var(--color-positive-400);
}

.fl-offer__check svg {
  display: block;
  width: 100%;
  height: 100%;
}

.fld-btn-outline {
  border: 1px solid var(--color-alpha-light-24);
  background: transparent;
  color: var(--color-gray-0);
}

.fld-btn-outline:hover { background: var(--color-alpha-light-12); }

.fld-count,
.fl-cta__count {
  display: flex;
  align-items: center;
  gap: var(--spacing-8);
  padding-top: var(--spacing-16);
  color: var(--color-positive-200);
}

.fl-cta__count { justify-content: center; }

.fld-count .indicator,
.fl-cta__count .indicator { flex: none; }

.fld-refund {
  --link-c: var(--color-information-600);
  --link-h: var(--color-information-500);
  --link-a: var(--color-information-600);
}

.fld-beta {
  position: relative;
  isolation: isolate;
  container-type: inline-size;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: var(--spacing-16);
  margin-top: var(--spacing-24);
  padding: calc(var(--spacing-20) + var(--bp-tablet) * (var(--spacing-32) - var(--spacing-20)));
  border-radius: var(--radius-16);
  background: var(--color-positive-25);
  box-shadow: inset 0 0 0 1px var(--color-positive-50);
  overflow: clip;
}

.fld-beta__pattern {
  position: absolute;
  top: -493.4px;
  right: -131.5px;
  z-index: -2;
  width: 724.744px;
  height: 989.445px;
  color: var(--color-positive-50);
  transform: rotate(72.27deg);
  pointer-events: none;
}

.fld-beta__art {
  display: var(--from-tlandscape);
  position: absolute;
  top: -45px;
  right: 232px;
  z-index: -1;
  width: 285px;
  height: 285px;
  object-fit: cover;
  mix-blend-mode: darken;
  transform: scaleX(-1);
  pointer-events: none;
}

.fld-beta__badge {
  cursor: default;
  background: var(--color-gray-0);
  box-shadow: inset 0 0 0 1px var(--color-positive-50);
  color: var(--color-positive-500);
}

.fld-beta__body {
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--spacing-16);
  width: 100%;
}

.fld-beta__text {
  display: flex;
  flex-direction: column;
  gap: var(--spacing-8);
  flex: 1 1 320px;
  min-width: 0;
  max-width: min(560px, 100cqw - 509px * var(--bp-tlandscape));
}

.fld-beta__title { color: var(--color-gray-900); }

.fld-beta__desc { color: var(--color-gray-600); }

.fld-beta__cta {
  flex: none;
  flex-grow: calc(1 - var(--bp-mlandscape));
}

.fld-beta__badge .badge-int__label { line-height: var(--text-display-12c-line-height); }

.fl-banner__badge,
.fld-beta__badge {
  max-width: 100%;
  white-space: normal;
}

.fl-timeline__link {
  align-self: flex-start;
  --link-c: var(--color-positive-500);
  --link-h: var(--color-positive-400);
  --link-a: var(--color-positive-600);
}

.is-beta-over [data-beta] { display: none; }
