@charset "UTF-8";
/*
  1. Prevent padding and border from affecting element width. (https://github.com/mozdevs/cssremedy/issues/4)
  2. Remove default margins and padding
  3. Reset all borders.
*/
*,
::after,
::before,
::backdrop,
::file-selector-button {
  box-sizing: border-box; /* 1 */
  margin: 0; /* 2 */
  padding: 0; /* 2 */
  border: 0 solid; /* 3 */
}

/*
  1. Use a consistent sensible line-height in all browsers.
  2. Prevent adjustments of font size after orientation changes in iOS.
  3. Use a more readable tab size.
  4. Use the user's configured `sans` font-family by default.
  5. Use the user's configured `sans` font-feature-settings by default.
  6. Use the user's configured `sans` font-variation-settings by default.
  7. Disable tap highlights on iOS.
*/
html,
:host {
  line-height: 1.5; /* 1 */
  -webkit-text-size-adjust: 100%; /* 2 */
  tab-size: 4; /* 3 */
  font-family: --theme(
    --default-font-family,
    ui-sans-serif,
    system-ui,
    sans-serif,
    "Apple Color Emoji",
    "Segoe UI Emoji",
    "Segoe UI Symbol",
    "Noto Color Emoji"
  ); /* 4 */
  font-feature-settings: --theme(
    --default-font-feature-settings,
    normal
  ); /* 5 */
  font-variation-settings: --theme(
    --default-font-variation-settings,
    normal
  ); /* 6 */
  -webkit-tap-highlight-color: transparent; /* 7 */
}

/*
  1. Add the correct height in Firefox.
  2. Correct the inheritance of border color in Firefox. (https://bugzilla.mozilla.org/show_bug.cgi?id=190655)
  3. Reset the default border style to a 1px solid border.
*/
hr {
  height: 0; /* 1 */
  color: inherit; /* 2 */
  border-top-width: 1px; /* 3 */
}

/*
  Add the correct text decoration in Chrome, Edge, and Safari.
*/
abbr:where([title]) {
  -webkit-text-decoration: underline dotted;
  text-decoration: underline dotted;
}

/*
  Remove the default font size and weight for headings.
*/
h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: inherit;
  font-weight: inherit;
}

/*
  Reset links to optimize for opt-in styling instead of opt-out.
*/
a {
  color: inherit;
  -webkit-text-decoration: inherit;
  text-decoration: inherit;
}

/*
  Add the correct font weight in Edge and Safari.
*/
b,
strong {
  font-weight: bolder;
}

/*
  1. Use the user's configured `mono` font-family by default.
  2. Use the user's configured `mono` font-feature-settings by default.
  3. Use the user's configured `mono` font-variation-settings by default.
  4. Correct the odd `em` font sizing in all browsers.
*/
code,
kbd,
samp,
pre {
  font-family: --theme(
    --default-mono-font-family,
    ui-monospace,
    SFMono-Regular,
    Menlo,
    Monaco,
    Consolas,
    "Liberation Mono",
    "Courier New",
    monospace
  ); /* 1 */
  font-feature-settings: --theme(
    --default-mono-font-feature-settings,
    normal
  ); /* 2 */
  font-variation-settings: --theme(
    --default-mono-font-variation-settings,
    normal
  ); /* 3 */
  font-size: 1em; /* 4 */
}

/*
  Add the correct font size in all browsers.
*/
small {
  font-size: 80%;
}

/*
  Prevent `sub` and `sup` elements from affecting the line height in all browsers.
*/
sub,
sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline;
}

sub {
  bottom: -0.25em;
}

sup {
  top: -0.5em;
}

/*
  1. Remove text indentation from table contents in Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=999088, https://bugs.webkit.org/show_bug.cgi?id=201297)
  2. Correct table border color inheritance in all Chrome and Safari. (https://bugs.chromium.org/p/chromium/issues/detail?id=935729, https://bugs.webkit.org/show_bug.cgi?id=195016)
  3. Remove gaps between table borders by default.
*/
table {
  text-indent: 0; /* 1 */
  border-color: inherit; /* 2 */
  border-collapse: collapse; /* 3 */
}

/*
  Use the modern Firefox focus style for all focusable elements.
*/
:-moz-focusring {
  outline: auto;
}

/*
  Add the correct vertical alignment in Chrome and Firefox.
*/
progress {
  vertical-align: baseline;
}

/*
  Add the correct display in Chrome and Safari.
*/
summary {
  display: list-item;
}

/*
  Make lists unstyled by default.
*/
ol,
ul,
menu {
  list-style: none;
}

/*
  1. Make replaced elements `display: block` by default. (https://github.com/mozdevs/cssremedy/issues/14)
  2. Add `vertical-align: middle` to align replaced elements more sensibly by default. (https://github.com/jensimmons/cssremedy/issues/14#issuecomment-634934210)
      This can trigger a poorly considered lint error in some tools but is included by design.
*/
img,
svg,
video,
canvas,
audio,
iframe,
embed,
object {
  display: block; /* 1 */
  vertical-align: middle; /* 2 */
}

/*
  Constrain images and videos to the parent width and preserve their intrinsic aspect ratio. (https://github.com/mozdevs/cssremedy/issues/14)
*/
img,
video {
  max-width: 100%;
  height: auto;
}

/*
  1. Inherit font styles in all browsers.
  2. Remove border radius in all browsers.
  3. Remove background color in all browsers.
  4. Ensure consistent opacity for disabled states in all browsers.
*/
button,
input,
select,
optgroup,
textarea,
::file-selector-button {
  font: inherit; /* 1 */
  font-feature-settings: inherit; /* 1 */
  font-variation-settings: inherit; /* 1 */
  letter-spacing: inherit; /* 1 */
  color: inherit; /* 1 */
  border-radius: 0; /* 2 */
  background-color: transparent; /* 3 */
  opacity: 1; /* 4 */
}

/*
  Restore default font weight.
*/
:where(select:is([multiple], [size])) optgroup {
  font-weight: bolder;
}

/*
  Restore indentation.
*/
:where(select:is([multiple], [size])) optgroup option {
  padding-inline-start: 20px;
}

/*
  Restore space after button.
*/
::file-selector-button {
  margin-inline-end: 4px;
}

/*
  Reset the default placeholder opacity in Firefox. (https://github.com/tailwindlabs/tailwindcss/issues/3300)
*/
::placeholder {
  opacity: 1;
}

/*
  Set the default placeholder color to a semi-transparent version of the current text color in browsers that do not
  crash when using `color-mix(…)` with `currentcolor`. (https://github.com/tailwindlabs/tailwindcss/issues/17194)
*/
@supports (not (-webkit-appearance: -apple-pay-button)) or
  (contain-intrinsic-size: 1px) {
  ::placeholder {
    color: color-mix(in oklab, currentcolor 50%, transparent);
  }
}
/*
  Prevent resizing textareas horizontally by default.
*/
textarea {
  resize: vertical;
}

/*
  Remove the inner padding in Chrome and Safari on macOS.
*/
::-webkit-search-decoration {
  -webkit-appearance: none;
}

/*
  1. Ensure date/time inputs have the same height when empty in iOS Safari.
  2. Ensure text alignment can be changed on date/time inputs in iOS Safari.
*/
::-webkit-date-and-time-value {
  min-height: 1lh; /* 1 */
  text-align: inherit; /* 2 */
}

/*
  Prevent height from changing on date/time inputs in macOS Safari when the input is set to `display: block`.
*/
::-webkit-datetime-edit {
  display: inline-flex;
}

/*
  Remove excess padding from pseudo-elements in date/time inputs to ensure consistent height across browsers.
*/
::-webkit-datetime-edit-fields-wrapper {
  padding: 0;
}

::-webkit-datetime-edit,
::-webkit-datetime-edit-year-field,
::-webkit-datetime-edit-month-field,
::-webkit-datetime-edit-day-field,
::-webkit-datetime-edit-hour-field,
::-webkit-datetime-edit-minute-field,
::-webkit-datetime-edit-second-field,
::-webkit-datetime-edit-millisecond-field,
::-webkit-datetime-edit-meridiem-field {
  padding-block: 0;
}

/*
  Remove the additional `:invalid` styles in Firefox. (https://github.com/mozilla/gecko-dev/blob/2f9eacd9d3d995c937b4251a5557d95d494c9be1/layout/style/res/forms.css#L728-L737)
*/
:-moz-ui-invalid {
  box-shadow: none;
}

/*
  Correct the inability to style the border radius in iOS Safari.
*/
button,
input:where([type="button"], [type="reset"], [type="submit"]),
::file-selector-button {
  appearance: button;
}

/*
  Correct the cursor style of increment and decrement buttons in Safari.
*/
::-webkit-inner-spin-button,
::-webkit-outer-spin-button {
  height: auto;
}

/*
  Make elements with the HTML hidden attribute stay hidden by default.
*/
[hidden]:where(:not([hidden="until-found"])) {
  display: none !important;
}

@font-face {
  font-family: "Golos Text";
  src: url("../fonts/GolosText-VariableFont_wght.ttf")
    format("truetype-variations");
  font-style: normal;
  font-weight: 100 900;
}
@font-face {
  font-family: "Vela Sans";
  src: url("../fonts/VelaSans-ExtraBold.ttf") format("truetype");
  font-style: normal;
  font-weight: 800;
}
@font-face {
  font-family: "Vela Sans";
  src: url("../fonts/VelaSans-SemiBold.ttf") format("truetype");
  font-style: normal;
  font-weight: 600;
}
:root {
  /* минимальные боковые отступы контейнера */
  --container-padding: 24px;
  /* размер контейнера секции начиная с phone */
  --container-phone: 640px;
  /* размер контейнера секции начиная с tablet */
  --container-tablet: 768px;
  /* размер контейнера секции начиная с laptop */
  --container-laptop: 1600px;
  --transition: 0.2s ease-in-out;
}

html {
  height: 100%;
  scroll-behavior: smooth;
  overflow-x: hidden;
}

body {
  overflow-x: hidden;
  min-height: 100%;
  display: flex;
  flex-direction: column;
  color: #1d293d;
  font-family: "Golos Text";
}

.main {
  flex-grow: 1;
}

html.with-fancybox {
  overflow: auto;
}

