html {
  margin: 0;
  padding: 0;
  box-sizing: border-box
}

body {
  margin: 0;
  padding: 0;
  min-height: 100svh;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%
}

.page-header {
  position: relative;
  z-index: 100;
  background: linear-gradient(135deg, #121826f7 0%, #1c263af2 60%, #26344eed 100%);
  backdrop-filter: blur(18px);
  -webkit-backdrop-filter: blur(18px);
  border-bottom: 1px solid #5681aa2e;
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.page-header__inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 32px 56px;
  display: flex;
  align-items: stretch;
  gap: 56px
}

.brand-box {
  display: flex;
  align-items: center;
  gap: 16px;
  flex-shrink: 0
}

.brand-box__img-wrap {
  width: 68px;
  height: 68px;
  background: #c5c9dd1f;
  border: 1px solid #5681aa52;
  border-radius: 28px 3px 28px 3px;
  box-shadow: -1px 5px 14px 0 #5681aa1c inset 0 1px 2px 0 #c5c9dd14;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px
}

.brand-box__img-wrap img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  display: block
}

.brand-box__name {
  font-family: 'Arimo', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: -.02em;
  color: #EAEAF2;
  white-space: nowrap
}

.brand-box__name span {
  display: block;
  font-size: 14px;
  font-weight: 400;
  color: #c5c9dda6;
  letter-spacing: .01em;
  margin-top: 4px
}

.hd-right {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  flex: 1;
  gap: 16px
}

.hd-contacts {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 32px
}

.hd-contact-link {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #c5c9ddcc;
  text-decoration: none;
  border-radius: 3px;
  padding: 8px 16px;
  background: #5681aa14;
  border: 1px solid #5681aa26;
  transition: color .22s cubic-bezier(0.4, 0, 0.2, 1), background .25s cubic-bezier(0.4, 0, 0.2, 1), border-color .22s cubic-bezier(0.4, 0, 0.2, 1);
  min-height: 44px
}

.hd-contact-link:hover {
  color: #EAEAF2;
  background: #5681aa2e;
  border-color: #5681aa61
}

.hd-contact-link:focus {
  outline: none;
  transform: scale(1.02);
  color: #EAEAF2
}

.hd-contact-link .material-icons {
  font-size: 17px;
  color: #5681AA;
  flex-shrink: 0
}

.hd-menu {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0
}

.hd-menu__item {
  display: flex
}

.hd-menu__link {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.6;
  color: #eaeaf2bf;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 3px;
  border: 1px solid transparent;
  display: flex;
  align-items: center;
  min-height: 44px;
  white-space: nowrap;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1), background .28s cubic-bezier(0.0, 0, 0.2, 1), border-color .2s cubic-bezier(0.4, 0, 0.2, 1);
  perspective: 600px
}

.hd-menu__link:hover {
  color: #EAEAF2;
  background: #5681aa21;
  border-color: #5681aa38;
  transform: perspective(600px) rotateX(2deg)
}

.hd-menu__link:focus {
  outline: none;
  transform: scale(1.02);
  color: #EAEAF2
}

.hd-menu__link--active {
  color: #EAEAF2;
  background: #5681aa33;
  border-color: #5681aa59
}

