/*! normalize.css v8.0.1 | MIT License | github.com/necolas/normalize.css */
html {
  line-height: 1.15;
  -webkit-text-size-adjust: 100%;
}
body {
  margin: 0;
}
main {
  display: block;
}
h1 {
  font-size: 2em;
  margin: 0.67em 0;
}
hr {
  box-sizing: content-box;
  height: 0;
  overflow: visible;
}
pre {
  font-family: monospace, monospace;
  font-size: 1em;
}
a {
  background-color: transparent;
}
abbr[title] {
  border-bottom: none;
  text-decoration: underline;
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}
b,
strong {
  font-weight: bolder;
}
code,
kbd,
samp {
  font-family: monospace, monospace;
  font-size: 1em;
}
small {
  font-size: 80%;
}
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}
sub {
  bottom: -0.25em;
}
sup {
  top: -0.5em;
}
img {
  border-style: none;
}
button,
input,
optgroup,
select,
textarea {
  font-family: inherit;
  font-size: 100%;
  line-height: 1.15;
  margin: 0;
}
button,
input {
  overflow: visible;
}
button,
select {
  text-transform: none;
}
button,
[type="button"],
[type="reset"],
[type="submit"] {
  -webkit-appearance: button;
}
button::-moz-focus-inner,
[type="button"]::-moz-focus-inner,
[type="reset"]::-moz-focus-inner,
[type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0;
}
button:-moz-focusring,
[type="button"]:-moz-focusring,
[type="reset"]:-moz-focusring,
[type="submit"]:-moz-focusring {
  outline: 1px dotted ButtonText;
}
fieldset {
  padding: 0.35em 0.75em 0.625em;
}
legend {
  box-sizing: border-box;
  color: inherit;
  display: table;
  max-width: 100%;
  padding: 0;
  white-space: normal;
}
progress {
  vertical-align: baseline;
}
textarea {
  overflow: auto;
}
[type="checkbox"],
[type="radio"] {
  box-sizing: border-box;
  padding: 0;
}
[type="number"]::-webkit-inner-spin-button,
[type="number"]::-webkit-outer-spin-button {
  height: auto;
}
[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px;
}
[type="search"]::-webkit-search-decoration {
  -webkit-appearance: none;
}
::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit;
}
details {
  display: block;
}
summary {
  display: list-item;
}
template {
  display: none;
}
[hidden] {
  display: none;
}
html.lenis,
html.lenis body {
  height: auto;
}
.lenis:not(.lenis-autoToggle).lenis-stopped {
  overflow: clip;
}
.lenis [data-lenis-prevent],
.lenis [data-lenis-prevent-wheel],
.lenis [data-lenis-prevent-touch] {
  overscroll-behavior: contain;
}
.lenis.lenis-smooth iframe {
  pointer-events: none;
}
.lenis.lenis-autoToggle {
  transition-property: overflow;
  transition-duration: 1ms;
  transition-behavior: allow-discrete;
}
:root {
  --spacing-2xs-mobile: 6;
  --spacing-2xs-desktop: 10;
  --spacing-xs-mobile: 14;
  --spacing-xs-desktop: 16;
  --spacing-sm-mobile: 28;
  --spacing-sm-desktop: 32;
  --spacing-md-mobile: 42;
  --spacing-md-desktop: 56;
  --spacing-lg-mobile: 72;
  --spacing-lg-desktop: 96;
  --spacing-xl-mobile: 90;
  --spacing-xl-desktop: 120;
  --spacing-2xl-mobile: 96;
  --spacing-2xl-desktop: 160;
  --spacing-3xl-mobile: 112;
  --spacing-3xl-desktop: 224;
}
:root {
  --grid-columns: 4;
  --grid-gutter: 0.625rem;
  --grid-margin: 0.625rem;
  --container-width: calc(100% - 2 * var(--grid-margin));
}
@media (max-width: 699px) {
  :root {
    --header-height: 2.125rem;
  }
}
@media (min-width: 700px) {
  :root {
    --grid-gutter: 1rem;
    --grid-margin: 1.25rem;
    --header-height: 3.75rem;
  }
}
html {
  box-sizing: border-box;
}
template,
[hidden] {
  display: none;
}
*,
:before,
:after {
  box-sizing: inherit;
}
address {
  font-style: inherit;
}
dfn,
cite,
em,
i {
  font-style: italic;
}
b,
strong {
  font-weight: 500;
}
a {
  text-decoration: none;
}
a svg {
  pointer-events: none;
}
ul,
ol {
  margin: 0;
  padding: 0;
  list-style: none;
}
p,
figure {
  margin: 0;
  padding: 0;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
}
a,
area,
button,
input,
label,
select,
textarea,
[tabindex] {
  touch-action: manipulation;
}
[hreflang] > abbr[title] {
  text-decoration: none;
}
table {
  border-spacing: 0;
  border-collapse: collapse;
}
hr {
  display: block;
  margin: 1em 0;
  padding: 0;
  height: 1px;
  border: 0;
  border-top: 1px solid #ccc;
}
audio,
canvas,
iframe,
img,
svg,
video {
  vertical-align: middle;
}
audio:not([controls]) {
  display: none;
  height: 0;
}
img,
svg {
  height: auto;
}
img[width],
img[height],
svg[width],
svg[height] {
  max-width: none;
}
img {
  font-style: italic;
}
svg {
  fill: currentColor;
}
button:focus,
button:hover,
.c-button:focus,
.c-button:hover {
  text-decoration: none;
}
button,
.c-button {
  display: inline-block;
  overflow: visible;
  margin: 0;
  padding: 0;
  outline: 0;
  border: 0;
  background: none rgba(0, 0, 0, 0);
  color: inherit;
  vertical-align: middle;
  text-align: center;
  text-decoration: none;
  text-transform: none;
  font: inherit;
  line-height: normal;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
}
@font-face {
  font-display: swap;
  font-family: "Helvetica Now Display";
  src:
    url("../fonts/HelveticaNowDisplay-Medium.woff2") format("woff2"),
    url("../fonts/HelveticaNowDisplay-Medium.woff") format("woff");
  font-weight: 500;
  font-style: normal;
}
@font-face {
  font-display: swap;
  font-family: "Helvetica Now Display";
  src:
    url("../fonts/HelveticaNowDisplay-Regular.woff2") format("woff2"),
    url("../fonts/HelveticaNowDisplay-Regular.woff") format("woff");
  font-weight: 400;
  font-style: normal;
}
@font-face {
  font-display: swap;
  font-family: "PP Locomotive New";
  src:
    url("../fonts/PPLocomotiveNew-Light.woff2") format("woff2"),
    url("../fonts/PPLocomotiveNew-Light.woff") format("woff");
  font-weight: 300;
  font-style: normal;
}
html {
  min-height: 100%;
  line-height: 1.5;
  font-family:
    "Helvetica Now Display",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  color: #000;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
@media (max-width: 699px) {
  html {
    font-size: 14px;
  }
}
@media (min-width: 700px) and (max-width: 999px) {
  html {
    font-size: 14px;
  }
}
@media (min-width: 1000px) and (max-width: 1199px) {
  html {
    font-size: 15px;
  }
}
@media (min-width: 1200px) and (max-width: 1599px) {
  html {
    font-size: 16px;
  }
}
@media (min-width: 1600px) and (max-width: 1999px) {
  html {
    font-size: 17px;
  }
}
@media (min-width: 2000px) and (max-width: 2399px) {
  html {
    font-size: 18px;
  }
}
@media (min-width: 2400px) {
  html {
    font-size: 20px;
  }
}
html.is-loading {
  cursor: wait;
}
::-moz-selection {
  background-color: #fff;
  color: #000;
  text-shadow: none;
}
::selection {
  background-color: #fff;
  color: #000;
  text-shadow: none;
}
a {
  color: inherit;
}
[data-theme="dark"] *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: #fff;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
}
[data-theme="white"] *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: #ff9800;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
}
[data-theme="blue"] *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: #fff;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
}
*:focus-visible:not(input):not(textarea):not(select) {
  outline-color: currentColor;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
}
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline-color: var(--color-theme-dark);
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 0px;
}
.o-container {
  margin-right: auto;
  margin-left: auto;
  padding-left: var(--grid-margin);
  padding-right: var(--grid-margin);
}
:root {
  --icon-width: 1.5rem;
  --icon-ratio: 1;
}
.o-icon {
  display: inline-block;
  vertical-align: middle;
}
.o-icon svg {
  display: block;
  width: var(--icon-width);
  height: calc(var(--icon-width) * 1 / (var(--icon-ratio)));
}
.svg-logo-lenis {
  --icon-width: 4.1875rem;
  --icon-ratio: 67/72;
}
.svg-logo-brandmark {
  --icon-width: 4.9375rem;
  --icon-ratio: 79/35;
}
.svg-arrow-external {
  --icon-width: 0.75rem;
}
.svg-inview-01,
.svg-inview-02,
.svg-inview-03,
.svg-inview-04,
.svg-inview-05,
.svg-inview-06 {
  --icon-width: calc(24 * var(--vw, 1vw));
}
.svg-progress-01,
.svg-progress-02,
.svg-progress-03,
.svg-progress-04,
.svg-progress-05 {
  --icon-width: calc(24 * var(--vw, 1vw));
  --icon-ratio: 224/350;
}
.svg-parallax-01,
.svg-parallax-02,
.svg-parallax-03,
.svg-parallax-04,
.svg-parallax-05 {
  --icon-width: calc(24 * var(--vw, 1vw));
}
.o-grid {
  display: grid;
  width: 100%;
}
.o-grid:is(ul, ol) {
  margin: 0;
  padding: 0;
  list-style: none;
}
.o-grid.-cols {
  grid-template-columns: repeat(var(--grid-columns), 1fr);
}
.o-grid.-col-4 {
  grid-template-columns: repeat(4, 1fr);
}
.o-grid.-col-2 {
  grid-template-columns: repeat(2, 1fr);
}
@media (min-width: 1000px) {
  .o-grid.-col-4\@from-medium {
    grid-template-columns: repeat(4, 1fr);
  }
}
.o-grid.-gutters {
  gap: var(--grid-gutter);
  -moz-column-gap: var(--grid-gutter);
  column-gap: var(--grid-gutter);
}
.o-grid.-full-height {
  height: 100%;
}
.o-grid.-top-items {
  align-items: start;
}
.o-grid.-right-items {
  justify-items: end;
}
.o-grid.-bottom-items {
  align-items: end;
}
.o-grid.-left-items {
  justify-items: start;
}
.o-grid.-center-items {
  align-items: center;
  justify-items: center;
}
.o-grid.-center-items-x {
  justify-items: center;
}
.o-grid.-center-items-y {
  align-items: center;
}
.o-grid.-stretch-items {
  align-items: stretch;
  justify-items: stretch;
}
.o-grid.-top-cells {
  align-content: start;
}
.o-grid.-right-cells {
  justify-content: end;
}
.o-grid.-bottom-cells {
  align-content: end;
}
.o-grid.-left-cells {
  justify-content: start;
}
.o-grid.-center-cells {
  align-content: center;
  justify-content: center;
}
.o-grid.-center-cells-x {
  justify-content: center;
}
.o-grid.-center-cells-y {
  align-content: center;
}
.o-grid.-stretch-cells {
  align-content: stretch;
  justify-content: stretch;
}
.o-grid.-space-around-cells {
  align-content: space-around;
  justify-content: space-around;
}
.o-grid.-space-around-cells-x {
  justify-content: space-around;
}
.o-grid.-space-around-cells-y {
  align-content: space-around;
}
.o-grid.-space-between-cells {
  justify-content: space-between;
  align-content: space-between;
}
.o-grid.-space-between-cells-x {
  justify-content: space-between;
}
.o-grid.-space-between-cells-y {
  align-content: space-between;
}
.o-grid.-space-evenly-cells {
  justify-content: space-evenly;
  align-content: space-evenly;
}
.o-grid.-space-evenly-cells-x {
  justify-content: space-evenly;
}
.o-grid.-space-evenly-cells-y {
  align-content: space-evenly;
}
.o-grid_item {
  grid-column-start: var(--gc-start, 1);
  grid-column-end: var(--gc-end, -1);
}
.o-grid_item.-align-end {
  align-self: end;
}
:root {
  --font-size-serif-large: clamp(
    100px,
    0.2083333333 * calc(100 * var(--vw, 1vw)),
    300px
  );
  --font-size-serif-medium: clamp(
    40px,
    0.0833333333 * calc(100 * var(--vw, 1vw)),
    120px
  );
  --font-size-h1: clamp(54px, 0.0833333333 * calc(100 * var(--vw, 1vw)), 120px);
  --font-size-h2: clamp(32px, 0.0625 * calc(100 * var(--vw, 1vw)), 90px);
  --font-size-h3: clamp(14px, 0.0194444444 * calc(100 * var(--vw, 1vw)), 28px);
}
.c-heading {
  font-family:
    "Helvetica Now Display",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-weight: 400;
  line-height: 1;
  letter-spacing: -0.03em;
}
.c-heading.-h1 {
  font-size: var(--font-size-h1);
}
.c-heading.-h2 {
  font-size: var(--font-size-h2);
}
.c-heading.-h3 {
  font-size: var(--font-size-h3);
}
.c-heading-serif {
  font-family:
    "PP Locomotive New",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-weight: 300;
  line-height: 0.85;
  letter-spacing: -0.03em;
}
.c-heading-serif.-large {
  font-size: var(--font-size-serif-large);
}
.c-heading-serif.-medium {
  font-size: var(--font-size-serif-medium);
}
:root {
  --font-size-body-regular: 1rem;
  --font-size-body-medium: 1.3125rem;
  --font-size-label: 1rem;
  --font-size-label-small: 0.75rem;
}
.c-text {
  font-family:
    "Helvetica Now Display",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01em;
}
.c-text.-body-regular {
  font-size: var(--font-size-body-regular);
}
.c-text.-body-medium {
  font-size: var(--font-size-body-medium);
}
.c-text.-label {
  font-size: var(--font-size-label);
}
.c-text.-label-small {
  font-size: var(--font-size-label-small);
}
.c-button {
  --button-height: 3.5rem;
  --button-padding: 1rem;
  --button-gap: 1rem;
  --button-color-text: var(--color-background);
  --button-color-background: var(--color-text);
  --button-color-stroke: var(--color-text);
  --button-hover-color-text: var(--color-text);
  --button-hover-color-background: var(--color-background);
  position: relative;
  overflow: hidden;
  border-radius: 4px;
  color: var(--button-color-text);
  border: 1px solid var(--button-color-stroke);
  background-color: var(--button-color-background);
}
.c-button.-stroke {
  --button-color-text: currentColor;
  --button-color-background: transparent;
  --button-hover-color-text: var(--color-background);
  --button-hover-color-background: var(--color-text);
}
.c-button_wrap:nth-child(2) {
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  color: var(--button-hover-color-text);
  background-color: var(--button-hover-color-background);
  clip-path: inset(10% -100% 10% 100% round 4px 4px 4px 4px);
  transition: clip-path 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.c-button:hover .c-button_wrap:nth-child(2) {
  clip-path: inset(0 0 0 0 round 4px 4px 4px 4px);
}
.c-button_inner {
  display: inline-flex;
  align-items: center;
  -moz-column-gap: var(--button-gap);
  column-gap: var(--button-gap);
  min-height: var(--button-height);
  padding: 0 var(--button-padding);
  transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
.c-button:hover .c-button_wrap:nth-child(1) .c-button_inner {
  transform: translate3d(
    calc(-1 * var(--icon-width) - var(--button-gap)),
    0,
    0
  );
}
.c-button_wrap:nth-child(2) .c-button_inner {
  position: absolute;
  top: -1px;
  left: -1px;
  width: calc(100% + 2px);
  height: calc(100% + 2px);
  flex-direction: row-reverse;
  transform: translate3d(calc(var(--icon-width) + var(--button-gap)), 0, 0);
}
.c-button:hover .c-button_wrap:nth-child(2) .c-button_inner {
  transform: translate3d(0, 0, 0);
}
.c-button_label {
  font-family:
    "Helvetica Now Display",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-weight: 500;
  line-height: 1.2;
  letter-spacing: -0.01em;
  font-size: var(--font-size-label);
}
.c-form_item {
  position: relative;
  margin-bottom: 1.875rem;
}
.c-form_label,
.c-form_checkboxLabel,
.c-form_radioLabel {
  display: block;
  margin-bottom: 0.625rem;
}
.c-form_input,
.c-form_textarea,
.c-form_select_input {
  padding: 0.625rem;
  border: 1px solid #d3d3d3;
  background-color: #fff;
}
.c-form_input:hover,
.c-form_textarea:hover,
.c-form_select_input:hover {
  border-color: #a9a9a9;
}
.c-form_input:focus,
.c-form_textarea:focus,
.c-form_select_input:focus {
  border-color: dimgray;
}
.c-form_input::-moz-placeholder,
.c-form_textarea::-moz-placeholder,
.c-form_select_input::-moz-placeholder {
  color: gray;
}
.c-form_input::placeholder,
.c-form_textarea::placeholder,
.c-form_select_input::placeholder {
  color: gray;
}
.c-form_checkboxLabel,
.c-form_radioLabel {
  position: relative;
  display: inline-block;
  margin-right: 0.625rem;
  margin-bottom: 0;
  padding-left: 1.75rem;
  cursor: pointer;
}
.c-form_checkboxLabel::before,
.c-form_radioLabel::before,
.c-form_checkboxLabel::after,
.c-form_radioLabel::after {
  position: absolute;
  top: 50%;
  left: 0;
  display: inline-block;
  margin-top: -0.5625rem;
  padding: 0;
  width: 1.125rem;
  height: 1.125rem;
  content: "";
}
.c-form_checkboxLabel::before,
.c-form_radioLabel::before {
  background-color: #fff;
  border: 1px solid #d3d3d3;
}
.c-form_checkboxLabel::after,
.c-form_radioLabel::after {
  border-color: rgba(0, 0, 0, 0);
  background-color: rgba(0, 0, 0, 0);
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2213%22%20height%3D%2210.5%22%20viewBox%3D%220%200%2013%2010.5%22%20enable-background%3D%22new%200%200%2013%2010.5%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpath%20fill%3D%22%23424242%22%20d%3D%22M4.8%205.8L2.4%203.3%200%205.7l4.8%204.8L13%202.4c0%200-2.4-2.4-2.4-2.4L4.8%205.8z%22%2F%3E%3C%2Fsvg%3E");
  background-position: center;
  background-size: 0.75rem;
  background-repeat: no-repeat;
  opacity: 0;
}
.c-form_checkboxLabel:hover::before,
.c-form_radioLabel:hover::before {
  border-color: #a9a9a9;
}
.c-form_checkbox:focus + .c-form_checkboxLabel::before,
.c-form_radio:focus + .c-form_checkboxLabel::before,
.c-form_checkbox:focus + .c-form_radioLabel::before,
.c-form_radio:focus + .c-form_radioLabel::before {
  border-color: dimgray;
}
.c-form_checkbox:checked + .c-form_checkboxLabel::after,
.c-form_radio:checked + .c-form_checkboxLabel::after,
.c-form_checkbox:checked + .c-form_radioLabel::after,
.c-form_radio:checked + .c-form_radioLabel::after {
  opacity: 1;
}
.c-form_checkbox,
.c-form_radio {
  position: absolute;
  width: 0;
  opacity: 0;
}
.c-form_radioLabel::before,
.c-form_radioLabel::after {
  border-radius: 50%;
}
.c-form_radioLabel::after {
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2213%22%20height%3D%2213%22%20viewBox%3D%220%200%2013%2013%22%20enable-background%3D%22new%200%200%2013%2013%22%20xml%3Aspace%3D%22preserve%22%3E%3Ccircle%20fill%3D%22%23424242%22%20cx%3D%226.5%22%20cy%3D%226.5%22%20r%3D%226.5%22%2F%3E%3C%2Fsvg%3E");
  background-size: 0.375rem;
}
.c-form_select {
  position: relative;
  cursor: pointer;
}
.c-form_select::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  width: 2.5rem;
  background-image: url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20version%3D%221.1%22%20x%3D%220%22%20y%3D%220%22%20width%3D%2213%22%20height%3D%2211.3%22%20viewBox%3D%220%200%2013%2011.3%22%20enable-background%3D%22new%200%200%2013%2011.3%22%20xml%3Aspace%3D%22preserve%22%3E%3Cpolygon%20fill%3D%22%23424242%22%20points%3D%226.5%2011.3%203.3%205.6%200%200%206.5%200%2013%200%209.8%205.6%20%22%2F%3E%3C%2Fsvg%3E");
  background-position: center;
  background-size: 0.5rem;
  background-repeat: no-repeat;
  content: "";
  pointer-events: none;
}
.c-form_select_input {
  position: relative;
  z-index: 1;
  padding-right: 2.5rem;
  cursor: pointer;
}
.c-form_textarea {
  min-height: 12.5rem;
}
[data-header-theme="blue"] .c-header {
  --color-header-text: white;
  --color-header-background: #ff9800;
}
[data-header-theme="black"] .c-header {
  --color-header-text: white;
  --color-header-background: black;
}
[data-header-theme="white"] .c-header {
  --color-header-text: #ff9800;
  --color-header-background: white;
}
.c-header {
  position: fixed;
  top: 0;
  width: 100%;
  display: grid;
  align-items: center;
  grid-template-columns: repeat(3, 1fr);
  -moz-column-gap: var(--grid-gutter);
  column-gap: var(--grid-gutter);
  color: var(--color-header-text);
  background-color: var(--color-header-background);
  padding: var(--grid-margin);
  z-index: 200;
}
@media (max-width: 699px) {
  .c-header {
    align-items: flex-start;
  }
}
@media (min-width: 700px) {
  .c-header {
    height: var(--header-height);
  }
}
html.is-first-loaded .c-header {
  transition:
    color 0.15s,
    background-color 0.15s;
}
.c-header_col {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.c-header_col.-center {
  justify-content: center;
  align-items: center;
}
@media (max-width: 699px) {
  .c-header_col {
    flex-direction: column;
    align-items: flex-start;
    gap: var(--grid-margin);
  }
  .c-header_col:last-of-type {
    align-items: flex-end;
  }
}
.c-header-theme-toggler {
  position: absolute;
  top: calc(-1 * var(--header-height));
  bottom: var(--header-height);
  left: 0;
  width: 100%;
  pointer-events: none;
}
.c-hero_sticky {
  position: sticky;
  bottom: 0;
}
.c-hero_main {
  display: grid;
  gap: var(--grid-gutter);
  align-items: flex-end;
  min-height: 100svh;
  padding-bottom: var(--grid-margin);
  position: relative;
  z-index: 10;
}
.c-hero_main.-footer {
  min-height: 100svh;
}
@media (max-width: 699px) {
  .c-hero_main {
    grid-template-rows: 1fr auto 1fr;
  }
}
@media (min-width: 700px) {
  .c-hero_main {
    grid-template-columns: 1fr 1fr;
  }
}
.c-hero_heading {
  display: flex;
  flex-direction: column;
  row-gap: clamp(
    calc(0.0625rem * var(--spacing-md-mobile)),
    var(--spacing-md-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-md-desktop))
  );
  height: 100%;
}
@media (max-width: 699px) {
  .c-hero_heading {
    grid-row: 2/3;
  }
}
@media (min-width: 700px) {
  .c-hero_heading {
    grid-column: 2/3;
    grid-row: 1/2;
  }
}
@media (max-width: 699px) {
  .c-hero_nav {
    grid-row: 3/4;
  }
}
@media (min-width: 700px) {
  .c-hero_nav {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
.c-hero_title {
  margin-block: auto;
}
.c-footer .c-hero_title {
  margin-top: auto;
  margin-bottom: 0;
}
.c-hero_links_item + .c-hero_links_item {
  margin-top: 0.5rem;
}
.c-hero_description_container {
  display: grid;
  grid-template-columns: 1fr 1fr;
  -moz-column-gap: var(--grid-gutter);
  column-gap: var(--grid-gutter);
  align-items: flex-end;
}
.c-hero_version {
  display: flex;
  justify-content: flex-end;
  -moz-column-gap: 0.5em;
  column-gap: 0.5em;
}
@media (max-width: 699px) {
  .c-hero_version {
    position: absolute;
    bottom: var(--grid-margin);
    right: 0;
  }
}
.c-hero_version span {
  transition: transform 0.75s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform: translate3d(0, 100%, 0);
}
.c-hero_version span:nth-child(1) {
  position: relative;
  top: 0.1em;
}
.c-hero_version.is-inview span {
  transform: translate3d(0, 0, 0);
}
.c-hero_line {
  display: block;
  clip-path: inset(-5% 0);
}
.c-hero_word {
  display: inline-block;
  transform: translate3d(0, -110%, 0);
}
html.is-first-loaded .c-hero_word {
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  transition-delay: calc(var(--index) * 0.1s);
}
html.is-ready .c-hero_word.-hero {
  transform: translate3d(0, 0, 0);
}
.is-inview .c-hero_word.-footer {
  transform: translate3d(0, 0, 0);
}
.c-rail {
  position: relative;
  overflow: hidden;
  padding: clamp(
      calc(0.0625rem * var(--spacing-md-mobile)),
      var(--spacing-md-desktop) / 14.4 * 1vw,
      calc(0.0625rem * var(--spacing-md-desktop))
    )
    0;
}
.c-rail_inner {
  display: inline-flex;
  align-items: center;
  white-space: nowrap;
}
.c-rail_item {
  font-family:
    "PP Locomotive New",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-weight: 300;
  line-height: 0.85;
  letter-spacing: -0.03em;
  font-size: var(--font-size-serif-medium);
  padding-right: 0.5em;
}
.c-rail_item .c-icon {
  transform: translateY(-0.075em);
}
.c-rail_glyph {
  display: inline-block;
  padding-left: 0.5em;
  text-align: center;
  display: none;
}
.c-cascade {
  position: relative;
}
.c-cascade_text {
  display: flex;
  flex-direction: column;
  max-width: 13.75rem;
}
@media (max-width: 1199px) {
  .c-cascade_text {
    margin-left: 50%;
    margin-bottom: clamp(
      calc(0.0625rem * var(--spacing-xl-mobile)),
      var(--spacing-xl-desktop) / 14.4 * 1vw,
      calc(0.0625rem * var(--spacing-xl-desktop))
    );
  }
}
@media (min-width: 1200px) {
  .c-cascade_text {
    position: absolute;
    top: 0;
    left: calc((100% + var(--grid-gutter)) / 4 * 3);
  }
}
.c-cascade_container {
  display: flex;
  justify-content: center;
  margin-left: calc(-1 * var(--grid-margin));
  margin-right: calc(-1 * var(--grid-margin));
  overflow: hidden;
}
.c-cascade_inner {
  width: auto;
}
.c-cascade_item + .c-cascade_item {
  margin-left: calc(var(--item-index) * 2.35em);
  margin-top: -1em;
}
.c-cascade_item:nth-child(odd) {
  opacity: 0.35;
}
.c-cascade_line {
  display: block;
  perspective: 100vw;
  transform-style: preserve-3d;
}
.c-cascade_word {
  display: inline-block;
  white-space: nowrap;
  transform: rotate3d(
    1,
    0,
    0,
    clamp(
      0deg,
      90deg + (var(--progress) - calc(var(--item-index) / 8)) /
        (calc((var(--item-index) + 1) / 8) - calc(var(--item-index) / 8)) *
        (0deg - 90deg),
      90deg
    )
  );
  opacity: clamp(
    0,
    0 + (var(--progress) - calc(var(--item-index) / 8))/
      (calc((var(--item-index) + 1) / 8) - calc(var(--item-index) / 8)) *
      (1 - 0),
    1
  );
  transform-origin: top;
  clip-path: inset(0);
}
.c-cascade_glyph {
  position: absolute;
  bottom: 0;
  left: 0;
  font-size: var(--font-size-serif-medium);
}
.c-section-heading {
  display: flex;
  flex-direction: column;
}
.c-section-heading_line + .c-section-heading_line {
  margin-top: 0.05em;
}
@media (max-width: 999px) {
  .c-section-heading_line {
    display: flex;
    flex-wrap: wrap;
  }
}
.c-section-heading_word {
  display: inline-block;
  width: 100%;
  padding-left: 2rem;
  text-align: left;
}
@media (max-width: 999px) {
  .c-section-heading_line:last-child .c-section-heading_word {
    margin-bottom: 3.125rem;
  }

  .c-section-heading_word {
    padding-left: 1rem;
  }
}

@media (max-width: 699px) {
  .c-section-heading_word {
    padding-left: 0rem;
    text-align: center;
  }

  .c-section-heading_word.services {
    font-size: calc(0.6041666667 * 55 * var(--vw, 1vw));
  }

  .c-section-heading_word.expertise {
    font-size: calc(0.6041666667 * 48 * var(--vw, 1vw));
  }
}

@media (min-width: 1000px) {
  .c-section-heading_line:last-child .c-section-heading_word {
    grid-column: 2/3;
    margin-bottom: -0.02em;
  }
}
.c-section-heading_label {
  display: flex;
  align-items: center;
}
@media (max-width: 999px) {
  .c-section-heading_label {
    flex: 0 0 50%;
  }
  .c-section-heading_label.-left {
    flex-direction: column;
  }
  .c-section-heading_label.-right {
    flex-direction: column-reverse;
  }
}
@media (min-width: 1000px) {
  .c-section-heading_label {
    justify-content: center;
    -moz-column-gap: 0.5em;
    column-gap: 0.5em;
    grid-row: 1/2;
  }
  .c-section-heading_label.-left {
    grid-column: 1/2;
  }
  .c-section-heading_label.-right {
    grid-column: 3/4;
  }
}
.c-tool {
  position: relative;
  background-color: #ff9800;
  overflow: hidden;
}
.c-tool.-parallax {
  padding-bottom: clamp(
    calc(0.0625rem * var(--spacing-sm-mobile)),
    var(--spacing-sm-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-sm-desktop))
  );
}
.c-tool.-parallax:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: clamp(
    calc(0.0625rem * var(--spacing-xl-mobile)),
    var(--spacing-xl-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-xl-desktop))
  );
  background-image: linear-gradient(
    to bottom,
    hsla(36, 100%, 50%, 0) 0%,
    hsla(36, 100%, 50%, 0.013) 8.1%,
    hsla(36, 100%, 50%, 0.049) 15.5%,
    hsla(36, 100%, 50%, 0.104) 22.5%,
    hsla(36, 100%, 50%, 0.175) 29%,
    hsla(36, 100%, 50%, 0.259) 35.3%,
    hsla(36, 100%, 50%, 0.352) 41.2%,
    hsla(36, 100%, 50%, 0.45) 47.1%,
    hsla(36, 100%, 50%, 0.55) 52.9%,
    hsla(36, 100%, 50%, 0.648) 58.8%,
    hsla(36, 100%, 50%, 0.741) 64.7%,
    hsla(36, 100%, 50%, 0.825) 71%,
    hsla(36, 100%, 50%, 0.896) 77.5%,
    hsla(36, 100%, 50%, 0.951) 84.5%,
    hsla(36, 100%, 50%, 0.987) 91.9%,
    hsl(36, 100%, 50%) 100%
  );
  z-index: 1;
}
.c-tool_head {
  position: relative;
  display: grid;
  -moz-column-gap: var(--grid-gutter);
  column-gap: var(--grid-gutter);
  z-index: 1;
  padding-top: 0.5rem;
}
@media (max-width: 999px) {
  .c-tool_head {
    grid-template-columns: repeat(4, 1fr);
  }
}
@media (min-width: 1000px) {
  .c-tool_head {
    grid-template-columns: repeat(3, 1fr);
  }
}
.c-tool_head::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform-origin: top right;
  transform: scale3d(0, 1, 1);
}
html.is-first-loaded .c-tool_head::before {
  transition: transform 0.75s cubic-bezier(0.77, 0, 0.175, 1);
}
html.is-first-loaded .c-tool.is-inview .c-tool_head::before {
  transform: scale3d(1, 1, 1);
}
@media (min-width: 1000px) {
  .c-tool_head {
    margin-left: calc((100% + var(--grid-gutter)) / 4);
  }
}
@media (max-width: 999px) {
  .c-tool_index {
    grid-column: span 2;
  }
}
@media (min-width: 1000px) {
  .c-tool_index {
    grid-column: span 1;
  }
}
@media (max-width: 699px) {
  .c-tool_label {
    grid-column: span 2;
  }
}
@media (min-width: 700px) {
  .c-tool_label {
    grid-column: span 1;
  }
}
@media (max-width: 699px) {
  .c-tool_description {
    grid-column: 1/-1;
    grid-row: 3/4;
    max-width: 17.5rem;
    margin-top: 0.625rem;
  }
}
@media (min-width: 700px) {
  .c-tool_description {
    grid-column: span 1;
    grid-column-end: -1;
  }
}
.c-tool_title {
  grid-column: 1/-1;
  max-width: 31.25rem;
}
@media (max-width: 699px) {
  .c-tool_title {
    grid-row: 2/3;
    margin-top: 0.8em;
    margin-bottom: 0.4em;
  }
}
@media (max-width: 699px) {
  .c-tool.-parallax .c-tool_playground {
    margin-top: clamp(
      calc(0.0625rem * var(--spacing-md-mobile)),
      var(--spacing-md-desktop) / 14.4 * 1vw,
      calc(0.0625rem * var(--spacing-md-desktop))
    );
  }
}
.c-tool_playground {
  position: relative;
  aspect-ratio: var(--container-ratio);
  width: 100%;
}
.c-tool_shape {
  position: absolute;
}
.c-tool.-inview .c-tool_shape {
  left: calc(var(--left, 0) / 1440 * 100%);
  top: calc(var(--top, 0) / (1 / (var(--container-ratio)) * 1440) * 100%);
  transform: translateX(-50%) translateY(-50%);
}
.c-tool.-inview .c-tool_shape.-first {
  --top: 502;
  --left: 90;
}
.c-tool.-inview .c-tool_shape.-second {
  --top: 700;
  --left: 355;
}
.c-tool.-inview .c-tool_shape.-third {
  --top: 475;
  --left: 655;
}
.c-tool.-inview .c-tool_shape.-fourth {
  --top: 250;
  --left: 987;
}
.c-tool.-inview .c-tool_shape.-fifth {
  --top: 345;
  --left: 1310;
}
.c-tool.-inview .c-tool_shape.-sixth {
  --top: 750;
  --left: 1050;
}
.c-tool.-inview .c-tool_shape.-first svg {
  transform: rotate(calc(var(--progress) * -90deg));
}
.c-tool.-inview .c-tool_shape.-fifth svg {
  transform: rotate(calc(var(--progress) * 150deg));
}
.c-tool.-progress .c-tool_shape {
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
}
.c-tool.-progress .c-tool_shape.-fourth {
  z-index: 1;
}
.c-tool.-parallax .c-tool_shape {
  left: calc(var(--left, 0));
  top: calc(var(--top, 0));
  transform: translateX(-50%) translateY(-50%);
}
.c-tool.-parallax .c-tool_shape.-first {
  --top: 40%;
  --left: 16%;
}
.c-tool.-parallax .c-tool_shape.-second {
  --top: 55%;
  --left: 34%;
}
.c-tool.-parallax .c-tool_shape.-third {
  --top: 30%;
  --left: 53%;
}
.c-tool.-parallax .c-tool_shape.-fourth {
  --top: 65%;
  --left: 68%;
}
.c-tool.-parallax .c-tool_shape.-fifth {
  --top: 40%;
  --left: 86%;
}
.c-tool.-inview .c-tool_shape_svg {
  transform: scale3d(0, 0, 1);
}
html.is-first-loaded .c-tool.-inview .c-tool_shape_svg {
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.c-tool.-inview .c-tool_shape.is-inview .c-tool_shape_svg {
  transform: scale3d(1, 1, 1);
}
.c-tool.-progress .c-tool_shape_svg {
  display: block;
  transform: translate3d(
    calc((0.5 + 0.5 * var(--progress)) * var(--index) * 100%),
    0,
    0
  );
}
@media (max-width: 699px) {
  .c-features-grid {
    --rows: 6;
    --columns: 2;
    --cell-ratio: 180/220;
    --grid-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' xml:space='preserve' viewBox='0 0 361.5 1980'%3E%3Cpath fill='%23282828' fill-rule='evenodd' d='M173 1760H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v211h1v-211c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8v-203c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8v-203c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8v-203c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8V889c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8V669c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8V449c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8V229c0-4.4 3.6-8 8-8h171.5v-1H190c-4.4 0-8-3.6-8-8V.5c0-.3-.2-.5-.5-.5s-.5.2-.5.5V212c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8H1.5c-.3 0-.5.2-.5.5s.2.5.5.5H173c4.4 0 8 3.6 8 8v203c0 4.4-3.6 8-8 8z' clip-rule='evenodd'/%3E%3C/svg%3E%0A");
  }
}
@media (min-width: 700px) {
  .c-features-grid {
    --rows: 6;
    --columns: 4;
    --cell-ratio: 1;
    --grid-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' fill='none' viewBox='0 0 1400 4198'%3E%3Cpath fill='%23282828' fill-rule='evenodd' d='M342 349a8 8 0 0 0 8-8V.5a.5.5 0 0 1 1 0V341a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8V.5a.5.5 0 0 1 1 0V341a8 8 0 0 0 8 8h333a8 8 0 0 0 8-8V.5c0-.276.22-.5.5-.5s.5.224.5.5V341a8 8 0 0 0 8 8h340c.28 0 .5.224.5.5s-.22.5-.5.5h-340a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h340c.28 0 .5.224.5.5s-.22.5-.5.5h-340a8 8 0 0 0-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v333c0 4.42 3.58 8 8 8h339c.28 0 .5.22.5.5s-.22.5-.5.5h-339c-4.42 0-8 3.58-8 8v339.5c0 .28-.22.5-.5.5s-.5-.22-.5-.5V3858c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v339.5c0 .28-.224.5-.5.5s-.5-.22-.5-.5V3858a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v339.5c0 .28-.224.5-.5.5s-.5-.22-.5-.5V3858a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H.5c-.276 0-.5-.22-.5-.5s.224-.5.5-.5H342a8 8 0 0 0 8-8V708a8 8 0 0 0-8-8H.5a.5.5 0 0 1 0-1H342a8 8 0 0 0 8-8V358a8 8 0 0 0-8-8H.5a.5.5 0 0 1 0-1H342Zm17 1a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8V358a8 8 0 0 0-8-8H359Zm350.5 0a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333a8 8 0 0 0 8-8V358a8 8 0 0 0-8-8h-333Zm341 358a8 8 0 0 0-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8V708Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm0 350c0-4.42-3.58-8-8-8h-333a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333c4.42 0 8-3.58 8-8v-333Zm-358 341a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333a8 8 0 0 0 8 8h333.5ZM351 3491a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8v-333a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Zm0-350a8 8 0 0 0 8 8h333.5a8 8 0 0 0 8-8V708a8 8 0 0 0-8-8H359a8 8 0 0 0-8 8v333Z' clip-rule='evenodd'/%3E%3C/svg%3E%0A");
  }
}
.c-features-grid {
  position: relative;
}
.c-features-grid:before {
  content: "";
  display: block;
  width: 100%;
  padding-top: calc(
    (var(--rows) + 2) / var(--columns) * 1 / (var(--cell-ratio)) * 100%
  );
  pointer-events: none;
}
.c-features-grid:after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-size: cover;
  background-image: var(--grid-image);
  pointer-events: none;
}
.c-features-grid_container {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1;
}
.c-features-grid_container::before,
.c-features-grid_container::after {
  content: "";
  position: absolute;
  left: 0;
  width: 100%;
  padding-top: calc(1 / var(--columns) * 1 / (var(--cell-ratio)) * 100%);
  background-color: var(--color-background);
  z-index: 1;
}
.c-features-grid_container::before {
  top: 0;
  -webkit-mask-image: -webkit-linear-gradient(
    bottom,
    rgba(0, 0, 0, 0),
    rgb(0, 0, 0)
  );
}
.c-features-grid_container::after {
  bottom: 0;
  -webkit-mask-image: -webkit-linear-gradient(
    top,
    rgba(0, 0, 0, 0),
    rgb(0, 0, 0)
  );
}
.c-features-grid_inner {
  position: relative;
  display: grid;
  grid-template-columns: repeat(var(--columns), 1fr);
  grid-template-rows: repeat(var(--rows), 1fr);
  width: 100%;
  height: 100%;
  padding-top: calc(1 / var(--columns) * 1 / (var(--cell-ratio)) * 100%);
  padding-bottom: calc(1 / var(--columns) * 1 / (var(--cell-ratio)) * 100%);
  pointer-events: none;
}
@media (max-width: 699px) {
  .c-features-grid_inner {
    grid-template-areas: "brandmark lenis" ". scrollbar" "normalized sticky" "io sticky" "direction scroll-to" ". custom-easing";
  }
}
@media (min-width: 700px) {
  .c-features-grid_inner {
    grid-template-areas: "scrollbar  . lenis brandmark" ". normalized  . ." ". . sticky ." "io . sticky ." ". scroll-to sticky direction" ". custom-easing sticky direction";
  }
}
.c-features-grid_cell {
  position: relative;
  text-align: left;
}
.c-features-grid_cell.-lenis {
  grid-area: lenis;
}
.c-features-grid_cell.-brandmark {
  grid-area: brandmark;
}
.c-features-grid_cell.-scrollbar {
  grid-area: scrollbar;
}
.c-features-grid_cell.-normalized {
  grid-area: normalized;
}
.c-features-grid_cell.-sticky {
  grid-area: sticky;
}
.c-features-grid_cell.-io {
  grid-area: io;
}
.c-features-grid_cell.-scroll-to {
  grid-area: scroll-to;
}
.c-features-grid_cell.-direction {
  grid-area: direction;
}
.c-features-grid_cell.-custom-easing {
  grid-area: custom-easing;
}
@media (min-width: 700px) {
  .c-features-grid_cell.-io {
    transition: transform 0.75s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .c-features-grid_cell.-io.is-inview {
    transform: translate3d(100%, 0, 0);
  }
}
.c-features-grid_cell_ratio {
  display: flex;
  aspect-ratio: var(--cell-ratio);
  padding: 1rem;
  pointer-events: auto;
}
@media (min-width: 700px) {
  .c-features-grid_cell.-sticky .c-features-grid_cell_ratio {
    position: sticky;
    top: calc(var(--header-height) + 1px);
    z-index: 1;
  }
  .c-features-grid_cell.-sticky .c-features-grid_cell_ratio::before {
    content: "";
    position: absolute;
    background-color: var(--color-background);
    z-index: -1;
    top: -1px;
    left: 0px;
    width: calc(100% + 1px);
    height: calc(100% + 1px);
    border: 1px solid #282828;
    border-radius: calc(var(--vw, 1vw) * 0.6);
  }
}
.c-features-grid_cell.-direction .c-features-grid_cell_ratio {
  position: relative;
}
@media (min-width: 700px) {
  .c-features-grid_cell.-io .c-features-grid_cell_ratio {
    z-index: 1;
  }
  .c-features-grid_cell.-io .c-features-grid_cell_ratio::before {
    content: "";
    position: absolute;
    top: -1px;
    left: 0px;
    width: calc(100% + 1px);
    height: calc(100% + 1px);
    background-color: var(--color-background);
    border-top: 1px solid #282828;
    border-right: 1px solid #282828;
    border-bottom: 1px solid #282828;
    border-top-right-radius: calc(var(--vw, 1vw) * 0.6);
    border-bottom-right-radius: calc(var(--vw, 1vw) * 0.6);
    z-index: -1;
  }
  .c-features-grid_cell.-io.is-inview .c-features-grid_cell_ratio::before {
    border-left: 1px solid #282828;
    border-radius: calc(var(--vw, 1vw) * 0.6);
  }
}
.c-features-grid_cell_inner {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  align-items: flex-start;
  width: 100%;
  padding-right: 1.875rem;
}
.c-features-grid_cell_inner.-logo {
  padding-right: 0;
}
.c-features-grid_link {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 2;
}
@media (hover: hover) {
  .c-features-grid_link::before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    opacity: 0.07;
    background-color: currentColor;
    clip-path: polygon(
      80% 20%,
      80% 20%,
      80% 20%,
      20% 80%,
      20% 80%,
      20% 80%,
      20% 80%,
      80% 20%
    );
    transition: clip-path 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
  }
  .c-features-grid_link:hover::before {
    animation-play-state: running;
    clip-path: polygon(
      15% 5%,
      85% 5%,
      95% 15%,
      95% 85%,
      85% 95%,
      15% 95%,
      5% 85%,
      5% 15%
    );
  }
}
.c-features-grid_title {
  display: inline-block;
  text-wrap: balance;
}
.c-features-grid_cell.-direction .c-features-grid_title {
  transition: transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.c-features-grid_cell.-link .c-features-grid_title {
  position: absolute;
  bottom: 0;
  left: 0;
  clip-path: inset(0 -1rem);
}
.c-features_direction_title {
  display: flex;
  gap: 0.625rem;
}
.c-features_direction_arrows {
  position: relative;
  clip-path: inset(0);
}
.c-features_direction_arrows span {
  --translate: 0%;
  display: block;
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.c-features_direction_arrows span:nth-of-type(1) {
  transform: translate3d(0, var(--translate), 0);
}
.c-features_direction_arrows span:nth-of-type(2) {
  position: absolute;
  transform: translate3d(0, calc(var(--translate) + 100%), 0);
  top: 0;
  left: 0;
}
html.is-scrolling-up .c-features_direction_arrows span {
  --translate: -100%;
}
.c-features-grid_title_label {
  display: inline-block;
}
@media (hover: none) {
  .c-features-grid_title_label:nth-child(2) {
    display: none;
  }
}
@media (hover: hover) {
  .c-features-grid_title_label {
    transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  }
  .c-features-grid_title_label:nth-child(2) {
    position: absolute;
    top: 0;
    left: 0;
    transform: translate3d(-1rem, -100%, 0);
  }
  .c-features-grid_cell:hover .c-features-grid_title_label:nth-child(1) {
    transform: translate3d(1rem, 100%, 0);
  }
  .c-features-grid_cell:hover .c-features-grid_title_label:nth-child(2) {
    transform: translate3d(0, 0, 0);
  }
}
.c-features-grid_desc {
  max-width: 13.75rem;
}
@media (max-width: 699px) {
  .c-features-grid_desc {
    opacity: 0.6;
  }
}
.c-features-grid_index {
  position: absolute;
  top: 0;
  right: 0;
}
.c-features-grid_logo {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 100%;
  height: 100%;
}
@media (hover: hover) {
  .c-features-grid_logo svg {
    transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);
  }
  .c-features-grid_cell:hover .c-features-grid_logo svg {
    transform: scale3d(0.95, 0.95, 1);
    animation: blink 100ms step-start 3;
  }
}
.c-features-grid_icon-container {
  position: absolute;
  top: 0.625rem;
  right: 0.625rem;
  display: flex;
  overflow: hidden;
}
.c-features-grid_icon {
  padding: 0.375rem;
}
.c-features-grid_icon:nth-child(2) {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  transform: translate3d(-100%, 100%, 0);
}
html.is-first-loaded .c-features-grid_icon {
  transition: transform 0.5s cubic-bezier(0.23, 1, 0.32, 1);
}
html.is-first-loaded
  .c-features-grid_cell:hover
  .c-features-grid_icon:nth-child(1) {
  transform: translate3d(100%, -100%, 0);
}
html.is-first-loaded
  .c-features-grid_cell:hover
  .c-features-grid_icon:nth-child(2) {
  transform: translate3d(0, 0, 0);
}
@keyframes blink {
  50% {
    opacity: 0;
  }
}
.c-sticky-heading {
  height: 300vh;
}
@media (max-aspect-ratio: 1.25/1) {
  .c-sticky-heading {
    height: auto;
    padding-top: clamp(
      calc(0.0625rem * var(--spacing-2xl-mobile)),
      var(--spacing-2xl-desktop) / 14.4 * 1vw,
      calc(0.0625rem * var(--spacing-2xl-desktop))
    );
  }
}
.c-sticky-heading_inner {
  position: sticky;
  top: 0;
  display: flex;
  align-items: flex-end;
  width: 100%;
  height: calc(var(--vh, 1vh) * 100);
  overflow: hidden;
}
@media (max-aspect-ratio: 1.25/1) {
  .c-sticky-heading_inner {
    align-items: start;
    height: auto;
    position: relative;
    padding-top: clamp(
      calc(0.0625rem * var(--spacing-xs-mobile)),
      var(--spacing-xs-desktop) / 14.4 * 1vw,
      calc(0.0625rem * var(--spacing-xs-desktop))
    );
  }
}
.c-sticky-heading_title {
  font-family:
    "PP Locomotive New",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-weight: 300;
  line-height: 0.85;
  letter-spacing: -0.03em;
  font-size: calc(0.5 * 100 * var(--vw, 1vw));
  width: auto;
  padding-right: calc(var(--grid-margin) * 2);
  transform: translate3d(
    calc(-1 * var(--progress) * (100% - var(--vw, 1vw) * 100)),
    0,
    0
  );
}
@media (max-aspect-ratio: 1.25/1) {
  .c-sticky-heading_title {
    font-size: calc(0.6041666667 * 43 * var(--vw, 1vw));
    transform: none;
  }
}
.c-sticky-heading_description {
  margin-left: calc(100vw - 13.75rem - var(--grid-margin) * 2);
  max-width: 13.75rem;
  margin-bottom: clamp(
    calc(0.0625rem * var(--spacing-sm-mobile)),
    var(--spacing-sm-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-sm-desktop))
  );
}
@media (min-width: 1000px) {
  .c-sticky-heading_description {
    max-width: 17.5rem;
    margin-left: 50vw;
    font-size: calc(0.5 * 100 * var(--vw, 1vw));
    margin-bottom: -0.075em;
  }
}
.c-sticky_scroll {
  display: block;
  position: absolute;
  top: 0;
  height: 100%;
  width: 100%;
}
.c-list {
  position: relative;
}
.c-list::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform-origin: top right;
  transform: scale3d(0, 1, 1);
}
html.is-first-loaded .c-list::before {
  transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
html.is-first-loaded .c-list.is-inview::before {
  transform: scale3d(1, 1, 1);
}
@media (min-width: 1000px) {
  .c-list {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    -moz-column-gap: var(--grid-gutter);
    column-gap: var(--grid-gutter);
  }
}
[data-theme="dark"]
  .c-list
  *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: #fff;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: -4px;
}
[data-theme="white"]
  .c-list
  *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: #ff9800;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: -4px;
}
[data-theme="blue"]
  .c-list
  *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: #fff;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: -4px;
}
.c-list *:focus-visible:not(input):not(textarea):not(select) {
  outline-color: currentColor;
  outline-style: solid;
  outline-width: 2px;
  outline-offset: 2px;
  padding-inline: 0.5rem;
}
.c-list_inner {
  font-size: 0;
}
@media (min-width: 1000px) {
  .c-list_inner {
    grid-column: 2/-1;
  }
}
.c-list_item_inner {
  position: relative;
  clip-path: inset(0);
  padding-block: 0.75rem;
}
.c-list_item_inner::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 1px;
  background-color: currentColor;
  transform-origin: top right;
  transform: scale3d(0, 1, 1);
}
html.is-first-loaded .c-list_item_inner::before {
  transition: transform 0.5s cubic-bezier(0.77, 0, 0.175, 1);
}
html.is-first-loaded .c-list.is-inview .c-list_item_inner::before {
  transform: scale3d(1, 1, 1);
  transition-delay: calc((var(--index) + 1) * 0.08s);
}
@media (max-width: 699px) {
  .c-list_item_inner {
    display: flex;
    flex-direction: column;
  }
  .-showcase .c-list_item_inner {
    display: grid;
    grid-template-columns: 1fr;
    gap: 0.9375rem;
    padding-right: 1.875rem;
  }
  .-perks .c-list_item_inner {
    padding-block: 1.25rem;
  }
}
@media (min-width: 700px) {
  .c-list_item_inner {
    display: grid;
    align-items: center;
  }
}
@media (min-width: 700px) and (max-width: 999px) {
  .c-list_item_inner {
    grid-template-columns: 1fr 1fr;
  }
  .c-list.-showcase .c-list_item_inner {
    grid-template-columns: 4fr 2fr 1fr;
  }
}
@media (min-width: 1000px) {
  .c-list_item_inner {
    grid-template-columns: 1fr 2fr;
  }
  .c-list.-showcase .c-list_item_inner {
    grid-template-columns: 4fr 2fr 1fr;
  }
}
.c-list_item_inner .c-list-anchor {
  text-align: end;
}
@media (max-width: 699px) {
  .c-list_item_inner .c-list-anchor {
    position: absolute;
    right: 0;
    bottom: 0;
  }
  .-showcase .c-list_item_inner .c-list-anchor {
    top: 0.625rem;
  }
}
@media (max-width: 699px) {
  .c-list_title.-body-regular {
    --font-size-body-regular: var(--font-size-body-medium);
  }
}
@media (min-width: 1000px) {
  .c-list_title {
    grid-column: 1/2;
  }
}
@media (max-width: 699px) {
  .c-list_description {
    margin-top: 0.5rem;
  }
  .-showcase .c-list_description {
    display: none;
  }
}
@media (min-width: 1000px) {
  .c-list_description {
    grid-column: 2/-1;
  }
  .c-list.-showcase .c-list_description {
    grid-column: auto;
  }
}
.c-list_title,
.c-list_description,
.c-list-anchor {
  opacity: 0;
  transform: translate3d(0, 100%, 0);
}
html.is-first-loaded .c-list_title,
html.is-first-loaded .c-list_description,
html.is-first-loaded .c-list-anchor {
  transition:
    transform 0.5s cubic-bezier(0.165, 0.84, 0.44, 1),
    opacity 0.5s cubic-bezier(0.165, 0.84, 0.44, 1);
}
html.is-first-loaded .c-list.is-inview .c-list_title,
html.is-first-loaded .c-list.is-inview .c-list_description,
html.is-first-loaded .c-list.is-inview .c-list-anchor {
  opacity: 1;
  transform: translate3d(0, 0, 0);
  transition-delay: calc((var(--index) + 1) * 0.08s + 0.25s);
}
.c-footer_attributes {
  align-items: flex-start;
}
@media (max-width: 999px) {
  .c-footer_attributes div {
    white-space: nowrap;
  }
}
.c-footer_attributes div p {
  line-height: 1.25;
  opacity: 0;
}
@media (max-width: 999px) {
  .c-footer_attributes div:nth-of-type(1) {
    grid-column: 3/1;
  }
}
@media (max-width: 999px) {
  .c-footer_attributes div:nth-of-type(2) {
    grid-column: 5/3;
    margin-top: 10rem;
  }
}
@media (min-width: 1000px) {
  .c-footer_attributes div:nth-of-type(2) {
    margin-top: 15rem;
  }
}
@media (max-width: 999px) {
  .c-footer_attributes div:nth-of-type(3) {
    grid-column: 5/2;
    margin-top: 5rem;
  }
}
@media (min-width: 1000px) {
  .c-footer_attributes div:nth-of-type(3) {
    margin-top: 10rem;
  }
}
@media (max-width: 999px) {
  .c-footer_attributes div:nth-of-type(4) {
    grid-column: 3/1;
    margin-top: 5rem;
  }
}
@media (min-width: 1000px) {
  .c-footer_attributes div:nth-of-type(4) {
    margin-top: 25rem;
  }
}
.c-footer_thanks {
  grid-column: 5/2;
  margin-top: calc(
    clamp(
        calc(0.0625rem * var(--spacing-3xl-mobile)),
        var(--spacing-3xl-desktop) / 14.4 * 1vw,
        calc(0.0625rem * var(--spacing-3xl-desktop))
      ) *
      1.5
  );
}
@media (min-width: 1000px) {
  .c-footer_thanks {
    grid-column: 5/3;
    margin-top: clamp(
      calc(0.0625rem * var(--spacing-3xl-mobile)),
      var(--spacing-3xl-desktop) / 14.4 * 1vw,
      calc(0.0625rem * var(--spacing-3xl-desktop))
    );
  }
}
.c-footer_website {
  opacity: 0;
  transform: translate3d(0, 100%, 0);
  transition:
    transform 0.75s cubic-bezier(0.165, 0.84, 0.44, 1),
    opacity 0.75s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.c-footer_website.is-inview {
  opacity: 1;
  transform: translate3d(0, 0, 0);
}
.c-fadein-text_line {
  background: var(--background);
  -webkit-background-clip: text;
  color: rgba(0, 0, 0, 0);
}
.fadeInText.-blue {
  --color-cta-fadein: #ffb74d;
  --color: white;
}
.fadeInText.-white {
  --color-cta-fadein: #ffe0b2;
  --color: #ff9800;
}
.fadeInText.-black {
  --color-cta-fadein: #424242;
  --color: white;
}
.c-preloader {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
  cursor: wait;
  background-color: #ff9800;
  pointer-events: none;
}
html.is-ready .c-preloader {
  transition:
    opacity 0.6s cubic-bezier(0.215, 0.61, 0.355, 1),
    visibility 0s 0.6s cubic-bezier(0.215, 0.61, 0.355, 1);
  opacity: 0;
  visibility: hidden;
}
.u-gc-2\/3 {
  --gc-start: 2;
  --gc-end: 3;
}
@media (min-width: 1000px) {
  .u-gc-2\/5\@from-medium {
    --gc-start: 2;
    --gc-end: 5;
  }
}
:root {
  --color-text: #ff9800;
  --color-background: white;
}
[data-theme="white"] {
  color: var(--color-text);
  background-color: var(--color-background);
}
[data-theme="blue"] {
  --color-text: white;
  --color-background: #ff9800;
  color: var(--color-text);
  background-color: var(--color-background);
}
[data-theme="black"] {
  --color-text: white;
  --color-background: black;
  color: var(--color-text);
  background-color: var(--color-background);
}
.u-relative {
  position: relative;
}
.u-clipped {
  clip-path: polygon(0% 0, 100% 0%, 100% 100%, 0 100%);
}
.u-max-w300 {
  max-width: 18.75rem;
}
.u-max-w440 {
  max-width: 27.5rem;
}
.u-glyph {
  font-family:
    "PP Locomotive New",
    -apple-system,
    BlinkMacSystemFont,
    avenir next,
    avenir,
    segoe ui,
    helvetica neue,
    helvetica,
    Cantarell,
    Ubuntu,
    roboto,
    noto,
    arial,
    sans-serif;
  font-feature-settings:
    "dlig" on,
    "ss01" on,
    "salt" on;
  font-weight: 400;
}
.u-hover-underline {
  position: relative;
}
@media (hover: hover) {
  .u-hover-underline::before {
    content: "";
    position: absolute;
    bottom: -0.1em;
    left: 0;
    width: 100%;
    height: 1px;
    background-color: currentColor;
    transform: scale3d(0, 1, 1);
    transition: transform 0.25s cubic-bezier(0.165, 0.84, 0.44, 1);
    transform-origin: top right;
  }
  .u-hover-underline:hover::before,
  .u-hover:hover .u-hover-underline::before {
    transform: scale3d(1, 1, 1);
    transform-origin: top left;
  }
}
.u-screen-reader-text {
  position: absolute !important;
  overflow: hidden;
  clip: rect(0 0 0 0);
  margin: 0;
  padding: 0;
  width: 1px;
  height: 1px;
  border: 0;
}
@media not print {
  .u-screen-reader-text\@screen {
    position: absolute !important;
    overflow: hidden;
    clip: rect(0 0 0 0);
    margin: 0;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
  }
}
.u-screen-reader-text.-focusable:focus,
.u-screen-reader-text.-focusable:active {
  clip: auto;
  width: auto;
  height: auto;
}
.u-external-icon {
  font-size: 0.85em;
}
.u-text-balance {
  text-wrap: balance;
}
@media (max-width: 999px) {
  .u-hidden-md {
    display: none;
  }
}
.u-padding-top-sm {
  padding-top: clamp(
    calc(0.0625rem * var(--spacing-sm-mobile)),
    var(--spacing-sm-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-sm-desktop))
  ) !important;
}
.u-padding-top-md {
  padding-top: clamp(
    calc(0.0625rem * var(--spacing-md-mobile)),
    var(--spacing-md-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-md-desktop))
  ) !important;
}
.u-padding-top-lg {
  padding-top: clamp(
    calc(0.0625rem * var(--spacing-lg-mobile)),
    var(--spacing-lg-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-lg-desktop))
  ) !important;
}
.u-padding-bottom-lg {
  padding-bottom: clamp(
    calc(0.0625rem * var(--spacing-lg-mobile)),
    var(--spacing-lg-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-lg-desktop))
  ) !important;
}
.u-padding-bottom-2xl {
  padding-bottom: clamp(
    calc(0.0625rem * var(--spacing-2xl-mobile)),
    var(--spacing-2xl-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-2xl-desktop))
  ) !important;
}
.u-padding-bottom-3xl {
  padding-bottom: clamp(
    calc(0.0625rem * var(--spacing-3xl-mobile)),
    var(--spacing-3xl-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-3xl-desktop))
  ) !important;
}
.u-margin-top-2xs {
  margin-top: clamp(
    calc(0.0625rem * var(--spacing-2xs-mobile)),
    var(--spacing-2xs-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-2xs-desktop))
  ) !important;
}
.u-margin-top-sm {
  margin-top: clamp(
    calc(0.0625rem * var(--spacing-sm-mobile)),
    var(--spacing-sm-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-sm-desktop))
  ) !important;
}
.u-margin-top-xl {
  margin-top: clamp(
    calc(0.0625rem * var(--spacing-xl-mobile)),
    var(--spacing-xl-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-xl-desktop))
  ) !important;
}
.u-margin-bottom-3xl {
  margin-bottom: clamp(
    calc(0.0625rem * var(--spacing-3xl-mobile)),
    var(--spacing-3xl-desktop) / 14.4 * 1vw,
    calc(0.0625rem * var(--spacing-3xl-desktop))
  ) !important;
}