.button {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  outline: none;
  transition: 0.38s ease-in-out;
  z-index: 1;
}
.button--primary {
  background-color: #372aac;
}
@media (hover: hover) {
  .button--primary:hover {
    background-color: #1d293d;
  }
}
.button--primary .button__text,
.button--primary .button__icon {
  color: white;
}
.button--secondary {
  background-color: #7c86ff;
}
@media (hover: hover) {
  .button--secondary:hover {
    background-color: #90a1b9;
  }
}
.button--secondary .button__text,
.button--secondary .button__icon {
  color: white;
}
.button--outline {
  border: 1px solid #90a1b9;
}
.button--outline .button__text {
  color: #90a1b9;
}
@media (hover: hover) {
  .button--outline:hover {
    border: 1px solid #372aac;
  }
  .button--outline:hover .button__text {
    color: #372aac;
  }
}
.button--tiny {
  min-height: 40px;
  border-radius: 48px;
  padding-top: 8px;
  padding-right: 24px;
  padding-bottom: 8px;
  padding-left: 24px;
  gap: 8px;
}
.button--tiny .button__text {
  font-size: 14px;
  line-height: 1.5;
}
.button--tiny .button__icon {
  font-size: 24px;
}
.button--small {
  min-height: 37px;
  border-radius: 24px;
  padding-top: 8px;
  padding-right: 16px;
  padding-bottom: 8px;
  padding-left: 16px;
  gap: 4px;
}
.button--small .button__text {
  font-size: 14px;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .button--small .button__text {
    font-size: 12px;
  }
}
.button--medium {
  min-height: 60px;
  gap: 16px;
  border-radius: 48px;
  padding-top: 14px;
  padding-right: 32px;
  padding-bottom: 14px;
  padding-left: 32px;
}
.button--medium .button__text {
  font-size: 16px;
}
@media (max-width: 1279px) {
  .button--medium .button__text {
    font-size: 14px;
  }
}
@media (max-width: 1279px) {
  .button--medium {
    padding-left: 18px;
    padding-right: 18px;
    min-height: 40px;
  }
}
.button--large {
  min-height: 80px;
  gap: 16px;
  border-radius: 48px;
  padding-top: 24px;
  padding-right: 48px;
  padding-bottom: 24px;
  padding-left: 48px;
}
@media (max-width: 1279px) {
  .button--large {
    min-height: 60px;
    padding-right: 20px;
    padding-left: 20px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
}
.button--large .button__text {
  font-size: 24px;
}
@media (max-width: 1279px) {
  .button--large .button__text {
    font-size: 20px;
  }
}
@media (max-width: 639px) {
  .button--large .button__text {
    font-size: 18px;
  }
}
@media (max-width: 360px) {
  .button--large .button__text {
    font-size: 16px;
  }
}
.button__icon {
  font-size: 32px;
  transition: 0.38s ease-in-out;
}
@media (max-width: 1279px) {
  .button__icon {
    font-size: 24px;
  }
}
.button__text {
  transition: 0.38s ease-in-out;
  font-weight: 500;
}

.section {
  --_container: 100%;
  --container-offset: var(--container-padding);
  display: grid;
  grid-template-columns: [full-start left-start] minmax(
      var(--container-padding),
      1fr
    ) [right-start center-start] minmax(
      0,
      var(--_container)
    ) [left-end center-end] minmax(
      var(--container-padding),
      1fr
    ) [full-end right-end];
  grid-template-rows: [full-start left-start center-start right-start] auto [full-end left-end center-end right-end];
  position: relative;
  z-index: 1;
}
@media (min-width: 640px) {
  .section {
    --_container: var(--container-phone);
    --container-offset: max(
      calc(var(--real-page-width, 100vw) - var(--_container)) / 2,
      var(--container-padding)
    );
  }
}
@media (min-width: 768px) {
  .section {
    --_container: var(--container-tablet);
  }
}
@media (min-width: 1024px) {
  .section {
    --_container: var(--container-laptop);
  }
}
.section--left {
  --section-position: left;
}
.section--center {
  --section-position: center;
}
.section--right {
  --section-position: right;
}
.section--full {
  --section-position: full;
}
@media (min-width: 640px) {
  .section--phone-left {
    --section-position: left;
  }
}
@media (min-width: 640px) {
  .section--phone-center {
    --section-position: center;
  }
}
@media (min-width: 640px) {
  .section--phone-right {
    --section-position: right;
  }
}
@media (min-width: 640px) {
  .section--phone-full {
    --section-position: full;
  }
}
@media (min-width: 768px) {
  .section--tablet-left {
    --section-position: left;
  }
}
@media (min-width: 768px) {
  .section--tablet-center {
    --section-position: center;
  }
}
@media (min-width: 768px) {
  .section--tablet-right {
    --section-position: right;
  }
}
@media (min-width: 768px) {
  .section--tablet-full {
    --section-position: full;
  }
}
@media (min-width: 1024px) {
  .section--laptop-left {
    --section-position: left;
  }
}
@media (min-width: 1024px) {
  .section--laptop-center {
    --section-position: center;
  }
}
@media (min-width: 1024px) {
  .section--laptop-right {
    --section-position: right;
  }
}
@media (min-width: 1024px) {
  .section--laptop-full {
    --section-position: full;
  }
}
@media (min-width: 1280px) {
  .section--desktop-left {
    --section-position: left;
  }
}
@media (min-width: 1280px) {
  .section--desktop-center {
    --section-position: center;
  }
}
@media (min-width: 1280px) {
  .section--desktop-right {
    --section-position: right;
  }
}
@media (min-width: 1280px) {
  .section--desktop-full {
    --section-position: full;
  }
}
@media (min-width: 1638px) {
  .section--widescreen-left {
    --section-position: left;
  }
}
@media (min-width: 1638px) {
  .section--widescreen-center {
    --section-position: center;
  }
}
@media (min-width: 1638px) {
  .section--widescreen-right {
    --section-position: right;
  }
}
@media (min-width: 1638px) {
  .section--widescreen-full {
    --section-position: full;
  }
}
.section--hidden {
  overflow: hidden;
}
.section--large {
  --container-laptop: 1760px;
}
.section--primary {
  background: radial-gradient(
    53.38% 97.03% at 65.05% 83.9%,
    #e2e8f0 0%,
    #c5d2e3 100%
  );
  z-index: 0;
}
.section--secondary {
  background-color: #f8fafc;
  border-radius: 96px;
  z-index: 1;
}
@media (max-width: 1023px) {
  .section--secondary {
    border-radius: 32px;
  }
}
.section__container {
  display: grid;
  grid-area: var(--section-position);
  grid-template-columns: 100%;
}
.section--top-small {
  padding-top: 20px;
}
.section--top-medium {
  padding-top: 24px;
  margin-top: -120px;
}
.section--top-large {
  padding-top: 48px;
}
.section--top-great {
  padding-top: 148px;
  margin-top: -120px;
}
.section--top-giant {
  padding-top: 205px;
}
.section--top-giant-contact {
  padding-top: 270px;
  margin-top: -90px;
}
@media (max-width: 1279px) {
  .section--top-giant-contact {
    padding-top: 230px;
  }
}
@media (max-width: 639px) {
  .section--top-giant-contact {
    padding-top: 190px;
  }
}
@media (min-width: 768px) {
  .section--top-medium {
    padding-top: 32px;
  }
  .section--top-giant {
    padding-top: 188px;
  }
}
@media (max-width: 1637px) {
  .section--top-medium,
  .section--top-great,
  .section--top-giant {
    margin-top: -100px;
  }
}
@media (min-width: 1024px) {
  .section--top-small {
    padding-top: 40px;
  }
  .section--top-medium {
    padding-top: 60px;
  }
  .section--top-large {
    padding-top: 270px;
  }
  .section--top-great {
    padding-top: 160px;
  }
  .section--top-giant {
    padding-top: 60px;
  }
}
@media (min-width: 1280px) {
  .section--top-giant {
    padding-top: 120px;
  }
  .section--top-medium {
    padding-top: 120px;
  }
  .section--top-large {
    padding-top: 160px;
  }
  .section--top-great {
    padding-top: 240px;
  }
}
.section--bottom-small {
  padding-bottom: 20px;
}
.section--bottom-medium {
  padding-bottom: 24px;
  z-index: 3;
}
.section--bottom-large {
  padding-bottom: 100px;
}
.section--bottom-great {
  padding-bottom: 0;
  z-index: 2;
}
.section--bottom-giant-contact {
  padding-bottom: 260px;
}
@media (max-width: 1279px) {
  .section--bottom-giant-contact {
    padding-bottom: 150px;
  }
}
@media (max-width: 639px) {
  .section--bottom-giant-contact {
    padding-bottom: 80px;
  }
}
@media (min-width: 768px) {
  .section--bottom-medium {
    padding-bottom: 32px;
  }
}
@media (min-width: 1024px) {
  .section--bottom-small {
    padding-bottom: 40px;
  }
  .section--bottom-medium {
    padding-bottom: 60px;
  }
  .section--bottom-large {
    padding-bottom: 120px;
  }
  .section--bottom-great {
    padding-bottom: 220px;
    z-index: 0;
  }
}
@media (min-width: 1280px) {
  .section--bottom-medium {
    padding-bottom: 120px;
  }
  .section--bottom-large {
    padding-bottom: 160px;
  }
  .section--bottom-great {
    padding-bottom: 240px;
  }
}
.section__button {
  width: 562px;
  height: 90px;
  background-image: url("../img/down-button.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -89px;
  right: 50%;
  transform: translateX(50%);
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
@media (max-width: 1637px) {
  .section__button {
    width: 380px;
    top: -60px;
  }
}
@media (max-width: 1023px) {
  .section__button {
    display: none;
  }
}

@keyframes translateY {
  to {
    transform: translateY(0);
  }
  from {
    transform: translateY(-100%);
  }
}
@keyframes translateYReverse {
  to {
    transform: translateY(-100%);
  }
  from {
    transform: translateY(0);
  }
}
.header__mobile {
  display: none;
}
@media (max-width: 1023px) {
  .header__mobile {
    z-index: 20;
    grid-area: center;
    animation: translateY 0.38s ease-in-out;
    transform: translateY(0);
    transition: 0.38s ease-in-out;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: space-between;
    gap: 12px;
    padding-right: 24px;
    padding-left: 24px;
    border-bottom-right-radius: 32px;
    border-bottom-left-radius: 32px;
    padding-bottom: 16px;
    padding-top: 16px;
    backdrop-filter: blur(15px);
    box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
    background-color: rgba(255, 255, 255, 0.8);
  }
}
@media (max-width: 1023px) and (max-width: 639px) {
  .header__mobile {
    grid-area: full;
  }
}
@media (max-width: 1023px) and (max-width: 360px) {
  .header__mobile {
    gap: 10px;
    padding-right: 12px;
    padding-left: 12px;
  }
}
@media (max-width: 1023px) {
  .header__mobile--open {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0;
    background-color: transparent;
    backdrop-filter: none;
    box-shadow: none;
  }
  .header__mobile--open .header__socials,
  .header__mobile--open .header__bottoms {
    opacity: 0;
    z-index: -1;
  }
}
.header__top {
  display: flex;
  width: 100%;
  align-items: center;
  justify-content: space-between;
}
.header__scroll {
  z-index: 20;
  position: fixed;
  top: 0;
  left: 0;
  animation: translateY 0.38s ease-in-out;
  transform: translateY(0);
  transition: 0.38s ease-in-out;
  --_container: 100%;
  --container-offset: var(--container-padding);
  display: grid;
  grid-template-columns: [full-start left-start] minmax(
      var(--container-padding),
      1fr
    ) [right-start center-start] minmax(
      0,
      var(--_container)
    ) [left-end center-end] minmax(
      var(--container-padding),
      1fr
    ) [full-end right-end];
  grid-template-rows: [full-start left-start center-start right-start] auto [full-end left-end center-end right-end];
  width: 100%;
}
@media (min-width: 640px) {
  .header__scroll {
    --_container: var(--container-phone);
    --container-offset: max(
      calc(var(--real-page-width, 100vw) - var(--_container)) / 2,
      var(--container-padding)
    );
  }
}
@media (min-width: 768px) {
  .header__scroll {
    --_container: var(--container-tablet);
  }
}
@media (min-width: 1024px) {
  .header__scroll {
    --_container: var(--container-laptop);
  }
}
@media (max-width: 1023px) {
  .header__scroll {
    display: none;
  }
}
.header__scroll-wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 20px;
  padding-right: 32px;
  padding-left: 15px;
  border-bottom-right-radius: 40px;
  border-bottom-left-radius: 40px;
  backdrop-filter: blur(15px);
  box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
  background-color: rgba(255, 255, 255, 0.8);
}
.header__scroll-container {
  display: flex;
  flex-direction: column;
  gap: 16px;
  grid-area: center;
}
.header__scroll--close {
  opacity: 0;
  z-index: -1;
  animation: translateYReverse 0.38s ease-in-out;
  transform: translateY(-100%);
}
.header__container {
  --_container: 100%;
  --container-offset: var(--container-padding);
  display: grid;
  grid-template-columns: [full-start left-start] minmax(
      var(--container-padding),
      1fr
    ) [right-start center-start] minmax(
      0,
      var(--_container)
    ) [left-end center-end] minmax(
      var(--container-padding),
      1fr
    ) [full-end right-end];
  grid-template-rows: [full-start left-start center-start right-start] auto [full-end left-end center-end right-end];
  position: relative;
}
@media (min-width: 640px) {
  .header__container {
    --_container: var(--container-phone);
    --container-offset: max(
      calc(var(--real-page-width, 100vw) - var(--_container)) / 2,
      var(--container-padding)
    );
  }
}
@media (min-width: 768px) {
  .header__container {
    --_container: var(--container-tablet);
  }
}
@media (min-width: 1024px) {
  .header__container {
    --_container: var(--container-laptop);
  }
}
@media (max-width: 1279px) {
  .header__container {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 20;
    width: 100%;
  }
}
.header__desktop {
  z-index: 99;
  width: 100%;
  position: absolute;
  grid-area: center;
  display: flex;
  flex-direction: column;
  gap: 16px;
  padding-top: 32px;
  transition: 0.38s ease-in-out;
}
.header__desktop--scroll {
  transform: translateY(-100%);
}
@media (max-width: 1023px) {
  .header__desktop {
    display: none;
  }
}
.header__burger {
  width: 32px;
  height: 32px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
}
.header__burger::after,
.header__burger::before {
  content: "";
}
.header__burger span,
.header__burger::after,
.header__burger::before {
  position: absolute;
  width: 27px;
  height: 4px;
  border-radius: 4px;
  background-color: #90a1b9;
  top: 4px;
  transition: 0.38s ease-in-out;
}
.header__burger::after {
  top: 14px;
}
.header__burger::before {
  top: 23px;
}
.header__burger--open span,
.header__burger--open::after,
.header__burger--open::before {
  width: 31px;
}
.header__burger--open span {
  rotate: 45deg;
  top: 14px;
}
.header__burger--open::after {
  rotate: -45deg;
}
.header__burger--open::before {
  opacity: 0;
}
.header__wrapper {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 50px;
}
@media (max-width: 1637px) {
  .header__wrapper {
    gap: 30px;
  }
}
@media (max-width: 1279px) {
  .header__wrapper {
    flex-direction: column;
    align-items: stretch;
    gap: 20px;
  }
}
.header__logo {
  width: 160px;
  height: 90px;
}
@media (max-width: 1637px) {
  .header__logo {
    width: 120px;
    height: 75px;
  }
}
.header__logo--size {
  width: 83px;
  height: 50px;
  margin-right: 73px;
}
@media (max-width: 1637px) {
  .header__logo--size {
    margin-right: 0;
  }
}
.header__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.header__card {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 79px;
  backdrop-filter: blur(15px);
  box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
  background-color: rgba(255, 255, 255, 0.8);
  border-radius: 48px;
  padding-right: 32px;
  padding-left: 32px;
}
@media (max-width: 1637px) {
  .header__card {
    gap: 10px;
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (max-width: 1279px) {
  .header__card {
    padding-left: 23px;
    padding-right: 23px;
  }
}
.header__socials {
  display: flex;
  gap: 16px;
  transition: 0.38s ease-in-out;
}
@media (max-width: 1279px) {
  .header__socials {
    gap: 8px;
  }
}
.header__phone {
  display: flex;
  gap: 24px;
  align-items: center;
}
@media (max-width: 1279px) {
  .header__phone {
    gap: 8px;
  }
}
.header__phone-icon {
  font-size: 32px;
  color: #90a1b9;
}
@media (max-width: 1279px) {
  .header__phone-icon {
    font-size: 24px;
  }
}
.header__phone-wrapper {
  display: flex;
  flex-direction: column;
}
.header__phone-link {
  color: #372aac;
  font-weight: 600;
  font-size: 20px;
  transition: color 0.38s ease-in-out;
}
@media (hover: hover) {
  .header__phone-link:hover {
    color: #7c86ff;
  }
}
@media (max-width: 1637px) {
  .header__phone-link {
    font-size: 16px;
  }
}
@media (max-width: 1279px) {
  .header__phone-link {
    font-size: 14px;
  }
}
@media (max-width: 1023px) {
  .header__phone-link {
    font-size: 16px;
  }
}
.header__buttons {
  display: flex;
  align-self: flex-end;
  gap: 12px;
  border-radius: 48px;
  padding: 12px;
  backdrop-filter: blur(15px);
  box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
  background: rgba(255, 255, 255, 0.8);
}
.header__buttons-btn {
  display: flex;
  align-items: center;
  gap: 8px;
}
.header__buttons-icon {
  color: #372aac;
  font-size: 24px;
}
.header__buttons-text {
  font-size: 12px;
  line-height: 1.2;
}
.header__buttons--mobile {
  display: none;
}
@media (max-width: 1023px) {
  .header__buttons--mobile {
    position: fixed;
    bottom: 0;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 0;
    backdrop-filter: blur(15px);
    box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
    width: 100%;
    justify-content: space-between;
    border-radius: 0;
    border-top-left-radius: 32px;
    border-top-right-radius: 32px;
    padding-top: 16px;
    padding-right: 24px;
    padding-bottom: 16px;
    padding-left: 24px;
    background-color: rgba(255, 255, 255, 0.8);
  }
}
.header__bottoms {
  display: flex;
  justify-content: flex-end;
  width: calc(100% + 12px);
  gap: 4px;
}

.navigation {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media (max-width: 1023px) {
  .navigation {
    flex-direction: column;
    align-items: flex-start;
  }
}
.navigation__link {
  display: block;
  position: relative;
  font-weight: 500;
  font-size: 16px;
  line-height: 1.3;
  color: #1d293d;
  padding-top: 35px;
  padding-bottom: 35px;
}
.navigation__link--small {
  padding-top: 30px;
  padding-bottom: 30px;
}
.navigation__link::after {
  content: "";
  position: absolute;
  bottom: 0px;
  left: 0;
  transition: 0.38s ease-in-out;
  width: 0%;
  opacity: 0;
  height: 6px;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  background-color: #372aac;
}
@media (hover: hover) {
  .navigation__link:hover::after {
    width: 100%;
    opacity: 1;
  }
}
@media (max-width: 1637px) {
  .navigation__link {
    font-size: 14px;
  }
}
@media (max-width: 1279px) {
  .navigation__link {
    font-size: 13px;
    padding-top: 32px;
    padding-bottom: 32px;
  }
}
@media (max-width: 1023px) {
  .navigation__link {
    padding-top: 0;
    padding-bottom: 0;
    font-size: 18px;
    line-height: 1.2;
  }
}

.social-icon {
  line-height: 1;
  transition: 0.38s ease-in-out;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  color: white;
  border-radius: 50%;
}
.social-icon--blue {
  background-color: #0077ff;
}
.social-icon--blue-light {
  background-color: #00b4f5;
}
.social-icon--green {
  background-color: #35c500;
}
.social-icon--pink-gradient {
  background: radial-gradient(
    150.09% 101.56% at 32.81% 92.19%,
    #ffc400 0%,
    #ff005b 31.68%,
    #ff00c6 62.99%,
    #7f07ff 100%
  );
}
.social-icon--blue-gradient {
  background: radial-gradient(
    74.25% 67.24% at 21.25% 95%,
    #47bffd 0%,
    #3050fb 43.68%,
    #9a42db 100%
  );
}
.social-icon--small {
  width: 32px;
  height: 32px;
  font-size: 16px;
}
@media (max-width: 1279px) {
  .social-icon--small {
    width: 28px;
    height: 28px;
    font-size: 14px;
  }
}
@media (max-width: 1023px) {
  .social-icon--small {
    width: 32px;
    height: 32px;
    font-size: 16px;
  }
}
.social-icon--medium {
  width: 40px;
  height: 40px;
  font-size: 20px;
}

.footer {
  flex-grow: 0;
  --_container: 100%;
  --container-offset: var(--container-padding);
  display: grid;
  grid-template-columns: [full-start left-start] minmax(
      var(--container-padding),
      1fr
    ) [right-start center-start] minmax(
      0,
      var(--_container)
    ) [left-end center-end] minmax(
      var(--container-padding),
      1fr
    ) [full-end right-end];
  grid-template-rows: [full-start left-start center-start right-start] auto [full-end left-end center-end right-end];
  position: relative;
  background-color: #372aac;
  padding-top: 15px;
  padding-bottom: 15px;
  border-top-left-radius: 48px;
  border-top-right-radius: 48px;
  z-index: 1;
  margin-top: -80px;
}
@media (min-width: 640px) {
  .footer {
    --_container: var(--container-phone);
    --container-offset: max(
      calc(var(--real-page-width, 100vw) - var(--_container)) / 2,
      var(--container-padding)
    );
  }
}
@media (min-width: 768px) {
  .footer {
    --_container: var(--container-tablet);
  }
}
@media (min-width: 1024px) {
  .footer {
    --_container: var(--container-laptop);
  }
}
@media (max-width: 1279px) {
  .footer {
    margin-top: -40px;
  }
}
@media (max-width: 1023px) {
  .footer {
    padding-bottom: 75px;
  }
}
@media (max-width: 639px) {
  .footer {
    border-top-left-radius: 32px;
    border-top-right-radius: 32px;
    padding-top: 16px;
    padding-bottom: 16px;
  }
}
.footer__container {
  grid-area: center;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 10px;
}
@media (max-width: 1279px) {
  .footer__container {
    flex-wrap: wrap;
  }
}
@media (max-width: 639px) {
  .footer__container {
    flex-direction: column;
    align-items: flex-start;
  }
}
.footer__wrapper {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0px, 1fr) 280px;
  gap: 30px;
}
@media (max-width: 1637px) {
  .footer__wrapper {
    gap: 10px;
  }
}
@media (max-width: 639px) {
  .footer__wrapper {
    grid-template-columns: 1fr;
    gap: 10px;
  }
}
.footer__logo {
  width: 91px;
  height: 50px;
}
@media (max-width: 1279px) {
  .footer__logo {
    width: 75px;
    height: 40px;
  }
}
@media (max-width: 639px) {
  .footer__logo {
    display: none;
  }
}
.footer__logo img {
  width: 100%;
  height: 100%;
  object-fit: contain;
}
.footer__text {
  font-size: 14px;
  line-height: 1.5;
  color: #c6d2ff;
}
@media (max-width: 1637px) {
  .footer__text {
    font-size: 12px;
  }
}
@media (max-width: 639px) {
  .footer__text {
    font-size: 14px;
  }
}
.footer__links {
  display: flex;
  align-items: center;
  gap: 20px;
}
@media (max-width: 1637px) {
  .footer__links {
    gap: 10px;
  }
}
@media (max-width: 639px) {
  .footer__links {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
}
.footer__link {
  font-size: 14px;
  line-height: 1.5;
  color: #7c86ff;
  transition: 0.38s ease-in-out;
}
@media (hover: hover) {
  .footer__link:hover {
    color: white;
  }
}
@media (max-width: 1637px) {
  .footer__link {
    font-size: 12px;
  }
}
@media (max-width: 639px) {
  .footer__link {
    font-size: 14px;
  }
}
.footer__development {
  display: flex;
  align-items: center;
  gap: 10px;
}
.footer__development-img {
  width: 46px;
  height: 36px;
  object-fit: contain;
}
.footer__development .footer__text {
  transition: 0.38s ease-in-out;
}
@media (hover: hover) {
  .footer__development:hover .footer__text {
    color: white;
  }
}
.footer__button {
  width: 380px;
  height: 60px;
  background-image: url("../img/up-button.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  top: -60px;
  right: 160px;
  display: flex;
  align-items: flex-end;
  justify-content: center;
}
@media (max-width: 1637px) {
  .footer__button {
    width: 280px;
    right: 80px;
    height: 50px;
    top: -44px;
  }
}
@media (max-width: 1023px) {
  .footer__button {
    display: none;
  }
}

.up-button {
  cursor: pointer;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 4px;
  color: #7c86ff;
  transition: 0.38s ease-in-out;
}
@media (hover: hover) {
  .up-button:hover {
    color: white;
  }
}
.up-button__icon {
  font-size: 22px;
  rotate: -180deg;
}
.up-button__text {
  font-size: 10px;
}

.hero {
  border-radius: 48px;
  background: radial-gradient(
    43.56% 100% at 50% 100%,
    rgba(224, 232, 244, 0) 0%,
    rgba(224, 232, 244, 0.05) 50%,
    rgba(224, 232, 244, 0.5) 100%
  );
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 55px;
  padding: 80px;
  z-index: 1;
}
@media (max-width: 1637px) {
  .hero {
    gap: 40px;
    padding: 52px;
  }
}
@media (max-width: 1023px) {
  .hero {
    background: transparent;
    padding: 0;
    padding-top: 80px;
    padding-bottom: 60px;
    gap: 24px;
  }
}
@media (max-width: 639px) {
  .hero {
    padding-top: 104px;
    padding-bottom: 48px;
  }
  .hero .button {
    margin-top: 140px;
    padding-right: 29px;
    padding-left: 29px;
    padding-top: 24px;
    padding-bottom: 24px;
  }
}
@media (max-width: 639px) and (max-width: 360px) {
  .hero .button {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.hero__logo {
  display: none;
}
@media (max-width: 1023px) {
  .hero__logo {
    display: block;
    width: 126px;
    height: 72px;
    object-fit: contain;
  }
}
.hero__title {
  color: #372aac;
  font-weight: 800;
  font-size: 120px;
  z-index: -1;
  line-height: 1.2;
}
@media (max-width: 1637px) {
  .hero__title {
    font-size: 80px;
  }
}
@media (max-width: 1279px) {
  .hero__title {
    font-size: 60px;
  }
}
@media (max-width: 767px) {
  .hero__title {
    font-size: 40px;
  }
}
@media (max-width: 360px) {
  .hero__title {
    font-size: 36px;
  }
}
.hero__subtitle {
  color: #1d293d;
  font-weight: 500;
  font-size: 48px;
}
@media (max-width: 1637px) {
  .hero__subtitle {
    font-size: 42px;
  }
}
@media (max-width: 1279px) {
  .hero__subtitle {
    font-size: 36px;
  }
}
@media (max-width: 767px) {
  .hero__subtitle {
    font-size: 24px;
    line-height: 1.2;
  }
}
.hero__text {
  display: flex;
  flex-direction: column;
  gap: 30px;
  font-size: 24px;
  line-height: 1.1;
}
@media (max-width: 1637px) {
  .hero__text {
    font-size: 20px;
    gap: 20px;
  }
}
@media (max-width: 767px) {
  .hero__text {
    font-size: 16px;
    line-height: 1;
  }
}
.hero__text ul {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
@media (max-width: 1637px) {
  .hero__text ul {
    gap: 20px;
  }
}
.hero__text ul li {
  position: relative;
  padding-left: 36px;
}
@media (max-width: 1637px) {
  .hero__text ul li {
    padding-left: 20px;
  }
}
@media (max-width: 639px) {
  .hero__text ul li {
    padding-left: 25px;
  }
}
.hero__text ul li::before {
  content: "";
  position: absolute;
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background-color: #1d293d;
  left: 17px;
  top: 50%;
  transform: translate(-50%);
}
@media (max-width: 1637px) {
  .hero__text ul li::before {
    left: 5px;
  }
}
@media (max-width: 639px) {
  .hero__text ul li::before {
    left: 13px;
  }
}
.hero__photo {
  width: 100%;
  height: 100%;
  object-fit: contain;
  position: absolute;
  top: 0;
  right: 0;
  z-index: -1;
}
@media (max-width: 1279px) {
  .hero__photo {
    object-fit: cover;
  }
}
@media (max-width: 639px) {
  .hero__photo {
    display: none;
  }
}
.hero__photo--position {
  z-index: 1;
  object-fit: cover;
}
@media (max-width: 1279px) {
  .hero__photo--position {
    right: -190px;
    top: 130px;
    height: 85%;
  }
}
@media (max-width: 1023px) {
  .hero__photo--position {
    right: -85px;
    top: 140px;
  }
}
@media (max-width: 767px) {
  .hero__photo--position {
    height: 80%;
    right: -135px;
  }
}
.hero__photo--mobile {
  display: none;
}
@media (max-width: 639px) {
  .hero__photo--mobile {
    display: block;
    right: 0;
    height: 50%;
    top: auto;
    bottom: 76px;
    min-height: 430px;
  }
}

.down-button {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: #90a1b9;
}
@media (max-width: 1023px) {
  .down-button {
    display: none;
  }
}
.down-button__icon {
  font-size: 32px;
}
.down-button__text {
  font-size: 14px;
}

.advantages {
  background-color: #f1f5f9;
  border-radius: 48px;
  padding: 80px;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 90px;
}
@media (max-width: 1637px) {
  .advantages {
    padding: 52px;
    gap: 52px;
  }
}
@media (max-width: 1279px) {
  .advantages {
    padding: 36px;
    gap: 20px;
  }
}
@media (max-width: 1023px) {
  .advantages {
    border-radius: 24px;
    padding: 24px;
    grid-template-columns: repeat(2, 1fr);
    gap: 32px;
  }
}
@media (max-width: 767px) {
  .advantages {
    grid-template-columns: 1fr;
  }
}
.advantages__item {
  display: flex;
  align-items: center;
  gap: 32px;
}
@media (max-width: 1637px) {
  .advantages__item {
    gap: 24px;
  }
}
@media (max-width: 639px) {
  .advantages__item {
    align-items: flex-start;
  }
}
.advantages__circle {
  border-radius: 50%;
  width: 96px;
  height: 96px;
  background-color: #e2e8f0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 1637px) {
  .advantages__circle {
    width: 80px;
    height: 80px;
  }
}
@media (max-width: 1279px) {
  .advantages__circle {
    width: 64px;
    height: 64px;
  }
}
.advantages__icon {
  object-fit: contain;
  width: 48px;
  height: 48px;
}
@media (max-width: 1279px) {
  .advantages__icon {
    width: 32px;
    height: 32px;
  }
}
.advantages__wrapper {
  width: 70%;
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 360px) {
  .advantages__wrapper {
    width: 60%;
  }
}
.advantages__title {
  font-weight: 600;
  font-size: 18px;
  line-height: 1;
}
@media (max-width: 1279px) {
  .advantages__title {
    font-size: 16px;
  }
}
.advantages__text {
  font-size: 14px;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .advantages__text {
    font-size: 13px;
  }
}

.subtitle {
  font-size: 24px;
  line-height: 1;
  text-transform: uppercase;
}
.subtitle--gray {
  color: #90a1b9;
}
.subtitle--blue {
  color: #a3b3ff;
}
.subtitle--black {
  color: inherit;
}
@media (max-width: 1279px) {
  .subtitle {
    font-size: 20px;
  }
}
@media (max-width: 1023px) {
  .subtitle {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .subtitle {
    font-size: 16px;
  }
}

.title {
  font-weight: 500;
  text-transform: uppercase;
}
.title--medium {
  font-size: 48px;
  line-height: 1.3;
}
@media (max-width: 1279px) {
  .title--medium {
    font-size: 40px;
  }
}
@media (max-width: 1023px) {
  .title--medium {
    font-size: 32px;
  }
}
@media (max-width: 767px) {
  .title--medium {
    font-size: 24px;
  }
}
.title--small {
  font-size: 32px;
  line-height: 1.1;
}
@media (max-width: 1279px) {
  .title--small {
    font-size: 26px;
  }
}
@media (max-width: 639px) {
  .title--small {
    font-size: 24px;
    line-height: 1.2;
  }
}
.title--white {
  color: white;
}
.title span {
  color: #372aac;
}

.container {
  display: flex;
  flex-direction: column;
  position: relative;
}
.container--small {
  gap: 20px;
}
@media (max-width: 1279px) {
  .container--small {
    gap: 16px;
  }
}
.container--medium {
  gap: 60px;
}
@media (max-width: 1279px) {
  .container--medium {
    gap: 48px;
  }
}
.container--large {
  gap: 160px;
}
@media (max-width: 1637px) {
  .container--large {
    gap: 90px;
  }
}
@media (max-width: 1279px) {
  .container--large {
    gap: 100px;
  }
}
.container--great {
  gap: 120px;
}
@media (max-width: 1637px) {
  .container--great {
    gap: 90px;
  }
}
@media (max-width: 1279px) {
  .container--great {
    gap: 60px;
  }
}
@media (max-width: 1023px) {
  .container--great {
    gap: 48px;
  }
}
.container--center {
  align-items: center;
  text-align: center;
}
@media (max-width: 1023px) {
  .container--center {
    align-items: flex-start;
    text-align: left;
  }
}

.select {
  width: 126px;
}
@media (max-width: 1637px) {
  .select {
    width: 100px;
  }
}

.select2 {
  position: absolute;
  left: 20px;
  top: 20px;
  z-index: 2;
}
@media (max-width: 1637px) {
  .select2 {
    left: 8px;
    top: 8px;
  }
}
@media (max-width: 1279px) {
  .select2 {
    left: 0;
  }
}
@media (max-width: 639px) {
  .select2 {
    left: 15px;
    top: 15px;
  }
}
@media (max-width: 360px) {
  .select2 {
    top: 10px;
    left: 5px;
  }
}

.select2-container--default .select2-selection--single {
  border: none;
  background-color: transparent;
  outline: none;
}

.select2-container--default
  .select2-selection--single
  .select2-selection__rendered {
  color: #1d293d;
  overflow: visible;
  font-size: 18px;
  line-height: 1.5;
}
@media (max-width: 1637px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    font-size: 14px;
    padding-left: 3px;
  }
}
@media (max-width: 1023px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    font-size: 16px;
  }
}
@media (max-width: 639px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__rendered {
    padding-left: 0;
  }
}

.select2-container--default
  .select2-selection--single
  .select2-selection__arrow {
  background-image: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M15.904 9.22989C16.212 8.92386 16.7112 8.92386 17.0192 9.22989C17.327 9.53587 17.327 10.0313 17.0192 10.3373L12.5583 14.7709C12.5392 14.7899 12.5192 14.808 12.4987 14.8246C12.2097 15.0589 11.7918 15.0588 11.5026 14.8246L11.443 14.7709L6.98113 10.3373C6.67353 10.0314 6.67368 9.53588 6.98113 9.22989C7.28913 8.92386 7.78837 8.92386 8.09637 9.22989L12.0007 13.1088L15.904 9.22989Z" fill="%2397A7BD"/></svg>');
  width: 24px;
  height: 24px;
  right: 0px;
}
@media (max-width: 1637px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    width: 20px;
    height: 20px;
    top: 50%;
    transform: translateY(-15px);
  }
}
@media (max-width: 1279px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    right: 8px;
  }
}
@media (max-width: 1023px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    width: 24px;
    height: 24px;
    right: -5px;
  }
}
@media (max-width: 639px) {
  .select2-container--default
    .select2-selection--single
    .select2-selection__arrow {
    right: -15px;
  }
}
.select2-container--default
  .select2-selection--single
  .select2-selection__arrow
  b {
  display: none;
}

.select2-container--default
  .select2-results__option--highlighted[aria-selected] {
  background-color: #7c86ff;
}

.select2-dropdown {
  border: none;
  box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
}

@media (max-width: 1637px) {
  .select2-results__option {
    font-size: 12px;
  }
}

.increase-button {
  cursor: pointer;
  background-color: #372aac;
  width: 96px;
  height: 96px;
  border-radius: 128px;
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 1;
  right: 0;
  bottom: 0;
  transition: 0.38s ease-in-out;
}
@media (max-width: 1637px) {
  .increase-button {
    width: 68px;
    height: 68px;
    right: 5px;
  }
}
@media (max-width: 1279px) {
  .increase-button {
    width: 48px;
    height: 48px;
  }
}
@media (max-width: 639px) {
  .increase-button {
    right: 0;
  }
}
@media (hover: hover) {
  .increase-button:hover {
    background-color: #1d293d;
  }
}
.increase-button:before {
  font-size: 32px;
  color: white;
}
@media (max-width: 1637px) {
  .increase-button:before {
    font-size: 28px;
  }
}
@media (max-width: 1279px) {
  .increase-button:before {
    font-size: 20px;
  }
}
@media (max-width: 1023px) {
  .increase-button:before {
    font-size: 24px;
  }
}

.video {
  position: relative;
  height: 373px;
}
@media (max-width: 1637px) {
  .video {
    height: 285px;
  }
}
@media (max-width: 1279px) {
  .video {
    height: 220px;
  }
}
@media (max-width: 1023px) {
  .video {
    display: none;
    height: 260px;
  }
  .video:first-child {
    display: block;
  }
}
@media (max-width: 639px) {
  .video {
    height: 264px;
  }
}
@media (max-width: 360px) {
  .video {
    height: 224px;
  }
}
.video__iframe {
  mask-image: url("../img/subtract.svg");
  mask-size: cover;
  mask-repeat: no-repeat;
  height: 100%;
  width: 100%;
  transition: 0.38s ease-in-out;
  opacity: 0;
}
@media (max-width: 639px) {
  .video__iframe {
    mask-image: url("../img/subtract-mobile.svg");
  }
}
.video__play {
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  transition: 0.38s ease-in-out;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.video__play:before {
  color: rgba(255, 255, 255, 0.5019607843);
  backdrop-filter: blur(10px);
  font-size: 136px;
  border-radius: 50%;
}
@media (max-width: 1637px) {
  .video__play:before {
    font-size: 100px;
  }
}
@media (max-width: 1279px) {
  .video__play:before {
    font-size: 85px;
  }
}
@media (max-width: 639px) {
  .video__play:before {
    font-size: 78px;
  }
}
.video__img {
  mask-image: url("../img/subtract.svg");
  mask-size: cover;
  mask-repeat: no-repeat;
  position: absolute;
  z-index: 1;
  width: 100%;
  height: 100%;
  left: 0;
  top: 0;
  object-fit: cover;
  transition: 0.38s ease-in-out;
}
@media (max-width: 639px) {
  .video__img {
    mask-image: url("../img/subtract-mobile.svg");
  }
}

.f-html {
  padding: 0 !important;
  max-height: 80%;
}
@media (max-width: 639px) {
  .f-html {
    max-height: 30%;
  }
}

.office-online {
  display: flex;
  flex-direction: column;
  gap: 60px;
}
@media (max-width: 1279px) {
  .office-online {
    gap: 48px;
  }
}
@media (max-width: 1023px) {
  .office-online {
    gap: 32px;
  }
}
.office-online__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 30px;
}
@media (max-width: 1023px) {
  .office-online__cards {
    grid-template-columns: 350px;
  }
}
@media (max-width: 639px) {
  .office-online__cards {
    grid-template-columns: 327px;
  }
}
@media (max-width: 360px) {
  .office-online__cards {
    grid-template-columns: 280px;
  }
}

.prices {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 30px;
  position: relative;
}
@media (max-width: 1023px) {
  .prices {
    grid-template-columns: 1fr;
    gap: 48px;
    padding-bottom: 300px;
  }
}
@media (max-width: 767px) {
  .prices {
    padding-bottom: 200px;
  }
}
@media (max-width: 639px) {
  .prices {
    padding-bottom: 180px;
  }
}
.prices__photo {
  position: absolute;
  left: -120px;
  top: 233px;
  z-index: -1;
  width: 1080px;
  height: 1080px;
  object-fit: contain;
}
@media (max-width: 1637px) {
  .prices__photo {
    top: 385px;
    width: 850px;
    height: 850px;
  }
}
@media (max-width: 1279px) {
  .prices__photo {
    top: 495px;
    left: -100px;
    width: 750px;
    height: 750px;
  }
}
@media (max-width: 1023px) {
  .prices__photo {
    top: auto;
    bottom: -340px;
    left: 50%;
    transform: translateX(-50%);
  }
}
@media (max-width: 767px) {
  .prices__photo {
    width: 100%;
    height: 675px;
  }
}
@media (max-width: 639px) {
  .prices__photo {
    object-fit: cover;
    bottom: -244px;
    height: 460px;
  }
}
.prices__box {
  width: 85%;
  display: flex;
  flex-direction: column;
  gap: 25px;
}
@media (max-width: 1279px) {
  .prices__box {
    width: 100%;
  }
}
@media (max-width: 1023px) {
  .prices__box {
    gap: 48px;
  }
}
.prices__text {
  display: flex;
  flex-direction: column;
  gap: 8px;
  font-size: 18px;
  line-height: 1.6;
}
@media (max-width: 767px) {
  .prices__text {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .prices__text--mobile-none {
    display: none;
  }
}
.prices__wrapper {
  margin-top: 50px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media (max-width: 1023px) {
  .prices__wrapper {
    margin-top: 0;
  }
}
.prices__wrapper-item {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
@media (max-width: 767px) {
  .prices__wrapper-item {
    gap: 8px;
  }
}
.prices__wrapper-item--gap {
  gap: 24px;
}
@media (max-width: 767px) {
  .prices__wrapper-item--gap {
    gap: 8px;
  }
}
.prices__title {
  font-weight: 500;
  font-size: 32px;
  line-height: 1.5;
  text-transform: uppercase;
}
.prices__title span {
  color: #90a1b9;
}
@media (max-width: 767px) {
  .prices__title {
    font-size: 24px;
    margin-bottom: 8px;
  }
}
@media (max-width: 639px) {
  .prices__title {
    display: flex;
    gap: 12px;
    line-height: 1.3;
  }
}
.prices__cards {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 10px;
}
@media (max-width: 639px) {
  .prices__cards {
    grid-template-columns: 1fr;
  }
}
.prices__cards--col {
  grid-template-columns: repeat(3, 1fr);
}
@media (max-width: 767px) {
  .prices__cards--col {
    grid-template-columns: repeat(2, 1fr);
  }
}
@media (max-width: 639px) {
  .prices__cards--col {
    grid-template-columns: 1fr;
  }
}
.prices__card {
  background-color: #f1f5f9;
  display: flex;
  flex-direction: column;
  gap: 4px;
  border-radius: 24px;
  padding: 24px;
}
@media (max-width: 767px) {
  .prices__card {
    border-radius: 16px;
  }
}
.prices__card--row {
  flex-direction: row;
  align-items: center;
  gap: 16px;
  align-self: flex-start;
}
.prices__card--color {
  background-color: #372aac;
  color: white;
}
.prices__card--size-small {
  padding: 13px;
  padding-left: 24px;
  padding-right: 114px;
}
@media (max-width: 1279px) {
  .prices__card--size-small {
    padding-right: 24px;
  }
}
@media (max-width: 767px) {
  .prices__card--size-small {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}
.prices__card--size-medium {
  padding: 16px;
}
@media (max-width: 767px) {
  .prices__card--size-medium .prices__card-text {
    font-size: 20px;
  }
}
@media (max-width: 639px) {
  .prices__card--size-medium .prices__card-text {
    word-break: normal;
  }
}
.prices__card-text {
  color: #372aac;
  font-weight: 500;
  font-size: 22px;
  line-height: 1;
}
@media (max-width: 1279px) {
  .prices__card-text {
    word-break: break-all;
    font-size: 18px;
  }
}
.prices__card-span {
  color: #7c86ff;
  font-weight: 500;
  font-size: 48px;
  line-height: 1;
  text-transform: uppercase;
}
@media (max-width: 1279px) {
  .prices__card-span {
    font-size: 32px;
  }
}
@media (max-width: 767px) {
  .prices__card-span {
    font-size: 48px;
  }
}
.prices__price {
  color: #372aac;
  font-weight: 500;
  font-size: 48px;
  line-height: 1;
  text-transform: uppercase;
}
@media (max-width: 1279px) {
  .prices__price {
    font-size: 32px;
  }
}
@media (max-width: 639px) {
  .prices__price {
    line-height: 1.1;
  }
}
.prices__list {
  display: flex;
  flex-direction: column;
  gap: 16px;
  width: 90%;
}
@media (max-width: 1023px) {
  .prices__list {
    width: 100%;
  }
}
.prices__list li {
  position: relative;
  padding-left: 30px;
}
@media (max-width: 767px) {
  .prices__list li {
    padding-left: 35px;
  }
}
.prices__list li:before {
  content: "";
  position: absolute;
  left: 8px;
  top: 12px;
  width: 8px;
  height: 8px;
  background-color: #7c86ff;
  border-radius: 50%;
}
.prices__list li span {
  font-weight: 600;
  font-size: 24px;
  line-height: 1.5;
  color: #372aac;
}

.input {
  display: flex;
  align-items: center;
  gap: 52px;
}
@media (max-width: 1279px) {
  .input {
    gap: 32px;
  }
}
@media (max-width: 639px) {
  .input {
    flex-direction: column;
    align-items: flex-start;
    gap: 8px;
  }
}
.input__pole {
  outline: none;
  width: 100%;
  min-height: 80px;
  border-radius: 48px;
  padding: 24px;
  font-size: 16px;
  line-height: 1.5;
  background-color: white;
}
.input__pole::placeholder {
  color: #90a1b9;
}
@media (max-width: 1279px) {
  .input__pole {
    padding: 12px;
    min-height: 45px;
  }
}
@media (max-width: 639px) {
  .input__pole {
    padding: 16px;
  }
}
.input__label {
  min-width: 86px;
  font-size: 18px;
  line-height: 1;
  color: #a3b3ff;
}
@media (max-width: 1279px) {
  .input__label {
    font-size: 16px;
  }
}
@media (max-width: 639px) {
  .input__label {
    font-size: 18px;
    line-height: 1.5;
  }
}
.input--v-secondary {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
}
.input--v-secondary .input__pole {
  min-height: 56px;
  padding-top: 16px;
  padding-right: 24px;
  padding-bottom: 16px;
  padding-left: 24px;
}

.feedback {
  position: relative;
  border-radius: 48px;
  background-color: #372aac;
}
@media (max-width: 1023px) {
  .feedback {
    margin-bottom: -15px;
  }
}
@media (max-width: 639px) {
  .feedback {
    margin: 0 -24px;
    border-radius: 32px;
    margin-bottom: -24px;
  }
}
.feedback--medium {
  padding: 80px;
}
@media (max-width: 1637px) {
  .feedback--medium {
    padding: 40px;
    padding-bottom: 80px;
  }
}
@media (max-width: 639px) {
  .feedback--medium {
    padding: 24px;
    padding-bottom: 60px;
  }
}
.feedback--medium .feedback__wrapper {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0px, 1fr) 570px;
  gap: 112px;
}
@media (max-width: 1637px) {
  .feedback--medium .feedback__wrapper {
    grid-template-columns: minmax(0px, 1fr) 530px;
    gap: 30px;
  }
}
@media (max-width: 1279px) {
  .feedback--medium .feedback__wrapper {
    grid-template-columns: minmax(0px, 1fr) 500px;
  }
}
@media (max-width: 1023px) {
  .feedback--medium .feedback__wrapper {
    grid-template-columns: 1fr;
  }
}
.feedback--medium .feedback__form-btn {
  bottom: -120px;
  right: -20px;
  width: 83%;
}
@media (max-width: 1637px) {
  .feedback--medium .feedback__form-btn {
    width: 90%;
  }
}
@media (max-width: 1279px) {
  .feedback--medium .feedback__form-btn {
    bottom: -150px;
  }
}
@media (max-width: 1023px) {
  .feedback--medium .feedback__form-btn {
    right: 50%;
    bottom: -120px;
    transform: translateX(50%);
  }
}
@media (max-width: 767px) {
  .feedback--medium .feedback__form-btn {
    bottom: -105px;
  }
}
@media (max-width: 639px) {
  .feedback--medium .feedback__form-btn {
    padding: 10px;
    width: 91%;
    bottom: -103px;
  }
}
@media (max-width: 360px) {
  .feedback--medium .feedback__form-btn {
    width: 94%;
    bottom: -90px;
  }
}
.feedback--small {
  padding: 60px;
}
@media (max-width: 1637px) {
  .feedback--small {
    padding: 30px;
    padding-bottom: 60px;
  }
}
@media (max-width: 639px) {
  .feedback--small {
    padding: 24px;
    padding-bottom: 60px;
  }
}
.feedback--small .feedback__wrapper {
  display: grid;
  align-items: center;
  grid-template-columns: minmax(0px, 1fr) 590px;
  gap: 110px;
}
@media (max-width: 1637px) {
  .feedback--small .feedback__wrapper {
    grid-template-columns: minmax(0px, 1fr) 530px;
    gap: 30px;
  }
}
@media (max-width: 1279px) {
  .feedback--small .feedback__wrapper {
    grid-template-columns: minmax(0px, 1fr) 500px;
  }
}
@media (max-width: 1023px) {
  .feedback--small .feedback__wrapper {
    grid-template-columns: 1fr;
  }
}
.feedback--small .feedback__form-btn {
  bottom: -130px;
  right: 0px;
  width: 80%;
}
@media (max-width: 1637px) {
  .feedback--small .feedback__form-btn {
    width: 90%;
  }
}
@media (max-width: 1279px) {
  .feedback--small .feedback__form-btn {
    bottom: -180px;
  }
}
@media (max-width: 1023px) {
  .feedback--small .feedback__form-btn {
    right: 50%;
    bottom: -120px;
    transform: translateX(50%);
  }
}
@media (max-width: 767px) {
  .feedback--small .feedback__form-btn {
    bottom: -97px;
  }
}
@media (max-width: 639px) {
  .feedback--small .feedback__form-btn {
    padding: 10px;
    width: 91%;
    bottom: -103px;
  }
}
@media (max-width: 360px) {
  .feedback--small .feedback__form-btn {
    width: 94%;
    bottom: -90px;
  }
}
.feedback--bottom {
  margin-bottom: -15px;
}
.feedback::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 60%;
  height: 100%;
  background: linear-gradient(-270deg, rgba(55, 42, 172, 0) 50%, #372aac 100%);
  border-top-left-radius: 48px;
  border-bottom-left-radius: 48px;
  z-index: 1;
}
@media (max-width: 1023px) {
  .feedback::after {
    width: 100%;
    background: linear-gradient(
      180deg,
      rgba(55, 42, 172, 0) 41.57%,
      #372aac 92.98%
    );
    border-top-left-radius: 0px;
    border-bottom-right-radius: 48px;
  }
}
@media (max-width: 639px) {
  .feedback::after {
    border-bottom-right-radius: 32px;
    border-bottom-left-radius: 32px;
    background: linear-gradient(180deg, rgba(55, 42, 172, 0) 0%, #372aac 60%);
  }
}
.feedback__picture {
  position: absolute;
  left: 0;
  top: 0;
  z-index: 1;
  width: 60%;
  height: 100%;
}
@media (max-width: 1023px) {
  .feedback__picture {
    width: 100%;
    border-radius: 48px;
  }
}
.feedback__img {
  width: 100%;
  object-position: left;
  opacity: 0.2;
  height: 100%;
  object-fit: cover;
  border-top-left-radius: 48px;
  border-bottom-left-radius: 48px;
}
@media (max-width: 1023px) {
  .feedback__img {
    border-radius: 48px;
  }
}
@media (max-width: 639px) {
  .feedback__img {
    border-radius: 32px;
    object-position: 90%;
    height: 54%;
    background: linear-gradient(
      180deg,
      rgba(55, 42, 172, 0) 41.57%,
      #372aac 92.98%
    );
  }
}
.feedback__info,
.feedback__text {
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (max-width: 1279px) {
  .feedback__info,
  .feedback__text {
    gap: 20px;
  }
}
.feedback__info p,
.feedback__text p {
  display: block;
  width: 85%;
  font-size: 18px;
  color: #a3b3ff;
}
@media (max-width: 1279px) {
  .feedback__info p,
  .feedback__text p {
    font-size: 16px;
  }
}
.feedback__info h3,
.feedback__info h4,
.feedback__text h3,
.feedback__text h4 {
  font-size: 24px;
  line-height: 1.5;
  color: white;
}
@media (max-width: 1279px) {
  .feedback__info h3,
  .feedback__info h4,
  .feedback__text h3,
  .feedback__text h4 {
    font-size: 18px;
  }
}
.feedback__info ul,
.feedback__text ul {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  column-gap: 30px;
  row-gap: 10px;
}
@media (max-width: 1637px) {
  .feedback__info ul,
  .feedback__text ul {
    column-gap: 10px;
  }
}
@media (max-width: 1279px) {
  .feedback__info ul,
  .feedback__text ul {
    grid-template-columns: 1fr;
  }
}
.feedback__info ul li,
.feedback__text ul li {
  font-size: 18px;
  line-height: 1.5;
  color: #a3b3ff;
  position: relative;
  padding-left: 30px;
}
@media (max-width: 1637px) {
  .feedback__info ul li,
  .feedback__text ul li {
    font-size: 16px;
  }
}
.feedback__info ul li::before,
.feedback__text ul li::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
  border-radius: 50%;
  width: 4px;
  height: 4px;
  background-color: #a3b3ff;
}
@media (max-width: 639px) {
  .feedback__text {
    display: none;
  }
}
.feedback__form {
  z-index: 2;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.feedback__form-inputs {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.feedback__form-btn {
  position: absolute;
  background-color: #372aac;
  padding: 20px;
  border-radius: 68px;
  z-index: 2;
}
@media (max-width: 1637px) {
  .feedback__form-btn {
    width: 90%;
  }
}
@media (max-width: 767px) {
  .feedback__form-btn {
    padding: 16px;
  }
}
@media (max-width: 639px) {
  .feedback__form-btn .button--large {
    min-height: 56px;
  }
  .feedback__form-btn .button__text {
    font-size: 16px;
  }
}
@media (max-width: 360px) {
  .feedback__form-btn .button--large {
    padding-top: 5px;
    padding-bottom: 5px;
  }
}

.checkbox {
  display: flex;
  gap: 20px;
  margin-left: 138px;
}
@media (max-width: 1279px) {
  .checkbox {
    margin-left: 116px;
  }
}
@media (max-width: 1279px) {
  .checkbox {
    gap: 10px;
  }
}
@media (max-width: 639px) {
  .checkbox {
    margin-left: 0;
    gap: 20px;
  }
}
.checkbox__element {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  padding: 0;
  -webkit-print-color-adjust: exact;
  print-color-adjust: exact;
  display: inline-block;
  vertical-align: middle;
  background-origin: border-box;
  -webkit-user-select: none;
  -moz-user-select: none;
  user-select: none;
  flex-shrink: 0;
  background-color: #7c86ff;
  width: 24px;
  height: 24px;
  border-radius: 8px;
  cursor: pointer;
}
.checkbox__element:checked {
  background-size: 14px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml,<svg width="16" height="10" viewBox="0 0 16 10" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M6.8773 6.08735L12.4898 0.650365C13.1098 0.0498131 14.1149 0.0498131 14.7348 0.650365C15.3548 1.25092 15.3548 2.22461 14.7348 2.82516L7.9998 9.34953C7.37986 9.95009 6.37473 9.95009 5.75479 9.34953L1.26476 4.99995C0.644819 4.3994 0.644819 3.42571 1.26476 2.82516C1.88471 2.22461 2.88983 2.22461 3.50978 2.82516L6.8773 6.08735Z" fill="white"/></svg>');
}
.checkbox__label {
  width: 90%;
  font-size: 14px;
  line-height: 1.5;
  color: white;
}
@media (max-width: 639px) {
  .checkbox__label {
    font-size: 13px;
  }
}
.checkbox__label a {
  transition: 0.38s ease-in-out;
  color: #7c86ff;
}
.checkbox__label a:hover {
  color: #90a1b9;
}
.checkbox--v-secondary {
  margin-left: 0;
}
.checkbox--v-secondary .checkbox__label {
  width: 60%;
  color: #1d293d;
}

.accordion__item {
  border-radius: 48px;
  background-color: #f1f5f9;
  margin-top: unset;
  padding: 24px;
  margin-bottom: 10px;
}
.accordion__item:last-child {
  margin-bottom: 0;
}
.accordion__title {
  display: flex;
  align-items: center;
  font-size: 18px;
  font-weight: 600;
  color: #1d293d;
  gap: 12px;
}
@media (max-width: 639px) {
  .accordion__title {
    font-size: 16px;
    width: 85%;
  }
}
.accordion__title span {
  color: #90a1b9;
  font-size: 24px;
  line-height: 1.5;
}
.accordion .ac-trigger {
  font:
    bold 18px "Golos Text",
    sans-serif;
  display: flex;
  align-items: center;
  padding: 0;
}
.accordion .ac-trigger::after {
  content: "";
  width: 32px;
  height: 32px;
  right: 0;
}
.accordion .ac-trigger[aria-expanded="false"]::after {
  content: url('data:image/svg+xml,<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M21.2048 12.306C21.6154 11.898 22.2814 11.8981 22.6921 12.306C23.1028 12.7141 23.1028 13.3755 22.6921 13.7836L16.7439 19.6947C16.7184 19.7199 16.692 19.7439 16.6648 19.766C16.2795 20.0783 15.7231 20.0779 15.3376 19.766L15.2566 19.6947L9.30831 13.7836C8.89777 13.3756 8.89799 12.7141 9.30831 12.306C9.71898 11.898 10.385 11.898 10.7956 12.306L16.0007 17.4779L21.2048 12.306Z" fill="%2397A7BD"/></svg>');
}
.accordion .ac-trigger[aria-expanded="true"]::after {
  content: url('data:image/svg+xml,<svg width="32" height="32" viewBox="0 0 32 32" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M10.7949 19.6943C10.3842 20.1021 9.71817 20.1023 9.30762 19.6943C8.89719 19.2864 8.89744 18.6248 9.30762 18.2168L15.2568 12.3057C15.2823 12.2804 15.3087 12.2565 15.3359 12.2344C15.7213 11.9219 16.2776 11.9222 16.6631 12.2344L16.7441 12.3057L22.6924 18.2168C23.1027 18.6247 23.1026 19.2864 22.6924 19.6943C22.2818 20.1022 21.6157 20.1022 21.2051 19.6943L16 14.5225L10.7949 19.6943Z" fill="%2397A7BD"/></svg>');
}
.accordion__header.ac-trigger::after {
  top: 10px;
}
.accordion__content {
  display: flex;
  flex-direction: column;
  gap: 10px;
  padding-bottom: 8px;
  margin-top: 24px;
  padding-top: 20px;
  font-size: 14px;
  line-height: 1.5;
  padding-top: 20px;
  border-top: 1px solid #cad5e2;
}
@media (max-width: 639px) {
  .accordion__content {
    width: 100%;
  }
}
.accordion__content p b {
  font-weight: 600;
}
.accordion__content b {
  font-weight: 600;
}
.accordion__content ul {
  margin-bottom: 15px;
}
.accordion__content ul:last-child {
  margin-bottom: 0;
}
.accordion__content ul li {
  position: relative;
  padding-left: 20px;
  margin-bottom: 4px;
}
.accordion__content ul li::before {
  content: "";
  border-radius: 50%;
  width: 2px;
  height: 2px;
  position: absolute;
  left: 10px;
  top: 50%;
  transform: translateY(-50%);
}

.questions {
  display: grid;
  grid-template-columns: minmax(0px, 1fr) 650px;
  gap: 167px;
}
@media (max-width: 1637px) {
  .questions {
    grid-template-columns: minmax(0px, 1fr) 550px;
    gap: 30px;
  }
}
@media (max-width: 1279px) {
  .questions {
    grid-template-columns: 1fr 1fr;
    gap: 60px;
  }
}
@media (max-width: 1023px) {
  .questions {
    display: none;
  }
}
.questions__info {
  display: flex;
  flex-direction: column;
  gap: 95px;
}
@media (max-width: 1279px) {
  .questions__info {
    gap: 40px;
  }
}
.questions__info-top {
  display: flex;
  flex-direction: column;
  gap: 40px;
}
@media (max-width: 1279px) {
  .questions__info-top {
    gap: 20px;
  }
}
.questions__info-bottom {
  display: flex;
  gap: 77px;
}
@media (max-width: 1279px) {
  .questions__info-bottom {
    gap: 40px;
  }
}
@media (max-width: 1023px) {
  .questions__info-bottom {
    flex-direction: column;
    gap: 32px;
  }
}
.questions__text {
  font-size: 18px;
  line-height: 1.5;
  width: 90%;
}
@media (max-width: 1023px) {
  .questions__text {
    width: 100%;
    font-size: 16px;
  }
}
.questions__number {
  color: #90a1b9;
  font-weight: 500;
  font-size: 120px;
  line-height: 0.7;
}
@media (max-width: 1637px) {
  .questions__number {
    font-size: 80px;
  }
}
@media (max-width: 1279px) {
  .questions__number {
    font-size: 60px;
  }
}
.questions__img {
  width: 514px;
  height: 460px;
  object-fit: cover;
  border-radius: 48px;
}
@media (max-width: 1637px) {
  .questions__img {
    width: 450px;
    height: 390px;
  }
}
@media (max-width: 1279px) {
  .questions__img {
    width: 340px;
    height: 280px;
  }
}
@media (max-width: 639px) {
  .questions__img {
    width: 100%;
  }
}

.card {
  background-color: #f1f5f9;
  display: grid;
  align-items: center;
  border-radius: 24px;
  padding: 20px;
  gap: 20px;
  height: 100%;
}
@media (max-width: 639px) {
  .card {
    padding: 16px;
  }
}
.card--affairs {
  grid-template-columns: 180px minmax(0px, 1fr);
  height: 100%;
}
@media (max-width: 1279px) {
  .card--affairs {
    grid-template-columns: 140px minmax(0px, 1fr);
  }
}
@media (max-width: 1023px) {
  .card--affairs {
    grid-template-columns: 100%;
  }
}
@media (max-width: 639px) {
  .card--affairs .card__written {
    font-size: 18px;
  }
  .card--affairs .card__info {
    gap: 16px;
  }
}
@media (max-width: 639px) {
  .card--video .card__link {
    display: flex;
    gap: 10px;
    flex-direction: column;
  }
}
.card__slider {
  width: 100%;
}
.card__doc {
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 16px;
}
@media (max-width: 1023px) {
  .card__doc {
    width: 180px;
    height: 240px;
    border-radius: 12px;
  }
}
.card__video {
  position: relative;
  height: 320px;
}
@media (max-width: 1279px) {
  .card__video {
    height: 300px;
  }
}
@media (max-width: 1023px) {
  .card__video {
    height: 250px;
  }
}
@media (max-width: 767px) {
  .card__video {
    height: 156px;
  }
}
@media (max-width: 360px) {
  .card__video {
    height: 130px;
  }
}
.card__img {
  border-radius: 24px;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: contain;
  background: black;
}
@media (max-width: 767px) {
  .card__img {
    border-radius: 12px;
  }
}
.card__iframe {
  border-radius: 24px;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  opacity: 0;
  transition: 0.38s ease-in-out;
}
@media (max-width: 767px) {
  .card__iframe {
    border-radius: 12px;
  }
}
.card__play {
  border-radius: 24px;
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: 1;
  transition: 0.38s ease-in-out;
  top: 0;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .card__play {
    border-radius: 12px;
  }
}
.card__play:before {
  color: rgba(255, 255, 255, 0.5019607843);
  backdrop-filter: blur(10px);
  font-size: 108px;
  border-radius: 50%;
}
@media (max-width: 1637px) {
  .card__play:before {
    font-size: 70px;
  }
}
@media (max-width: 1279px) {
  .card__play:before {
    font-size: 55px;
  }
}
@media (max-width: 767px) {
  .card__play:before {
    font-size: 52px;
  }
}
.card__wrapper {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  gap: 40px;
}
@media (max-width: 1279px) {
  .card__wrapper {
    gap: 20px;
  }
}
.card__info {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.card__title {
  font-weight: 600;
  font-size: 18px;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .card__title {
    font-size: 16px;
  }
}
.card__date {
  color: #90a1b9;
  font-size: 16px;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .card__date {
    font-size: 14px;
  }
}
.card__link {
  font-size: 14px;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .card__link {
    font-size: 13px;
  }
}
.card__link a {
  text-decoration: underline;
  color: #372aac;
}
.card__link--color {
  color: #90a1b9;
  text-decoration: underline;
}
.card__written {
  line-height: 1;
  font-weight: 600;
  font-size: 24px;
  color: #372aac;
}
@media (max-width: 1637px) {
  .card__written {
    font-size: 20px;
  }
}
@media (max-width: 1023px) {
  .card__written {
    font-size: 24px;
  }
}
@media (max-width: 360px) {
  .card__written {
    font-size: 20px;
  }
}
.card__box {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.card__box--row {
  flex-direction: row;
  justify-content: space-between;
}
@media (max-width: 1023px) {
  .card__box--row {
    flex-direction: column;
    justify-content: flex-start;
    gap: 16px;
  }
}

.card-team__photo {
  width: 100%;
  height: 460px;
  border-radius: 24px;
  object-fit: contain;
  background-color: white;
  margin-bottom: 20px;
}
@media (max-width: 1637px) {
  .card-team__photo {
    height: 320px;
  }
}
@media (max-width: 1279px) {
  .card-team__photo {
    height: 260px;
  }
}
@media (max-width: 639px) {
  .card-team__photo {
    height: 340px;
  }
}
.card-team__name {
  font-weight: 600;
  font-size: 24px;
  line-height: 1;
  margin-bottom: 10px;
}
@media (max-width: 1279px) {
  .card-team__name {
    font-size: 20px;
  }
}
@media (max-width: 639px) {
  .card-team__name {
    font-size: 18px;
  }
}
.card-team__role {
  font-size: 16px;
  line-height: 1.5;
  color: #62748e;
}
@media (max-width: 1279px) {
  .card-team__role {
    font-size: 14px;
  }
}

.slider__wrapper {
  display: grid;
  gap: 30px;
  align-items: flex-end;
  grid-template-columns: 784px minmax(0px, 1fr);
  margin-bottom: 80px;
}
.slider__wrapper .container {
  margin-bottom: -5px;
}
@media (max-width: 1637px) {
  .slider__wrapper {
    grid-template-columns: 730px minmax(0px, 1fr);
    margin-bottom: 40px;
  }
}
@media (max-width: 1279px) {
  .slider__wrapper {
    grid-template-columns: 500px minmax(0px, 1fr);
  }
}
@media (max-width: 1023px) {
  .slider__wrapper {
    grid-template-columns: 1fr;
    margin-bottom: 32px;
    gap: 24px;
  }
}
.slider__text {
  font-size: 18px;
  line-height: 1.5;
  width: 70%;
}
@media (max-width: 1637px) {
  .slider__text {
    width: 100%;
  }
}
@media (max-width: 1279px) {
  .slider__text {
    font-size: 16px;
  }
}
@media (max-width: 639px) {
  .slider__text {
    display: none;
  }
}
.slider__swiper {
  margin-bottom: 40px;
  overflow: visible;
}
@media (max-width: 1637px) {
  .slider__swiper {
    margin-bottom: 32px;
  }
}
.slider__navigation {
  display: flex;
  width: 100%;
  justify-content: center;
  gap: 10px;
}
.slider__btn {
  margin-top: 0;
  position: static;
  border-radius: 24px;
  width: 56px;
  height: 56px;
  background-color: #372aac;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: 0.38s ease-in-out;
}
@media (hover: hover) {
  .slider__btn:hover {
    background-color: #7c86ff;
  }
}
.slider__btn::after {
  content: none;
}
.slider__btn::before {
  font-size: 24px;
  color: white;
}
.slider__btn-prev::before {
  rotate: -180deg;
}
.slider__slide {
  min-height: 100%;
  height: auto;
}

.contacts {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 34px;
}
@media (max-width: 1023px) {
  .contacts {
    gap: 32px;
    grid-template-columns: 1fr;
  }
}
.contacts__map {
  width: 100%;
  height: 559px;
}
@media (max-width: 1023px) {
  .contacts__map {
    order: -1;
    width: 100%;
    height: 300px;
  }
}
@media (max-width: 639px) {
  .contacts__map {
    height: 200px;
  }
}
.contacts__card {
  display: flex;
  flex-direction: column;
  border-radius: 48px;
  padding: 48px;
  background: #f1f5f9;
  gap: 40px;
}
@media (max-width: 1023px) {
  .contacts__card {
    gap: 32px;
    padding: 32px;
    border-radius: 32px;
  }
}
@media (max-width: 639px) {
  .contacts__card {
    gap: 24px;
  }
}
.contacts__wrapper {
  display: flex;
  flex-direction: column;
  gap: 30px;
}
.contacts__wrapper--gap {
  gap: 36px;
}
@media (max-width: 639px) {
  .contacts__wrapper {
    gap: 24px;
  }
}
.contacts__box {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.contacts__name {
  color: #90a1b9;
  font-size: 16px;
  line-height: 1.5;
}
@media (max-width: 639px) {
  .contacts__name {
    font-size: 14px;
  }
}
.contacts__value {
  font-weight: 600;
  font-size: 29px;
  line-height: 1.4;
  color: #372aac;
  transition: 0.38s ease-in-out;
}
@media (max-width: 1279px) {
  .contacts__value {
    font-size: 24px;
  }
}
@media (max-width: 639px) {
  .contacts__value {
    font-size: 18px;
    line-height: 1.3;
  }
}
@media (hover: hover) {
  .contacts__value:hover {
    color: #7c86ff;
  }
}
.contacts__value--color {
  color: #1d293d;
}
@media (hover: hover) {
  .contacts__value--color:hover {
    color: #372aac;
  }
}
@media (hover: hover) {
  .contacts__value--text:hover {
    color: #1d293d;
  }
}
.contacts__value--size {
  font-size: 18px;
  line-height: 1;
}
@media (max-width: 1279px) {
  .contacts__value--size {
    font-size: 16px;
    line-height: 1.8;
  }
}
.contacts__social {
  display: flex;
  gap: 16px;
}

.ymaps3x0--map-container {
  border-radius: 48px;
}
@media (max-width: 1023px) {
  .ymaps3x0--map-container {
    border-radius: 32px;
  }
}

.reviews {
  display: flex;
  gap: 140px;
}
@media (max-width: 1637px) {
  .reviews {
    gap: 100px;
  }
}
@media (max-width: 1279px) {
  .reviews {
    gap: 32px;
  }
}
@media (max-width: 1023px) {
  .reviews {
    flex-direction: column;
  }
}
.reviews__cards {
  display: grid;
  grid-template-columns: repeat(3, 342px);
  gap: 15px;
}
@media (max-width: 1637px) {
  .reviews__cards {
    grid-template-columns: repeat(3, 230px);
  }
}
@media (max-width: 1279px) {
  .reviews__cards {
    grid-template-columns: repeat(3, 190px);
  }
}
@media (max-width: 1023px) {
  .reviews__cards {
    grid-template-columns: repeat(3, 1fr);
  }
}
@media (max-width: 639px) {
  .reviews__cards {
    grid-template-columns: 1fr;
  }
}
.reviews__link {
  background-color: #f1f5f9;
  border-radius: 24px;
  padding: 20px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.reviews__logo {
  width: 140px;
  height: 40px;
  object-fit: contain;
}
.reviews__wrapper {
  display: flex;
  gap: 10px;
}
.reviews__icon {
  font-size: 24px;
  color: #ffd232;
}
.reviews__numbers {
  display: flex;
  flex-direction: column;
  gap: 5px;
}
.reviews__estimation {
  font-family: "Vela Sans";
  font-weight: 800;
  font-size: 24px;
  line-height: 1.5;
}
@media (max-width: 1279px) {
  .reviews__estimation {
    font-size: 20px;
  }
}
@media (max-width: 639px) {
  .reviews__estimation {
    font-size: 24px;
  }
}
.reviews__estimation span {
  color: #90a1b9;
}
.reviews__quantity {
  font-family: "Vela Sans";
  color: #90a1b9;
  font-weight: 600;
  font-size: 14px;
  line-height: 1;
}

.drawer {
  width: 100%;
  display: none;
  z-index: 19;
  position: fixed;
  gap: 32px;
  padding-top: 65px;
  padding-right: 24px;
  padding-bottom: 24px;
  padding-left: 24px;
  border-bottom-right-radius: 32px;
  border-bottom-left-radius: 32px;
  background: rgba(255, 255, 255, 0.8);
  backdrop-filter: blur(15px);
  box-shadow: 0px 20px 40px 0px rgba(101, 116, 139, 0.2);
  transform: translateY(-100%);
  transition: 0.38s ease-in-out;
  opacity: 0;
}
.drawer--open {
  transform: translateY(0%);
  opacity: 1;
}
@media (max-width: 1023px) {
  .drawer {
    display: flex;
    flex-direction: column;
  }
}
.drawer__item {
  padding-top: 32px;
  border-top: 1px solid #cad5e2;
}
.drawer__socials {
  display: flex;
  gap: 16px;
}
.drawer__buttons {
  display: flex;
  justify-content: flex-end;
  width: calc(100% + 6px);
  gap: 4px;
}

.profile {
  display: flex;
  align-items: center;
  gap: 12px;
}
@media (hover: hover) {
  .profile:hover .profile__icon {
    color: #372aac;
  }
}
.profile__icon {
  font-size: 32px;
  color: #90a1b9;
  transition: color 0.38s ease-in-out;
}
.profile__text {
  color: #1d293d;
  font-size: 14px;
  transition: color 0.38s ease-in-out;
}
@media (max-width: 1023px) {
  .profile__text {
    font-size: 18px;
    font-weight: 500;
  }
}

.modal {
  display: none;
  background-color: #f1f5f9;
  border-radius: 32px;
  max-width: 650px;
}
.modal--form.f-html {
  max-height: fit-content !important;
}
.modal--small {
  max-width: 479px;
}
.modal__form {
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 32px;
}
.modal__container {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px;
  padding: 32px;
}
.modal__container-text {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  text-align: center;
}
.modal__check {
  width: 120px;
  height: 120px;
  object-fit: cover;
}
.f-button[data-fancybox-close] {
  top: 30px !important;
  right: 29px !important;
  width: 24px !important;
  height: 24px !important;
  background: transparent;
}
.f-button[data-fancybox-close]::after {
  content: url('data:image/svg+xml,<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M18.851 6.4512C18.9366 6.36579 19.0044 6.26437 19.0507 6.15273C19.0971 6.0411 19.1209 5.92143 19.121 5.80057C19.1211 5.6797 19.0974 5.56001 19.0512 5.44831C19.005 5.33662 18.9373 5.23512 18.8518 5.1496C18.7664 5.06408 18.665 4.99623 18.5534 4.94991C18.4417 4.90358 18.3221 4.8797 18.2012 4.87963C18.0803 4.87956 17.9606 4.90329 17.849 4.94947C17.7373 4.99566 17.6358 5.06339 17.5502 5.1488L11.9998 10.6992L6.45104 5.1488C6.27833 4.97609 6.04409 4.87906 5.79984 4.87906C5.55559 4.87906 5.32135 4.97609 5.14864 5.1488C4.97593 5.32151 4.87891 5.55575 4.87891 5.8C4.87891 6.04425 4.97593 6.27849 5.14864 6.4512L10.699 12L5.14864 17.5488C5.06313 17.6343 4.99529 17.7358 4.94901 17.8476C4.90273 17.9593 4.87891 18.0791 4.87891 18.2C4.87891 18.3209 4.90273 18.4407 4.94901 18.5524C4.99529 18.6642 5.06313 18.7657 5.14864 18.8512C5.32135 19.0239 5.55559 19.1209 5.79984 19.1209C5.92078 19.1209 6.04054 19.0971 6.15227 19.0508C6.264 19.0046 6.36553 18.9367 6.45104 18.8512L11.9998 13.3008L17.5502 18.8512C17.7229 19.0237 17.9571 19.1205 18.2012 19.1204C18.4453 19.1202 18.6793 19.0231 18.8518 18.8504C19.0243 18.6777 19.1212 18.4435 19.121 18.1994C19.1209 17.9553 19.0237 17.7213 18.851 17.5488L13.3006 12L18.851 6.4512Z" fill="%2390A1B9"/></svg>');
}

.f-button[data-fancybox-close] svg {
  display: none;
}

.fancybox__nav[data-fancybox-close] svg {
  display: block;
}

.f-button[data-panzoom-action="toggleFull"],
.f-button[data-fullscreen-action="toggle"] {
  display: none;
}

/*# sourceMappingURL=style.css.map */