.page-footer {
  position: relative;
  background: linear-gradient(180deg, #0e1520 0%, #111a2a 100%);
  border-top: 1px solid #5681aa33
}

.page-footer::before {
  content: '';
  position: absolute;
  inset: 0;
  background-image: repeating-linear-gradient(0deg, transparent, transparent 28px, #5681aa08 28px, #5681aa08 29px), repeating-linear-gradient(90deg, transparent, transparent 28px, #5681aa08 28px, #5681aa08 29px);
  pointer-events: none
}

.ft-top {
  max-width: 1500px;
  margin: 0 auto;
  padding: 56px 56px 32px;
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 56px;
  position: relative
}

.ft-brand {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px
}

.ft-brand__img-wrap {
  width: 68px;
  height: 68px;
  background: #c5c9dd14;
  border: 1px solid #5681aa47;
  border-radius: 3px 28px 3px 28px;
  box-shadow: -1px 5px 14px 0 #5681aa1c inset 0 1px 2px 0 #c5c9dd0f;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 8px
}

.ft-brand__img-wrap img {
  width: 52px;
  height: 52px;
  object-fit: contain;
  display: block
}

.ft-brand__name {
  font-family: 'Arimo', sans-serif;
  font-size: 17px;
  font-weight: 700;
  line-height: 1.2;
  color: #EAEAF2;
  letter-spacing: -.01em
}

.ft-brand__desc {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.9;
  color: #c5c9dd8c
}

.ft-cols {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px
}

.ft-col__label {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 700;
  line-height: 1.2;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #5681AA;
  margin: 0 0 16px;
  padding-bottom: 8px;
  border-bottom: 1px solid #5681aa33
}

.ft-links {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.ft-links__item a {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #c5c9ddb3;
  text-decoration: none;
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px;
  border-radius: 3px;
  transition: color .22s cubic-bezier(0.4, 0, 0.2, 1), background .25s cubic-bezier(0.4, 0, 0.2, 1);
  min-height: 44px
}

.ft-links__item a:hover {
  color: #EAEAF2;
  background: #5681aa1a
}

.ft-links__item a:focus {
  outline: none;
  transform: scale(1.02);
  color: #EAEAF2
}

.ft-links__item a .material-icons {
  font-size: 14px;
  color: #5681aa99;
  flex-shrink: 0
}

.ft-contact-item {
  display: flex;
  align-items: flex-start;
  gap: 8px;
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #c5c9ddb3;
  margin-bottom: 8px
}

.ft-contact-item .material-icons {
  font-size: 17px;
  color: #5681AA;
  flex-shrink: 0;
  margin-top: 2px
}

.ft-contact-item a {
  color: #c5c9ddb3;
  text-decoration: none;
  transition: color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.ft-contact-item a:hover {
  color: #EAEAF2
}

.ft-contact-item a:focus {
  outline: none;
  transform: scale(1.02)
}

.ft-bottom {
  max-width: 1500px;
  margin: 0 auto;
  padding: 16px 56px 32px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  border-top: 1px solid #5681aa1f;
  position: relative
}

.ft-legal {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 8px;
  list-style: none;
  margin: 0;
  padding: 0
}

.ft-legal__item a {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #c5c9dd73;
  text-decoration: none;
  padding: 8px;
  border-radius: 3px;
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.ft-legal__item a:hover {
  color: #c5c9ddcc
}

.ft-legal__item a:focus {
  outline: none;
  transform: scale(1.02)
}

.ft-legal__sep {
  color: #5681aa40;
  font-size: 14px;
  line-height: 1.6;
  font-family: 'Arimo', sans-serif;
  user-select: none
}

.ft-copy {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.6;
  color: #c5c9dd59
}

.ck-toast {
  display: none;
  position: fixed;
  top: 32px;
  left: 32px;
  z-index: 1000;
  width: 320px;
  background: linear-gradient(135deg, #121826fa 0%, #1c263af7 100%);
  border: 1px solid #5681aa47;
  border-radius: 28px 3px 28px 3px;
  box-shadow: -1px 8px 40px 0 #5681aa1c -1px 5px 14px 0 #5681aa1c;
  padding: 16px;
  transform: translateY(-120%);
  transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), opacity .22s cubic-bezier(0.4, 0, 0.2, 1);
  opacity: 0
}

.ck-toast.ck-visible {
  transform: translateY(0);
  opacity: 1
}

.ck-toast__icon {
  width: 36px;
  height: 36px;
  background: #5681aa26;
  border-radius: 28px;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 8px
}

.ck-toast__icon .material-icons {
  font-size: 17px;
  color: #5681AA
}

.ck-toast__body {
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.9;
  color: #c5c9ddcc;
  margin-bottom: 16px
}

.ck-toast__body strong {
  color: #EAEAF2;
  font-weight: 600
}

.ck-toast__uses {
  list-style: none;
  margin: 8px 0 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 4px
}

.ck-toast__uses li {
  font-size: 14px;
  line-height: 1.6;
  color: #c5c9dd99;
  display: flex;
  align-items: center;
  gap: 8px
}

.ck-toast__uses li .material-icons {
  font-size: 14px;
  color: #5681aab3
}

.ck-toast__btns {
  display: flex;
  gap: 8px
}

.ck-btn-accept,
.ck-btn-decline {
  flex: 1;
  font-family: 'Arimo', sans-serif;
  font-size: 14px;
  font-weight: 600;
  line-height: 1.2;
  border: none;
  cursor: pointer;
  padding: 8px 16px;
  border-radius: 28px;
  min-height: 44px;
  transition: background .25s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.ck-btn-accept {
  background: #5681AA;
  color: #EAEAF2;
  box-shadow: -1px 3px 6px 0 #5681aa0f
}

.ck-btn-accept:hover {
  background: #6a95be;
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.ck-btn-accept:focus {
  outline: none;
  transform: scale(1.02)
}

.ck-btn-decline {
  background: #5681aa1a;
  color: #c5c9ddbf;
  border: 1px solid #5681aa38
}

.ck-btn-decline:hover {
  background: #5681aa2e;
  color: #EAEAF2
}

.ck-btn-decline:focus {
  outline: none;
  transform: scale(1.02)
}

@media (max-width: 1024px) {
  .page-header__inner {
    padding: 32px;
    gap: 32px;
    flex-wrap: wrap
  }

  .hd-right {
    min-width: 0
  }

  .ft-top {
    padding: 56px 32px 32px;
    grid-template-columns: 1fr;
    gap: 32px
  }

  .ft-cols {
    grid-template-columns: repeat(2, 1fr)
  }

  .ft-bottom {
    padding: 16px 32px 32px
  }
}

@media (max-width: 640px) {
  .page-header__inner {
    padding: 16px;
    gap: 16px
  }

  .hd-contacts {
    gap: 8px;
    flex-wrap: wrap
  }

  .hd-menu {
    gap: 8px
  }

  .ft-top {
    padding: 32px 16px 16px
  }

  .ft-cols {
    grid-template-columns: 1fr
  }

  .ft-bottom {
    padding: 16px;
    flex-direction: column;
    align-items: flex-start
  }

  .ck-toast {
    left: 16px;
    right: 16px;
    width: auto;
    top: 16px
  }
}

.terms-area {
  max-width: 1500px;
  margin: 0 auto;
  padding: 56px 32px;
  background: #13151f;
  color: #EAEAF2
}

.terms-area p {
  font-size: 17px;
  line-height: 1.9;
  margin-bottom: 16px;
  color: #EAEAF2
}

.terms-area ul,
.terms-area ol {
  font-size: 17px;
  line-height: 1.9;
  margin-bottom: 16px;
  padding-left: 32px;
  color: #EAEAF2
}

.terms-area li {
  margin-bottom: 8px;
  font-size: 17px;
  line-height: 1.9;
  color: #EAEAF2
}

.terms-area li::marker {
  color: #5681AA
}

.terms-area strong,
.terms-area b {
  font-weight: 700;
  color: #fff;
  letter-spacing: -.01em
}

.terms-area em,
.terms-area i {
  font-style: italic;
  color: #C5C9DD
}

.terms-area a {
  color: #5681AA;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color .22s cubic-bezier(0.4, 0, 0.2, 1), text-decoration-color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.terms-area a:hover {
  color: #C5C9DD;
  text-decoration-color: #C5C9DD
}

.terms-area a:visited {
  color: #7a96b8
}

.terms-area table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 32px;
  font-size: 17px;
  line-height: 1.6;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  border-radius: 3px;
  overflow: hidden
}

.terms-area thead {
  background: #1e2333
}

.terms-area tbody tr {
  border-bottom: 1px solid #c5c9dd1f;
  transition: background .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.terms-area tbody tr:hover {
  background: #5681aa12
}

.terms-area th {
  padding: 16px;
  text-align: left;
  font-size: 14px;
  font-weight: 700;
  letter-spacing: .04em;
  color: #C5C9DD;
  border-bottom: 2px solid #5681aa66;
  text-transform: uppercase
}

.terms-area td {
  padding: 16px;
  font-size: 17px;
  color: #EAEAF2;
  vertical-align: top
}

.terms-area hr {
  border: none;
  height: 1px;
  background: linear-gradient(90deg, transparent, #5681aa80 30%, #c5c9dd66 60%, transparent);
  margin: 32px 0
}

@media (max-width: 768px) {
  .terms-area {
    padding: 32px 16px
  }

  .terms-area table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
  }

  .terms-area th,
  .terms-area td {
    padding: 8px;
    font-size: 14px
  }

  .terms-area p,
  .terms-area ul,
  .terms-area ol,
  .terms-area li {
    font-size: 17px
  }
}

.st {
  background: #0e1118;
  color: #EAEAF2;
  overflow-x: clip;
  position: relative
}

.st .pg-wrap {
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 56px
}

.st .dot-div {
  border: none;
  border-top: 2px dotted #c5c9dd2e;
  margin: 0
}

.st .ttl {
  padding: 96px 0 56px;
  position: relative
}

.st .ttl-circles {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden
}

.st .ttl-circles span {
  position: absolute;
  border-radius: 50%;
  border: 1px solid #5681aa1f
}

.st .ttl-circles span:nth-child(1) {
  width: 480px;
  height: 480px;
  top: -120px;
  right: -80px
}

.st .ttl-circles span:nth-child(2) {
  width: 280px;
  height: 280px;
  top: 40px;
  right: 60px
}

.st .ttl-circles span:nth-child(3) {
  width: 160px;
  height: 160px;
  bottom: -40px;
  left: 120px;
  border-color: #c5c9dd14
}

.st .ttl-grid {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 56px
}

.st .ttl-img-card {
  flex: 0 0 320px;
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.st .ttl-img-card img {
  width: 320px;
  height: 420px;
  object-fit: cover;
  object-position: center;
  display: block;
  clip-path: polygon(0 0, 100% 0, 100% 88%, 85% 100%, 0 100%)
}

.st .ttl-scanline {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(0deg, transparent, transparent 3px, #0e11182e 3px, #0e11182e 4px);
  pointer-events: none;
  border-radius: 28px
}

.st .ttl-text {
  flex: 1;
  padding-top: 32px
}

.st .ttl-label {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .12em;
  color: #5681AA;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block
}

.st .ttl-h1 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -.03em;
  text-transform: uppercase;
  color: #EAEAF2;
  margin-bottom: 32px
}

.st .ttl-h1 .acc-word {
  background: #5681AA;
  padding: 0 8px;
  border-radius: 3px;
  color: #0e1118
}

.st .ttl-desc {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  max-width: 540px
}

.st .hes {
  padding: 96px 0;
  background: #131720
}

.st .hes-inner {
  display: flex;
  flex-direction: row;
  gap: 56px;
  align-items: flex-start
}

.st .hes-left {
  flex: 0 0 280px
}

.st .hes-h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #EAEAF2;
  margin-bottom: 32px
}

.st .hes-img-wrap {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  width: 280px;
  height: 360px;
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.st .hes-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  clip-path: polygon(12% 0, 100% 0, 100% 100%, 0 100%, 0 12%)
}

.st .hes-right {
  flex: 1;
  padding-top: 8px
}

.st .hes-body {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.st .hes-para-intro {
  font-size: 17px;
  line-height: 1.9;
  color: #5681AA;
  font-weight: 600
}

.st .hes-para {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD
}

.st .hes-note {
  border-left: 3px solid #5681AA;
  border-top: 1px solid #5681aa4d;
  border-bottom: 1px solid #5681aa4d;
  padding: 16px 32px;
  border-radius: 3px;
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  background: #5681aa0f;
  box-shadow: inset 1px 1px 2px #5681aa14
}

.st .avail {
  padding: 96px 0;
  position: relative
}

.st .avail-bg-pat {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden
}

.st .avail-bg-pat svg {
  position: absolute;
  bottom: -40px;
  left: -60px;
  opacity: .04;
  width: 600px;
  height: 600px
}

.st .avail-top {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 56px;
  margin-bottom: 56px
}

.st .avail-h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #EAEAF2;
  flex: 1
}

.st .avail-sub {
  flex: 0 0 380px;
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD
}

.st .avail-cards {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px
}

.st .av-card {
  background: #131720;
  border-radius: 28px;
  padding: 32px;
  border: 1px solid #c5c9dd14;
  box-shadow: -1px 3px 6px 0 #5681aa0f;
  transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1), border-color .22s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: default
}

.st .av-card:hover {
  transform: perspective(800px) rotateX(2deg) rotateY(-2deg);
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  border-color: #5681aa4d
}

.st .av-card-icon {
  width: 48px;
  height: 48px;
  border-radius: 3px;
  background: #5681aa24;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 16px
}

.st .av-card-icon .material-icons {
  font-size: 24px;
  color: #5681AA
}

.st .av-card-h {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  font-weight: 700;
  margin-bottom: 16px;
  letter-spacing: -.01em
}

.st .av-card-p {
  font-size: 14px;
  line-height: 1.9;
  color: #C5C9DD
}

.st .av-card-tag {
  display: inline-block;
  margin-top: 16px;
  font-size: 14px;
  line-height: 1.2;
  color: #5681AA;
  background: #5681aa1a;
  border-radius: 3px;
  padding: 8px 16px
}

.st .comm {
  padding: 96px 0;
  background: linear-gradient(0deg, #0e1118 0%, #161b26 100%);
  position: relative
}

.st .comm-grid {
  display: flex;
  flex-direction: row;
  gap: 56px;
  align-items: center
}

.st .comm-img-side {
  flex: 0 0 400px;
  position: relative
}

.st .comm-img-wrap {
  position: relative;
  border-radius: 28px;
  overflow: hidden;
  width: 400px;
  height: 500px;
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.st .comm-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  clip-path: polygon(0 0, 88% 0, 100% 12%, 100% 100%, 0 100%)
}

.st .comm-deco {
  position: absolute;
  bottom: -16px;
  right: -16px;
  width: 120px;
  height: 120px;
  border-radius: 28px;
  border: 2px solid #5681aa33;
  pointer-events: none
}

.st .comm-text {
  flex: 1
}

.st .comm-h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #EAEAF2;
  margin-bottom: 32px
}

.st .comm-h2 .acc-word {
  background: #5681aa38;
  padding: 0 8px;
  border-radius: 3px
}

.st .comm-cols {
  display: flex;
  flex-direction: row;
  gap: 32px
}

.st .comm-col-narrow {
  flex: 0 0 160px;
  font-size: 17px;
  line-height: 1.9;
  color: #5681AA;
  font-weight: 600
}

.st .comm-col-wide {
  flex: 1;
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  display: flex;
  flex-direction: column;
  gap: 32px
}

.st .comm-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.st .comm-list li {
  font-size: 14px;
  line-height: 1.6;
  padding: 8px 16px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  gap: 16px
}

.st .comm-list li:nth-child(odd) {
  background: #5681aa1a;
  color: #EAEAF2
}

.st .comm-list li:nth-child(even) {
  background: #c5c9dd0f;
  color: #C5C9DD
}

.st .comm-list li .material-icons {
  font-size: 18px;
  color: #5681AA;
  flex-shrink: 0
}

.st .nums {
  padding: 96px 0;
  background: #EAEAF2;
  position: relative
}

.st .nums-bg-pat {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden
}

.st .nums-bg-pat svg {
  position: absolute;
  top: -80px;
  right: -100px;
  opacity: .06;
  width: 700px;
  height: 700px
}

.st .nums-top {
  text-align: center;
  margin-bottom: 56px
}

.st .nums-h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #0e1118;
  margin-bottom: 16px
}

.st .nums-sub {
  font-size: 17px;
  line-height: 1.6;
  color: #5681AA;
  max-width: 560px;
  margin: 0 auto
}

.st .nums-hero-row {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: stretch
}

.st .nums-big {
  flex: 0 0 420px;
  background: #0e1118;
  border-radius: 28px;
  padding: 56px 32px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  text-align: center;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  position: relative;
  overflow: hidden
}

.st .nums-big::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  background: linear-gradient(90deg, #5681AA, #C5C9DD);
  border-radius: 28px 28px 0 0
}

.st .nums-big-num {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -.04em;
  color: #5681AA;
  font-weight: 800;
  margin-bottom: 8px
}

.st .nums-big-label {
  font-size: 17px;
  line-height: 1.6;
  color: #C5C9DD;
  max-width: 260px
}

.st .nums-big-ctx {
  margin-top: 32px;
  font-size: 14px;
  line-height: 1.9;
  color: #c5c9dd99
}

.st .nums-grid {
  flex: 1;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.st .num-item {
  background: #fff;
  border-radius: 28px;
  padding: 32px;
  border: 1px solid #5681aa1f;
  box-shadow: -1px 3px 6px 0 #5681aa0f;
  transition: transform .25s cubic-bezier(0.0, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.0, 0, 0.2, 1)
}

.st .num-item:hover {
  transform: perspective(600px) rotateY(3deg);
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.st .num-item-val {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: #0e1118;
  font-weight: 800;
  margin-bottom: 8px
}

.st .num-item-desc {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA
}

.st .fit {
  padding: 96px 0;
  background: #0e1118
}

.st .fit-inner {
  display: flex;
  flex-direction: row;
  gap: 56px
}

.st .fit-text {
  flex: 1
}

.st .fit-h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #EAEAF2;
  margin-bottom: 32px
}

.st .fit-intro {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  margin-bottom: 32px
}

.st .fit-two-col {
  display: flex;
  flex-direction: row;
  gap: 32px
}

.st .fit-col {
  flex: 1;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.st .fit-col-h {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #5681AA;
  margin-bottom: 8px;
  padding-bottom: 8px;
  border-bottom: 1px solid #5681aa33
}

.st .fit-item {
  font-size: 14px;
  line-height: 1.9;
  padding: 8px 16px;
  border-radius: 3px;
  border-left: 2px solid transparent;
  border-right: 1px solid #c5c9dd0d;
  border-top: 1px solid #c5c9dd0a;
  border-bottom: 1px solid #c5c9dd0a
}

.st .fit-col.yes .fit-item:nth-child(odd) {
  background: #5681aa1a;
  color: #EAEAF2;
  border-left-color: #5681AA
}

.st .fit-col.yes .fit-item:nth-child(even) {
  background: #5681aa0d;
  color: #C5C9DD;
  border-left-color: #5681aa66
}

.st .fit-col.no .fit-item:nth-child(odd) {
  background: #c5c9dd0d;
  color: #C5C9DD;
  border-left-color: #c5c9dd33
}

.st .fit-col.no .fit-item:nth-child(even) {
  background: #c5c9dd08;
  color: #c5c9ddb3;
  border-left-color: #c5c9dd1a
}

.st .fit-portrait {
  flex: 0 0 260px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  align-items: center
}

.st .fit-portrait-wrap {
  width: 220px;
  height: 308px;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  flex-shrink: 0
}

.st .fit-portrait-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  clip-path: polygon(0 0, 100% 0, 100% 90%, 80% 100%, 0 100%)
}

.st .fit-quote {
  font-size: 14px;
  line-height: 1.9;
  color: #C5C9DD;
  text-align: center;
  font-style: italic;
  padding: 16px;
  background: #5681aa12;
  border-radius: 3px;
  border-top: 1px solid #5681aa26;
  border-bottom: 1px solid #5681aa26
}

.st .fit-quote-name {
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  text-align: center
}

@keyframes diag-in {
  from {
    opacity: 0;
    transform: translate(-24px, 24px)
  }

  to {
    opacity: 1;
    transform: translate(0, 0)
  }
}

.st .ttl-text {
  animation: diag-in .26s cubic-bezier(0.4, 0, 0.2, 1) .05s both
}

.st .ttl-img-card {
  animation: diag-in .26s cubic-bezier(0.4, 0, 0.2, 1) 0s both
}

.st .av-card {
  position: relative
}

.st .av-card::after {
  content: "";
  position: absolute;
  inset: -1px;
  border-radius: 28px;
  border: 2px solid transparent;
  transition: border-color .2s cubic-bezier(0.4, 0, 0.2, 1);
  pointer-events: none
}

.st .av-card:hover::after {
  border-color: #5681aa80
}

@media (max-width: 1100px) {
  .st .pg-wrap {
    padding: 0 32px
  }

  .st .ttl-h1 {
    font-size: 54px
  }

  .st .avail-cards {
    grid-template-columns: 1fr 1fr
  }

  .st .nums-hero-row {
    flex-direction: column
  }

  .st .nums-big {
    flex: none;
    width: 100%
  }

  .st .nums-grid {
    grid-template-columns: 1fr 1fr
  }
}

@media (max-width: 768px) {
  .st .pg-wrap {
    padding: 0 16px
  }

  .st .ttl-grid {
    flex-direction: column
  }

  .st .ttl-img-card {
    flex: none;
    width: 100%;
    max-width: 320px
  }

  .st .ttl-h1 {
    font-size: 54px
  }

  .st .hes-inner {
    flex-direction: column
  }

  .st .hes-left {
    flex: none;
    width: 100%
  }

  .st .hes-img-wrap {
    width: 100%;
    max-width: 320px
  }

  .st .avail-top {
    flex-direction: column;
    gap: 16px
  }

  .st .avail-sub {
    flex: none;
    width: 100%
  }

  .st .avail-cards {
    grid-template-columns: 1fr
  }

  .st .comm-grid {
    flex-direction: column
  }

  .st .comm-img-side {
    flex: none;
    width: 100%
  }

  .st .comm-img-wrap {
    width: 100%;
    max-width: 400px;
    height: 340px
  }

  .st .comm-cols {
    flex-direction: column
  }

  .st .comm-col-narrow {
    flex: none;
    width: 100%
  }

  .st .nums-grid {
    grid-template-columns: 1fr
  }

  .st .fit-inner {
    flex-direction: column
  }

  .st .fit-portrait {
    flex: none;
    width: 100%;
    align-items: flex-start
  }

  .st .fit-two-col {
    flex-direction: column
  }

  .st .nums-big-num {
    font-size: 54px
  }
}

.arc-pg {
  background: #13151f;
  overflow-x: clip;
  position: relative
}

.arc-pg__schema {
  display: none
}

.arc-pg .diag-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0
}

.arc-pg .diag-bg__stripe {
  position: absolute;
  width: 2px;
  height: 140%;
  background: linear-gradient(to bottom, transparent, #5681aa12, transparent);
  transform-origin: top center
}

.arc-pg .diag-bg__stripe:nth-child(1) {
  left: 12%;
  transform: rotate(18deg)
}

.arc-pg .diag-bg__stripe:nth-child(2) {
  left: 28%;
  transform: rotate(18deg);
  height: 110%;
  top: -10%;
  background: linear-gradient(to bottom, transparent, #c5c9dd0d, transparent)
}

.arc-pg .diag-bg__stripe:nth-child(3) {
  left: 55%;
  transform: rotate(18deg)
}

.arc-pg .diag-bg__stripe:nth-child(4) {
  left: 78%;
  transform: rotate(18deg);
  height: 90%;
  top: 5%;
  background: linear-gradient(to bottom, transparent, #c5c9dd0a, transparent)
}

.arc-pg .lead-blk {
  position: relative;
  z-index: 1;
  padding: 96px 56px 56px;
  max-width: 1500px;
  margin: 0 auto
}

.arc-pg .lead-blk__top {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 56px;
  margin-bottom: 56px
}

.arc-pg .lead-blk__left {
  flex: 0 0 340px
}

.arc-pg .lead-blk__right {
  flex: 1
}

.arc-pg .lead-blk__tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 32px;
  padding: 8px 16px;
  border: 1px solid #5681aa4d;
  border-radius: 3px;
  background: #5681aa0f
}

.arc-pg .lead-blk__tag .material-icons {
  font-size: 14px
}

.arc-pg .lead-blk__h1 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: #EAEAF2;
  text-transform: uppercase;
  margin: 0 0 32px
}

.arc-pg .lead-blk__h1 .accent-word {
  position: relative;
  display: inline-block;
  color: #13151f;
  padding: 0 8px
}

.arc-pg .lead-blk__h1 .accent-word::before {
  content: '';
  position: absolute;
  inset: 0;
  background: #5681AA;
  z-index: -1;
  border-radius: 3px
}

.arc-pg .lead-blk__desc {
  font-size: 17px;
  line-height: 1.9;
  color: #9aa3be;
  max-width: 460px;
  margin: 0
}

.arc-pg .lead-blk__curve {
  position: absolute;
  left: 56px;
  pointer-events: none
}

.arc-pg .lead-blk__img-wrap {
  position: relative;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  flex: 1;
  max-width: 680px
}

.arc-pg .lead-blk__img-wrap img {
  width: 100%;
  height: 380px;
  object-fit: cover;
  display: block;
  border-radius: 3px;
  transition: transform .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.arc-pg .lead-blk__img-wrap:hover img {
  transform: scale(1.03)
}

.arc-pg .lead-blk__img-fade {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 55%;
  background: linear-gradient(to top, #13151f 0%, transparent 100%);
  pointer-events: none
}

.arc-pg .lead-blk__edge {
  position: absolute;
  left: 0;
  top: 96px;
  bottom: 0;
  width: 4px;
  background: linear-gradient(to top, #5681AA, #5681aa1a);
  border-radius: 0 3px 3px 0
}

.arc-pg .lead-blk__stats {
  display: flex;
  flex-direction: row;
  gap: 32px;
  padding-top: 32px;
  border-top: 1px solid #c5c9dd1a
}

.arc-pg .stat-item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1;
  transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1);
  perspective: 600px
}

.arc-pg .stat-item:hover {
  transform: perspective(600px) rotateX(4deg) rotateY(-3deg)
}

.arc-pg .stat-item__num {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.04em;
  color: #5681AA;
  font-weight: 700
}

.arc-pg .stat-item__num--lg {
  font-size: 70px;
  color: #EAEAF2;
  position: relative;
  display: inline-block
}

.arc-pg .stat-item__label {
  font-size: 14px;
  line-height: 1.6;
  color: #6b7a9e;
  text-transform: uppercase;
  letter-spacing: .06em
}

.arc-pg .stat-item__sub {
  font-size: 14px;
  line-height: 1.6;
  color: #7a85a3
}

.arc-pg .stat-item--hero {
  flex: 0 0 auto;
  padding: 32px;
  background: #5681aa14;
  border: 1px solid #5681aa33;
  border-radius: 3px;
  position: relative;
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.arc-pg .stat-item--hero::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 56px;
  height: 56px;
  border-top: 2px solid #5681aa66;
  border-right: 2px solid #5681aa66;
  border-radius: 0 3px 0 0
}

.arc-pg .stat-item--plain {
  padding: 16px 0;
  border-bottom: 1px solid #c5c9dd14
}

.arc-pg .stat-item--plain:last-child {
  border-bottom: none
}

@keyframes arc-slide-in {
  from {
    opacity: 0;
    transform: translate(-32px, 32px)
  }

  to {
    opacity: 1;
    transform: translate(0, 0)
  }
}

.arc-pg .lead-blk__h1,
.arc-pg .lead-blk__desc,
.arc-pg .lead-blk__tag {
  animation: arc-slide-in .26s cubic-bezier(0.0, 0, 0.2, 1) both
}

.arc-pg .lead-blk__tag {
  animation-delay: .04s
}

.arc-pg .lead-blk__h1 {
  animation-delay: .1s
}

.arc-pg .lead-blk__desc {
  animation-delay: .17s
}

.arc-pg .arc-list-blk {
  position: relative;
  z-index: 1;
  background: #1a1d2b;
  border-top: 1px solid #c5c9dd14;
  box-shadow: inset 2px 0 0 0 #5681aa2e
}

.arc-pg .arc-list-blk__inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 96px 56px;
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 56px
}

.arc-pg .arc-list-blk__aside {
  display: flex;
  flex-direction: column;
  gap: 32px;
  position: sticky;
  top: 32px;
  align-self: start
}

.arc-pg .arc-list-blk__aside-head {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin: 0;
  padding-bottom: 16px;
  border-bottom: 1px solid #5681aa4d
}

.arc-pg .topic-list {
  list-style: none;
  margin: 0;
  padding: 0;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.arc-pg .topic-list li {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.6;
  padding: 8px 16px;
  border-radius: 3px;
  transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: default
}

.arc-pg .topic-list li:nth-child(odd) {
  color: #C5C9DD;
  background: #5681aa12
}

.arc-pg .topic-list li:nth-child(even) {
  color: #9aa3be;
  background: #c5c9dd0a
}

.arc-pg .topic-list li:hover {
  background: #5681aa29;
  color: #EAEAF2
}

.arc-pg .topic-list li .material-icons {
  font-size: 14px;
  color: #5681AA;
  flex-shrink: 0
}

.arc-pg .arc-list-blk__feed {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.arc-pg .arc-list-blk__feed-head {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  gap: 16px;
  margin-bottom: 8px
}

.arc-pg .arc-list-blk__feed-h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: #EAEAF2;
  text-transform: uppercase;
  margin: 0
}

.arc-pg .arc-list-blk__feed-count {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  letter-spacing: .06em
}

.arc-pg .entry-row {
  display: grid;
  grid-template-columns: 1fr auto;
  gap: 32px;
  align-items: start;
  padding: 32px;
  border-radius: 3px;
  background: #5681aa0d;
  border: 1px solid #5681aa1f;
  box-shadow: -1px 3px 6px 0 #5681aa0f;
  transition: background .24s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .24s cubic-bezier(0.4, 0, 0.2, 1), transform .22s cubic-bezier(0.4, 0, 0.2, 1);
  perspective: 800px
}

.arc-pg .entry-row:hover {
  background: #5681aa1a;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  transform: perspective(800px) rotateY(1.5deg) rotateX(-1deg)
}

.arc-pg .entry-row__body {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.arc-pg .entry-row__cats {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px
}

.arc-pg .entry-row__cat {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  padding: 4px 8px;
  border: 1px solid #5681aa59;
  border-radius: 3px;
  background: #5681aa14;
  letter-spacing: .04em
}

.arc-pg .entry-row__h3 {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  margin: 0;
  letter-spacing: -.01em
}

.arc-pg .entry-row__excerpt {
  font-size: 14px;
  line-height: 1.9;
  color: #7a85a3;
  margin: 0;
  max-width: 560px
}

.arc-pg .entry-row__meta {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px
}

.arc-pg .entry-row__author {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #6b7a9e
}

.arc-pg .entry-row__author .material-icons {
  font-size: 14px;
  color: #5681AA
}

.arc-pg .entry-row__dur {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #6b7a9e
}

.arc-pg .entry-row__dur .material-icons {
  font-size: 14px
}

.arc-pg .entry-row__aside {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 16px;
  flex-shrink: 0
}

.arc-pg .entry-row__lvl {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .06em;
  text-transform: uppercase;
  padding: 8px 16px;
  border-radius: 3px
}

.arc-pg .entry-row__lvl--base {
  color: #C5C9DD;
  background: #c5c9dd1a;
  border: 1px solid #c5c9dd33
}

.arc-pg .entry-row__lvl--mid {
  color: #5681AA;
  background: #5681aa1f;
  border: 1px solid #5681aa4d
}

.arc-pg .entry-row__lvl--adv {
  color: #EAEAF2;
  background: #5681aa38;
  border: 1px solid #5681aa73
}

.arc-pg .entry-row__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  text-decoration: none;
  padding: 8px 16px;
  border: 1px solid #5681aa66;
  border-radius: 3px;
  background: #5681aa0f;
  transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), color .22s cubic-bezier(0.4, 0, 0.2, 1), border-color .22s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative;
  overflow: hidden
}

.arc-pg .entry-row__link:hover {
  background: #5681AA;
  color: #13151f;
  border-color: #5681AA
}

.arc-pg .entry-row__link:focus-visible {
  outline: 2px solid #5681AA;
  outline-offset: 3px
}

.arc-pg .entry-row__link .material-icons {
  font-size: 14px
}

.arc-pg .ripple-origin {
  position: absolute;
  border-radius: 28px;
  background: #eaeaf240;
  width: 8px;
  height: 8px;
  transform: scale(0);
  animation: arc-ripple .26s cubic-bezier(0.0, 0, 0.2, 1) forwards;
  pointer-events: none
}

@keyframes arc-ripple {
  to {
    transform: scale(20);
    opacity: 0
  }
}

@media (max-width: 1100px) {
  .arc-pg .lead-blk__top {
    flex-direction: column;
    align-items: flex-start;
    gap: 32px
  }

  .arc-pg .lead-blk__left {
    flex: none
  }

  .arc-pg .lead-blk__img-wrap {
    max-width: 100%;
    width: 100%
  }

  .arc-pg .arc-list-blk__inner {
    grid-template-columns: 1fr
  }

  .arc-pg .arc-list-blk__aside {
    position: static
  }
}

@media (max-width: 768px) {
  .arc-pg .lead-blk {
    padding: 56px 16px 32px
  }

  .arc-pg .lead-blk__h1 {
    font-size: 54px
  }

  .arc-pg .lead-blk__stats {
    flex-direction: column;
    gap: 16px
  }

  .arc-pg .arc-list-blk__inner {
    padding: 56px 16px;
    gap: 32px
  }

  .arc-pg .arc-list-blk__feed-h2 {
    font-size: 17px
  }

  .arc-pg .entry-row {
    grid-template-columns: 1fr
  }

  .arc-pg .entry-row__aside {
    align-items: flex-start;
    flex-direction: row;
    flex-wrap: wrap
  }
}

.mcls {
  background: #12151c;
  overflow-x: clip
}

.mcls .schema-data {
  display: none
}

.mcls .pg-title {
  padding: 96px 56px 56px;
  max-width: 1500px;
  margin: 0 auto;
  position: relative
}

.mcls .pg-title__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 56px;
  align-items: start
}

.mcls .pg-title__left {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.mcls .pg-title__tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  letter-spacing: .08em;
  text-transform: uppercase;
  border: 1px solid #5681aa4d;
  padding: 8px 16px;
  border-radius: 3px;
  width: fit-content;
  box-shadow: -1px 3px 6px 0 #5681aa0f
}

.mcls .pg-title__tag .material-icons {
  font-size: 14px
}

.mcls .pg-title__heading {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.mcls .pg-title__h1 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: #EAEAF2;
  text-transform: uppercase;
  margin: 0
}

.mcls .pg-title__h1-accent {
  display: inline-block;
  background: #5681AA;
  color: #12151c;
  padding: 0 16px;
  border-radius: 3px
}

.mcls .pg-title__sub {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  color: #C5C9DD;
  margin: 0;
  font-weight: 400
}

.mcls .pg-title__desc {
  font-size: 17px;
  line-height: 1.9;
  color: #c5c9ddbf;
  margin: 0;
  max-width: 480px
}

.mcls .pg-title__meta {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: center
}

.mcls .pg-title__meta-item {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.mcls .pg-title__meta-label {
  font-size: 14px;
  line-height: 1.6;
  color: #c5c9dd80;
  text-transform: uppercase;
  letter-spacing: .06em
}

.mcls .pg-title__meta-val {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2
}

.mcls .pg-title__right {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 32px
}

.mcls .pg-title__img-wrap {
  position: relative;
  width: 100%;
  max-width: 520px
}

.mcls .pg-title__img-frame {
  width: 100%;
  aspect-ratio: 1 / 1;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.mcls .pg-title__img-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(to bottom, transparent 40%, #12151cb3 100%);
  border-radius: 3px
}

.mcls .pg-title__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  filter: sepia(0.35) contrast(1.1) brightness(0.88) saturate(0.8)
}

.mcls .pg-title__deco-rects {
  position: absolute;
  top: -16px;
  right: -16px;
  width: 80px;
  height: 80px;
  pointer-events: none
}

.mcls .pg-title__deco-rects span {
  position: absolute;
  border-radius: 3px;
  border: 1px solid #5681aa38
}

.mcls .pg-title__deco-rects span:nth-child(1) {
  inset: 0
}

.mcls .pg-title__deco-rects span:nth-child(2) {
  inset: 10px;
  border-color: #5681aa29
}

.mcls .pg-title__deco-rects span:nth-child(3) {
  inset: 20px;
  border-color: #5681aa1a
}

.mcls .pg-title__deco-rects span:nth-child(4) {
  inset: 30px;
  border-color: #5681aa0f
}

.mcls .pg-title__reading-line {
  width: 2px;
  height: 96px;
  background: linear-gradient(to top, #5681AA, transparent);
  margin-left: 56px;
  border-radius: 3px;
  align-self: flex-start
}

.mcls .divider-mono {
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 32px 0;
  position: relative
}

.mcls .divider-mono::before,
.mcls .divider-mono::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(to right, transparent, #5681aa40);
  max-width: 300px
}

.mcls .divider-mono::after {
  background: linear-gradient(to left, transparent, #5681aa40)
}

.mcls .divider-mono__sym {
  font-size: 54px;
  line-height: 1.2;
  color: #5681aa2e;
  letter-spacing: -.03em;
  padding: 0 32px;
  font-weight: 700;
  text-transform: uppercase
}

.mcls .prog-section {
  background: linear-gradient(to top, #1e2535 0%, #12151c 100%);
  padding: 56px 0 96px
}

.mcls .prog-section__inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 0 56px
}

.mcls .prog-section__top {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 56px;
  margin-bottom: 56px;
  align-items: start
}

.mcls .prog-section__intro-col {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.mcls .prog-section__eyebrow {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  letter-spacing: .08em;
  text-transform: uppercase
}

.mcls .prog-section__h2 {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  color: #EAEAF2;
  margin: 0;
  text-transform: uppercase;
  text-align: center
}

.mcls .prog-section__body-col {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.mcls .prog-section__lead {
  font-size: 17px;
  line-height: 1.9;
  color: #eaeaf2d9;
  margin: 0
}

.mcls .prog-section__note {
  font-size: 14px;
  line-height: 1.6;
  color: #c5c9dd8c;
  margin: 0
}

.mcls .prog-section__heading-row {
  text-align: center;
  margin-bottom: 56px
}

.mcls .prog-cols {
  display: grid;
  grid-template-columns: 1fr 1.6fr 1fr;
  gap: 32px;
  align-items: start
}

.mcls .prog-card {
  background: #5681aa0f;
  border: 1px solid #5681aa24;
  border-radius: 3px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.mcls .prog-card:hover {
  border-color: #5681aa61;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  transform: perspective(600px) rotateY(-1.5deg) rotateX(0.8deg)
}

.mcls .prog-card.center {
  background: #5681aa1c;
  border-color: #5681aa47;
  padding: 40px 32px
}

.mcls .prog-card.center:hover {
  transform: perspective(600px) rotateY(1.5deg) rotateX(0.8deg)
}

.mcls .prog-card__deco {
  position: absolute;
  bottom: 16px;
  right: 16px;
  width: 48px;
  height: 48px;
  pointer-events: none
}

.mcls .prog-card__deco span {
  position: absolute;
  border-radius: 3px;
  border: 1px solid #c5c9dd1a
}

.mcls .prog-card__deco span:nth-child(1) {
  inset: 0
}

.mcls .prog-card__deco span:nth-child(2) {
  inset: 8px;
  border-color: #c5c9dd12
}

.mcls .prog-card__deco span:nth-child(3) {
  inset: 16px;
  border-color: #c5c9dd0a
}

.mcls .prog-card__icon {
  color: #5681AA;
  font-size: 28px
}

.mcls .prog-card__h {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .04em
}

.mcls .prog-card__text {
  font-size: 14px;
  line-height: 1.9;
  color: #c5c9ddb3;
  margin: 0
}

.mcls .prog-card__list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.mcls .prog-card__list li {
  font-size: 14px;
  line-height: 1.6;
  padding: 8px 16px;
  border-radius: 3px;
  display: flex;
  align-items: center;
  gap: 8px
}

.mcls .prog-card__list li:nth-child(odd) {
  background: #5681aa1a;
  color: #EAEAF2
}

.mcls .prog-card__list li:nth-child(even) {
  background: #c5c9dd12;
  color: #C5C9DD
}

.mcls .prog-card__list li .material-icons {
  font-size: 14px;
  color: #5681AA;
  flex-shrink: 0
}

.mcls .prog-card__reveal {
  overflow: hidden;
  max-height: 0;
  transition: max-height .26s cubic-bezier(0.4, 0, 0.2, 1);
  clip-path: inset(0 0 100% 0);
  transition: clip-path .24s cubic-bezier(0.0, 0, 0.2, 1), max-height .26s cubic-bezier(0.4, 0, 0.2, 1)
}

.mcls .prog-card:hover .prog-card__reveal {
  max-height: 200px;
  clip-path: inset(0 0 0% 0)
}

.mcls .prog-card__reveal-inner {
  padding-top: 16px;
  border-top: 1px solid #5681aa26;
  margin-top: 8px;
  font-size: 14px;
  line-height: 1.9;
  color: #c5c9dda6
}

.mcls .prog-section__faq {
  margin-top: 96px
}

.mcls .prog-section__faq-h {
  font-size: 54px;
  line-height: 1.2;
  color: #EAEAF2;
  text-transform: uppercase;
  letter-spacing: -.02em;
  text-align: center;
  margin: 0 0 56px
}

.mcls .faq-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.mcls .faq-item {
  border: 1px solid #5681aa26;
  border-radius: 3px;
  padding: 32px;
  background: #12151c99;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: -1px 3px 6px 0 #5681aa0f;
  transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.mcls .faq-item:hover {
  border-color: #5681aa52;
  transform: perspective(700px) rotateX(0.6deg)
}

.mcls .faq-item__q {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  margin: 0;
  display: flex;
  align-items: flex-start;
  gap: 16px
}

.mcls .faq-item__q .material-icons {
  font-size: 17px;
  color: #5681AA;
  flex-shrink: 0;
  margin-top: 2px
}

.mcls .faq-item__a {
  font-size: 14px;
  line-height: 1.9;
  color: #c5c9ddb3;
  margin: 0;
  padding-left: 33px
}

.mcls .border-trace-el {
  position: relative;
  display: inline-block
}

.mcls .border-trace-el::before {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 3px;
  border: 2px solid transparent;
  border-image: linear-gradient(90deg, #5681AA, #C5C9DD, #5681AA) 1;
  animation: border-trace 1.8s cubic-bezier(0.4, 0, 0.2, 1) forwards
}

@keyframes border-trace {
  0% {
    clip-path: inset(0 100% 100% 0);
    opacity: .4
  }

  25% {
    clip-path: inset(0 0 100% 0);
    opacity: .7
  }

  50% {
    clip-path: inset(0 0 0 0);
    opacity: 1
  }

  100% {
    clip-path: inset(0 0 0 0);
    opacity: 1
  }
}

@media (max-width: 1024px) {
  .mcls .pg-title__grid {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .mcls .pg-title__right {
    align-items: flex-start
  }

  .mcls .pg-title__img-wrap {
    max-width: 400px
  }

  .mcls .prog-cols {
    grid-template-columns: 1fr
  }

  .mcls .faq-grid {
    grid-template-columns: 1fr
  }

  .mcls .prog-section__top {
    grid-template-columns: 1fr;
    gap: 16px
  }
}

@media (max-width: 768px) {
  .mcls .pg-title {
    padding: 56px 16px 32px
  }

  .mcls .pg-title__h1 {
    font-size: 54px
  }

  .mcls .pg-title__sub {
    font-size: 32px
  }

  .mcls .prog-section__inner {
    padding: 0 16px
  }

  .mcls .pg-title__meta {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px
  }

  .mcls .prog-section__h2,
  .mcls .prog-section__faq-h {
    font-size: 32px
  }
}

.cu-pg {
  background: #0e1118;
  color: #EAEAF2;
  overflow-x: clip;
  position: relative
}

.cu-pg .wave-div {
  display: block;
  width: 100%;
  line-height: 0;
  overflow: hidden
}

.cu-pg .wave-div svg {
  display: block;
  width: 100%
}

.cu-pg .pg-open {
  padding: 96px 56px 56px;
  max-width: 1500px;
  margin: 0 auto;
  position: relative
}

.cu-pg .pg-open__row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 56px
}

.cu-pg .pg-open__left {
  flex: 1 1 0;
  min-width: 0
}

.cu-pg .pg-open__tag {
  display: inline-block;
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #5681AA;
  border: 1px solid #5681aa59;
  border-radius: 3px;
  padding: 8px 16px;
  margin-bottom: 32px
}

.cu-pg .pg-open__h1 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #EAEAF2;
  margin: 0 0 32px
}

.cu-pg .pg-open__h1 .hl-word {
  background: #5681aa38;
  border-radius: 3px;
  padding: 0 8px;
  display: inline
}

.cu-pg .pg-open__sub {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0 0 32px;
  max-width: 480px
}

.cu-pg .pg-open__links {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.cu-pg .pg-open__contact-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  text-decoration: none;
  padding: 16px;
  border-radius: 3px;
  border: 1px solid #c5c9dd1f;
  background: #5681aa0f;
  transition: background .22s cubic-bezier(0.4, 0, 0.2, 1), border-color .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: -1px 3px 6px 0 #5681aa0f
}

.cu-pg .pg-open__contact-item:hover {
  background: #5681aa24;
  border-color: #5681aa66;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  transform: perspective(600px) rotateX(1.5deg) rotateY(-1deg)
}

.cu-pg .pg-open__contact-item .mat-icon {
  color: #5681AA;
  font-size: 22px;
  flex-shrink: 0
}

.cu-pg .pg-open__contact-label {
  font-size: 14px;
  color: #5681AA;
  display: block;
  line-height: 1.2;
  margin-bottom: 4px
}

.cu-pg .pg-open__contact-val {
  display: block;
  line-height: 1.6
}

.cu-pg .pg-open__right {
  flex: 0 0 340px;
  width: 340px;
  position: relative
}

.cu-pg .pg-open__img-card {
  border-radius: 28px;
  overflow: hidden;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  position: relative
}

.cu-pg .pg-open__img-card img {
  width: 100%;
  height: 420px;
  object-fit: cover;
  display: block;
  border-radius: 28px
}

.cu-pg .pg-open__img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, #0e1118b8 0%, #0e11182e 60%, transparent 100%);
  border-radius: 28px
}

.cu-pg .pg-open__deco-lines {
  position: absolute;
  top: -24px;
  right: -24px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  pointer-events: none
}

.cu-pg .pg-open__deco-lines span {
  display: block;
  height: 1px;
  background: #5681aa66;
  border-radius: 3px
}

.cu-pg .pg-open__deco-lines span:nth-child(1) {
  width: 56px
}

.cu-pg .pg-open__deco-lines span:nth-child(2) {
  width: 40px
}

.cu-pg .pg-open__deco-lines span:nth-child(3) {
  width: 28px
}

.cu-pg .pg-open__deco-lines span:nth-child(4) {
  width: 16px
}

.cu-pg .pg-open__num-anchor {
  position: absolute;
  bottom: 32px;
  left: -32px;
  font-size: 70px;
  line-height: 1.2;
  font-weight: 700;
  color: #5681aa2e;
  letter-spacing: -.04em;
  pointer-events: none;
  user-select: none
}

.cu-pg .pg-open__load-row {
  display: flex;
  flex-direction: row;
  gap: 16px;
  margin-top: 56px;
  opacity: 0;
  animation: diag-reveal .26s cubic-bezier(0.4, 0, 0.2, 1) .1s forwards
}

@keyframes diag-reveal {
  from {
    opacity: 0;
    transform: translate(-16px, 16px)
  }

  to {
    opacity: 1;
    transform: translate(0, 0)
  }
}

.cu-pg .pg-open__left {
  opacity: 0;
  animation: diag-reveal .26s cubic-bezier(0.4, 0, 0.2, 1) .05s forwards
}

.cu-pg .pg-open__right {
  opacity: 0;
  animation: diag-reveal .26s cubic-bezier(0.4, 0, 0.2, 1) .15s forwards
}

.cu-pg .form-sec {
  background: #131720;
  position: relative
}

.cu-pg .form-sec__inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 96px 56px;
  display: flex;
  flex-direction: row;
  gap: 96px;
  align-items: flex-start
}

.cu-pg .form-sec__aside {
  flex: 0 0 300px;
  width: 300px
}

.cu-pg .form-sec__aside-h {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  text-transform: uppercase;
  color: #EAEAF2;
  margin: 0 0 32px
}

.cu-pg .form-sec__aside-p {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0 0 32px
}

.cu-pg .form-sec__aside-img {
  width: 100%;
  border-radius: 28px;
  overflow: hidden;
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.cu-pg .form-sec__aside-img img {
  width: 100%;
  height: 260px;
  object-fit: cover;
  display: block;
  border-radius: 28px
}

.cu-pg .form-sec__form-wrap {
  flex: 1 1 0;
  min-width: 0
}

.cu-pg .form-sec__form {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.cu-pg .form-field {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.cu-pg .form-field__label {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #5681AA
}

.cu-pg .form-field__input {
  background: #5681aa12;
  border: 1px solid #c5c9dd26;
  border-radius: 3px;
  color: #EAEAF2;
  font-size: 17px;
  line-height: 1.6;
  padding: 16px;
  outline: none;
  transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: inset 0 1px 2px #5681aa0f;
  width: 100%;
  box-sizing: border-box
}

.cu-pg .form-field__input::placeholder {
  color: #c5c9dd59
}

.cu-pg .form-field__input:focus {
  border-color: #5681AA;
  box-shadow: inset 0 1px 2px #5681aa0f -1px 5px 14px 0 #5681aa1c
}

.cu-pg .form-field__textarea {
  resize: vertical;
  min-height: 120px
}

.cu-pg .form-radio-group {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.cu-pg .form-radio-group__label {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #5681AA;
  margin-bottom: 8px;
  display: block
}

.cu-pg .radio-opt {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  padding: 16px;
  border-radius: 3px;
  border: 1px solid #c5c9dd1f;
  background: #5681aa0d;
  cursor: pointer;
  transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), background .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .radio-opt:hover {
  border-color: #5681aa66;
  background: #5681aa1a
}

.cu-pg .radio-opt__input {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  border: 2px solid #5681aa80;
  background: transparent;
  flex-shrink: 0;
  position: relative;
  cursor: pointer;
  transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .radio-opt__input:checked {
  border-color: #5681AA;
  background: #5681aa33
}

.cu-pg .radio-opt__input:checked::after {
  content: '';
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: #5681AA
}

.cu-pg .radio-opt__text {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2
}

.cu-pg .radio-opt__sub {
  font-size: 14px;
  color: #C5C9DD;
  display: block;
  line-height: 1.6
}

.cu-pg .form-radio-list {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.cu-pg .form-radio-list .radio-opt:nth-child(odd) {
  background: #5681aa12
}

.cu-pg .form-radio-list .radio-opt:nth-child(even) {
  background: #c5c9dd0a
}

.cu-pg .privacy-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  border-radius: 3px;
  border: 1px solid #c5c9dd1a;
  background: #5681aa0a
}

.cu-pg .privacy-row__check {
  appearance: none;
  -webkit-appearance: none;
  width: 20px;
  height: 20px;
  border-radius: 3px;
  border: 2px solid #5681aa80;
  background: transparent;
  flex-shrink: 0;
  cursor: pointer;
  position: relative;
  margin-top: 2px;
  transition: border-color .22s cubic-bezier(0.4, 0, 0.2, 1), background .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .privacy-row__check:checked {
  border-color: #5681AA;
  background: #5681AA
}

.cu-pg .privacy-row__check:checked::after {
  content: '';
  position: absolute;
  top: 2px;
  left: 5px;
  width: 6px;
  height: 10px;
  border: 2px solid #0e1118;
  border-top: none;
  border-left: none;
  transform: rotate(45deg)
}

.cu-pg .privacy-row__text {
  font-size: 14px;
  line-height: 1.9;
  color: #C5C9DD
}

.cu-pg .privacy-row__text a {
  color: #5681AA;
  text-decoration: underline;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .privacy-row__text a:hover {
  color: #EAEAF2
}

.cu-pg .form-submit-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px
}

.cu-pg .btn-submit {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  background: #5681AA;
  border: none;
  border-radius: 3px;
  padding: 16px 56px;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  transition: background .25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.4, 0, 0.2, 1), transform .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .btn-submit:hover {
  background: #6a96c0;
  box-shadow: -1px 8px 40px 0 #5681aa38;
  transform: perspective(600px) rotateX(-1.5deg)
}

.cu-pg .btn-submit:active {
  background: #4a6f96;
  transform: scale(0.98)
}

.cu-pg .btn-submit:focus-visible {
  outline: 2px solid #EAEAF2;
  outline-offset: 3px
}

.cu-pg .btn-submit__ripple {
  position: absolute;
  border-radius: 50%;
  background: #eaeaf240;
  transform: scale(0);
  animation: ripple-go .5s cubic-bezier(0.0, 0, 0.2, 1);
  pointer-events: none
}

@keyframes ripple-go {
  to {
    transform: scale(4);
    opacity: 0
  }
}

.cu-pg .info-strip {
  background: #0e1118;
  position: relative
}

.cu-pg .info-strip__inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 96px 56px
}

.cu-pg .info-strip__top {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 56px;
  margin-bottom: 56px
}

.cu-pg .info-strip__intro-col {
  flex: 0 0 260px
}

.cu-pg .info-strip__intro-h {
  font-size: 14px;
  line-height: 1.6;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #5681AA;
  margin: 0 0 16px
}

.cu-pg .info-strip__intro-p {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0
}

.cu-pg .info-strip__main-col {
  flex: 1 1 0;
  min-width: 0
}

.cu-pg .info-strip__main-p {
  font-size: 17px;
  line-height: 1.9;
  color: #EAEAF2;
  margin: 0
}

.cu-pg .info-strip__cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}

.cu-pg .info-card {
  border-radius: 3px;
  border: 1px solid #c5c9dd1f;
  padding: 32px;
  position: relative;
  transition: border-color .25s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.4, 0, 0.2, 1), transform .22s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: -1px 3px 6px 0 #5681aa0f
}

.cu-pg .info-strip__cards:hover .info-card:not(:hover) {
  filter: blur(1.5px);
  opacity: .7;
  transition: filter .22s cubic-bezier(0.4, 0, 0.2, 1), opacity .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .info-card:hover {
  border-color: #5681aa73;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  transform: perspective(600px) rotateY(2deg) rotateX(-1deg)
}

.cu-pg .info-card:nth-child(odd) {
  background: #5681aa12
}

.cu-pg .info-card:nth-child(even) {
  background: #c5c9dd0a
}

.cu-pg .info-card__icon {
  color: #5681AA;
  font-size: 28px;
  margin-bottom: 16px;
  display: block
}

.cu-pg .info-card__h {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  margin: 0 0 8px;
  font-weight: 600
}

.cu-pg .info-card__val {
  font-size: 14px;
  line-height: 1.9;
  color: #C5C9DD
}

.cu-pg .info-card__val a {
  color: #C5C9DD;
  text-decoration: none;
  transition: color .2s cubic-bezier(0.4, 0, 0.2, 1)
}

.cu-pg .info-card__val a:hover {
  color: #EAEAF2
}

.cu-pg .info-strip__deco-lines {
  position: absolute;
  bottom: 56px;
  right: 56px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  pointer-events: none
}

.cu-pg .info-strip__deco-lines span {
  display: block;
  height: 1px;
  background: #5681aa4d;
  border-radius: 3px
}

.cu-pg .info-strip__deco-lines span:nth-child(1) {
  width: 56px
}

.cu-pg .info-strip__deco-lines span:nth-child(2) {
  width: 40px
}

.cu-pg .info-strip__deco-lines span:nth-child(3) {
  width: 28px
}

@media (max-width: 1024px) {
  .cu-pg .pg-open__row {
    flex-direction: column
  }

  .cu-pg .pg-open__right {
    width: 100%;
    flex: none
  }

  .cu-pg .form-sec__inner {
    flex-direction: column;
    gap: 56px
  }

  .cu-pg .form-sec__aside {
    width: 100%;
    flex: none
  }

  .cu-pg .info-strip__top {
    flex-direction: column;
    gap: 32px
  }

  .cu-pg .info-strip__intro-col {
    flex: none;
    width: 100%
  }

  .cu-pg .info-strip__cards {
    grid-template-columns: 1fr 1fr
  }
}

@media (max-width: 640px) {
  .cu-pg .pg-open {
    padding: 56px 16px 32px
  }

  .cu-pg .pg-open__h1 {
    font-size: 54px
  }

  .cu-pg .form-sec__inner {
    padding: 56px 16px
  }

  .cu-pg .info-strip__inner {
    padding: 56px 16px
  }

  .cu-pg .info-strip__cards {
    grid-template-columns: 1fr
  }

  .cu-pg .btn-submit {
    padding: 16px 32px;
    width: 100%
  }

  .cu-pg .form-submit-row {
    flex-direction: column;
    align-items: stretch
  }
}

.ab {
  background: #13151f;
  overflow-x: clip;
  position: relative
}

.ab__schema {
  display: none
}

.ab__hero {
  display: grid;
  grid-template-columns: 60fr 40fr;
  min-height: 92vh;
  max-width: 1500px;
  margin: 0 auto;
  padding: 96px 56px;
  gap: 56px;
  align-items: center;
  position: relative
}

.ab__hero-left {
  display: flex;
  flex-direction: column;
  gap: 32px;
  position: relative;
  z-index: 2
}

.ab__hero-tag {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #5681aa1f;
  border: 1px solid #5681aa47;
  border-radius: 3px;
  padding: 8px 16px;
  color: #5681AA;
  font-size: 14px;
  line-height: 1.2;
  letter-spacing: .08em;
  text-transform: uppercase;
  width: fit-content
}

.ab__hero-h1 {
  font-size: 70px;
  line-height: 1.2;
  letter-spacing: -.03em;
  color: #EAEAF2;
  text-transform: uppercase;
  margin: 0
}

.ab__hero-h1 .ab__accent-word {
  display: inline-block;
  background: #5681aa38;
  padding: 0 8px;
  border-radius: 3px;
  color: #C5C9DD
}

.ab__hero-meta {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: flex-start
}

.ab__hero-counter {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.ab__counter-num {
  font-size: 54px;
  line-height: 1.2;
  color: #5681AA;
  letter-spacing: -.04em
}

.ab__counter-label {
  font-size: 14px;
  line-height: 1.6;
  color: #C5C9DD;
  opacity: .7
}

.ab__hero-divider {
  width: 1px;
  height: 80px;
  background: linear-gradient(to top, #5681AA, transparent);
  align-self: center
}

.ab__hero-desc {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  max-width: 480px;
  margin: 0
}

.ab__hero-right {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center
}

.ab__hero-img-wrap {
  position: relative;
  width: 100%;
  border-radius: 28px;
  overflow: hidden
}

.ab__hero-img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center;
  display: block;
  opacity: .55;
  border-radius: 28px
}

.ab__hero-curve {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 1
}

.ab__hero-curve svg {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0
}

.ab__hero-circles {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0
}

.ab__circle-1 {
  position: absolute;
  top: 10%;
  right: -80px;
  width: 320px;
  height: 320px;
  border-radius: 50%;
  border: 1px solid #5681aa12
}

.ab__circle-2 {
  position: absolute;
  bottom: 5%;
  left: -60px;
  width: 200px;
  height: 200px;
  border-radius: 50%;
  border: 1px solid #c5c9dd0f
}

.ab__band-1 {
  height: 4px;
  background: linear-gradient(to right, transparent, #5681AA, #C5C9DD, transparent);
  width: 100%
}

.ab__team {
  background: #181b27;
  position: relative;
  overflow: hidden
}

.ab__team-bg-anim {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0
}

.ab__team-bg-anim::before {
  content: "";
  position: absolute;
  width: 600px;
  height: 600px;
  border-radius: 50%;
  background: radial-gradient(circle, #5681aa17 0%, transparent 70%);
  animation: ab-light-move 8s cubic-bezier(0.4, 0, 0.2, 1) infinite alternate;
  top: 20%;
  left: 30%
}

@keyframes ab-light-move {
  0% {
    transform: translate(0, 0)
  }

  100% {
    transform: translate(120px, -60px)
  }
}

.ab__team-inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 96px 56px;
  position: relative;
  z-index: 2
}

.ab__team-top {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 56px;
  margin-bottom: 56px;
  align-items: start
}

.ab__team-h2 {
  font-size: 54px;
  line-height: 1.2;
  color: #EAEAF2;
  text-transform: uppercase;
  letter-spacing: -.02em;
  margin: 0;
  text-align: center
}

.ab__team-intro {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ab__team-intro-p {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0
}

.ab__team-cols {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  align-items: start
}

.ab__member {
  display: flex;
  flex-direction: column;
  gap: 16px;
  background: #5681aa0f;
  border: 1px solid #5681aa21;
  border-radius: 28px;
  padding: 32px;
  transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1);
  cursor: default
}

.ab__member:hover {
  transform: perspective(800px) rotateX(2deg) rotateY(-2deg);
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.ab__member--center {
  background: #5681aa1f;
  border-color: #5681aa47;
  padding: 40px 32px
}

.ab__member-portrait {
  width: 100%;
  aspect-ratio: 5/7;
  border-radius: 28px;
  object-fit: cover;
  object-position: center;
  display: block;
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.ab__member-name {
  font-size: 17px;
  line-height: 1.2;
  color: #EAEAF2;
  margin: 0;
  text-align: center
}

.ab__member-role {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  text-align: center;
  margin: 0
}

.ab__member-bio {
  font-size: 14px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0;
  opacity: .82
}

.ab__member-no-portrait {
  width: 100%;
  aspect-ratio: 5/7;
  border-radius: 28px;
  background: linear-gradient(to top, #5681aa2e, #c5c9dd0f);
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px
}

.ab__member-no-portrait .material-icons {
  font-size: 48px;
  color: #5681aa66
}

.ab__band-2 {
  height: 4px;
  background: linear-gradient(to right, transparent, #C5C9DD, #5681AA, transparent);
  width: 100%
}

.ab__approach {
  position: relative;
  background: #13151f
}

.ab__approach-dashed-bg {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 0;
  background-image: repeating-linear-gradient(0deg, transparent, transparent 28px, #5681aa0d 28px, #5681aa0d 29px), repeating-linear-gradient(90deg, transparent, transparent 28px, #5681aa0d 28px, #5681aa0d 29px)
}

.ab__approach-inner {
  max-width: 1500px;
  margin: 0 auto;
  padding: 96px 56px;
  position: relative;
  z-index: 2
}

.ab__approach-grid {
  display: grid;
  grid-template-columns: 60fr 40fr;
  gap: 56px;
  align-items: start
}

.ab__approach-left {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.ab__approach-h2 {
  font-size: 54px;
  line-height: 1.2;
  color: #EAEAF2;
  text-transform: uppercase;
  letter-spacing: -.02em;
  margin: 0;
  text-align: center
}

.ab__approach-body {
  display: grid;
  grid-template-columns: 1fr 2fr;
  gap: 32px
}

.ab__approach-side-label {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  text-transform: uppercase;
  letter-spacing: .1em;
  padding-top: 8px
}

.ab__approach-text-col {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ab__approach-p {
  font-size: 17px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0
}

.ab__pillars {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-top: 16px
}

.ab__pillar {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  border-radius: 3px;
  transition: background .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.ab__pillar:nth-child(odd) {
  background: #5681aa14
}

.ab__pillar:nth-child(even) {
  background: #c5c9dd0d
}

.ab__pillar:hover {
  background: #5681aa26
}

.ab__pillar-icon {
  color: #5681AA;
  font-size: 22px;
  flex-shrink: 0;
  margin-top: 2px
}

.ab__pillar-text {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.ab__pillar-name {
  font-size: 14px;
  line-height: 1.2;
  color: #EAEAF2;
  font-weight: 600;
  margin: 0
}

.ab__pillar-desc {
  font-size: 14px;
  line-height: 1.6;
  color: #C5C9DD;
  margin: 0;
  opacity: .75
}

.ab__approach-right {
  display: flex;
  flex-direction: column;
  gap: 32px;
  position: relative
}

.ab__approach-img-wrap {
  position: relative;
  border-radius: 28px;
  overflow: hidden
}

.ab__approach-img {
  width: 100%;
  height: 340px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 28px;
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.ab__approach-img-wrap::after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 50%;
  background: linear-gradient(to top, #13151fb3, transparent);
  border-radius: 0 0 28px 28px;
  pointer-events: none
}

.ab__approach-img2-wrap {
  border-radius: 28px;
  overflow: hidden;
  box-shadow: -1px 5px 14px 0 #5681aa1c
}

.ab__approach-img2 {
  width: 100%;
  height: 220px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 28px
}

.ab__approach-cta-block {
  background: #5681aa1a;
  border: 1px solid #5681aa38;
  border-radius: 28px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  position: relative;
  overflow: hidden
}

.ab__approach-cta-block::before {
  content: "";
  position: absolute;
  top: -1px;
  left: 32px;
  right: 32px;
  height: 2px;
  background: linear-gradient(to right, transparent, #5681AA, transparent);
  border-radius: 3px
}

.ab__cta-sub {
  font-size: 14px;
  line-height: 1.6;
  color: #5681AA;
  text-transform: uppercase;
  letter-spacing: .08em;
  margin: 0
}

.ab__cta-heading {
  font-size: 17px;
  line-height: 1.6;
  color: #EAEAF2;
  margin: 0
}

.ab__cta-p {
  font-size: 14px;
  line-height: 1.9;
  color: #C5C9DD;
  margin: 0;
  opacity: .8
}

.ab__btn-primary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  background: #5681AA;
  color: #EAEAF2;
  font-size: 14px;
  line-height: 1.2;
  padding: 16px 32px;
  border-radius: 3px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  width: fit-content;
  position: relative;
  overflow: hidden;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  transition: transform .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.ab__btn-primary:hover {
  transform: perspective(600px) rotateX(3deg) rotateY(-1deg);
  box-shadow: -1px 8px 40px 0 #5681aa1c
}

.ab__btn-primary:active {
  transform: scale(0.98)
}

.ab__ripple-layer {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none
}

@media (max-width: 1024px) {
  .ab__hero {
    grid-template-columns: 1fr;
    padding: 56px 32px;
    min-height: unset;
    gap: 32px
  }

  .ab__hero-h1 {
    font-size: 54px
  }

  .ab__hero-img {
    height: 320px
  }

  .ab__team-top {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .ab__team-cols {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .ab__team-inner {
    padding: 56px 32px
  }

  .ab__approach-grid {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .ab__approach-inner {
    padding: 56px 32px
  }

  .ab__approach-h2 {
    font-size: 54px
  }
}

@media (max-width: 640px) {
  .ab__hero {
    padding: 56px 16px
  }

  .ab__hero-h1 {
    font-size: 54px
  }

  .ab__hero-meta {
    flex-direction: column;
    gap: 16px
  }

  .ab__hero-divider {
    width: 80px;
    height: 1px;
    background: linear-gradient(to right, #5681AA, transparent)
  }

  .ab__team-inner {
    padding: 56px 16px
  }

  .ab__approach-inner {
    padding: 56px 16px
  }

  .ab__approach-body {
    grid-template-columns: 1fr;
    gap: 16px
  }

  .ab__team-h2,
  .ab__approach-h2 {
    font-size: 54px
  }
}

.ok-page {
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 96px 32px;
  background: #0e1520
}

.ok-page .ok-wrap {
  max-width: 1500px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px
}

.ok-page .ok-icon {
  width: 72px;
  height: 72px;
  border-radius: 28px;
  background: linear-gradient(to top, #5681AA, #C5C9DD);
  display: flex;
  align-items: center;
  justify-content: center;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  flex-shrink: 0
}

.ok-page .ok-icon svg {
  width: 36px;
  height: 36px;
  display: block
}

.ok-page .ok-card {
  background: #16202e;
  border-radius: 28px;
  padding: 56px;
  max-width: 560px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  box-shadow: -1px 5px 14px 0 #5681aa1c;
  border: 1px solid #c5c9dd14
}

.ok-page .ok-card .ok-heading {
  font-size: 54px;
  line-height: 1.2;
  letter-spacing: -.02em;
  color: #EAEAF2;
  text-align: center;
  margin: 0;
  text-transform: uppercase
}

.ok-page .ok-card .ok-sub {
  font-size: 17px;
  line-height: 1.6;
  color: #C5C9DD;
  text-align: center;
  margin: 0;
  max-width: 380px
}

.ok-page .ok-card .ok-divider {
  width: 48px;
  height: 2px;
  background: linear-gradient(to right, #5681AA, #C5C9DD);
  border-radius: 3px;
  flex-shrink: 0
}

.ok-page .ok-card .ok-note {
  font-size: 14px;
  line-height: 1.9;
  color: #c5c9dd8c;
  text-align: center;
  margin: 0
}

.ok-page .ok-back {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  background: #5681AA;
  color: #EAEAF2;
  border-radius: 3px;
  font-size: 17px;
  line-height: 1.2;
  text-decoration: none;
  border: none;
  box-shadow: -1px 3px 6px 0 #5681aa0f;
  transition: background-color .22s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .25s cubic-bezier(0.0, 0, 0.2, 1), transform .2s cubic-bezier(0.4, 0, 0.2, 1);
  transform-style: preserve-3d;
  perspective: 600px
}

.ok-page .ok-back:hover {
  background: #6a93bb;
  box-shadow: -1px 8px 40px 0 #5681aa1c;
  transform: rotateX(4deg) rotateY(-2deg)
}

.ok-page .ok-back:focus-visible {
  outline: 2px solid #C5C9DD;
  outline-offset: 4px
}

.ok-page .ok-back .ok-back__icon {
  font-size: 17px;
  line-height: 1
}