@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/assets/fonts/inter-var-cyrillic.woff2") format("woff2");
  unicode-range: U+0301, U+0400-045F, U+0490-0491, U+04B0-04B1, U+2116;
}

@font-face {
  font-family: "Inter";
  font-style: normal;
  font-weight: 100 900;
  font-display: swap;
  src: url("/assets/fonts/inter-var-latin.woff2") format("woff2");
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC,
    U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212,
    U+2215, U+FEFF, U+FFFD;
}

:root {
  color-scheme: light;
  --ink: #212529;
  --paper: #ffffff;
  --ease-out: cubic-bezier(.16, 1, .3, 1);
  --ease-smooth: cubic-bezier(.76, 0, .24, 1);
  --content-max: 1520px;
  --content-edge: max(var(--gutter), calc((100vw - var(--content-max)) / 2));
  --gutter: clamp(20px, 2.78vw, 80px);
  --orbit-size: clamp(240px, 12.5vw, 360px);
  --disc-size: clamp(288px, 15vw, 432px);
}

* {
  box-sizing: border-box;
}

html {
  min-width: 320px;
  background: var(--paper);
  scroll-behavior: smooth;
  -webkit-text-size-adjust: 100%;
}

body {
  margin: 0;
  min-width: 320px;
  background: var(--paper);
  color: var(--ink);
  font-family: "Inter", sans-serif;
}

input,
textarea,
select {
  font-family: "Inter", sans-serif;
}

button,
a {
  color: inherit;
  font: inherit;
}

button {
  border: 0;
}

a {
  text-decoration: none;
}

.form-consent {
  grid-column: 1 / -1;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  gap: 3px 5px;
  color: #626568;
  font-size: 13px;
  line-height: 1.35;
}

.form-consent--light {
  color: rgba(243, 243, 242, .78);
}

.form-consent input {
  width: 16px;
  height: 16px;
  flex: 0 0 16px;
  margin: 1px 3px 0 0;
  accent-color: #ffffff;
  cursor: pointer;
}

.form-consent:not(.form-consent--light) input {
  accent-color: #202529;
}

.form-consent__link {
  padding: 0;
  border: 0;
  background: transparent;
  color: inherit;
  cursor: pointer;
  font: inherit;
  text-align: left;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
}

.form-consent__link:hover,
.form-consent__link:focus-visible {
  color: #202529;
}

.form-consent--light .form-consent__link:hover,
.form-consent--light .form-consent__link:focus-visible {
  color: #ffffff;
}

.sr-only {
  position: absolute;
  width: 1px;
  height: 1px;
  padding: 0;
  overflow: hidden;
  clip: rect(0, 0, 0, 0);
  white-space: nowrap;
  border: 0;
}

body.has-video-modal,
body.has-intake-modal,
body.has-privacy-modal {
  overflow: hidden;
}

:focus-visible {
  outline: 2px solid #fc403f;
  outline-offset: 4px;
}

@supports not (overflow: clip) {
  .hero {
    overflow: hidden;
  }
}

@media (max-width: 979px) {
  :root {
      --gutter: clamp(18px, 4vw, 34px);
      --orbit-size: 160px;
      --disc-size: 192px;
    }
}

@media (max-width: 767px) {
  :root {
      --orbit-size: 133.333px;
      --disc-size: 160px;
    }

  .swipe-hint {
      display: flex;
      align-items: center;
      justify-content: flex-end;
      gap: 10px;
      min-height: 42px;
      margin: 0 var(--gutter) 16px;
      color: rgba(33, 37, 41, .7);
      font-size: 12px;
      letter-spacing: .04em;
      text-transform: uppercase;
      transition: opacity .35s ease, transform .35s ease;
    }

  .swipe-hint__icon {
      display: grid;
      place-items: center;
      width: 64px;
      height: 38px;
      overflow: hidden;
      border: 1px solid rgba(33, 37, 41, .55);
      border-radius: 999px;
      color: var(--ink);
      font-size: 22px;
      line-height: 1;
      animation: swipe-invitation 1.7s var(--ease-smooth) infinite;
    }
}

@media (max-width: 479px) {
  :root {
      --orbit-size: 93.333px;
      --disc-size: 112px;
    }
}

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

  *,
    *::before,
    *::after {
      animation-duration: .01ms !important;
      animation-iteration-count: 1 !important;
      transition-duration: .01ms !important;
    }
}
