@font-face {
  font-family: 'TikTokSans';
  font-display: swap;
  src: url('../fonts/TikTokSans-VariableFont_opsz,slnt,wdth,wght.woff2') format('woff2-variations');
  font-weight: 300 900;
}
:root {
  --container-width: 90rem;
  --container-padding: 3.75rem;
  --app-min-width: 24.375rem;
  --header-height: 5rem;
  --content-gap: 1.5rem;
}
@media (width < 1024px) {
  :root {
    --container-padding: 2.5rem;
  }
}
@media (width < 768px) {
  :root {
    --container-padding: 1.5rem;
  }
}
.scrollbar ::-webkit-scrollbar {
  width: 0.75rem;
  height: 0.75rem;
}
.scrollbar ::-webkit-scrollbar-thumb {
  background: #2d2d2d;
  border-radius: 0.75rem;
  border: solid 0.188rem transparent;
  background-clip: padding-box;
}
.scrollbar ::-webkit-scrollbar-track {
  background: transparent;
}
.scrollbar-hide {
  -ms-overflow-style: none;
  scrollbar-width: none;
}
.scrollbar-hide::-webkit-scrollbar {
  display: none;
}
@property --gradient-start {
  syntax: '<color>';
  inherits: true;
  initial-value: #376ff4;
}
@property --gradient-end {
  syntax: '<color>';
  inherits: true;
  initial-value: #7731e6;
}
.gradient-bg {
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
}
/* base */
* {
  margin: 0;
  padding: 0;
  box-sizing: border-box;
}
@media (width >= 1024px) {
  * ::-webkit-scrollbar {
    width: 0.75rem;
    height: 0.75rem;
  }
  * ::-webkit-scrollbar-thumb {
    background: #2d2d2d;
    border-radius: 0.75rem;
    border: solid 0.188rem transparent;
    background-clip: padding-box;
  }
  * ::-webkit-scrollbar-track {
    background: transparent;
  }
}
*:after,
*:before {
  box-sizing: inherit;
}
html {
  overflow: hidden scroll;
  -webkit-tap-highlight-color: transparent;
  -webkit-text-size-adjust: 100%;
  text-size-adjust: 100%;
  display: flex;
  flex-direction: column;
}
@media (width < 1560px) and (width >= 1024px) {
  html {
    font-size: 1.02vw;
  }
}
html:only-child {
  display: flex !important;
}
body {
  font-family: 'TikTokSans', sans-serif;
  color: #fff;
  min-width: var(--app-min-width);
  display: flex;
  flex-direction: column;
  min-height: 100vh;
  font-size: 1rem;
  line-height: 1.3125;
  background-color: #000;
  overflow: hidden;
  font-weight: 500;
}
body:has(.header) {
  padding-top: var(--header-height);
}
.container {
  margin-left: auto;
  margin-right: auto;
  width: calc(var(--container-width) + 2 * var(--container-padding));
  padding-left: var(--container-padding);
  padding-right: var(--container-padding);
  max-width: 100%;
}
@media (width < 1440px) {
  .container {
    --container-width: 100%;
  }
}
@media (width < 1200px) {
  .hidden-desktop {
    display: none !important;
  }
}
@media (width < 1024px) {
  .hidden-tablet {
    display: none !important;
  }
}
@media (width < 768px) {
  .hidden-mobile {
    display: none !important;
  }
}
@media (width >= 768px) {
  .visible-mobile {
    display: none !important;
  }
}
@media (width >= 1024px) {
  .visible-tablet {
    display: none !important;
  }
}
@media (width >= 1200px) {
  .visible-desktop {
    display: none !important;
  }
}
.h1 {
  font-size: 3.125rem;
  line-height: 1.2;
  font-weight: 500;
  font-stretch: expanded;
}
@media (width < 1024px) {
  .h1 {
    font-size: 2.5rem;
  }
}
@media (width < 768px) {
  .h1 {
    font-size: 2rem;
  }
}
.h2 {
  font-size: 2.313rem;
  line-height: 1.2;
  font-weight: 500;
  font-stretch: expanded;
}
@media (width < 1024px) {
  .h2 {
    font-size: 1.75rem;
  }
}
@media (width < 768px) {
  .h2 {
    font-size: 1.5rem;
  }
}
.h3 {
  font-size: 1.5rem;
  font-weight: 600;
  font-stretch: expanded;
}
.h4 {
  font-size: 1.375rem;
  font-weight: 600;
  font-stretch: expanded;
}
.h5 {
  font-size: 1.25rem;
  font-weight: 600;
  font-stretch: expanded;
}
.cover-img {
  display: flex;
  overflow: hidden;
  will-change: transform;
}
.cover-img img,
.cover-img video,
.cover-img canvas {
  width: 100%;
  object-fit: cover;
  height: 100%;
}
.contain-img {
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
}
.contain-img img,
.contain-img video {
  max-width: 100%;
  max-height: 100%;
  object-fit: contain;
}
img {
  border: 0;
  max-width: 100%;
  height: auto;
}
ul,
ol {
  list-style: none;
}
b,
strong {
  font-weight: 700;
}
button {
  all: unset;
  box-sizing: border-box;
  -webkit-user-select: none;
          user-select: none;
  cursor: pointer;
  appearance: button;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
  background-color: transparent;
}
svg {
  all: unset;
  flex: none;
}
use {
  fill: currentColor;
}
.swiper-slide {
  height: auto;
}
a {
  text-decoration: none;
  color: #376ff4;
}
.icon {
  --size: 1.5rem;
  width: var(--size);
  height: var(--size);
}
.btn {
  --padding: 1.375rem;
  --height: 3.375rem;
  --radius: 0.26;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.5rem;
  height: var(--height);
  cursor: pointer;
  padding: 0 var(--padding);
  max-width: 100%;
  border-radius: calc(var(--height) * var(--radius));
  color: #fff;
  overflow: hidden;
  will-change: transform;
  font-weight: 600;
  flex: none;
  position: relative;
  transition: color 0.4s, border-color 0.4s, background-position-x 0.4s, background-color 0.4s;
  background-image: linear-gradient(to right, #376ff4, #7731e6, #376ff4);
  background-size: 200% 100%;
  font-stretch: expanded;
}
.btn:hover {
  background-position-x: -100%;
}
.btn:has(> i) {
  gap: var(--padding);
}
.btn:has(> i) > span {
  margin: 0 auto;
}
.btn > i {
  margin-right: calc(-1 * var(--padding));
  align-self: stretch;
  width: var(--heaight);
  aspect-ratio: 1;
  border-left: solid 1px rgba(255, 255, 255, 0.1);
  display: grid;
  flex: none;
  place-items: center;
}
.btn svg {
  --size: 1.125rem;
}
.btn path[fill] {
  fill: currentColor;
}
.btn path[stroke] {
  stroke: currentColor;
}
.btn-border {
  position: relative;
  background: none;
}
.btn-border > span {
  position: relative;
  z-index: 1;
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  transition: --gradient-start 0.4s, --gradient-end 0.4s;
}
.btn-border:before,
.btn-border:after {
  content: '';
  position: absolute;
  inset: 0;
}
.btn-border:before {
  padding: 1px;
  border-radius: inherit;
  background: linear-gradient(to right, #376ff4, #7731e6);
  background-size: 200% 100%;
  pointer-events: none;
  -webkit-mask: linear-gradient(#fff 0 0) content-box, linear-gradient(#fff 0 0);
  -webkit-mask-composite: xor;
  mask-composite: exclude;
}
.btn-border:after {
  background: linear-gradient(to right, #376ff4, #7731e6);
  opacity: 0;
  transition: opacity 0.4s;
}
.btn-border:hover > span {
  --gradient-start: #fff;
  --gradient-end: #fff;
}
.btn-border:hover:after {
  opacity: 1;
}
.btn-white {
  position: relative;
  background: #fff;
}
.btn-white > span {
  position: relative;
  z-index: 1;
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  transition: --gradient-start 0.4s, --gradient-end 0.4s;
}
.btn-white:hover > span {
  --gradient-start: #7731e6;
  --gradient-end: #376ff4;
}
.btn-gray {
  background: #121212;
  border: solid 1px #272727;
  transition: background-color 0.4s;
}
.btn-gray .icon use {
  fill: url(#icon-gradient);
}
.btn-gray > * {
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
}
.btn-gray:hover {
  background: #272727;
}
.btn-gray-alt {
  border: solid 1px #2d2d2d;
  background: #1f1f1f;
}
.btn-gray-alt:hover {
  background: #2d2d2d;
}
.btn-red {
  background: #ff383c;
}
.btn-red:hover {
  background: #ff6b6e;
}
.btn-small {
  --height: 2.75rem;
}
.modal {
  position: fixed;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  z-index: 666666;
}
.modal:not(.active) {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
}
.modal.open,
.modal.close {
  transition: opacity 0.4s, visibility 0.4s;
}
.modal.open .modal-body,
.modal.close .modal-body {
  transition: transform 0.4s;
}
.modal.active .modal-body {
  transform: scale(1);
}
.modal-wrapp {
  width: 100%;
  height: 100%;
  display: flex;
  background: rgba(0, 0, 0, 0.7);
  padding: var(--container-padding);
  overflow: hidden;
  overflow-y: scroll;
  outline: none;
}
.modal-body {
  flex: none;
  min-height: 0;
  width: 30.625rem;
  max-width: 100%;
  margin: 0;
  padding: 1.5rem;
  transition: transform 0.4s;
  transform: scale(0.9);
  margin: auto;
  display: flex;
  flex-direction: column;
  border-radius: 1.25rem;
  will-change: transform;
  background-color: #1f1f1f;
  border: solid 1px #2d2d2d;
  position: relative;
}
@media (width < 1024px) {
  .modal-body {
    padding: 1.5rem var(--container-padding);
  }
}
.modal-body:has(.modal-close-btn) .modal-head {
  padding-right: 4.375rem;
}
.modal-close-btn {
  position: absolute;
  right: 0.625rem;
  top: 0.625rem;
  width: 2.75rem;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  transition: background-color 0.4s;
  border: solid 1px #2d2d2d;
}
.modal-close-btn:hover {
  background-color: #2d2d2d;
}
.modal-close-btn svg {
  --size: 1rem;
}
.modal-head {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.modal-title {
  font-size: 1.125rem;
  font-weight: 600;
  font-stretch: expanded;
}
.modal-desc {
  font-size: 0.875rem;
  color: #696969;
}
.swiper-horizontal {
  margin: unset;
  top: unset;
}
.slider-pagination {
  display: flex;
  gap: 0.625rem;
  margin: 0;
  width: auto !important;
}
.slider-pagination span {
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  width: 0.188rem;
  height: 0.188rem;
  border-radius: 0.25rem;
  opacity: 1;
  background-color: currentColor;
  transition: width 0.4s;
}
.slider-pagination span.swiper-pagination-bullet-active {
  width: 7.5rem;
}
.slider-arrows {
  display: flex;
  gap: 1rem;
}
.slider-arrows:has(.swiper-button-lock) {
  display: none;
}
.slider-arrow {
  --size: 2.75rem;
  display: grid;
  place-items: center;
  width: var(--size);
  aspect-ratio: 1;
  border-radius: 50%;
  border: solid 1px #2d2d2d;
  background-color: #141414;
  transition: background-color 0.4s;
}
.slider-arrow:hover {
  background-color: #2d2d2d;
}
.form-block {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.form-block-inline {
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}
.form-block-inline .form-block-title {
  margin: 0;
}
.form-block-title {
  font-size: 0.875rem;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  justify-content: space-between;
}
.form-block-title-btn {
  display: flex;
  transition: color 0.4s;
}
.form-block-title-btn svg {
  --size: 1rem;
}
.form-block-title-btn:hover {
  color: #376ff4;
}
.input-block {
  position: relative;
  display: flex;
}
.input {
  --color: #fff;
  border: solid 1px #272727;
  background: #121212;
  display: block;
  width: 100%;
  height: 3.375rem;
  padding: 0 1.25rem;
  appearance: none;
  box-shadow: none;
  caret-color: var(--color);
  transition: border-color 0.4s;
  color: var(--color);
  outline: none;
  line-height: 1;
  text-overflow: ellipsis;
  font-weight: 500;
  font-size: 1rem;
  border-radius: 1rem;
  font-family: 'TikTokSans', sans-serif;
}
.input:focus {
  border-color: #696969;
}
.input:-webkit-autofill {
  -webkit-text-fill-color: var(--color);
  background-color: transparent;
  -webkit-transition: background-color 5000000s 0s, border-color 0.4s;
  transition: background-color 5000000s 0s, border-color 0.4s;
}
.input:-webkit-autofill::first-line {
  font-family: 'TikTokSans', sans-serif;
}
.input::-webkit-outer-spin-button,
.input::-webkit-inner-spin-button {
  appearance: none;
  display: none;
}
.input::-webkit-search-decoration,
.input::-webkit-search-cancel-button,
.input::-webkit-search-results-button,
.input::-webkit-search-results-decoration {
  appearance: none;
  display: none;
}
input[type='number'] {
  -moz-appearance: textfield;
}
.input-small {
  height: 2.75rem;
  border-radius: 0.625rem;
}
.input-label {
  display: flex;
  align-items: center;
  gap: 0.25rem;
}
.input-label .input {
  flex: auto;
  width: 0;
  min-width: 0;
  align-self: stretch;
  background: none;
  border: 0;
  box-shadow: none;
  padding: 0;
  outline: none;
  height: auto;
}
.input-label:has(.input:focus) {
  border-color: #696969;
}
.input-label-title {
  flex: none;
  max-width: 40%;
  color: #696969;
}
.textarea {
  resize: none;
  height: 13.125rem;
}
.section {
  --padding: 5rem;
  padding: var(--padding) 0;
}
@media (width < 1024px) {
  .section {
    --padding: 2.5rem;
  }
}
.section-label {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  color: #6e91ff;
  margin-bottom: 0.25rem;
}
.section-label img {
  width: 1rem;
  height: 1rem;
  object-fit: contain;
  flex: none;
}
.section-desc {
  font-size: 1.125rem;
  color: #d9d9d9;
}
.marquee {
  overflow: hidden;
  display: flex;
  --gap: 1rem;
  max-width: 120rem;
  margin: 0 auto;
}
.marquee-rtl {
  justify-content: flex-end;
}
.marquee-rtl .marquee-track {
  animation-name: marquee-rtl;
  padding-right: 0;
  padding-left: var(--gap);
}
.marquee-track {
  animation: marquee var(--speed, 16s) linear infinite;
  display: flex;
  gap: var(--gap);
  flex: none;
  padding-right: var(--gap);
}
.marquee-track:hover {
  animation-play-state: paused;
}
.marquee-group {
  display: flex;
  gap: var(--gap);
  flex: none;
}
.marquee-slide {
  flex: none;
}
@keyframes marquee {
  to {
    transform: translateX(-50%);
  }
}
@keyframes marquee-rtl {
  to {
    transform: translateX(50%);
  }
}
.checkbox-label {
  --icon: 1.5rem;
  --radius: 0.5rem;
  display: inline-flex;
  gap: 1rem;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  font-size: 0.938rem;
  justify-content: space-between;
}
.checkbox-label input {
  position: absolute;
  left: 0;
  top: 0;
  cursor: pointer;
  opacity: 0;
  border-radius: var(--radius);
  width: var(--icon);
  height: var(--icon);
}
.checkbox-label > i {
  flex: none;
  border: solid 1px #272727;
  background-color: #121212;
  border-radius: var(--radius);
  width: var(--icon);
  height: var(--icon);
  display: grid;
  place-items: center;
}
.checkbox-label > i svg {
  --size: calc(0.833 * var(--icon));
  transition: opacity 0.4s;
  opacity: 0;
}
.checkbox-label > i use {
  fill: url(#icon-gradient);
}
.checkbox-label > span {
  align-self: center;
}
.checkbox-label:has(input:checked) > i svg {
  opacity: 1;
}
.checkbox-label a {
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  transition: opacity 0.4s;
}
.checkbox-label a:hover {
  opacity: 0.7;
}
.checkbox-label-switcher > i {
  width: 2.25rem;
  height: 1.5rem;
  border-radius: 1rem;
  background-color: #3a3a3a;
  position: relative;
  transition: background-color 0.4s;
}
.checkbox-label-switcher > i:before {
  content: '';
  height: 1rem;
  aspect-ratio: 1;
  border-radius: 50%;
  background-color: #fff;
  position: absolute;
  left: 0.25rem;
  top: calc(50% - 0.5rem);
  transition: transform 0.4s;
}
.checkbox-label-switcher:has(input:checked) > i {
  background-color: #329d29;
}
.checkbox-label-switcher:has(input:checked) > i:before {
  transform: translateX(0.75rem);
}
.checkbox-label-switcher-count {
  color: #696969;
}
.checkbox-label-button {
  min-height: 2.25rem;
  padding: 0.25rem 0.75rem;
  display: flex;
  align-items: center;
  border-radius: 0.625rem;
  border: solid 1px #2d2d2d;
  background-color: #222;
  font-size: 0.875rem;
  text-align: center;
  justify-content: center;
  transition: border-color 0.4s, background-color 0.4s;
}
.checkbox-label-button input {
  width: 100%;
  height: 100%;
  border-radius: inherit;
}
.checkbox-label-button:hover {
  background-color: #2d2d2d;
}
.checkbox-label-button:has(input:checked) {
  background-color: #376ff4;
  border-color: #376ff4;
}
.radio-label {
  --icon: 1.5rem;
  display: inline-flex;
  gap: 1rem;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  font-size: 0.938rem;
  justify-content: space-between;
}
.radio-label input {
  position: absolute;
  left: 0;
  top: 0;
  cursor: pointer;
  opacity: 0;
  border-radius: 50%;
  width: var(--icon);
  height: var(--icon);
}
.radio-label > i {
  flex: none;
  border: solid 1px #272727;
  background-color: #121212;
  border-radius: 50%;
  width: var(--icon);
  height: var(--icon);
  display: grid;
  place-items: center;
}
.radio-label > i:before {
  content: '';
  width: 47%;
  aspect-ratio: 1;
  border-radius: 50%;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  opacity: 0;
  transition: opacity 0.4s;
}
.radio-label > span {
  align-self: center;
}
.radio-label:has(input:checked) > i:before {
  opacity: 1;
}
.radio-label a {
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  transition: opacity 0.4s;
}
.radio-label a:hover {
  opacity: 0.7;
}
.decor-video {
  display: flex;
  pointer-events: none;
  width: var(--size, 30rem);
  height: var(--size, 30rem);
  flex: none;
  align-items: center;
  justify-content: center;
  z-index: -1;
}
.decor-video video {
  flex: none;
}
.section-head {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: center;
  text-align: center;
  margin-bottom: 2rem;
  position: relative;
}
.section-head:last-child {
  margin-bottom: 0;
}
.section-head .section-desc {
  max-width: 46.875rem;
}
@media (width < 1024px) {
  .section-head br {
    display: none;
  }
}
.section-head-video {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
  pointer-events: none;
}
@media (width < 1024px) {
  .section-head-video {
    opacity: 0.3;
  }
}
.section-head-video video {
  width: 62.5rem;
}
@media (width < 1024px) {
  .section-head-video video {
    width: 50rem;
  }
}
.items-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
@media (width < 1024px) {
  .items-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width < 768px) {
  .items-list {
    grid-template-columns: 1fr;
  }
}
img-comparison-slider {
  --divider-color: #2d2d2d;
  overflow: visible;
  outline-color: transparent;
}
.accordion {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.accordion-item {
  padding: 1.5rem 2rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  background-color: #141414;
  border-radius: 2rem;
}
@media (width < 1024px) {
  .accordion-item {
    padding: 1rem;
    border-radius: 1.5rem;
  }
}
.accordion-item.active .accordion-item-toggle svg {
  transform: rotate(-180deg);
}
.accordion-item.active .accordion-item-body {
  grid-template-rows: 1fr;
}
.accordion-item-toggle {
  display: flex;
  width: 100%;
  align-items: center;
  gap: 1.5rem;
  transition: color 0.4s;
  justify-content: space-between;
}
@media (width < 1024px) {
  .accordion-item-toggle {
    gap: 0.5rem;
  }
}
.accordion-item-toggle:hover {
  color: #376ff4;
}
.accordion-item-toggle > i {
  flex: none;
  width: 2.75rem;
  aspect-ratio: 1;
  border: solid 1px #2d2d2d;
  border-radius: 50%;
  display: grid;
  place-items: center;
}
@media (width < 1024px) {
  .accordion-item-toggle > i {
    width: 2rem;
  }
}
.accordion-item-toggle svg {
  transition: transform 0.4s;
}
.accordion-item-body {
  display: grid;
  grid-template-rows: 0fr;
  transition: grid-template-rows 0.4s;
}
.accordion-item-content {
  overflow: hidden;
}
.accordion-item-text {
  margin-top: 0.5rem;
}
@media (width >= 1024px) {
  .accordion-item-text {
    max-width: 88%;
  }
}
.select {
  position: relative;
  display: flex;
  flex-direction: column;
}
.select.active {
  z-index: 66;
}
.select.active .select-toggle {
  background-color: #272727;
}
.select.active .select-toggle > svg {
  color: #fff;
}
.select.active .select-options {
  opacity: 1;
  visibility: visible;
  pointer-events: auto;
  transition: opacity 0.4s, visibility 0.4s;
}
.select img {
  max-width: 1.5rem;
  flex: none;
}
.select-toggle {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  transition: unset;
  padding: 0 0.75rem;
  height: 2.75rem;
  border: solid 1px #272727;
  background-color: #121212;
  border-radius: 0.625rem;
  transition: background-color 0.4s;
}
.select-toggle > svg {
  --size: 1.25rem;
  color: #b6b6b6;
  transition: color 0.4s;
}
.select-toggle:hover {
  background-color: #272727;
}
.select-title {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}
.select-title > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.tippy-box[data-theme='unset'] {
  all: unset;
}
.tippy-box[data-theme='unset'] .tippy-content {
  padding: 0;
}
.tippy-tooltip {
  display: none;
}
.tippy-box .select-options {
  display: block;
}
.tippy-box .tippy-tooltip {
  display: flex;
}
.tippy-tooltip-close {
  flex: none;
  width: 2.75rem;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background-color: #1f1f1f;
  border: solid 1px #2d2d2d;
  transition: background-color 0.4s;
}
.tippy-tooltip-close:hover {
  background-color: #2d2d2d;
}
.tippy-tooltip-close svg {
  --size: 1.25rem;
}
.select-options {
  border: solid 1px #272727;
  background-color: #121212;
  border-radius: 0.625rem;
  display: none;
  font-size: 0.875rem;
}
.select-options-list {
  overflow: hidden auto;
  max-height: 17.5rem;
  display: flex;
  flex-direction: column;
}
.select-option {
  width: 100%;
  padding: 0.5rem 0.75rem;
  align-items: center;
  transition: color 0.4s;
  color: inherit;
  overflow: hidden;
  text-overflow: ellipsis;
  display: flex;
  gap: 0.5rem;
}
.select-option > span {
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.select-option .icon {
  --size: 1rem;
  opacity: 0;
  transition: opacity 0.4s;
  color: #696969;
  margin-left: auto;
}
.select-option:hover {
  color: #376ff4;
}
.select-option.active:hover {
  color: #fff;
}
.select-option.active .icon {
  opacity: 1;
}
.textarea-with-max-length {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  padding: 0.75rem 0;
  background-color: #121212;
  border: solid 1px #272727;
  border-radius: 0.625rem;
  min-height: 8rem;
}
.textarea-with-max-length .textarea {
  border: 0;
  border-radius: 0;
  padding: 0 0.75rem;
  height: auto;
  font-size: 0.875rem;
  line-height: 1.3;
}
.textarea-with-max-length-foot {
  display: flex;
  padding: 0 0.75rem;
  align-items: center;
  gap: 0.75rem;
  justify-content: space-between;
}
.textarea-with-max-length-foot .textarea-max-length {
  padding: 0;
}
.textarea-with-max-length-info {
  display: flex;
  transition: color 0.4s;
}
.textarea-with-max-length-info svg {
  --size: 0.875rem;
}
.textarea-with-max-length-info:hover {
  color: #376ff4;
}
.textarea-max-length {
  display: flex;
  padding: 0 0.75rem;
  justify-content: flex-end;
  font-size: 0.688rem;
  font-weight: 300;
  color: #696969;
  -webkit-user-select: none;
          user-select: none;
  margin-top: auto;
}
.textarea-max-length-current:after {
  content: '/';
}
.radio-btns {
  display: flex;
  flex-wrap: wrap;
  padding: 0.25rem;
  border-radius: 0.625rem;
  background-color: #121212;
  gap: 0.125rem;
}
.radio-btn {
  flex: auto;
  padding: 0.25rem 0.375rem;
  border-radius: 0.5rem;
  font-size: 0.875rem;
  color: #696969;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: color 0.4s, background-color 0.4s;
  position: relative;
  -webkit-user-select: none;
          user-select: none;
  cursor: pointer;
  justify-content: center;
}
.radio-btn:hover {
  color: #fff;
}
.radio-btn input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  border-radius: inherit;
  cursor: pointer;
}
.radio-btn:has(input:checked) {
  background-color: #376ff4;
  color: #fff;
}
.radio-btn path[fill] {
  fill: currentColor;
}
.radio-btn path[stroke] {
  stroke: currentColor;
}
.radio-btn svg {
  width: 0.75rem;
  height: 0.75rem;
}
.file-input {
  position: absolute;
  left: 0;
  top: 0;
  border-radius: inherit;
  cursor: pointer;
  opacity: 0;
  font-size: 0;
  width: 100%;
  height: 100%;
  z-index: 6;
  -webkit-user-select: none;
          user-select: none;
}
.file-input::-webkit-file-upload-button,
.file-input::file-selector-button {
  display: none;
  appearance: none;
}
.tippy-box[data-theme='tooltip'] {
  all: unset;
  font-size: 0.75rem;
}
.tippy-box[data-theme='tooltip'] .tippy-content {
  padding: 0.25rem 0.75rem;
  background: #141414;
  border-radius: 0.25rem;
  border: solid 1px #2d2d2d;
}
.tippy-box[data-theme~='tooltip'] > .tippy-arrow {
  width: 0.5rem;
  height: 0.375rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='top'] > .tippy-arrow:before {
  bottom: -0.375rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='bottom'] > .tippy-arrow:before {
  top: -0.375rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='left'] > .tippy-arrow {
  width: 0.375rem;
  height: 0.5rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='left'] > .tippy-arrow:before {
  right: -0.375rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='right'] > .tippy-arrow {
  width: 0.375rem;
  height: 0.5rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='right'] > .tippy-arrow:before {
  left: -0.375rem;
}
.tippy-box[data-theme~='tooltip'][data-placement^='top'] > .tippy-arrow::before {
  border-width: 0.375rem 0.25rem 0 0.25rem;
  border-top-color: #2d2d2d;
}
.tippy-box[data-theme~='tooltip'][data-placement^='bottom'] > .tippy-arrow::before {
  border-width: 0 0.25rem 0.375rem 0.25rem;
  border-bottom-color: #2d2d2d;
}
.tippy-box[data-theme~='tooltip'][data-placement^='left'] > .tippy-arrow::before {
  border-width: 0.25rem 0.375rem 0.25rem 0;
  border-left-color: #2d2d2d;
}
.tippy-box[data-theme~='tooltip'][data-placement^='right'] > .tippy-arrow::before {
  border-width: 0.25rem 0 0.25rem 0.375rem;
  border-right-color: #2d2d2d;
}
.tab-block:not(.active) {
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  height: 0;
  overflow: hidden;
  padding: 0;
  margin: 0;
  will-change: transform;
}
.tab-block.active {
  transition: opacity 0.4s, visibility 0.4s;
}
.search-block .input-block {
  position: relative;
}
.search-block .input-block .icon {
  --size: 1rem;
  position: absolute;
  left: 0.875rem;
  top: calc(50% - 0.5 * var(--size));
  color: #696969;
  transition: color 0.4s;
}
.search-block .input-block .input {
  padding-left: 2.25rem;
}
.search-block .input-block:has(.input:focus) .icon {
  color: #fff;
}
.loader {
  animation: rotate 1s linear infinite;
}
@keyframes rotate {
  to {
    transform: rotate(1turn);
  }
}
.range-slider-wrapp {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.range-slider-input {
  width: 3.5rem;
  flex: none;
}
.range-slider-input .input {
  height: 2.25rem;
}
.range-slider {
  flex: auto;
  min-width: 0;
  height: 2.25rem;
  background-color: #121212;
  border-radius: 0.375rem;
}
.range-slider .range-slider__thumb {
  width: 1.375rem;
  height: 2.25rem;
  box-shadow: 0px 0px 0.563rem 0px #00000033;
  background: #3c3c3c url(../img/range-slider-bg.svg) center center / 0.5rem 1rem no-repeat;
  border-radius: 0.25rem;
}
.range-slider .range-slider__thumb[data-lower] {
  width: 0;
}
.range-slider .range-slider__range {
  border-radius: 0.375rem;
  background-color: #303030;
}
.color-input {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
}
.color-input input[type='color'] {
  width: 1.625rem;
  height: 1.625rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: transparent;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
}
.color-input input[type='color']::-webkit-color-swatch-wrapper {
  padding: 0;
}
.color-input input[type='color']::-webkit-color-swatch {
  border: 0;
  border-radius: 50%;
}
.color-input input[type='color']::-moz-color-swatch {
  border: 0;
  border-radius: 50%;
}
.color-input input[type='color']::-moz-focus-inner {
  border: 0;
  padding: 0;
}
.content-text {
  display: flow-root;
}
.content-text h1,
.content-text h2,
.content-text h3,
.content-text h4,
.content-text h5,
.content-text h6 {
  margin: calc(1.5 * var(--content-gap)) 0;
}
.content-text h1:first-child,
.content-text h2:first-child,
.content-text h3:first-child,
.content-text h4:first-child,
.content-text h5:first-child,
.content-text h6:first-child {
  margin-top: 0;
}
.content-text h1:last-child,
.content-text h2:last-child,
.content-text h3:last-child,
.content-text h4:last-child,
.content-text h5:last-child,
.content-text h6:last-child {
  margin-bottom: 0;
}
.content-text b,
.content-text strong {
  font-weight: 500;
}
.content-text p {
  margin-bottom: var(--content-gap);
}
.content-text p:last-child {
  margin-bottom: 0;
}
.content-text a:not(.btn):not(.content-custom-link) {
  transition: color 0.4s;
}
.content-text a:not(.btn):not(.content-custom-link):hover {
  color: #7731e6;
}
.content-text ol {
  list-style: none;
  counter-reset: counter;
  margin-bottom: var(--content-gap);
  display: flow-root;
}
.content-text ol:last-child {
  margin-bottom: 0;
}
.content-text ol li {
  margin-bottom: calc(var(--content-gap) / 2);
  padding-left: 1.75rem;
  position: relative;
}
@media (width < 768px) {
  .content-text ol li {
    padding-left: 1.5rem;
  }
}
.content-text ol li:last-child {
  margin-bottom: 0;
}
.content-text ol li:before {
  content: counter(counter) '.';
  position: absolute;
  flex: none;
  left: 0;
  top: 0;
  counter-increment: counter;
  font-weight: 500;
  width: 1.75rem;
  text-align: center;
}
@media (width < 768px) {
  .content-text ol li:before {
    width: 1.5rem;
  }
}
.content-text ul {
  list-style: none;
  margin-bottom: var(--content-gap);
  display: flow-root;
}
.content-text ul:last-child {
  margin-bottom: 0;
}
.content-text ul li {
  display: flex;
  margin-bottom: calc(var(--content-gap) / 2);
  padding-left: 1.75rem;
  position: relative;
}
@media (width < 768px) {
  .content-text ul li {
    padding-left: 1.5rem;
  }
}
.content-text ul li:last-child {
  margin-bottom: 0;
}
.content-text ul li:before {
  content: '';
  position: absolute;
  width: 0.25rem;
  height: 0.25rem;
  border-radius: 50%;
  background-color: currentColor;
  left: 0.625rem;
  top: calc(0.5lh - 0.125rem);
}
@media (width < 768px) {
  .content-text ul li:before {
    left: 0.5rem;
  }
}
.content-text figure {
  margin: calc(3 * var(--content-gap)) 0;
}
.content-text figure:first-child {
  margin-top: 0;
}
.content-text figure:last-child {
  margin-bottom: 0;
}
.content-text img {
  display: block;
  border-radius: 1rem;
  min-height: 15rem;
  object-fit: cover;
}
.content-text blockquote {
  margin: calc(1.5 * var(--content-gap)) 0;
  padding: 1rem 1.5rem;
  background-color: #141414;
  border-left: solid 0.25rem #376ff4;
}
@media (width < 1024px) {
  .content-text blockquote {
    padding: 0.75rem 1rem;
  }
}
.content-text blockquote:first-child {
  margin-top: 0;
}
.content-text blockquote:last-child {
  margin-bottom: 0;
}
.header {
  position: fixed;
  z-index: 666;
  inset: 0 0 auto;
  transition: background-color 0.4s, transform 0.4s;
}
@media (width >= 1024px) {
  .header:before {
    content: '';
    position: absolute;
    inset: 0;
    background-color: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(1.875rem);
    opacity: 0;
    transition: opacity 0.4s;
  }
}
.header > .container {
  display: flex;
  align-items: center;
  gap: 2.5rem;
  height: var(--header-height);
}
@media (width < 1024px) {
  .header > .container {
    gap: 1.5rem;
  }
}
@media (width >= 1024px) {
  .header.hide:not(:hover) {
    transform: translateY(-100%);
  }
}
@media (width < 1024px) {
  .header.fixed {
    background-color: #000;
  }
}
@media (width >= 1024px) {
  .header.fixed:before {
    opacity: 1;
  }
}
@media (width < 1024px) {
  .header.nav-is-open {
    background-color: #000;
  }
}
.logo {
  display: flex;
  max-width: 11.125rem;
  margin-right: auto;
  position: relative;
}
.header-lang {
  position: relative;
  order: 1;
}
.header-lang-toggle {
  display: flex;
}
.header-lang-toggle use {
  fill: url(#icon-gradient);
}
@media (width >= 1024px) {
  .header-lang-toggle {
    transition: opacity 0.4s;
  }
  .header-lang-toggle:hover {
    opacity: 0.8;
  }
}
.footer {
  position: relative;
  margin-top: auto;
  padding-top: calc(2 * var(--padding));
}
.footer .container {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  gap: 14.125rem;
}
@media (width < 1024px) {
  .footer .container {
    gap: 5rem;
  }
}
.footer-main {
  display: flex;
  gap: 2.5rem;
  justify-content: space-between;
}
@media (width < 1024px) {
  .footer-main {
    flex-direction: column;
  }
}
.footer-body {
  max-width: 40.625rem;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 1rem;
}
.footer-logo {
  font-size: 0.813rem;
  font-weight: 700;
  color: #6e91ff;
  transition: color 0.4s;
}
.footer-logo:hover {
  color: #376ff4;
}
@media (width >= 1024px) {
  .footer-title {
    font-size: 2.938rem;
  }
}
.footer-desc {
  font-size: 1.25rem;
  max-width: 32.25rem;
}
.footer-btn {
  margin-top: 1.5rem;
}
@media (width < 1024px) {
  .footer-btn {
    margin-top: 0.5rem;
  }
}
@media (width < 480px) {
  .footer-btn {
    width: 100%;
  }
}
.footer-nav {
  display: grid;
  gap: 2rem;
  font-stretch: expanded;
  grid-template-columns: repeat(3, 11.875rem);
}
@media (width < 1024px) {
  .footer-nav {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
@media (width < 768px) {
  .footer-nav {
    grid-template-columns: 1fr 1fr;
  }
}
.footer-nav-cell {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .footer-nav-cell {
    gap: 1.5rem;
  }
}
@media (width < 768px) {
  .footer-nav-cell:last-child:nth-child(odd) {
    grid-column: span 2;
  }
}
.footer-nav-title {
  font-size: 1.125rem;
  font-weight: 700;
}
.footer-menu {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  font-size: 0.875rem;
  color: #b6b6b6;
  font-weight: 600;
}
@media (width < 1024px) {
  .footer-menu {
    gap: 1.5rem;
  }
}
.footer-menu a {
  color: inherit;
  transition: color 0.4s;
}
.footer-menu a:hover {
  color: #fff;
}
.footer-foot {
  display: flex;
  justify-content: space-between;
  gap: 45rem;
  align-items: center;
}
@media (width < 1024px) {
  .footer-foot {
    gap: 1.5rem;
    flex-wrap: wrap;
  }
}
.copyright {
  font-size: 0.813rem;
  font-weight: 600;
  color: #b6b6b6;
}
.copyright span {
  color: #fff;
}
.footer-social {
  display: flex;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .footer-social {
    gap: 2rem;
  }
}
.footer-social a {
  display: flex;
  color: #b6b6b6;
  transition: color 0.4s;
  margin: -1rem;
  padding: 1rem;
}
.footer-social a:hover {
  color: #fff;
}
.footer-social a svg {
  --size: 1rem;
}
.footer-video {
  --size: 37.5rem;
  position: absolute;
  left: calc(50% - 0.5 * var(--size));
  top: calc(90% - 0.5 * var(--size));
}
@media (width < 1024px) {
  .footer-video {
    opacity: 0.3;
  }
}
.footer-video video {
  width: 112.5rem;
}
@media (width < 1024px) {
  .footer-video video {
    width: 50rem;
  }
}
@media (width < 1024px) {
  .header-nav {
    top: calc(var(--header-height) - 1px);
  }
  .header-nav .modal-wrapp {
    padding: 0;
    background: #000;
  }
  .header-nav .modal-body {
    width: 100%;
    margin-left: 0;
    min-height: 100%;
    transform: translateX(100%);
    border-radius: 0;
    gap: 1.5rem;
    align-items: center;
    padding: 2.5rem 0;
    background: none;
    border: 0;
  }
  .header-nav .container {
    display: flex;
    flex-direction: column;
    gap: 2.5rem;
    flex: auto;
  }
  .header-nav.active .modal-body {
    transform: translateX(0);
  }
}
@media (width >= 1024px) {
  .header-nav {
    all: unset;
    display: contents;
  }
  .header-nav:not(.active) {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .header-nav .modal-wrapp {
    all: unset;
    display: contents;
  }
  .header-nav .modal-body {
    all: unset;
    display: contents;
  }
  .header-nav .modal-body > .container {
    display: contents;
  }
}
@media (width >= 1024px) {
  html:has(.header-nav.active) {
    overflow: hidden scroll !important;
  }
}
.header-menu {
  color: inherit;
  display: flex;
  align-items: center;
  margin: 0 -1.5rem;
}
@media (width < 1024px) {
  .header-menu {
    margin: 0;
    flex-direction: column;
    align-items: unset;
    gap: 1.5rem;
  }
}
.header-menu > li > a {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  font-size: 1.25rem;
  font-weight: 600;
  color: inherit;
  font-stretch: expanded;
}
@media (width < 1024px) {
  .header-menu > li > a {
    margin: -0.75rem;
    padding: 0.75rem;
  }
}
@media (width >= 1024px) {
  .header-menu > li > a {
    gap: 0.375rem;
    padding: 0 1.5rem;
    height: var(--header-height);
    font-size: 0.938rem;
    --gradient-start: #fff;
    --gradient-end: #fff;
    background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
    -webkit-background-clip: text;
    color: transparent;
    position: relative;
    transition: --gradient-start 0.4s, --gradient-end 0.4s;
  }
}
.header-menu > li > a svg {
  color: #fff;
  --size: 0.625rem;
  transition: color 0.4s, transform 0.4s;
}
@media (width < 1024px) {
  .header-menu > li > a svg {
    --size: 1rem;
  }
}
@media (width >= 1024px) {
  .header-menu > li:hover > a {
    --gradient-start: #376ff4;
    --gradient-end: #7731e6;
  }
  .header-menu > li:hover > a svg {
    color: #7731e6;
    transform: rotate(-180deg);
  }
  .header-menu > li:hover > .header-menu-sub {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
}
@media (width < 1024px) {
  .header-menu > li.sub-menu-is-open > .header-menu-sub {
    grid-template-rows: 1fr;
  }
  .header-menu > li.sub-menu-is-open > a svg {
    transform: rotate(-180deg);
  }
}
@media (width >= 1024px) {
  .header-menu-sub {
    position: absolute;
    inset: 100% 0 auto;
    max-height: calc(100vh - var(--header-height));
    overflow-y: auto;
    background-color: rgba(0, 0, 0, 0.7);
    backdrop-filter: blur(1.875rem);
    box-shadow: 0px 0.25rem 0.75rem 0px rgba(0, 0, 0, 0.25);
    padding: 3.125rem 0;
    opacity: 0;
    visibility: hidden;
    pointer-events: none;
    transition: opacity 0.4s, visibility 0.4s;
    -ms-overflow-style: none;
    scrollbar-width: none;
  }
  .header-menu-sub::-webkit-scrollbar {
    display: none;
  }
}
@media (width < 1024px) {
  .header-menu-sub {
    display: grid;
    grid-template-rows: 0fr;
    transition: grid-template-rows 0.4s;
  }
  .header-menu-sub .container {
    padding: 0;
    width: 100%;
    overflow: hidden;
  }
}
.header-menu-features {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 0.938rem;
  margin-bottom: -1.25rem;
}
@media (width < 1024px) {
  .header-menu-features {
    margin: 1.75rem 0 0;
    gap: 2.5rem 0.75rem;
    grid-template-columns: 1fr 1fr;
  }
}
@media (width < 768px) {
  .header-menu-features {
    grid-template-columns: 1fr;
  }
}
.header-menu-feature {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  border-radius: 1.25rem;
  padding: 1.5rem;
  color: inherit;
  background: #141414 url(../img/header-menu-feature-bg.svg) left top / 21.813rem 22.688rem no-repeat;
}
.header-menu-feature:hover .header-menu-feature-img {
  transform: scale(1.06);
}
.header-menu-feature-img {
  display: flex;
  margin: -3.25rem -0.813rem 0;
  transform-origin: center bottom;
  transition: transform 0.4s;
  justify-content: center;
}
.header-menu-feature-img img {
  width: 20.25rem;
  max-height: 18.875rem;
  object-fit: contain;
}
.header-menu-feature-body {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}
.header-menu-feature-icon {
  flex: none;
  width: 2.875rem;
}
.header-menu-feature-content {
  display: flex;
  flex-direction: column;
}
.header-menu-feature-title {
  font-size: 1.25rem;
  font-weight: 600;
  font-stretch: expanded;
}
.header-menu-feature-desc {
  font-size: 0.875rem;
}
.header-menu-solutions {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 3rem 1rem;
}
@media (width < 1024px) {
  .header-menu-solutions {
    gap: 0.75rem;
    grid-template-columns: 1fr 1fr;
    margin-top: 1.5rem;
  }
}
@media (width < 768px) {
  .header-menu-solutions {
    grid-template-columns: 1fr;
  }
}
.header-menu-solution {
  padding: 1rem 2.625rem 1rem 1rem;
  border-radius: 1rem;
  color: inherit;
  display: flex;
  align-items: center;
  gap: 1.25rem;
  transition: background-color 0.4s;
}
@media (width < 1024px) {
  .header-menu-solution {
    padding: 1rem;
    background-color: #141414;
  }
}
.header-menu-solution:hover {
  background-color: #141414;
}
.header-menu-solution-img {
  flex: none;
  width: 1.875rem;
  height: 1.875rem;
}
.header-menu-solution-body {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}
.header-menu-solution-title {
  font-weight: 600;
  font-stretch: expanded;
}
.header-menu-solution-desc {
  font-size: 0.875rem;
  color: #696969;
}
@media (width >= 1024px) {
  .header-btn {
    --height: 2.75rem;
    --padding: 1rem;
    font-size: 0.938rem;
  }
}
@media (width < 1024px) {
  .header-btn {
    margin-top: auto;
  }
}
.header-nav-toggle {
  order: 1;
  display: flex;
  color: #fff;
  margin: -1rem;
  padding: 1rem;
  position: relative;
}
.header-nav-toggle use {
  fill: url(#icon-gradient);
}
@media (width >= 1024px) {
  .header-nav-toggle {
    display: none;
  }
}
.header-nav-toggle svg {
  transition: opacity 0.4s, transform 0.4s;
}
.header-nav-toggle svg:last-child {
  position: absolute;
  left: calc(50% - 0.5 * var(--size));
  top: calc(50% - 0.5 * var(--size));
  opacity: 0;
  transform: scale(0);
}
.header-nav-toggle.active svg:first-child {
  opacity: 0;
  transform: scale(0);
}
.header-nav-toggle.active svg:last-child {
  opacity: 1;
  transform: scale(1);
}
.home-hero {
  padding: 4.5rem 0;
  display: flex;
  flex-direction: column;
}
.home-hero + * {
  position: relative;
}
@media (width < 1024px) {
  .home-hero {
    position: relative;
    padding: 2.5rem 0;
  }
}
.home-hero .container {
  display: flex;
  flex: auto;
  align-items: center;
}
.home-hero-body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  max-width: 24.125rem;
  position: relative;
  z-index: 1;
}
.home-hero-icon {
  width: 4.5rem;
  height: 3.75rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex: none;
}
.home-hero-icon img {
  max-height: 100%;
  object-fit: contain;
}
.home-hero-icon video {
  width: 10rem;
}
.home-hero-video {
  --size: 30rem;
  margin: auto;
}
@media (width < 1024px) {
  .home-hero-video {
    --size: 15rem;
    position: absolute;
    left: calc(80% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
  }
}
@media (width < 768px) {
  .home-hero-video {
    opacity: 0.3;
  }
}
.home-hero-video video {
  width: 98.75rem;
}
@media (width < 1024px) {
  .home-hero-video video {
    width: 56.25rem;
  }
}
.home-hero-desc {
  font-size: 1.25rem;
}
.home-hero-btn {
  margin: 1.5rem auto 0 0;
}
.services {
  padding: 4.5rem 0 3.125rem;
}
@media (width < 1024px) {
  .services {
    padding: 2.5rem 0 1.5rem;
  }
}
.services .container {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.services-nav-slider {
  margin: 0;
  overflow: visible;
}
.services-nav-slide {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  padding: 0.625rem;
  border-radius: 1rem;
  position: relative;
  cursor: pointer;
  -webkit-user-select: none;
          user-select: none;
}
@media (width < 1024px) {
  .services-nav-slide {
    width: 12.125rem;
  }
}
.services-nav-slide.swiper-slide-thumb-active .services-nav-slide-img {
  transform: scale(1.15);
}
.services-nav-slide.swiper-slide-thumb-active .services-nav-slide-bg {
  height: 9.625rem;
}
.services-nav-slide.swiper-slide-thumb-active .services-nav-slide-bg:before {
  opacity: 1;
}
.services-nav-slide-img {
  width: 10.313rem;
  max-height: 10rem;
  max-width: 100%;
  aspect-ratio: 165/160;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  transition: transform 0.4s;
  transform-origin: center bottom;
}
.services-nav-slide-title {
  text-align: center;
  font-weight: 600;
  position: relative;
  z-index: 1;
  font-stretch: expanded;
}
.services-nav-slide-bg {
  position: absolute;
  inset: auto 0 0;
  border-radius: inherit;
  height: 6.875rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  transition: height 0.4s;
  overflow: hidden;
  will-change: transform;
  background-color: rgba(255, 255, 255, 0.08);
}
.services-nav-slide-bg:before {
  content: '';
  position: absolute;
  --width: 33rem;
  width: var(--width);
  aspect-ratio: 1;
  background-image: url(../img/services-nav-slide-bg.svg);
  background-size: 100% 100%;
  top: calc(100% - 0.5 * var(--width));
  left: calc(50% - 0.5 * var(--width));
  opacity: 0;
  transition: opacity 0.4s;
}
.services-slider {
  --padding: 3.75rem;
  width: auto;
  overflow: visible;
  margin: 0 calc(-1 * var(--padding));
}
@media (width < 1024px) {
  .services-slider {
    --padding: var(--container-padding);
  }
}
.services-slide {
  display: flex;
  gap: 1.5rem;
  padding: var(--padding);
  border-radius: 0 0 1.5rem 1.5rem;
  background: url(../img/services-slide-bg.svg) center bottom / 97.5rem 16.125rem no-repeat, linear-gradient(180deg, rgba(0, 0, 0, 0.2) 0%, rgba(91, 91, 91, 0.2) 100%);
  transition: opacity 0.4s;
}
@media (width >= 1024px) {
  .services-slide {
    gap: 2rem;
    min-height: 30.313rem;
    border-radius: 0 0 3.125rem 3.125rem;
  }
}
@media (width < 768px) {
  .services-slide {
    flex-direction: column;
  }
}
.services-slide:not(.swiper-slide-active) {
  opacity: 0;
}
.services-slide-body {
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
  align-items: flex-start;
}
@media (width < 1024px) {
  .services-slide-body {
    gap: 1.5rem;
  }
}
.services-slide-desc {
  margin-top: -2rem;
  color: #6e91ff;
}
@media (width < 1024px) {
  .services-slide-desc {
    margin-top: -1.25rem;
    font-size: 0.875rem;
  }
}
.services-slide-desc:first-child {
  margin-top: 0;
}
.services-slide-list {
  display: flex;
  flex-direction: column;
  gap: 0.938rem;
}
@media (width < 1024px) {
  .services-slide-list {
    gap: 0.75rem;
    font-size: 0.875rem;
  }
}
.services-slide-list li {
  display: flex;
  align-items: flex-start;
  gap: 1rem;
}
.services-slide-list li > i {
  flex: none;
  width: 1.75rem;
  aspect-ratio: 1;
  border-radius: 50%;
  display: grid;
  place-items: center;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
}
.services-slide-list li > i svg {
  --size: 1rem;
}
.services-slide-list li > span {
  align-self: center;
}
@media (width >= 1024px) {
  .services-slide-btn {
    margin-top: 0.75rem;
  }
}
.services-slide-img {
  margin: calc(-1 * var(--padding)) auto;
  align-self: flex-end;
  flex: none;
  width: 41.625rem;
  display: flex;
}
@media (width < 1024px) and (width >= 768px) {
  .services-slide-img {
    width: 50%;
  }
}
@media (width < 768px) {
  .services-slide-img {
    order: -1;
    max-width: 100%;
    margin: 0 auto;
  }
}
.advantages {
  padding: 3.125rem 0 3.75rem;
}
@media (width < 1024px) {
  .advantages {
    padding: 1.5rem 0 2rem;
  }
}
.advantages-list {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .advantages-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.advantages-item {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
  padding: 1.875rem;
  background: rgba(255, 255, 255, 0.08) url(../img/advantages-item-bg.svg) right bottom / 24.875rem 20.438rem no-repeat;
  border-radius: 1rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  position: relative;
  z-index: 1;
}
@media (width < 1024px) {
  .advantages-item {
    padding: 1.5rem;
  }
}
.advantages-item-head {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
.advantages-item-icon {
  width: 3.75rem;
  height: 3.75rem;
}
@media (width < 1024px) {
  .advantages-item-title br {
    display: none;
  }
}
.partners {
  padding: 3.125rem 0 3.75rem;
}
.partners + * {
  position: relative;
}
@media (width < 1024px) {
  .partners {
    position: relative;
    padding: 1.5rem 0 2.5rem;
  }
}
.partners .container {
  display: flex;
  gap: 1rem;
}
.partners-video {
  --size: 29.5rem;
  height: 17.625rem;
}
@media (width < 1024px) {
  .partners-video {
    --size: 15rem;
    height: var(--size);
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
    opacity: 0.3;
  }
}
.partners-video video {
  width: 45rem;
}
@media (width >= 1024px) {
  .partners-video video {
    width: 60rem;
    transform: translateX(-8%);
  }
}
.partners-body {
  position: relative;
  z-index: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  flex: auto;
}
.partners-title {
  text-align: center;
  font-weight: 600;
  font-stretch: expanded;
}
.partners-sliders {
  --size: 12.5rem;
  -webkit-mask-image: linear-gradient(to right, transparent 0, black var(--size), black calc(100% - var(--size)), transparent 100%);
          mask-image: linear-gradient(to right, transparent 0, black var(--size), black calc(100% - var(--size)), transparent 100%);
}
@media (width < 1024px) {
  .partners-sliders {
    margin: 0 calc(-1 * var(--container-padding));
    --size: var(--container-padding);
  }
}
.partners-slider {
  --gap: 0px;
}
.partners-slide {
  width: 15rem;
  height: 7.5rem;
}
.how-use-list {
  display: grid;
  gap: 3rem 1rem;
}
@media (width >= 1024px) {
  .how-use-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.how-use-item {
  --padding: 1.75rem;
  min-width: 0;
  padding: var(--padding);
  border-radius: 2rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  background: rgba(255, 255, 255, 0.08) url(../img/how-use-bg.svg) right bottom / 24.875rem 25.813rem no-repeat;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.how-use-item-number {
  height: 6.25rem;
  flex: none;
  display: flex;
  margin-top: calc(-2.5rem - var(--padding));
  width: fit-content;
}
.how-use-item-img {
  padding-top: 0.5rem;
  margin: auto calc(-1 * var(--padding)) calc(-1 * var(--padding));
  display: flex;
  justify-content: center;
}
.doing .container {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.doing-hero {
  display: flex;
  gap: 4.5rem;
}
@media (width < 1024px) {
  .doing-hero {
    gap: 2.5rem;
    flex-direction: column-reverse;
  }
}
.doing-hero-info {
  flex: none;
  margin: auto 0;
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}
@media (width >= 1024px) {
  .doing-hero-info {
    width: 23.375rem;
  }
}
.doing-list {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .doing-list {
    grid-template-columns: 1fr 1fr;
  }
}
.doing-item {
  border-radius: 2rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  background: #141414 url(../img/doing-bg.svg) right top / 32.125rem 36.063rem no-repeat;
  display: flex;
  flex-direction: column;
  --padding: 2rem;
  gap: 3rem;
  padding: var(--padding);
  min-width: 0;
  position: relative;
  z-index: 1;
}
@media (width < 1024px) {
  .doing-item {
    --padding: 1.5rem;
    gap: 1.5rem;
    border-radius: 1.5rem;
  }
}
.doing-item-img {
  margin: calc(-2.125rem - var(--padding)) calc(-1 * var(--padding)) 0;
  max-height: 31.375rem;
  pointer-events: none;
}
@media (width < 1024px) {
  .doing-item-img {
    margin-top: calc(-1rem - var(--padding));
  }
}
.doing-item-body {
  margin-top: auto;
  display: flex;
  align-items: center;
  gap: 1.5rem;
}
@media (width < 768px) {
  .doing-item-body {
    gap: 0.75rem;
    align-items: flex-start;
    flex-direction: column;
  }
}
.doing-item-icon {
  width: 3.75rem;
}
.doing-item-content {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
@media (width < 1024px) {
  .doing-item-desc br {
    display: none;
  }
}
.doing-item-hero {
  flex: auto;
  background: #141414 url(../img/doing-hero-bg.svg) left top / 47.375rem 36.813rem no-repeat;
}
@media (width >= 1024px) {
  .doing-item-hero {
    max-width: 59.75rem;
  }
}
@media (width >= 1024px) {
  .doing-item-hero .doing-item-content {
    max-width: 45.75rem;
  }
}
@media (width >= 1024px) {
  .doing-item-hero .doing-item-img {
    margin-top: calc(-5.75rem - var(--padding));
    max-height: 35.625rem;
  }
}
.doing-additional-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
@media (width < 1024px) {
  .doing-additional-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width < 768px) {
  .doing-additional-list {
    grid-template-columns: 1fr;
  }
}
.doing-additional-item {
  display: flex;
  padding: 2rem;
  gap: 2rem;
  background-color: #141414;
  border: solid 1px rgba(255, 255, 255, 0.05);
  border-radius: 2rem;
  position: relative;
  z-index: 1;
}
@media (width < 1024px) {
  .doing-additional-item {
    padding: 1.5rem;
    gap: 1.5rem;
    border-radius: 1.5rem;
  }
}
@media (width < 768px) {
  .doing-additional-item {
    flex-direction: column;
  }
}
@media (width >= 768px) {
  .doing-additional-item:has(.doing-additional-item-img) {
    grid-column: span 2;
  }
}
.doing-additional-item-body {
  flex: auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: flex-start;
}
.doing-additional-item-icon {
  width: 1.5rem;
  height: 1.5rem;
}
.doing-additional-item-desc {
  margin-top: -0.375rem;
}
.doing-additional-item-img {
  display: flex;
  flex: none;
  max-width: 18rem;
  margin: auto 0;
}
@media (width < 768px) {
  .doing-additional-item-img {
    margin: 0 auto;
  }
}
.flexibility .container {
  display: flex;
  flex-direction: column;
  gap: 2.5rem;
}
.flexibility-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .flexibility-head {
    position: relative;
  }
}
.flexibility-hero {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  position: relative;
  z-index: 1;
}
@media (width >= 1024px) {
  .flexibility-hero {
    max-width: 33.25rem;
  }
}
.flexibility-video {
  --size: 16rem;
}
@media (width < 1024px) {
  .flexibility-video {
    --size: 15rem;
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
    opacity: 0.3;
  }
}
.flexibility-video video {
  width: 53.75rem;
}
@media (width >= 1024px) {
  .flexibility-video video {
    width: 73.875rem;
    transform: translate(-10%, -10%);
  }
}
.flexibility-body {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .flexibility-body {
    grid-template-columns: 1fr 1fr;
  }
}
.flexibility-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.flexibility-list .doing-additional-item {
  flex: auto;
}
@media (width < 1024px) {
  .flexibility-card {
    order: -1;
  }
}
@media (width >= 1024px) {
  .flexibility-card .doing-item-img {
    max-height: 41.938rem;
    margin-top: calc(-14.5rem - var(--padding));
  }
}
.control .container {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media (width < 1024px) {
  .control .container {
    gap: 2.5rem;
  }
}
.control-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .control-head {
    position: relative;
  }
}
.control-hero {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  position: relative;
  z-index: 1;
}
@media (width >= 1024px) {
  .control-hero {
    align-items: flex-end;
    text-align: right;
    max-width: 42.625rem;
  }
}
.control-video {
  --size: 17.5rem;
}
@media (width < 1024px) {
  .control-video {
    --size: 15rem;
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
    opacity: 0.3;
  }
}
.control-video video {
  width: 50rem;
}
@media (width >= 1024px) {
  .control-video video {
    transform: translate(10%, 10%);
    width: 68.75rem;
  }
}
.control-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media (width < 1024px) {
  .control-list {
    flex-direction: column;
  }
}
@media (width >= 1024px) {
  .control-item {
    gap: 2rem;
    width: 36.875rem;
  }
  .control-item:nth-child(4n),
  .control-item:nth-child(4n + 1) {
    width: calc(100% - 37.875rem);
  }
  .control-item .doing-item-img {
    max-height: 35.75rem;
    margin-top: calc(-4.5rem - var(--padding));
  }
}
.readiness .container {
  display: flex;
  flex-direction: column;
  gap: 5rem;
}
@media (width < 1024px) {
  .readiness .container {
    gap: 2.5rem;
  }
}
.readiness-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .readiness-head {
    position: relative;
  }
}
.readiness-hero {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  position: relative;
  z-index: 1;
}
@media (width >= 1024px) {
  .readiness-hero {
    max-width: 41.625rem;
  }
}
.readiness-video {
  --size: 16.25rem;
}
@media (width < 1024px) {
  .readiness-video {
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
    opacity: 0.3;
  }
}
.readiness-video video {
  width: 60rem;
}
@media (width >= 1024px) {
  .readiness-video video {
    transform: translate(-6%, 6%);
    width: 81.25rem;
  }
}
.readiness-list {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 1rem;
}
@media (width < 1024px) {
  .readiness-list {
    grid-template-columns: 1fr 1fr;
  }
}
@media (width < 768px) {
  .readiness-list {
    grid-template-columns: 1fr;
  }
}
.readiness-item {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  padding: 1.75rem;
  border-radius: 2rem;
  border: solid 1px rgba(255, 255, 255, 0.05);
  background-color: #141414;
  position: relative;
  z-index: 1;
}
@media (width < 1024px) {
  .readiness-item {
    padding: 1.5rem;
    border-radius: 1.5rem;
  }
}
.readiness-item-img {
  max-height: 13rem;
  margin-bottom: 1rem;
}
.models {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.models-title {
  display: flex;
  align-items: center;
  gap: 1.25rem;
}
.models-title img {
  flex: none;
  max-width: 2.125rem;
}
.models-slider {
  overflow: visible;
  margin: 0;
}
.models-slide {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
  padding: 1.25rem;
  width: 14.25rem;
  border-radius: 1rem;
  transition: background-color 0.4s;
  background-color: #0e0e0e;
  color: inherit;
  position: relative;
}
.models-slide:hover {
  background-color: #141414;
}
.models-slide:hover .models-slide-title {
  opacity: 1;
}
.models-slide-img {
  height: 16rem;
  max-width: 11.75rem;
  margin: 0 auto;
  mix-blend-mode: lighten;
}
.models-slide-title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  transition: opacity 0.4s;
  opacity: 0.3;
  font-size: 0.875rem;
}
.models-slide-title img {
  width: 1.125rem;
  flex: none;
}
.reviews {
  display: flex;
  flex-direction: column;
  gap: 2.875rem;
}
@media (width < 1024px) {
  .reviews {
    gap: 1.5rem;
  }
}
.reviews-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .reviews-head {
    position: relative;
  }
}
.reviews-title {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  position: relative;
  z-index: 1;
}
.reviews-title img {
  max-width: 5.375rem;
}
.reviews-video {
  --size: 16.25rem;
  margin: 0 auto;
  width: var(--size);
  height: 5rem;
}
@media (width < 1024px) {
  .reviews-video {
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
    opacity: 0.3;
    height: var(--size);
  }
}
.reviews-video video {
  width: 45rem;
}
@media (width < 1024px) {
  .reviews-video video {
    width: 25rem;
  }
}
.reviews-sliders {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.reviews-slider {
  padding-top: 0.625rem;
}
.reviews-slide {
  width: 37rem;
  display: flex;
  flex-direction: column;
  gap: 1.625rem;
  min-height: 18.5rem;
  background-color: #141414;
  padding: 4.875rem 2rem 2rem;
  position: relative;
  border-radius: 1.25rem;
  background-color: #0e0e0e;
}
@media (width < 1024px) {
  .reviews-slide {
    padding: 3rem 1.5rem;
    gap: 1.5rem;
    width: 21.375rem;
  }
}
.reviews-slide:before {
  content: '';
  position: absolute;
  width: 4.5rem;
  height: 2.938rem;
  top: -0.625rem;
  right: 1.625rem;
  background-image: -webkit-image-set(url(../img/reviews-quote.webp) 1x, url(../img/reviews-quote@2x.webp) 2x);
  background-image: image-set(url(../img/reviews-quote.webp) 1x, url(../img/reviews-quote@2x.webp) 2x);
  background-size: 100% 100%;
}
.reviews-slide-text {
  min-height: 4lh;
  padding: 0 2rem 1.625rem 0;
  margin-right: -2rem;
  border-bottom: solid 1px rgba(255, 255, 255, 0.05);
}
@media (width < 1024px) {
  .reviews-slide-text {
    padding: 0 1.5rem 1.5rem 0;
    margin-right: -1.5rem;
  }
}
.reviews-slide-foot {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  justify-content: space-between;
}
@media (width < 1024px) {
  .reviews-slide-foot {
    flex-direction: column;
    align-items: unset;
    gap: 1rem;
  }
}
.reviews-slide-user {
  display: flex;
  align-items: center;
  gap: 1rem;
}
.reviews-slide-user-avatar {
  flex: none;
  width: 3.125rem;
  aspect-ratio: 1;
  border-radius: 50%;
}
.reviews-slide-user-body {
  display: flex;
  flex-direction: column;
}
.reviews-slide-user-name {
  font-weight: 700;
}
.reviews-slide-user-position {
  font-size: 0.813rem;
  color: #696969;
}
.reviews-slide-stars {
  flex: none;
  width: 8.438rem;
  display: flex;
}
.login {
  flex: auto;
  display: flex;
  flex-direction: column;
}
.login .container {
  flex: auto;
  display: flex;
  position: relative;
}
.login .logo {
  position: absolute;
  left: var(--container-padding);
  top: calc(0.5 * var(--header-height));
  transform: translateY(-50%);
  z-index: 1;
}
.login-video {
  flex: auto;
  min-width: 0;
  position: relative;
  z-index: -1;
}
@media (width < 1024px) {
  .login-video {
    display: none;
  }
}
.login-video video {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  pointer-events: none;
  width: 68.75rem;
}
.login-body {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 2.5rem;
  width: 100%;
  padding: var(--header-height) 0 2.5rem;
}
@media (width >= 1024px) {
  .login-body {
    width: 43.75rem;
    padding: var(--header-height) 2.5rem 5rem;
    flex: none;
  }
  .login-body > * {
    position: relative;
    z-index: 1;
  }
  .login-body:before {
    content: '';
    position: absolute;
    inset: 0 -1000vw 0 0;
    background-color: #141414;
  }
}
.login-close {
  margin-left: auto;
  display: flex;
  transition: color 0.4s;
  position: absolute;
  right: 0;
  top: calc(0.5 * var(--header-height) - 0.625rem);
}
.login-close:hover {
  color: #376ff4;
}
.login-close svg {
  --size: 1.25rem;
}
.login-form {
  width: min(26.25rem, 100%);
  margin: auto;
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.login-form-inputs {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}
.login-form-btns {
  display: flex;
  align-items: center;
  gap: 1.5rem;
  justify-content: space-between;
}
@media (width < 480px) {
  .login-form-btns {
    flex-direction: column;
  }
}
.login-form-submit {
  min-width: 12.5rem;
}
@media (width < 480px) {
  .login-form-submit {
    width: 100%;
  }
}
.login-form-forgot {
  height: 2.25rem;
  padding: 0 1rem;
  border-radius: 0.5rem;
  font-size: 0.813rem;
}
.login-foot {
  width: min(26.25rem, 100%);
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.25rem;
}
@media (width < 480px) {
  .login-foot {
    align-items: center;
  }
}
.login-foot-title {
  font-weight: 600;
  font-stretch: expanded;
}
.login-foot-link {
  display: flex;
  align-items: center;
  gap: 0.375rem;
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  transition: opacity 0.4s;
  font-stretch: expanded;
}
.login-foot-link:hover {
  opacity: 0.8;
}
.login-foot-link use {
  fill: url(#icon-gradient);
}
.login-form-agreement {
  --icon: 2.375rem;
}
.login-form-agreement > i svg {
  --size: 1.5rem;
}
.hero {
  display: flex;
  flex-direction: column;
}
@media (width >= 1024px) {
  .hero {
    min-height: 42rem;
  }
}
.hero .container {
  flex: auto;
  display: flex;
  gap: 2.5rem;
  justify-content: space-between;
  align-items: center;
}
@media (width < 1024px) {
  .hero .container {
    flex-direction: column;
  }
}
.hero + .partners-ribbon {
  padding-top: 0;
  margin-top: calc(-0.5 * var(--padding));
}
.hero-body {
  flex: none;
  display: flex;
  flex-direction: column;
  gap: 1rem;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}
@media (width >= 1024px) {
  .hero-body {
    width: 35.875rem;
  }
}
.hero-label {
  display: flex;
  align-items: center;
  gap: 0.625rem;
  font-weight: 600;
  font-stretch: expanded;
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
}
.hero-label img {
  flex: none;
  width: 1.5rem;
}
@media (width < 1024px) {
  .hero-title br {
    display: none;
  }
}
.hero-desc {
  font-size: 1.25rem;
}
.hero-btn {
  margin-top: 1rem;
}
.hero-media {
  flex: auto;
  min-width: 0;
  max-width: 37.5rem;
  position: relative;
  margin: 0 auto;
}
.hero-video {
  aspect-ratio: 1;
  display: flex;
  margin: 0 auto;
  pointer-events: none;
  flex: none;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: -1;
}
.hero-video video {
  flex: none;
  width: 100rem;
}
@media (width < 1024px) {
  .hero-video video {
    width: 75rem;
  }
}
@media (width < 480px) {
  .hero-video video {
    width: 62.5rem;
  }
}
.hero-img {
  display: flex;
  justify-content: center;
}
.image-to-3d-media .container {
  display: flex;
  justify-content: space-between;
  gap: 2.5rem;
  flex-wrap: wrap;
  align-items: center;
}
@media (width < 1024px) {
  .image-to-3d-media .container {
    flex-direction: column;
  }
}
.image-to-3d-media-img {
  display: flex;
}
.image-to-3d-media-img:nth-child(4n),
.image-to-3d-media-img:nth-child(4n + 1) {
  max-width: 52.5rem;
}
.image-to-3d-media-img:nth-child(4n + 2),
.image-to-3d-media-img:nth-child(4n + 3) {
  max-width: 28.125rem;
}
.image-to-3d-gallery {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  overflow: hidden;
}
.image-to-3d-gallery-slider {
  overflow: visible;
}
.image-to-3d-gallery-slide {
  width: 21.875rem;
  height: 18.75rem;
  border-radius: 1.25rem;
}
@media (width < 1024px) {
  .image-to-3d-gallery-slide {
    width: 17.5rem;
    height: 15rem;
  }
}
.image-to-3d-gallery-slide-full {
  overflow: visible;
  width: 51rem;
  --padding: 1.875rem;
  padding: var(--padding);
  background-image: linear-gradient(to right, #376ff4, #7731e6);
  gap: 1.5rem;
  color: #fff;
}
@media (width < 1024px) {
  .image-to-3d-gallery-slide-full {
    --padding: 1.5rem;
    width: 40.75rem;
  }
}
.image-to-3d-gallery-slide-body {
  max-height: 100%;
  overflow-y: auto;
  margin: auto 0;
  flex: auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}
@media (width < 1024px) {
  .image-to-3d-gallery-slide-body {
    gap: 0.5rem;
  }
}
.image-to-3d-gallery-slide-title {
  font-size: 1.875rem;
  line-height: 1.2;
  font-stretch: expanded;
  font-weight: 600;
}
@media (width < 1024px) {
  .image-to-3d-gallery-slide-title {
    font-size: 1.5rem;
  }
}
@media (width >= 1024px) {
  .image-to-3d-gallery-slide-desc {
    font-size: 1.125rem;
  }
}
.image-to-3d-gallery-slide-img {
  margin: calc(-2.5rem - var(--padding)) 0 calc(-1 * var(--padding));
  flex: none;
  width: 23.875rem;
  align-self: flex-end;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
@media (width < 1024px) {
  .image-to-3d-gallery-slide-img {
    width: 19.125rem;
  }
}
.image-to-3d-edges-list {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 1rem;
  grid-auto-rows: 15rem;
}
@media (width < 1024px) {
  .image-to-3d-edges-list {
    grid-auto-rows: 7.5rem;
  }
}
@media (width < 768px) {
  .image-to-3d-edges-list {
    grid-template-columns: 1fr 1fr;
  }
}
.image-to-3d-edges-item {
  background: linear-gradient(180deg, #272727, #121212);
  border-radius: 2rem;
  position: relative;
}
@media (width < 1024px) {
  .image-to-3d-edges-item {
    border-radius: 1.5rem;
  }
}
.image-to-3d-edges-item img {
  object-position: center bottom;
}
.image-to-3d-edges-item:nth-child(6n + 1),
.image-to-3d-edges-item:nth-child(6n + 5) {
  grid-column: span 2;
  grid-row: span 2;
}
.image-to-3d-edges-item:nth-child(6n + 1) img,
.image-to-3d-edges-item:nth-child(6n + 5) img {
  object-position: center center;
}
@media (width < 768px) {
  .image-to-3d-edges-item:nth-child(6n + 1),
  .image-to-3d-edges-item:nth-child(6n + 5) {
    order: -1;
  }
}
.image-to-3d-geometry .container {
  display: flex;
  flex-direction: column;
  gap: 2rem;
}
.image-to-3d-geometry .slider-arrows {
  margin-left: auto;
}
.image-to-3d-geometry-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .image-to-3d-geometry-head {
    position: relative;
  }
}
.image-to-3d-geometry-video {
  --size: 17.5rem;
  height: 10rem;
}
@media (width < 1024px) {
  .image-to-3d-geometry-video {
    height: var(--size);
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
    opacity: 0.3;
  }
}
.image-to-3d-geometry-video video {
  width: 50rem;
}
@media (width >= 1024px) {
  .image-to-3d-geometry-video video {
    transform: translate(-10%, 10%);
    width: 68.75rem;
  }
}
.image-to-3d-geometry-hero {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  max-width: 37rem;
}
.image-to-3d-geometry-slider {
  width: 100%;
  overflow: visible;
}
.image-to-3d-geometry-slide {
  width: 28.75rem;
  aspect-ratio: 1;
  border-radius: 1.25rem;
}
@media (width < 1024px) {
  .image-to-3d-geometry-slide {
    width: 17.5rem;
  }
}
.image-to-3d-how-body {
  padding: var(--padding) var(--container-padding) 0;
  margin: 0 calc(-1 * var(--container-padding));
  border-radius: 3.125rem 3.125rem 0 0;
  background: linear-gradient(to bottom, rgba(91, 91, 91, 0.2), rgba(91, 91, 91, 0) 30.313rem);
}
.image-to-3d-how-list {
  gap: 1rem;
  display: flex;
}
@media (width < 1024px) {
  .image-to-3d-how-list {
    flex-direction: column;
  }
}
.image-to-3d-how-item {
  min-height: 31rem;
  flex: 1;
  overflow: hidden;
  --padding: 2rem;
  padding: var(--padding);
  display: flex;
  justify-content: space-between;
  gap: var(--padding);
  border-radius: var(--padding);
  will-change: transform;
  border: solid 1px #2d2d2d;
  background: #141414;
  position: relative;
  transition: flex 0.4s;
  gap: 1.5rem;
}
@media (width < 1024px) {
  .image-to-3d-how-item {
    --padding: 1.5rem;
    min-height: 0;
  }
}
@media (width < 768px) {
  .image-to-3d-how-item {
    flex-direction: column;
  }
}
.image-to-3d-how-item:before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(270deg, #272727 0%, #141414 100%);
  transition: opacity 0.4s;
}
@media (width >= 1024px) {
  .image-to-3d-how-item:before {
    opacity: 0;
  }
}
@media (width >= 1024px) {
  .image-to-3d-how-item.active {
    flex: 2;
  }
  .image-to-3d-how-item.active:before {
    opacity: 1;
  }
  .image-to-3d-how-item.active .image-to-3d-how-item-number {
    height: 5rem;
  }
  .image-to-3d-how-item.active .image-to-3d-how-item-title {
    font-size: 1.875rem;
  }
}
.image-to-3d-how-item-body {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  align-items: flex-start;
  position: relative;
  z-index: 1;
}
@media (width >= 1024px) {
  .image-to-3d-how-item-body {
    width: 17.625rem;
    flex: none;
  }
}
.image-to-3d-how-item-number {
  height: 3.5rem;
  transition: height 0.4s;
}
@media (width < 1024px) {
  .image-to-3d-how-item-number {
    height: 5rem;
  }
}
.image-to-3d-how-item-title {
  font-size: 1.625rem;
  transition: font-size 0.4s;
  font-weight: 600;
  font-stretch: expanded;
}
.image-to-3d-how-item-list {
  display: flex;
  flex-direction: column;
  gap: 0.625rem;
  margin-top: auto;
  color: #696969;
  font-size: 0.875rem;
}
.image-to-3d-how-item-list li {
  display: flex;
  gap: 0.625rem;
  align-items: flex-start;
}
.image-to-3d-how-item-list li > i {
  flex: none;
  width: 1.5rem;
  aspect-ratio: 1;
  border-radius: 0.5rem;
  display: grid;
  place-items: center;
  background-color: rgba(255, 255, 255, 0.1);
  color: #000;
}
.image-to-3d-how-item-list li > i svg {
  --size: 1.25rem;
}
.image-to-3d-how-item-list li > span {
  place-self: center;
}
.image-to-3d-how-item-img {
  display: flex;
  margin-right: calc(-1 * var(--padding));
  flex: none;
  max-width: 21.125rem;
  position: relative;
  z-index: 1;
}
@media (width < 768px) {
  .image-to-3d-how-item-img {
    margin-left: auto;
  }
}
.cta-body {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: var(--padding) var(--container-padding);
  margin: 0 calc(-1 * var(--container-padding));
  border-radius: 3.125rem 3.125rem 0 0;
  text-align: center;
  gap: 1.5rem;
  background: linear-gradient(to bottom, rgba(91, 91, 91, 0.2), rgba(91, 91, 91, 0) 30.313rem), url(../img/cta-bg.svg) center bottom / 105rem 20.625rem no-repeat;
}
@media (width >= 1024px) {
  .cta-body {
    gap: 2.5rem;
    min-height: 34.375rem;
  }
}
@media (width < 1024px) {
  .cta-title br {
    display: none;
  }
}
.cta-desc {
  max-width: 46.875rem;
}
.cta-btns {
  margin-top: 1.5rem;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
  gap: 1.5rem;
}
@media (width < 1024px) {
  .cta-btns {
    margin-top: 1rem;
  }
}
.cta-link {
  padding: 0.75rem;
  color: inherit;
  transition: color 0.4s;
  font-weight: 600;
  font-stretch: expanded;
}
.cta-link:hover {
  color: #376ff4;
}
.hero-text-to-3d .hero-media,
.hero-ai-texturing .hero-media {
  max-width: 52.5rem;
}
@media (width >= 1024px) {
  .hero-text-to-3d .hero-media,
  .hero-ai-texturing .hero-media {
    margin: 0 calc(-1 * var(--container-padding)) 0 auto;
  }
}
@media (width >= 1024px) {
  .hero-text-to-3d .hero-video video,
  .hero-ai-texturing .hero-video video {
    width: 106.25rem;
    transform: translateX(-7%);
  }
}
.text-to-3d-quality-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding: 2.25rem 1.5rem 1.25rem;
  border-radius: 2rem;
  background: linear-gradient(180deg, #272727, #141414);
  color: inherit;
  text-align: center;
}
@media (width < 1024px) {
  .text-to-3d-quality-item {
    border-radius: 1.5rem;
    padding: 1.5rem;
  }
}
.text-to-3d-quality-item-img img {
  width: 14.375rem;
  aspect-ratio: 1;
}
.text-to-3d-quality-item-title {
  max-width: 14.125rem;
}
.text-to-3d-diverse-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.5rem;
  padding: 2.125rem;
  border-radius: 2rem;
  background: linear-gradient(180deg, var(--bg-start, #272727), var(--bg-end, #141414));
  color: inherit;
  text-align: center;
}
@media (width < 1024px) {
  .text-to-3d-diverse-item {
    border-radius: 1.5rem;
    padding: 1.5rem;
  }
}
.text-to-3d-diverse-item-img img {
  width: 16.25rem;
  aspect-ratio: 1;
}
.text-to-3d-controlable-img {
  display: flex;
  justify-content: center;
  margin: 0 auto;
  max-width: 80rem;
}
@media (width < 1024px) {
  .text-to-3d-controlable-img {
    max-width: unset;
    margin: 0 calc(-1 * var(--container-padding));
  }
}
.text-to-3d-level-list {
  row-gap: 2rem;
}
@media (width < 1024px) {
  .text-to-3d-level-list {
    row-gap: 1.5rem;
  }
}
.text-to-3d-level-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 2rem;
  color: inherit;
  text-align: center;
}
@media (width < 1024px) {
  .text-to-3d-level-item {
    gap: 1.5rem;
  }
}
.text-to-3d-diverse-level-img img {
  width: 21.563rem;
  aspect-ratio: 1;
}
.ai-texturing-how-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.ai-texturing-how-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 1rem 1rem 1rem 3rem;
  border-radius: 2rem;
  border: #2d2d2d;
  background-color: #141414;
  gap: 1.5rem;
}
@media (width < 1024px) {
  .ai-texturing-how-item {
    padding: 1rem;
    flex-direction: column;
    border-radius: 1rem;
  }
}
.ai-texturing-how-item-title {
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
}
@media (width < 1024px) {
  .ai-texturing-how-item-title {
    text-align: center;
  }
}
.ai-texturing-how-item-img {
  display: flex;
  flex: none;
  max-width: 69.063rem;
}
@media (width < 1024px) {
  .ai-texturing-how-item-img {
    max-width: 31.875rem;
  }
}
.ai-texturing-style-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 1.25rem;
  padding: 1.25rem;
  border-radius: 2rem;
  background: linear-gradient(180deg, #272727, #141414);
  color: inherit;
  text-align: center;
}
@media (width < 1024px) {
  .ai-texturing-style-item {
    border-radius: 1.5rem;
  }
}
.ai-texturing-style-item-img img {
  width: 14.375rem;
  aspect-ratio: 1;
}
.ai-texturing-style-item-body {
  margin: auto 0;
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
  max-width: 15.875rem;
}
.ai-texturing-style-item-desc {
  color: #696969;
}
.before-after-slider {
  position: relative;
}
@media (width >= 1024px) {
  .before-after-slider {
    display: flex;
    justify-content: space-between;
    gap: 2rem;
    padding: 2.5rem 2rem;
    border-radius: 2rem;
    background-color: #141414;
    border: solid 1px #2d2d2d;
  }
}
.before-after-slider-title {
  flex: none;
  width: 6.75rem;
  font-size: 2.5rem;
  font-weight: 600;
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-stretch: expanded;
}
@media (width < 1024px) {
  .before-after-slider-title {
    position: absolute;
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    font-size: 1.25rem;
    z-index: 1;
    width: auto;
    pointer-events: none;
  }
}
@media (width < 1024px) {
  .before-after-slider-title:first-child {
    left: 0;
  }
}
.before-after-slider-title:last-child {
  text-align: right;
}
@media (width < 1024px) {
  .before-after-slider-title:last-child {
    right: 0;
  }
}
.ai-texturing-gallery .container {
  display: flex;
  flex-direction: column;
}
.ai-texturing-gallery-main {
  margin: 0 auto 2rem;
  max-width: 82.813rem;
}
.ai-texturing-gallery-main:last-child {
  margin-bottom: 0;
}
.ai-texturing-gallery-list {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .ai-texturing-gallery-list {
    grid-template-columns: 1fr 36.938rem;
  }
}
.ai-texturing-gallery-item {
  border-radius: 2rem;
  height: 25.625rem;
  display: flex;
}
@media (width < 1024px) {
  .ai-texturing-gallery-item {
    border-radius: 1.5rem;
  }
}
@media (width < 768px) {
  .ai-texturing-gallery-item {
    height: auto;
  }
}
.ai-texturing-gallery-desc {
  margin-top: 1.25rem;
  text-align: center;
  color: #696969;
}
.ai-texturing-native-list {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .ai-texturing-native-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.ai-texturing-native-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.75rem;
  padding: 4.375rem 2.5rem 2.75rem;
  border-radius: 2rem;
  background: linear-gradient(180deg, #272727, #141414);
  color: inherit;
  text-align: center;
}
@media (width < 1024px) {
  .ai-texturing-native-item {
    border-radius: 1.5rem;
    padding: 1.5rem;
    gap: 1.5rem;
  }
}
.ai-texturing-native-item-img {
  height: 10rem;
}
.animation-hero {
  padding-top: 2.5rem;
}
@media (width < 1024px) {
  .animation-hero {
    padding-top: 1.25rem;
  }
}
.animation-hero-main {
  position: relative;
  margin: 0 calc(-1 * var(--container-padding));
  padding: 4.375rem var(--container-padding);
  border-radius: 2rem;
  overflow: hidden;
  will-change: transform;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  min-height: 40rem;
}
@media (width < 1024px) {
  .animation-hero-main {
    min-height: 30rem;
    border-radius: 1.5rem;
    padding-top: 2.5rem;
    padding-bottom: 2.5rem;
  }
}
.animation-hero-video {
  position: absolute;
  inset: 0;
}
.animation-hero-video:after {
  content: '';
  position: absolute;
  inset: 0;
  background-color: rgba(0, 0, 0, 0.4);
}
.animation-hero-body {
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  max-width: 74.75rem;
  margin: 0 auto;
}
.animation-hero-body .hero-label {
  color: #fff;
}
.animation-hero-body .hero-desc {
  margin-top: 0.625rem;
}
.animation-flash-slider-wrapp {
  width: auto;
  position: relative;
  margin: 0;
}
@media (width < 1024px) {
  .animation-flash-slider-wrapp {
    margin: 0 calc(-1 * var(--container-padding));
  }
}
.animation-flash-slider-wrapp .slider-arrows {
  display: contents;
}
.animation-flash-slider-wrapp .slider-arrow {
  position: absolute;
  top: calc(50% - 0.5 * var(--size));
  z-index: 1;
}
.animation-flash-slider-wrapp .slider-arrow-prev {
  left: 2rem;
}
@media (width < 1024px) {
  .animation-flash-slider-wrapp .slider-arrow-prev {
    left: 1rem;
  }
}
.animation-flash-slider-wrapp .slider-arrow-next {
  right: 2rem;
}
@media (width < 1024px) {
  .animation-flash-slider-wrapp .slider-arrow-next {
    right: 1rem;
  }
}
.animation-flash-slider {
  border-radius: 2rem;
  will-change: transform;
  position: relative;
}
@media (width < 1024px) {
  .animation-flash-slider {
    border-radius: 1.5rem;
  }
}
.animation-flash-slide {
  height: 40rem;
}
@media (width < 1024px) {
  .animation-flash-slide {
    height: 30rem;
  }
}
@media (width < 480px) {
  .animation-flash-slide {
    height: 25rem;
  }
}
.animation-flash-slider-nav {
  display: flex;
  justify-content: center;
}
@media (width >= 1024px) {
  .animation-flash-slider-nav {
    position: absolute;
    inset: 4.375rem 6.75rem;
    align-items: flex-end;
    pointer-events: none;
    z-index: 1;
  }
}
@media (width < 1024px) {
  .animation-flash-slider-nav {
    margin-top: 1.5rem;
  }
}
.animation-flash-slider-nav-btns {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  justify-content: center;
  padding: 0.375rem;
  background-color: rgba(255, 255, 255, 0.1);
  backdrop-filter: blur(3.313rem);
  border-radius: 1.75rem;
  gap: 0.125rem;
}
.animation-flash-slider-nav-btn {
  padding: 0.5rem 1.5rem;
  min-height: 2.75rem;
  align-items: center;
  display: flex;
  border-radius: 1.75rem;
  transition: background-color 0.4s;
  pointer-events: auto;
}
.animation-flash-slider-nav-btn.active,
.animation-flash-slider-nav-btn:hover {
  background-color: rgba(255, 255, 255, 0.1);
}
.animation-automatic-list {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .animation-automatic-list {
    grid-template-columns: 1fr 1fr;
  }
}
.animation-automatic-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 3.75rem;
  padding: 5rem 2.5rem 2.75rem;
  border-radius: 2rem;
  background: linear-gradient(180deg, #272727, #141414);
  color: inherit;
  text-align: center;
}
@media (width < 1024px) {
  .animation-automatic-item {
    border-radius: 1.5rem;
    padding: 1.5rem;
    gap: 1.5rem;
  }
}
.animation-automatic-item-img img {
  width: 31.25rem;
  aspect-ratio: 1;
}
.animation-run .container {
  display: flex;
  gap: 1rem;
}
@media (width < 1024px) {
  .animation-run .container {
    flex-direction: column;
    gap: 1.5rem;
  }
}
.animation-run-main {
  flex: auto;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 3.375rem;
}
@media (width < 1024px) {
  .animation-run-main {
    gap: 1.5rem;
  }
}
.animation-run-head {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.animation-run-desc {
  max-width: 39.375rem;
}
.animation-run-img {
  flex: auto;
  border-radius: 2rem;
}
@media (width < 1024px) {
  .animation-run-img {
    border-radius: 1.5rem;
  }
}
.animation-run-list {
  flex: none;
  display: grid;
  gap: 1rem;
  grid-template-columns: 1fr 1fr 1fr;
}
@media (width >= 1024px) {
  .animation-run-list {
    width: 37rem;
  }
}
@media (width < 768px) {
  .animation-run-list {
    grid-template-columns: 1fr 1fr;
  }
}
.animation-run-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  overflow: hidden;
  will-change: transform;
  --padding: 1rem;
  padding: var(--padding);
  gap: var(--padding);
  border-radius: 2rem;
  background: linear-gradient(180deg, #272727, #141414);
  color: inherit;
  text-align: center;
  min-width: 0;
}
@media (width < 1024px) {
  .animation-run-item {
    border-radius: 1.5rem;
  }
}
@media (width < 768px) {
  .animation-run-item:nth-child(odd):last-child {
    grid-column: span 2;
  }
}
.animation-run-item-img {
  margin: calc(-1.5 * var(--padding)) calc(-1 * var(--padding)) calc(-1 * var(--padding));
}
.animation-run-item-img img {
  width: 11.688rem;
  aspect-ratio: 1;
  max-width: none;
}
.animation-run-item-title {
  font-size: 0.875rem;
}
.page-advantages-list {
  flex: none;
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .page-advantages-list {
    grid-template-columns: 1fr 1fr 1fr;
  }
}
.page-advantages-item {
  display: flex;
  flex-direction: column;
  padding: 2.5rem 2rem;
  border-radius: 2rem;
  background: #141414;
  border: solid 1px rgba(255, 255, 255, 0.05);
  min-width: 0;
  gap: 0.5rem;
}
@media (width < 1024px) {
  .page-advantages-item {
    border-radius: 1.5rem;
    padding: 1.5rem;
  }
}
.features-list {
  display: flex;
  flex-direction: column;
  gap: 1rem;
  margin: 0 calc(-1 * var(--container-padding)) 1rem;
}
.features-list:last-child {
  margin-bottom: 0;
}
.features-item {
  display: flex;
  align-items: center;
  gap: 1rem;
  padding: 1rem 1rem 1rem var(--container-padding);
  border-radius: 2rem;
  background: linear-gradient(to bottom, var(--bg-start, #272727), var(--bg-end, #141414));
}
@media (width < 1024px) {
  .features-item {
    flex-direction: column;
    padding: 1.5rem var(--container-padding);
    gap: 1.5rem;
    border-radius: 1.5rem;
  }
}
@media (width >= 1024px) {
  .features-item-reverse {
    flex-direction: row-reverse;
    padding: 1rem var(--container-padding) 1rem 1rem;
  }
  .features-item-reverse .features-item-body {
    text-align: right;
  }
}
.features-item-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media (width < 1024px) {
  .features-item-body {
    text-align: center;
  }
}
@media (width >= 1024px) {
  .features-item-body {
    width: 23.25rem;
    flex: none;
  }
}
@media (width >= 1024px) {
  .features-item-title {
    font-size: 2.5rem;
  }
}
.features-item-img {
  flex: auto;
  min-width: 0;
  border-radius: 1.5rem;
  min-height: 15rem;
}
@media (width >= 1024px) {
  .features-item-img {
    border-radius: 2rem;
    min-height: 25.938rem;
    max-width: 68.125rem;
  }
}
.features-item-cards {
  flex: auto;
  min-width: 0;
  display: grid;
  gap: 1rem;
}
@media (width >= 768px) {
  .features-item-cards {
    grid-template-columns: 1fr 1fr;
  }
}
.features-item-cards .features-item-card {
  background: #141414;
  gap: 0.5rem;
}
.features-item-cards .features-item-card-img {
  max-height: 17.125rem;
  max-width: 29.5rem;
  margin: 0 auto;
}
.features-item-card {
  --padding: 2rem;
  flex-direction: column;
  padding: var(--padding);
  border-radius: 2rem;
  background: linear-gradient(to bottom, var(--bg-start, #141414), var(--bg-end, #141414)) padding-box;
  border: solid 1px rgba(255, 255, 255, 0.05);
  min-width: 0;
  gap: 1rem;
  align-items: unset;
}
@media (width < 1024px) {
  .features-item-card {
    border-radius: 1.5rem;
    --padding: 1.5rem;
  }
}
@media (width >= 1024px) {
  .features-item-card-large {
    grid-column: span 2;
    flex-direction: row-reverse;
    align-items: center;
    justify-content: space-between;
    --padding: 3.75rem;
  }
  .features-item-card-large .features-item-card-img {
    margin-bottom: calc(-1 * var(--padding));
    margin-left: auto;
    flex: none;
    max-width: 56.75rem;
    max-height: 38.75rem;
  }
  .features-item-card-large .features-item-card-body {
    gap: 1rem;
    flex: auto;
    max-width: 27.75rem;
    min-width: 0;
    margin: auto 0;
  }
  .features-item-card-large .features-item-card-title {
    font-size: 2.5rem;
  }
  .features-item-card-large .features-item-card-desc {
    max-width: 19.875rem;
  }
}
.features-item-card-img {
  display: flex;
  margin: calc(-1 * var(--padding)) calc(-1 * var(--padding)) 0;
  max-height: 29.75rem;
}
.features-item-card-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
  margin-top: auto;
}
.faq-body {
  display: flex;
  justify-content: space-between;
  gap: 2.5rem;
}
@media (width < 1024px) {
  .faq-body {
    flex-direction: column;
    gap: 2rem;
  }
}
.faq-head {
  display: flex;
  flex-direction: column;
  gap: 1.375rem;
}
@media (width < 1024px) {
  .faq-head {
    position: relative;
  }
}
.faq-video {
  --size: 22.5rem;
  margin: 0 auto;
}
@media (width < 1024px) {
  .faq-video {
    --size: 15rem;
    height: var(--size);
    position: absolute;
    left: calc(50% - 0.5 * var(--size));
    top: calc(50% - 0.5 * var(--size));
  }
}
.faq-video video {
  width: 50rem;
}
@media (width < 1024px) {
  .faq-video video {
    width: 25rem;
  }
}
@media (width >= 1024px) {
  .faq-list {
    flex: auto;
    max-width: 52.125rem;
    min-width: 0;
  }
}
.features-cards {
  display: grid;
  gap: 1rem;
  margin-bottom: 1rem;
}
.features-cards:last-child {
  margin-bottom: 0;
}
@media (width >= 1024px) {
  .features-cards {
    grid-template-columns: 1fr 1fr;
  }
}
.page-main .container {
  display: flex;
  flex-direction: column;
}
@media (width >= 1024px) {
  .page-main {
    padding-top: 3.75rem;
  }
}
.page-main + .partners-ribbon {
  padding-top: 0;
}
.pricing {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
.pricing-filter {
  display: flex;
  align-items: center;
  gap: 1rem;
  justify-content: space-between;
  flex-wrap: wrap;
}
.pricing-filter-currency {
  display: flex;
  align-items: center;
  gap: 0.625rem;
}
.pricing-filter-currency-title {
  font-size: 0.875rem;
  font-weight: 600;
  font-stretch: expanded;
}
.pricing-list {
  display: grid;
  gap: 1rem;
}
@media (width >= 1024px) {
  .pricing-list {
    grid-template-columns: repeat(var(--columns), 1fr);
    grid-template-rows: repeat(var(--rows), auto);
  }
}
.pricing-item {
  display: grid;
  padding: 1.5rem 1.5rem 2rem;
  border-radius: 1.25rem;
  border: solid 1px #2d2d2d;
  background: #141414 url(../img/pricing-item-bg.svg) right center / 12.688rem 37.438rem no-repeat;
  position: relative;
  min-width: 0;
  gap: 1rem;
}
@media (width >= 1024px) {
  .pricing-item {
    grid-template-rows: subgrid;
    grid-row: 1 / -1;
    gap: 1.5rem;
  }
}
.pricing-item-best {
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
}
.pricing-item-best .pricing-item-btn {
  position: relative;
  background: #fff;
}
.pricing-item-best .pricing-item-btn > span {
  position: relative;
  z-index: 1;
  --gradient-start: #376ff4;
  --gradient-end: #7731e6;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  -webkit-background-clip: text;
  color: transparent;
  transition: --gradient-start 0.4s, --gradient-end 0.4s;
}
.pricing-item-best .pricing-item-btn:hover > span {
  --gradient-start: #7731e6;
  --gradient-end: #376ff4;
}
.pricing-item-head {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
.pricing-item-label {
  position: absolute;
  bottom: 100%;
  left: 50%;
  padding: 0.375rem 0.75rem;
  border-radius: 0.5rem;
  border: solid 0.125rem #141414;
  background: linear-gradient(to right, var(--gradient-start), var(--gradient-end));
  font-size: 0.813rem;
  font-weight: 600;
  font-stretch: expanded;
  max-width: calc(100% - 1.5rem);
  transform: translate(-50%, 50%);
  text-align: center;
}
.pricing-item-desc {
  font-size: 0.875rem;
}
.pricing-item-body {
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}
@media (width >= 1024px) {
  .pricing-item-credits-title {
    font-size: 1.625rem;
  }
}
.pricing-item-cost {
  color: #d9d9d9;
  font-weight: 600;
  font-stretch: expanded;
}
.pricing-item-input {
  margin-top: 0.625rem;
  display: flex;
  flex-direction: column;
}
.pricing-item-includes {
  margin-top: 0.5rem;
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
}
.pricing-item-includes-title {
  font-size: 0.875rem;
  font-weight: 600;
  font-stretch: expanded;
}
.pricing-item-includes-list {
  display: flex;
  flex-direction: column;
  gap: 0.375rem;
  font-size: 0.875rem;
}
.pricing-item-includes-list > li {
  display: flex;
  gap: 0.5rem;
  align-items: flex-start;
}
.pricing-item-includes-list > li > svg {
  --size: 1rem;
  margin-top: 0px;
}
.pricing-item-foot {
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
  margin-top: 3rem;
}
@media (width < 1024px) {
  .pricing-item-foot {
    margin-top: 1rem;
  }
}
@media (width < 1024px) {
  .account-levels-table-wrapp {
    overflow-x: auto;
    margin: 0 calc(-1 * var(--container-padding));
    padding: 0 var(--container-padding);
    -webkit-mask-image: linear-gradient(to right, transparent 0, black var(--container-padding), black calc(100% - var(--container-padding)), transparent 100%);
            mask-image: linear-gradient(to right, transparent 0, black var(--container-padding), black calc(100% - var(--container-padding)), transparent 100%);
  }
}
.account-levels-table {
  table-layout: fixed;
  width: 100%;
  color: #696969;
}
.account-levels-table td,
.account-levels-table th {
  padding: 1.25rem;
}
@media (width < 1024px) {
  .account-levels-table td,
  .account-levels-table th {
    width: 13.5rem;
    padding: 1rem;
  }
}
.account-levels-table th {
  text-align: left;
  border-bottom: solid 1px #2d2d2d;
  color: #fff;
  font-weight: 600;
  font-stretch: expanded;
  padding-top: 3.75rem;
}
.account-levels-table thead td {
  vertical-align: top;
}
.account-levels-table tbody:first-of-type th {
  padding-top: 1.25rem;
}
.account-levels-table tbody tr:nth-child(odd) td {
  background: #141414;
}
.account-levels-table tbody tr:nth-child(odd) td:first-child {
  border-radius: 1.25rem 0 0 1.25rem;
}
.account-levels-table tbody tr:nth-child(odd) td:last-child {
  border-radius: 0 1.25rem 1.25rem 0;
}
.account-levels-table b {
  color: #fff;
  font-weight: 500;
}
.account-levels-table span {
  color: #376ff4;
}
.account-levels-table svg {
  color: #1f70c1;
  --size: 1rem;
}
.account-levels-table-head-title {
  margin-bottom: 1.5rem;
  color: #fff;
}
.account-levels-table-head-title:last-child {
  margin-bottom: 0;
}
.account-levels-table-head-desc {
  font-size: 0.875rem;
}
.page-404-btn {
  min-width: 14.5rem;
  margin: 1rem auto 0;
}
@media (width < 1024px) {
  .page-404-btn {
    margin-top: 0.5rem;
  }
}
@media (width < 480px) {
  .page-404-btn {
    width: 100%;
  }
}
.enter-screen {
  position: fixed;
  inset: 0;
  z-index: 999;
  background: #000;
  transition: opacity 0.4s, visibility 0.4s;
}
.enter-screen.hide {
  opacity: 0;
  pointer-events: none;
  visibility: hidden;
}
.enter-screen.active .enter-screen-tunnel {
  opacity: 1;
}
.enter-screen.active .enter-screen-btn {
  pointer-events: none;
}
.enter-screen-main {
  position: absolute;
  inset: 0;
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #000;
  transition: opacity 0.4s;
  padding: 1.5rem var(--container-padding);
}
.enter-screen-main video {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
.enter-screen-btn {
  position: relative;
  z-index: 1;
  min-width: 8.75rem;
  text-shadow: 0px -1px 0px #00000040;
}
@media (width >= 480px) {
  .enter-screen-btn {
    height: 4.5rem;
    font-size: 1.375rem;
    min-width: 10.75rem;
  }
}
.enter-screen-btn:before {
  content: '';
  background: linear-gradient(180deg, #8eecf2 0%, rgba(153, 153, 153, 0) 100%);
  position: absolute;
  inset: 0 0 50%;
}
.enter-screen-tunnel {
  position: absolute;
  inset: 0;
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.4s;
  z-index: 6;
}
html:has(.enter-screen:not(.hide)) {
  overflow: hidden;
}
