@charset "UTF-8";

*,
::after,
::before {
  box-sizing: border-box
}

-webkit-appearance:none;

appearance:none html {
  scroll-behavior: smooth;
  margin: 0;
  padding: 0
}

body {
  margin: 0;
  padding: 0;
  min-height: 100svh;
  overflow-x: hidden;
  -webkit-text-size-adjust: 100%;
  font-family: 'Ubuntu', sans-serif;
  background-color: #080c10;
  color: #D7DFEA
}

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

.pg-head {
  position: relative;
  background: linear-gradient(180deg, #0d1520 0%, #111c2a 60%, #0a1018 100%);
  border-bottom: 1px solid #4181912e;
  box-shadow: -1px 9px 60px 0 #41819124;
  z-index: 100
}

.pg-head__top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  max-width: 1400px;
  margin: 0 auto;
  padding: 32px 48px 16px;
  gap: 32px
}

.brand-mount {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 8px
}

.logo-shell {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 72px;
  height: 88px;
  border-radius: 3px 3px 32px 32px;
  background-color: #0d1520e6;
  border: 1px solid #9aabc238;
  box-shadow: -1px 5px 25px 0 #41819117 0 0 0 3px #41819114
}

.logo-shell img {
  width: 58px;
  height: 74px;
  object-fit: contain;
  display: block
}

.brand-name {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #D7DFEA;
  text-align: right
}

.brand-name span {
  color: #418191
}

.head-contact {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px
}

.head-contact__label {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  font-weight: 400
}

.head-contact__phone {
  font-size: 21px;
  font-weight: 700;
  line-height: 1.15;
  color: #D7DFEA;
  text-decoration: none;
  letter-spacing: -.01em;
  transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.head-contact__phone:hover {
  color: #418191
}

.head-contact__email {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  text-decoration: none;
  transition: color .22s cubic-bezier(0.68, -0.55, 0.27, 1.55)
}

.head-contact__email:hover {
  color: #D7DFEA
}

.pg-head__nav-strip {
  background: linear-gradient(90deg, #4181911a 0%, #9aabc20f 100%);
  border-top: 1px solid #41819121
}

.pg-head__nav-inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 48px;
  display: flex;
  align-items: stretch
}

.site-menu {
  display: flex;
  flex-wrap: wrap;
  list-style: none;
  margin: 0;
  padding: 0;
  gap: 0
}

.site-menu__item {
  display: flex;
  align-items: stretch
}

.site-menu__link {
  display: flex;
  align-items: center;
  padding: 16px 32px;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: #9AABC2;
  text-decoration: none;
  border-bottom: 2px solid transparent;
  transition: color .28s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .28s cubic-bezier(0.34, 1.56, 0.64, 1);
  white-space: nowrap
}

.site-menu__link:hover {
  color: #D7DFEA;
  border-bottom-color: #418191
}

.site-menu__link.active {
  color: #418191;
  border-bottom-color: #418191
}

.pg-foot {
  background: linear-gradient(180deg, #0a1018 0%, #0d1520 100%);
  border-top: 1px solid #4181912e;
  box-shadow: -1px -5px 25px 0 #41819117
}

.foot-grid {
  max-width: 1400px;
  margin: 0 auto;
  padding: 96px 48px 48px;
  display: flex;
  flex-wrap: wrap;
  gap: 48px;
  align-items: flex-start
}

.foot-brand {
  flex: 0 0 auto;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 16px;
  min-width: 200px
}

.foot-logo-shell {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 80px;
  height: 96px;
  border-radius: 3px 3px 32px 32px;
  background-color: #0d1520f2;
  border: 1px solid #9aabc233;
  box-shadow: -1px 5px 25px 0 #41819117 0 0 0 3px #41819112
}

.foot-logo-shell img {
  width: 64px;
  height: 80px;
  object-fit: contain;
  display: block
}

.foot-brand__name {
  font-size: 27px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #D7DFEA
}

.foot-brand__name span {
  color: #418191
}

.foot-brand__since {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2
}

.foot-col {
  flex: 1 1 180px;
  display: flex;
  flex-direction: column;
  gap: 16px
}

.foot-col__heading {
  font-size: 15px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .06em;
  text-transform: uppercase;
  color: #418191;
  padding-bottom: 8px;
  border-bottom: 1px solid #41819138
}

.foot-col__text {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.foot-col__link {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  text-decoration: none;
  transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1);
  display: inline-block
}

.foot-col__link:hover {
  color: #D7DFEA
}

.foot-col__addr {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  font-style: normal;
  margin: 0
}

.foot-bottom {
  max-width: 1400px;
  margin: 0 auto;
  padding: 32px 48px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  border-top: 1px solid #4181911f
}

.foot-copy {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2
}

.foot-legal {
  display: flex;
  flex-wrap: wrap;
  gap: 32px;
  list-style: none;
  margin: 0;
  padding: 0
}

.foot-legal a {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  text-decoration: none;
  transition: color .22s cubic-bezier(0.68, -0.55, 0.27, 1.55)
}

.foot-legal a:hover {
  color: #D7DFEA
}

.cookie-bar {
  position: fixed;
  bottom: 32px;
  left: 0;
  right: 0;
  margin: 0 auto;
  width: 90%;
  max-width: 680px;
  background: linear-gradient(135deg, #0d1520 0%, #111c2a 100%);
  border: 1px solid #41819147;
  border-radius: 3px;
  box-shadow: -1px 9px 60px 0 #41819124;
  padding: 32px;
  z-index: 2000;
  transform: translateY(120px);
  opacity: 0;
  transition: transform .38s cubic-bezier(0.34, 1.56, 0.64, 1), opacity .38s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.cookie-bar.visible {
  transform: translateY(0);
  opacity: 1
}

.cookie-bar__body {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.cookie-bar__text {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.cookie-bar__actions {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center
}

.cookie-btn {
  font-family: 'Ubuntu', sans-serif;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .04em;
  text-transform: uppercase;
  padding: 16px 32px;
  border-radius: 3px;
  cursor: pointer;
  background: transparent;
  border: 1px solid #41819180;
  color: #9AABC2;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), color .25s cubic-bezier(0.34, 1.56, 0.64, 1), background .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.cookie-btn:hover {
  border-color: #418191;
  color: #D7DFEA;
  background: #4181911f
}

.cookie-btn:focus-visible {
  outline: 2px solid #9AABC2;
  outline-offset: 4px
}

.cookie-btn.primary {
  border-color: #418191;
  color: #D7DFEA
}

.cookie-btn.primary:hover {
  background: #41819138
}

@media (max-width:768px) {
  .pg-head__top {
    padding: 16px;
    flex-wrap: wrap;
    gap: 16px
  }

  .head-contact {
    display: none
  }

  .brand-mount {
    align-items: flex-start
  }

  .pg-head__nav-inner {
    padding: 0 16px
  }

  .site-menu__link {
    padding: 16px;
    font-size: 15px
  }

  .foot-grid {
    padding: 48px 16px 32px;
    gap: 32px
  }

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

  .cookie-bar {
    width: 95%;
    padding: 16px;
    bottom: 16px
  }
}

.content-policy {
  max-width: 1400px;
  margin: 0 auto;
  padding: 96px 48px;
  background: #0d1117;
  color: #D7DFEA
}

.content-policy p {
  font-size: 17px;
  line-height: 1.7;
  margin-bottom: 16px;
  color: #D7DFEA
}

.content-policy strong,
.content-policy b {
  font-weight: 700;
  color: #9AABC2;
  letter-spacing: -.01em
}

.content-policy em,
.content-policy i {
  font-style: italic;
  color: #9AABC2
}

.content-policy a {
  color: #418191;
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 3px;
  transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1), text-decoration-color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.content-policy a:hover {
  color: #9AABC2;
  text-decoration-color: #9AABC2
}

.content-policy a:visited {
  color: #418191
}

.content-policy div {
  margin-bottom: 32px
}

.content-policy table {
  width: 100%;
  border-collapse: collapse;
  margin-bottom: 32px;
  font-size: 15px;
  line-height: 1.45;
  box-shadow: -1px 5px 25px 0 #41819117;
  border-radius: 3px;
  overflow: hidden
}

.content-policy thead {
  background: #418191
}

.content-policy thead tr {
  border-bottom: none
}

.content-policy tbody tr {
  border-bottom: 1px solid #9aabc226;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.content-policy tbody tr:last-child {
  border-bottom: none
}

.content-policy tbody tr:nth-child(even) {
  background: #4181910f
}

.content-policy tbody tr:hover {
  background: #41819121
}

.content-policy th {
  padding: 16px;
  text-align: left;
  font-size: 15px;
  font-weight: 700;
  color: #D7DFEA;
  letter-spacing: -.01em;
  line-height: 1.45
}

.content-policy td {
  padding: 16px;
  color: #D7DFEA;
  font-size: 15px;
  line-height: 1.7;
  vertical-align: top
}

@media screen and (max-width:768px) {
  .content-policy {
    padding: 48px 16px
  }

  .content-policy table {
    display: block;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch
  }

  .content-policy th,
  .content-policy td {
    padding: 8px;
    font-size: 15px
  }

  .content-policy p {
    font-size: 15px
  }
}

.svc-det {
  background: #080c10;
  color: #d0d8e4;
  padding: 0;
  overflow-x: clip
}

.svc-det .pg-wrap {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px
}

.svc-det .ttl-blk {
  position: relative;
  padding: 96px 32px 48px;
  max-width: 1400px;
  margin: 0 auto
}

.svc-det .ttl-blk .bg-num {
  position: absolute;
  right: 32px;
  top: 16px;
  font-size: 68px;
  font-weight: 900;
  color: #418191;
  opacity: .07;
  line-height: 1.15;
  letter-spacing: -4px;
  pointer-events: none;
  user-select: none
}

.svc-det .ttl-blk .meta-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  margin-bottom: 32px;
  flex-wrap: wrap
}

.svc-det .ttl-blk .meta-tag {
  background: #418191;
  color: #080c10;
  font-size: 15px;
  font-weight: 700;
  padding: 8px 16px;
  border-radius: 3px;
  letter-spacing: .04em
}

.svc-det .ttl-blk .meta-info {
  font-size: 15px;
  color: #9AABC2;
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap
}

.svc-det .ttl-blk .meta-info span {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px
}

.svc-det .ttl-blk .meta-info .dot-sep {
  width: 4px;
  height: 4px;
  border-radius: 32px;
  background: #418191;
  display: inline-block
}

.svc-det .ttl-grid {
  display: grid;
  grid-template-columns: 1fr 420px;
  gap: 48px;
  align-items: start
}

.svc-det .ttl-grid .ttl-left {
  padding-right: 32px
}

.svc-det .ttl-grid .pg-h1 {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -1.5px;
  color: #d0d8e4;
  margin: 0 0 32px;
  font-weight: 800
}

.svc-det .ttl-grid .pg-h1 .accent-word {
  color: #418191
}

.svc-det .ttl-grid .user-badge {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  background: #0d1520;
  border: 1px solid #1e2d3d;
  border-radius: 32px;
  padding: 8px 16px;
  font-size: 15px;
  color: #9AABC2;
  margin-bottom: 32px
}

.svc-det .ttl-grid .user-badge .ub-icon {
  width: 20px;
  height: 20px;
  border-radius: 32px;
  background: #418191;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0
}

.svc-det .ttl-grid .user-badge .ub-icon svg {
  width: 12px;
  height: 12px;
  fill: #080c10
}

.svc-det .price-card {
  background: #0d1520;
  border-radius: 32px;
  padding: 32px;
  border: 1px solid #1e2d3d;
  box-shadow: -1px 9px 60px 0 #41819124;
  position: sticky;
  top: 32px
}

.svc-det .price-card .img-wrap {
  border-radius: 32px;
  overflow: hidden;
  margin-bottom: 32px;
  aspect-ratio: 4/3
}

.svc-det .price-card .img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.svc-det .price-card .img-wrap:hover img {
  transform: scale(1.05)
}

.svc-det .price-card .price-val {
  font-size: 37px;
  font-weight: 800;
  color: #d0d8e4;
  line-height: 1.15;
  margin-bottom: 8px
}

.svc-det .price-card .price-label {
  font-size: 15px;
  color: #9AABC2;
  margin-bottom: 32px
}

.svc-det .price-card .btn-book {
  display: block;
  width: 100%;
  background: #418191;
  color: #080c10;
  font-size: 17px;
  font-weight: 700;
  border: none;
  border-radius: 3px;
  padding: 16px 32px;
  cursor: pointer;
  text-align: center;
  text-decoration: none;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: -1px 5px 25px 0 #41819117;
  letter-spacing: .02em
}

.svc-det .price-card .btn-book:hover {
  background: #9AABC2;
  transform: translateY(-2px)
}

.svc-det .price-card .btn-book:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.svc-det .price-card .btn-book:active {
  transform: translateY(0)
}

.svc-det .price-card .detail-list {
  list-style: none;
  margin: 32px 0 0;
  padding: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px
}

.svc-det .price-card .detail-list li {
  font-size: 15px;
  color: #9AABC2;
  display: flex;
  flex-direction: column;
  gap: 4px
}

.svc-det .price-card .detail-list li strong {
  color: #d0d8e4;
  font-size: 17px
}

.svc-det .divider-wave {
  width: 100%;
  height: 48px;
  overflow: hidden;
  line-height: 0
}

.svc-det .divider-wave svg {
  display: block;
  width: 100%;
  height: 100%
}

.svc-det .prog-sec {
  padding: 96px 32px;
  max-width: 1400px;
  margin: 0 auto;
  position: relative
}

.svc-det .prog-sec::before {
  content: '';
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(90deg, transparent, transparent 48px, #9aabc208 48px, #9aabc208 49px);
  pointer-events: none
}

.svc-det .prog-sec .sec-head {
  text-align: center;
  margin-bottom: 48px
}

.svc-det .prog-sec .sec-h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -1px;
  color: #d0d8e4;
  margin: 0 0 16px;
  font-weight: 700;
  display: inline-block;
  position: relative
}

.svc-det .prog-sec .sec-h2::after {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 32px;
  background: #418191;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -2px
}

.svc-det .prog-sec .sec-sub {
  font-size: 17px;
  color: #9AABC2;
  line-height: 1.7;
  max-width: 560px;
  margin: 0 auto
}

.svc-det .prog-body {
  background: #0a111a;
  border-radius: 32px;
  padding: 48px;
  border: 1px solid #1e2d3d;
  box-shadow: -1px 5px 25px 0 #41819117;
  position: relative
}

.svc-det .prog-body h2 {
  font-size: 27px;
  line-height: 1.15;
  color: #d0d8e4;
  margin: 0 0 16px;
  font-weight: 700;
  letter-spacing: -.5px
}

.svc-det .prog-body h3 {
  font-size: 21px;
  line-height: 1.45;
  color: #9AABC2;
  margin: 32px 0 8px;
  font-weight: 600
}

.svc-det .prog-body p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 16px
}

.svc-det .prog-body strong {
  color: #d0d8e4
}

.svc-det .prog-body em {
  color: #418191;
  font-style: normal
}

.svc-det .prog-body ol {
  margin: 0 0 16px;
  padding-left: 32px;
  counter-reset: prog-cnt;
  list-style: none
}

.svc-det .prog-body ol li {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin-bottom: 16px;
  position: relative;
  padding-left: 16px;
  counter-increment: prog-cnt
}

.svc-det .prog-body ol li::before {
  content: counter(prog-cnt);
  position: absolute;
  left: -32px;
  top: 0;
  width: 28px;
  height: 28px;
  border-radius: 32px;
  background: #418191;
  color: #080c10;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center
}

.svc-det .prog-body blockquote {
  border-radius: 3px;
  background: #0d1a26;
  padding: 16px 32px;
  margin: 32px 0;
  color: #9AABC2;
  font-size: 17px;
  line-height: 1.7;
  font-style: italic;
  border-top: 2px solid #418191
}

.svc-det .diag-wrap {
  position: relative;
  background: #060a0f;
  overflow: hidden
}

.svc-det .diag-wrap::before {
  content: '';
  position: absolute;
  top: -60px;
  left: -60px;
  width: 200%;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, transparent 50%, #418191 50%, #418191 100%);
  opacity: .06;
  transform: rotate(8deg);
  transform-origin: left center;
  pointer-events: none
}

.svc-det .desc-sec {
  padding: 96px 32px;
  max-width: 1400px;
  margin: 0 auto
}

.svc-det .desc-grid {
  display: grid;
  grid-template-columns: 280px 1fr;
  gap: 48px;
  align-items: start
}

.svc-det .desc-sidebar {
  position: sticky;
  top: 32px
}

.svc-det .desc-sidebar .side-label {
  font-size: 15px;
  color: #418191;
  font-weight: 700;
  letter-spacing: .08em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block
}

.svc-det .desc-sidebar .side-h3 {
  font-size: 27px;
  line-height: 1.15;
  color: #d0d8e4;
  font-weight: 700;
  letter-spacing: -.5px;
  margin: 0 0 32px;
  position: relative;
  display: inline-block
}

.svc-det .desc-sidebar .side-h3::after {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 32px;
  background: #9AABC2;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -2px
}

.svc-det .desc-sidebar .err-link {
  display: inline-block;
  font-size: 15px;
  color: #9AABC2;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 3px;
  border: 1px solid #1e2d3d;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.svc-det .desc-sidebar .err-link:hover {
  background: #1e2d3d;
  color: #d0d8e4
}

.svc-det .desc-body {
  min-width: 0
}

.svc-det .desc-body p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 16px
}

.svc-det .desc-body h2 {
  font-size: 27px;
  line-height: 1.15;
  color: #d0d8e4;
  margin: 32px 0 16px;
  font-weight: 700;
  letter-spacing: -.5px
}

.svc-det .desc-body h3 {
  font-size: 21px;
  line-height: 1.45;
  color: #9AABC2;
  margin: 32px 0 8px;
  font-weight: 600
}

.svc-det .desc-body mark {
  background: #418191;
  color: #080c10;
  padding: 2px 8px;
  border-radius: 3px
}

.svc-det .desc-body ul {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 32px;
  list-style: none;
  margin: 0 0 16px;
  padding: 0
}

.svc-det .desc-body ul li {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  padding-left: 16px;
  position: relative
}

.svc-det .desc-body ul li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 12px;
  width: 6px;
  height: 6px;
  border-radius: 32px;
  background: #418191
}

.svc-det .desc-body dl {
  margin: 0 0 16px
}

.svc-det .desc-body dt {
  font-size: 17px;
  font-weight: 700;
  color: #d0d8e4;
  margin-top: 16px
}

.svc-det .desc-body dd {
  font-size: 17px;
  color: #9AABC2;
  line-height: 1.7;
  margin: 4px 0 0
}

.svc-det .desc-body details {
  border: 1px solid #1e2d3d;
  border-radius: 3px;
  margin-bottom: 8px
}

.svc-det .desc-body summary {
  font-size: 17px;
  color: #d0d8e4;
  padding: 16px;
  cursor: pointer;
  font-weight: 600;
  list-style: none
}

.svc-det .desc-body summary::-webkit-details-marker {
  display: none
}

.svc-det .desc-body details[open] summary {
  color: #418191;
  border-bottom: 1px solid #1e2d3d
}

.svc-det .desc-body details>:not(summary) {
  padding: 16px;
  font-size: 17px;
  color: #9AABC2;
  line-height: 1.7
}

.svc-det .react-sec {
  background: #0a111a;
  padding: 48px 32px;
  border-top: 1px solid #1e2d3d;
  border-bottom: 1px solid #1e2d3d
}

.svc-det .react-wrap {
  max-width: 1400px;
  margin: 0 auto;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 32px
}

.svc-det .react-wrap .react-h4 {
  font-size: 21px;
  line-height: 1.45;
  color: #d0d8e4;
  font-weight: 700;
  margin: 0;
  text-align: center
}

.svc-det .react-row {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
  justify-content: center
}

.svc-det .react-row input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0
}

.svc-det .react-row label {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 8px;
  padding: 16px 32px;
  border-radius: 32px;
  border: 2px solid #1e2d3d;
  background: #080c10;
  cursor: pointer;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), background .25s cubic-bezier(0.34, 1.56, 0.64, 1), transform .25s cubic-bezier(0.34, 1.56, 0.64, 1);
  font-size: 17px;
  color: #9AABC2;
  user-select: none
}

.svc-det .react-row label:hover {
  border-color: #418191;
  background: #0d1a26;
  transform: translateY(-3px)
}

.svc-det .react-row label .react-ico {
  font-size: 27px;
  line-height: 1.15
}

.svc-det .react-row input[type="radio"]:checked+label {
  border-color: #418191;
  background: #418191;
  color: #080c10;
  transform: scale(1.06);
  box-shadow: -1px 5px 25px 0 #41819117
}

.svc-det .react-row input[type="radio"]:focus+label {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.svc-det .cta-band {
  padding: 96px 32px;
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center
}

.svc-det .cta-band .cta-text .cta-h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -1px;
  color: #d0d8e4;
  font-weight: 800;
  margin: 0 0 16px
}

.svc-det .cta-band .cta-text .cta-h2 .str-thru {
  text-decoration: line-through;
  color: #418191;
  opacity: .5
}

.svc-det .cta-band .cta-text .cta-h2 .str-new {
  color: #9AABC2
}

.svc-det .cta-band .cta-text p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 32px
}

.svc-det .cta-band .cta-text .btn-row {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap
}

.svc-det .cta-band .cta-text .btn-prim {
  display: inline-block;
  background: #d0d8e4;
  color: #080c10;
  font-size: 17px;
  font-weight: 700;
  border-radius: 3px;
  padding: 16px 32px;
  text-decoration: none;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: -1px 3px 5px 0 #41819112;
  letter-spacing: .02em
}

.svc-det .cta-band .cta-text .btn-prim:hover {
  background: #9AABC2;
  transform: translateY(-2px)
}

.svc-det .cta-band .cta-text .btn-sec {
  display: inline-block;
  background: transparent;
  color: #9AABC2;
  font-size: 17px;
  font-weight: 600;
  border-radius: 3px;
  padding: 16px 32px;
  text-decoration: none;
  border: 1px solid #1e2d3d;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.svc-det .cta-band .cta-text .btn-sec:hover {
  border-color: #418191;
  color: #d0d8e4
}

.svc-det .cta-band .cta-metrics {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px
}

.svc-det .cta-band .metric-item {
  background: #0d1520;
  border-radius: 32px;
  padding: 32px;
  border: 1px solid #1e2d3d;
  text-align: center;
  box-shadow: -1px 3px 5px 0 #41819112;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.svc-det .cta-band .metric-item:hover {
  transform: translateY(-4px);
  box-shadow: -1px 9px 60px 0 #41819124
}

.svc-det .cta-band .metric-item .m-num {
  font-size: 37px;
  font-weight: 800;
  color: #418191;
  line-height: 1.15;
  display: block
}

.svc-det .cta-band .metric-item .m-label {
  font-size: 15px;
  color: #9AABC2;
  line-height: 1.45;
  margin-top: 8px;
  display: block
}

.svc-det .cta-band .metric-item .num-circle {
  width: 32px;
  height: 32px;
  border-radius: 32px;
  background: #418191;
  color: #080c10;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 8px
}

@keyframes bounce-in {
  0% {
    opacity: 0;
    transform: translateY(24px) scale(0.94)
  }

  60% {
    opacity: 1;
    transform: translateY(-6px) scale(1.03)
  }

  80% {
    transform: translateY(3px) scale(0.98)
  }

  100% {
    transform: translateY(0) scale(1)
  }
}

.svc-det .ttl-grid .ttl-left {
  animation: bounce-in .32s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.svc-det .price-card {
  animation: bounce-in .32s cubic-bezier(0.34, 1.56, 0.64, 1) .08s both
}

.svc-det .prog-body {
  animation: bounce-in .28s cubic-bezier(0.34, 1.56, 0.64, 1) .1s both
}

.svc-det .desc-body p,
.svc-det .desc-body h2,
.svc-det .desc-body h3 {
  animation: bounce-in .25s cubic-bezier(0.34, 1.56, 0.64, 1) .05s both
}

.svc-det .desc-body a {
  color: #9AABC2;
  text-decoration: none;
  padding: 2px 8px;
  border-radius: 32px;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.svc-det .desc-body a:hover {
  background: #418191;
  color: #080c10
}

.svc-det .prog-body a {
  color: #9AABC2;
  text-decoration: none;
  padding: 2px 8px;
  border-radius: 32px;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.svc-det .prog-body a:hover {
  background: #418191;
  color: #080c10
}

@media (max-width:900px) {
  .svc-det .ttl-grid {
    grid-template-columns: 1fr
  }

  .svc-det .ttl-grid .ttl-left {
    padding-right: 0
  }

  .svc-det .price-card {
    position: static
  }

  .svc-det .desc-grid {
    grid-template-columns: 1fr
  }

  .svc-det .desc-sidebar {
    position: static
  }

  .svc-det .cta-band {
    grid-template-columns: 1fr
  }

  .svc-det .cta-band .cta-metrics {
    grid-template-columns: 1fr 1fr
  }

  .svc-det .desc-body ul {
    grid-template-columns: 1fr
  }
}

@media (max-width:600px) {
  .svc-det .ttl-blk {
    padding: 48px 16px 32px
  }

  .svc-det .ttl-grid .pg-h1 {
    font-size: 37px
  }

  .svc-det .prog-sec,
  .svc-det .desc-sec,
  .svc-det .cta-band {
    padding: 48px 16px
  }

  .svc-det .prog-body {
    padding: 32px 16px
  }

  .svc-det .cta-band .cta-metrics {
    grid-template-columns: 1fr
  }

  .svc-det .price-card .detail-list {
    grid-template-columns: 1fr
  }

  .svc-det .react-row label {
    padding: 16px
  }
}

.proc {
  background-color: #080c0e;
  color: #d0dce8;
  overflow-x: clip
}

.proc .pg-wrap {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px
}

.proc .dot-field {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden
}

.proc .dot-field::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, #4181912e 1px, transparent 1px);
  background-size: 28px 28px
}

.proc .title-blk {
  position: relative;
  padding: 96px 32px;
  animation: bg-shift 15s linear infinite
}

@keyframes bg-shift {
  0% {
    background-color: #080c0e
  }

  50% {
    background-color: #0d1a1f
  }

  100% {
    background-color: #080c0e
  }
}

.proc .title-blk__img-wrap {
  position: relative;
  border-radius: 32px;
  overflow: hidden;
  margin-bottom: 48px
}

.proc .title-blk__img-wrap img {
  width: 100%;
  height: 520px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 32px;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.proc .title-blk__img-wrap:hover img {
  transform: scale(1.04)
}

.proc .title-blk__img-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(147deg, #080c0e00 40%, #080c0eeb 100%);
  border-radius: 32px;
  pointer-events: none
}

.proc .title-blk__text {
  max-width: 820px;
  margin: 0 auto;
  text-align: center
}

.proc .t-label {
  display: inline-block;
  font-size: 15px;
  letter-spacing: .12em;
  color: #9AABC2;
  background-color: #4181911f;
  border: 1px solid #41819147;
  border-radius: 3px;
  padding: 8px 16px;
  margin-bottom: 32px;
  text-transform: uppercase
}

.proc .t-h1 {
  font-size: 68px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #e8f0f6;
  margin: 0 0 16px
}

.proc .t-h1 span {
  color: #418191
}

.proc .t-tag {
  font-size: 21px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 48px
}

.proc .t-actions {
  display: flex;
  flex-direction: row;
  gap: 16px;
  justify-content: center;
  flex-wrap: wrap
}

.proc .btn-prim {
  display: inline-block;
  font-size: 17px;
  line-height: 1.45;
  color: #080c0e;
  background-color: #418191;
  border-radius: 3px;
  padding: 16px 32px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  transition: background-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: -1px 5px 25px 0 #41819117
}

.proc .btn-prim:hover {
  background-color: #9AABC2;
  transform: translateY(-2px)
}

.proc .btn-prim:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.proc .btn-prim:active {
  transform: translateY(0)
}

.proc .btn-sec {
  display: inline-block;
  font-size: 17px;
  line-height: 1.45;
  color: #9AABC2;
  background-color: transparent;
  border: 1px solid #9aabc259;
  border-radius: 3px;
  padding: 16px 32px;
  text-decoration: none;
  cursor: pointer;
  transition: border-color .25s cubic-bezier(0.68, -0.55, 0.27, 1.55), color .25s cubic-bezier(0.68, -0.55, 0.27, 1.55)
}

.proc .btn-sec:hover {
  border-color: #9AABC2;
  color: #e8f0f6
}

.proc .btn-sec:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.proc .curve-div {
  width: 100%;
  overflow: hidden;
  line-height: 0
}

.proc .curve-div svg {
  display: block;
  width: 100%
}

.proc .steps-blk {
  position: relative;
  background-color: #0b1318;
  padding: 96px 32px
}

.proc .steps-blk__inner {
  max-width: 1400px;
  margin: 0 auto
}

.proc .steps-head {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 96px;
  align-items: start;
  margin-bottom: 96px
}

.proc .steps-head__left {
  position: relative
}

.proc .sh-eyebrow {
  font-size: 15px;
  letter-spacing: .1em;
  color: #418191;
  text-transform: uppercase;
  margin: 0 0 16px
}

.proc .sh-h2 {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.025em;
  color: #e8f0f6;
  margin: 0 0 8px;
  position: relative;
  display: inline-block
}

.proc .sh-h2::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background-color: #418191;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -4px
}

.proc .steps-head__right {
  padding-top: 48px
}

.proc .sh-body {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 32px
}

.proc .metric-row {
  display: flex;
  flex-direction: row;
  gap: 32px;
  flex-wrap: wrap
}

.proc .metric-item {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.proc .metric-num {
  font-size: 37px;
  line-height: 1.15;
  color: #418191;
  letter-spacing: -.02em;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px
}

.proc .metric-arrow {
  display: inline-block;
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 11px solid #9AABC2
}

.proc .metric-lbl {
  font-size: 15px;
  line-height: 1.45;
  color: #6a8499
}

.proc .steps-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px;
  margin-bottom: 96px
}

.proc .step-card {
  background-color: #0f1d24;
  border-radius: 32px;
  padding: 48px 32px;
  position: relative;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: inset 0 2px 0 0 #9aabc212 -1px 5px 25px 0 #41819117
}

.proc .step-card:hover {
  transform: translateY(-6px);
  box-shadow: inset 0 2px 0 0 #9aabc212 -1px 9px 60px 0 #41819124
}

.proc .step-num {
  font-size: 68px;
  line-height: 1.15;
  color: #4181911f;
  letter-spacing: -.04em;
  position: absolute;
  top: 16px;
  right: 24px;
  pointer-events: none;
  user-select: none
}

.proc .step-icon {
  width: 48px;
  height: 48px;
  border-radius: 3px;
  background-color: #41819126;
  margin-bottom: 32px;
  display: flex;
  align-items: center;
  justify-content: center
}

.proc .step-icon svg {
  width: 24px;
  height: 24px;
  stroke: #418191;
  fill: none;
  stroke-width: 1.8;
  stroke-linecap: round;
  stroke-linejoin: round
}

.proc .step-h3 {
  font-size: 21px;
  line-height: 1.45;
  color: #e8f0f6;
  margin: 0 0 16px
}

.proc .step-body {
  font-size: 15px;
  line-height: 1.7;
  color: #7a96aa;
  margin: 0
}

.proc .tiers-row {
  margin-bottom: 96px
}

.proc .tiers-h4 {
  font-size: 27px;
  line-height: 1.45;
  color: #e8f0f6;
  text-align: center;
  margin: 0 0 48px;
  letter-spacing: -.01em
}

.proc .tiers-h4::after {
  content: "";
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: #9AABC2;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.proc .tiers-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}

.proc .tier-card {
  border-radius: 32px;
  padding: 48px 32px;
  position: relative;
  overflow: hidden;
  transition: transform .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.proc .tier-card:hover {
  transform: translateY(-4px)
}

.proc .tier-card.base {
  background-color: #111e26;
  box-shadow: -1px 3px 5px 0 #41819112
}

.proc .tier-card.mid {
  background-color: #142530;
  border: 1px solid #4181914d;
  box-shadow: -1px 5px 25px 0 #41819117
}

.proc .tier-card.top {
  background-color: #418191;
  box-shadow: -1px 9px 60px 0 #41819124
}

.proc .tier-badge {
  display: inline-block;
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase;
  border-radius: 3px;
  padding: 8px 16px;
  margin-bottom: 32px
}

.proc .tier-card.base .tier-badge {
  background-color: #9aabc21a;
  color: #9AABC2
}

.proc .tier-card.mid .tier-badge {
  background-color: #41819133;
  color: #9AABC2 !important
}

.proc .tier-card.top .tier-badge {
  background-color: #080c0e40;
  color: #e8f0f6
}

.proc .tier-name {
  font-size: 27px;
  line-height: 1.45;
  margin: 0 0 8px;
  letter-spacing: -.01em
}

.proc .tier-card.base .tier-name,
.proc .tier-card.mid .tier-name {
  color: #e8f0f6
}

.proc .tier-card.top .tier-name {
  color: #080c0e
}

.proc .tier-sub {
  font-size: 15px;
  line-height: 1.7;
  margin: 0 0 32px
}

.proc .tier-card.base .tier-sub,
.proc .tier-card.mid .tier-sub {
  color: #6a8499
}

.proc .tier-card.top .tier-sub {
  color: #080c0ea6
}

.proc .tier-feats {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 16px
}

.proc .tier-feats li {
  font-size: 15px;
  line-height: 1.45;
  padding-left: 16px;
  position: relative
}

.proc .tier-card.base .tier-feats li,
.proc .tier-card.mid .tier-feats li {
  color: #8aa4b8
}

.proc .tier-card.top .tier-feats li {
  color: #080c0ebf
}

.proc .tier-feats li::before {
  content: "";
  position: absolute;
  left: 0;
  top: 7px;
  width: 5px;
  height: 5px;
  border-radius: 50%
}

.proc .tier-card.base .tier-feats li::before {
  background-color: #418191
}

.proc .tier-card.mid .tier-feats li::before {
  background-color: #9AABC2
}

.proc .tier-card.top .tier-feats li::before {
  background-color: #080c0e66
}

.proc .expert-strip {
  display: grid;
  grid-template-columns: 260px 1fr;
  gap: 48px;
  align-items: center;
  background-color: #0f1d24;
  border-radius: 32px;
  padding: 48px;
  box-shadow: inset 0 2px 0 0 #9aabc20f -1px 5px 25px 0 #41819117
}

.proc .expert-img-wrap {
  border-radius: 32px;
  overflow: hidden;
  box-shadow: -1px 9px 60px 0 #41819124
}

.proc .expert-img-wrap img {
  width: 100%;
  aspect-ratio: 5/7;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .3s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.proc .expert-img-wrap:hover img {
  transform: scale(1.04)
}

.proc .expert-info {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.proc .expert-name {
  font-size: 27px;
  line-height: 1.45;
  color: #e8f0f6;
  margin: 0;
  letter-spacing: -.01em
}

.proc .expert-role {
  font-size: 15px;
  line-height: 1.45;
  color: #418191;
  margin: 0;
  text-transform: uppercase;
  letter-spacing: .08em
}

.proc .expert-bio {
  font-size: 17px;
  line-height: 1.7;
  color: #7a96aa;
  margin: 0
}

.proc .expert-link {
  display: inline-block;
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  text-decoration: none;
  padding: 8px 16px;
  border-radius: 32px;
  background-color: #9aabc214;
  align-self: flex-start;
  transition: background-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.proc .expert-link:hover {
  background-color: #41819133;
  color: #e8f0f6
}

.proc .expert-link:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.proc .img2-blk {
  margin-top: 96px;
  border-radius: 32px;
  overflow: hidden;
  position: relative;
  box-shadow: -1px 9px 60px 0 #41819124
}

.proc .img2-blk img {
  width: 100%;
  height: 380px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .3s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.proc .img2-blk:hover img {
  transform: scale(1.03)
}

.proc .img2-blk__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(147deg, #41819138 0%, #080c0eb8 100%);
  pointer-events: none
}

.proc .img2-blk__caption {
  position: absolute;
  bottom: 48px;
  left: 48px;
  right: 48px
}

.proc .img2-caption-h5 {
  font-size: 37px;
  line-height: 1.15;
  color: #e8f0f6;
  margin: 0 0 8px;
  letter-spacing: -.02em
}

.proc .img2-caption-p {
  font-size: 17px;
  line-height: 1.45;
  color: #9AABC2;
  margin: 0;
  max-width: 520px
}

.proc .curved-line {
  position: absolute;
  left: 0;
  right: 0;
  pointer-events: none;
  overflow: hidden
}

@media (max-width:1024px) {
  .proc .steps-head {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .proc .steps-head__right {
    padding-top: 0
  }

  .proc .steps-grid {
    grid-template-columns: 1fr 1fr
  }

  .proc .tiers-cards {
    grid-template-columns: 1fr;
    gap: 16px
  }

  .proc .expert-strip {
    grid-template-columns: 1fr
  }

  .proc .expert-img-wrap img {
    aspect-ratio: 16/9
  }
}

@media (max-width:768px) {
  .proc .t-h1 {
    font-size: 37px
  }

  .proc .t-tag {
    font-size: 17px
  }

  .proc .sh-h2 {
    font-size: 37px
  }

  .proc .steps-grid {
    grid-template-columns: 1fr
  }

  .proc .title-blk__img-wrap img {
    height: 320px
  }

  .proc .img2-blk img {
    height: 260px
  }

  .proc .img2-caption-h5 {
    font-size: 27px
  }

  .proc .img2-blk__caption {
    bottom: 32px;
    left: 32px;
    right: 32px
  }

  .proc .expert-strip {
    padding: 32px
  }

  .proc .metric-row {
    gap: 16px
  }
}

.wcu {
  background: #080c0e;
  color: #d4dce8;
  overflow-x: clip
}

.wcu .fade-child>* {
  opacity: 0;
  transform: translateY(24px);
  animation: wcu-reveal .28s cubic-bezier(0.34, 1.56, 0.64, 1) forwards
}

.wcu .fade-child>:nth-child(1) {
  animation-delay: .08s
}

.wcu .fade-child>:nth-child(2) {
  animation-delay: .18s
}

.wcu .fade-child>:nth-child(3) {
  animation-delay: .28s
}

.wcu .fade-child>:nth-child(4) {
  animation-delay: .38s
}

.wcu .fade-child>:nth-child(5) {
  animation-delay: .48s
}

.wcu .fade-child>:nth-child(6) {
  animation-delay: .58s
}

@keyframes wcu-reveal {
  to {
    opacity: 1;
    transform: translateY(0)
  }
}

.wcu-inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px
}

.wcu-top {
  padding: 96px 32px 48px;
  max-width: 1400px;
  margin: 0 auto;
  text-align: center;
  position: relative
}

.wcu-top::before {
  content: '';
  display: block;
  position: absolute;
  left: 32px;
  top: 0;
  width: 2px;
  height: 72px;
  background: linear-gradient(180deg, #418191 50%, transparent 50%)
}

.wcu-top__label {
  font-size: 15px;
  letter-spacing: .12em;
  color: #9AABC2;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block
}

.wcu-top__h1 {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #eef1f5;
  margin: 0 auto 48px;
  max-width: 760px
}

.wcu-top__h1 span {
  color: #418191
}

.wcu-img-frame {
  position: relative;
  display: inline-block;
  border-radius: 32px;
  overflow: hidden;
  border: 2px solid #1e3040;
  box-shadow: -1px 9px 60px 0 #41819124
}

.wcu-img-frame::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 55%, #080c0e 100%);
  pointer-events: none;
  border-radius: 32px
}

.wcu-top__img {
  display: block;
  width: 100%;
  max-width: 900px;
  height: 420px;
  object-fit: cover;
  object-position: center;
  filter: blur(0px);
  mask-image: radial-gradient(ellipse 88% 90% at 50% 50%, #000 70%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 88% 90% at 50% 50%, #000 70%, transparent 100%);
  border-radius: 32px
}

.wcu-reason {
  background: #0c1317;
  padding: 96px 0;
  border-top: 1px solid #1a2a35;
  border-bottom: 1px solid #1a2a35
}

.wcu-reason__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: start
}

.wcu-reason__sidebar {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.wcu-reason__tag {
  font-size: 15px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #418191
}

.wcu-reason__h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin: 0
}

.wcu-reason__h2::after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #418191;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.wcu-reason__body {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.wcu-reason__img-wrap {
  position: relative;
  border-radius: 32px;
  overflow: hidden;
  border: 2px solid #1e3040;
  box-shadow: -1px 5px 25px 0 #41819117
}

.wcu-reason__img-wrap::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, #4181912e 0%, transparent 60%);
  z-index: 1;
  pointer-events: none
}

.wcu-reason__img {
  display: block;
  width: 100%;
  height: 480px;
  object-fit: cover;
  object-position: center;
  border-radius: 32px;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.wcu-reason__img-wrap:hover .wcu-reason__img {
  transform: scale(1.04)
}

.wcu-ranked {
  padding: 96px 0 48px
}

.wcu-ranked__h3 {
  font-size: 27px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin: 0 0 32px
}

.wcu-ranked__h3::after {
  content: '';
  display: inline-block;
  width: 6px;
  height: 6px;
  background: #9AABC2;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -2px
}

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

.wcu-rank-item {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px
}

.wcu-rank-item__num {
  font-size: 21px;
  line-height: 1.15;
  color: #418191;
  font-weight: 700;
  min-width: 32px;
  letter-spacing: -.02em
}

.wcu-rank-item__label {
  font-size: 15px;
  color: #9AABC2;
  min-width: 140px
}

.wcu-rank-item__bar-wrap {
  flex: 1;
  height: 6px;
  background: #1a2a35;
  border-radius: 3px;
  overflow: hidden
}

.wcu-rank-item__bar {
  height: 100%;
  border-radius: 3px;
  background: linear-gradient(90deg, #418191 50%, #9AABC2 50%);
  animation: bar-grow .35s cubic-bezier(0.34, 1.56, 0.64, 1) both;
  animation-delay: calc(var(--bar-i, 0) * 0.1s + 0.3s);
  transform-origin: left
}

@keyframes bar-grow {
  from {
    transform: scaleX(0)
  }

  to {
    transform: scaleX(1)
  }
}

.wcu-rank-item:nth-child(1) .wcu-rank-item__bar {
  width: 95%;
  --bar-i: 1
}

.wcu-rank-item:nth-child(2) .wcu-rank-item__bar {
  width: 88%;
  --bar-i: 2
}

.wcu-rank-item:nth-child(3) .wcu-rank-item__bar {
  width: 82%;
  --bar-i: 3
}

.wcu-rank-item:nth-child(4) .wcu-rank-item__bar {
  width: 79%;
  --bar-i: 4
}

.wcu-rank-item:nth-child(5) .wcu-rank-item__bar {
  width: 74%;
  --bar-i: 5
}

.wcu-pillars {
  background: #0a1015;
  padding: 96px 0;
  position: relative;
  border-top: 1px solid #1a2a35
}

.wcu-pillars__bg-img {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  opacity: .12;
  pointer-events: none
}

.wcu-pillars__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, #0a1015 0%, #0a1015b3 50%, #0a1015 100%);
  pointer-events: none
}

.wcu-pillars__inner {
  position: relative;
  z-index: 2;
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px
}

.wcu-pillars__top {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  justify-content: space-between;
  gap: 32px;
  margin-bottom: 48px
}

.wcu-pillars__h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin: 0;
  max-width: 480px
}

.wcu-pillars__h2::after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #418191;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.wcu-pillars__sub {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  max-width: 360px;
  margin: 0
}

.wcu-cards {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 16px
}

.wcu-card {
  background: #0c1317e0;
  border: 1px solid #1e3040;
  border-radius: 32px;
  padding: 32px;
  position: relative;
  overflow: hidden;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: border-color .22s cubic-bezier(0.68, -0.55, 0.27, 1.55), box-shadow .22s cubic-bezier(0.68, -0.55, 0.27, 1.55);
  display: flex;
  flex-direction: column;
  gap: 16px
}

.wcu-card:hover {
  border-color: #418191;
  box-shadow: -1px 9px 60px 0 #41819124
}

.wcu-card__diag {
  position: absolute;
  top: 0;
  right: 0;
  width: 180px;
  height: 180px;
  pointer-events: none;
  overflow: hidden;
  border-radius: 0 32px 0 0
}

.wcu-card__diag::before {
  content: '';
  position: absolute;
  top: -40px;
  right: -40px;
  width: 200px;
  height: 2px;
  background: linear-gradient(90deg, transparent 50%, #1e3040 50%);
  transform: rotate(-45deg);
  transform-origin: right center
}

.wcu-card__badge {
  position: absolute;
  top: 16px;
  right: 16px;
  width: 32px;
  height: 32px;
  border-radius: 50%;
  background: #0c1317;
  border: 1px solid #418191;
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 15px;
  color: #418191;
  font-weight: 700;
  line-height: 1.15
}

.wcu-card__icon {
  width: 40px;
  height: 40px;
  flex-shrink: 0
}

.wcu-card__h4 {
  font-size: 21px;
  line-height: 1.15;
  color: #eef1f5;
  margin: 0;
  letter-spacing: -.01em
}

.wcu-card__p {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.wcu-voices {
  padding: 96px 0;
  border-top: 1px solid #1a2a35
}

.wcu-voices__grid {
  display: grid;
  grid-template-columns: 5fr 7fr;
  gap: 48px;
  align-items: start
}

.wcu-voices__left {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.wcu-voices__tag {
  font-size: 15px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #418191
}

.wcu-voices__h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin: 0
}

.wcu-voices__h2::after {
  content: '';
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #9AABC2;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.wcu-voices__body {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.wcu-voices__right {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.wcu-review {
  background: #0c1317;
  border: 1px solid #1e3040;
  border-radius: 32px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  box-shadow: -1px 3px 5px 0 #41819112;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.wcu-review:hover {
  border-color: #418191
}

.wcu-review__head {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px
}

.wcu-review__portrait {
  width: 56px;
  height: 56px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  border: 2px solid #1e3040;
  flex-shrink: 0
}

.wcu-review__meta {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.wcu-review__name {
  font-size: 17px;
  color: #eef1f5;
  font-weight: 600;
  line-height: 1.15
}

.wcu-review__role {
  font-size: 15px;
  color: #418191;
  line-height: 1.15
}

.wcu-review__stars {
  display: flex;
  flex-direction: row;
  gap: 4px
}

.wcu-review__star {
  width: 14px;
  height: 14px
}

.wcu-review__text {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.wcu-two-col-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px 32px;
  list-style: none;
  margin: 0;
  padding: 0
}

.wcu-two-col-list li {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  padding-left: 16px;
  position: relative
}

.wcu-two-col-list li::before {
  content: '';
  position: absolute;
  left: 0;
  top: 11px;
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #418191
}

.wcu-link-pill {
  display: inline-block;
  color: #9AABC2;
  text-decoration: none;
  font-size: 17px;
  padding: 8px 16px;
  border-radius: 32px;
  border: 1px solid transparent;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.wcu-link-pill:hover,
.wcu-link-pill:focus {
  background: #4181911f;
  border-color: #418191;
  color: #D7DFEA;
  outline: none
}

.wcu-btn {
  display: inline-block;
  background: #418191;
  color: #eef1f5;
  font-size: 17px;
  padding: 16px 32px;
  border-radius: 3px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  letter-spacing: .01em;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: background .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.wcu-btn:hover,
.wcu-btn:focus {
  background: #9AABC2;
  color: #080c0e;
  box-shadow: -1px 9px 60px 0 #41819124;
  outline: none
}

.wcu-tooltip-wrap {
  position: relative;
  display: inline-block
}

.wcu-tooltip-wrap:focus-within .wcu-tooltip,
.wcu-tooltip-wrap:focus .wcu-tooltip {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto
}

.wcu-tooltip {
  position: absolute;
  bottom: calc(100% + 8px);
  left: 50%;
  transform: translateX(-50%) translateY(6px);
  background: #1e3040;
  color: #D7DFEA;
  font-size: 15px;
  padding: 8px 16px;
  border-radius: 3px;
  white-space: nowrap;
  border: 1px solid #418191;
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  z-index: 10
}

.wcu-tooltip::after {
  content: '';
  position: absolute;
  top: 100%;
  left: 50%;
  transform: translateX(-50%);
  border: 6px solid transparent;
  border-top-color: #418191
}

.wcu-accent-strike {
  text-decoration: line-through;
  color: #3a4a55
}

.wcu-accent-replace {
  color: #418191
}

@media (max-width:900px) {
  .wcu-top__h1 {
    font-size: 37px
  }

  .wcu-reason__grid {
    grid-template-columns: 1fr
  }

  .wcu-cards {
    grid-template-columns: 1fr
  }

  .wcu-voices__grid {
    grid-template-columns: 1fr
  }

  .wcu-pillars__top {
    flex-direction: column;
    align-items: flex-start
  }

  .wcu-two-col-list {
    grid-template-columns: 1fr
  }
}

@media (max-width:600px) {
  .wcu-inner {
    padding: 0 16px
  }

  .wcu-top {
    padding: 48px 16px 32px
  }

  .wcu-top__h1 {
    font-size: 27px
  }

  .wcu-reason__h2 {
    font-size: 27px
  }

  .wcu-pillars__h2 {
    font-size: 27px
  }

  .wcu-voices__h2 {
    font-size: 27px
  }

  .wcu-pillars__inner {
    padding: 0 16px
  }
}

.rt {
  background: #080c0e;
  color: #d4dce8;
  overflow-x: hidden
}

.rt .mx {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 48px;
  padding-right: 48px
}

.rt .dash-div {
  border: none;
  height: 2px;
  background: repeating-linear-gradient(90deg, #418191 0px, #418191 8px, transparent 8px, transparent 16px, #418191 16px, #418191 32px, transparent 32px, transparent 48px);
  opacity: .35;
  margin: 0
}

.rt .dot-accent {
  display: inline-block;
  width: 6px;
  height: 6px;
  border-radius: 32px;
  background: #418191;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

@keyframes rt-appear {
  from {
    opacity: 0;
    transform: rotate(-1.5deg) translateY(24px)
  }

  to {
    opacity: 1;
    transform: rotate(0deg) translateY(0)
  }
}

@keyframes rt-appear-img {
  from {
    opacity: 0;
    transform: rotate(1.2deg) scale(0.97)
  }

  to {
    opacity: 1;
    transform: rotate(0deg) scale(1)
  }
}

.rt .title-blk {
  padding-top: 96px;
  padding-bottom: 96px;
  position: relative
}

.rt .title-blk::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 60% 80% at 70% 50%, #41819117 50%, transparent 50%);
  pointer-events: none
}

.rt .title-inner {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 96px
}

.rt .title-text {
  flex: 1 1 0;
  animation: rt-appear .28s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.rt .title-img-col {
  flex: 0 0 420px;
  position: relative;
  animation: rt-appear-img .32s cubic-bezier(0.34, 1.56, 0.64, 1) .08s both
}

.rt .title-shape-wrap {
  overflow: hidden;
  border-radius: 32px 3px 32px 3px;
  width: 420px;
  height: 540px;
  box-shadow: -1px 9px 60px 0 #41819124
}

.rt .title-shape-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  filter: blur(0px);
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .title-shape-wrap img:hover {
  transform: scale(1.05)
}

.rt .title-deco-a {
  position: absolute;
  top: -24px;
  right: -24px;
  width: 80px;
  height: 80px;
  border-radius: 32px;
  border: 2px solid #41819166;
  pointer-events: none
}

.rt .title-deco-b {
  position: absolute;
  bottom: -16px;
  left: -16px;
  width: 48px;
  height: 48px;
  border-radius: 3px;
  background: #9aabc21f;
  pointer-events: none
}

.rt .lbl {
  font-size: 15px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #9AABC2;
  margin-bottom: 16px;
  display: block;
  line-height: 1.45
}

.rt .title-h {
  font-size: 68px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #eef1f5;
  margin-bottom: 32px;
  margin-top: 0
}

.rt .title-sub {
  font-size: 21px;
  line-height: 1.7;
  color: #9AABC2;
  margin-bottom: 48px;
  max-width: 480px
}

.rt .btn-row {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap
}

.rt .btn-pri {
  display: inline-block;
  padding: 16px 32px;
  background: #418191;
  color: #080c0e;
  font-size: 17px;
  font-weight: 700;
  border-radius: 3px;
  border: none;
  cursor: pointer;
  text-decoration: none;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  line-height: 1.15
}

.rt .btn-pri:hover {
  background: #9AABC2;
  transform: translateY(-2px)
}

.rt .btn-pri:focus {
  outline: 3px solid #9AABC2;
  outline-offset: 3px
}

.rt .btn-sec {
  display: inline-block;
  padding: 16px 32px;
  background: transparent;
  color: #9AABC2;
  font-size: 17px;
  font-weight: 600;
  border-radius: 3px;
  border: 2px solid #9aabc266;
  cursor: pointer;
  text-decoration: none;
  transition: border-color .25s cubic-bezier(0.68, -0.55, 0.27, 1.55), color .25s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  line-height: 1.15
}

.rt .btn-sec:hover {
  border-color: #418191;
  color: #D7DFEA;
  transform: translateY(-2px)
}

.rt .btn-sec:focus {
  outline: 3px solid #418191;
  outline-offset: 3px
}

.rt .adapt-blk {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #0d1418;
  position: relative
}

.rt .adapt-blk::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 70% 60% at 20% 80%, #4181910f 50%, transparent 50%);
  pointer-events: none
}

.rt .adapt-grid {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  margin-top: 48px
}

.rt .adapt-card {
  background: #41819112;
  border-radius: 32px 3px;
  padding: 32px;
  box-shadow: -1px 3px 5px 0 #41819112;
  transition: box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1), transform .25s cubic-bezier(0.34, 1.56, 0.64, 1);
  border: 1px solid #9aabc21a
}

.rt .adapt-card:hover {
  box-shadow: -1px 9px 60px 0 #41819124;
  transform: translateY(-4px)
}

.rt .adapt-card:focus-within {
  outline: 3px solid #418191;
  outline-offset: 2px
}

.rt .adapt-img-wrap {
  overflow: hidden;
  border-radius: 3px;
  width: 100%;
  height: 200px;
  margin-bottom: 24px
}

.rt .adapt-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .adapt-card:hover .adapt-img-wrap img {
  transform: scale(1.06)
}

.rt .adapt-h {
  font-size: 21px;
  line-height: 1.45;
  color: #eef1f5;
  margin-top: 0;
  margin-bottom: 16px;
  letter-spacing: -.01em
}

.rt .adapt-p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.rt .adapt-head-row {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 48px
}

.rt .adapt-intro {
  flex: 1 1 0
}

.rt .adapt-quote {
  flex: 0 0 auto;
  font-size: 68px;
  line-height: 1.15;
  color: #41819140;
  font-style: italic;
  letter-spacing: -.04em;
  user-select: none;
  pointer-events: none
}

.rt .sec-h {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin-top: 0;
  margin-bottom: 16px
}

.rt .sec-lead {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0;
  max-width: 560px
}

.rt .scale-blk {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #080c0e;
  position: relative
}

.rt .rings-bg {
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: 320px;
  height: 320px;
  pointer-events: none;
  opacity: .08
}

.rt .scale-layout {
  display: grid;
  grid-template-columns: 5fr 4fr;
  gap: 96px;
  align-items: center
}

.rt .scale-img-wrap {
  overflow: hidden;
  border-radius: 3px 32px;
  width: 100%;
  height: 480px;
  box-shadow: -1px 9px 60px 0 #41819124
}

.rt .scale-img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .3s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .scale-img-wrap:hover img {
  transform: scale(1.05)
}

.rt .scale-text {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.rt .metric-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px
}

.rt .metric {
  background: #9aabc212;
  border-radius: 3px;
  padding: 24px;
  box-shadow: -1px 5px 25px 0 #41819117;
  border-top: 2px solid #41819159;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .metric:hover {
  border-color: #9AABC2
}

.rt .metric-num {
  font-size: 51px;
  line-height: 1.15;
  color: #418191;
  letter-spacing: -.03em;
  display: block;
  font-weight: 700
}

.rt .metric-desc {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  margin: 8px 0 0
}

.rt .scale-p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.rt .team-blk {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #0a1115;
  position: relative
}

.rt .team-blk::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 50% 70% at 50% 30%, #9aabc20d 50%, transparent 50%);
  pointer-events: none
}

.rt .team-layout {
  display: flex;
  flex-direction: row;
  gap: 96px;
  align-items: flex-start;
  margin-top: 48px
}

.rt .team-member {
  flex: 0 0 auto;
  width: 280px
}

.rt .portrait-wrap {
  overflow: hidden;
  border-radius: 32px 3px;
  width: 280px;
  height: 360px;
  box-shadow: -1px 5px 25px 0 #41819117;
  margin-bottom: 24px
}

.rt .portrait-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .portrait-wrap:hover img {
  transform: scale(1.04)
}

.rt .member-name {
  font-size: 21px;
  line-height: 1.45;
  color: #eef1f5;
  margin: 0 0 8px
}

.rt .member-role {
  font-size: 15px;
  line-height: 1.45;
  color: #418191;
  letter-spacing: .06em;
  text-transform: uppercase;
  margin: 0
}

.rt .team-desc {
  flex: 1 1 0
}

.rt .team-desc-h {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin-top: 0;
  margin-bottom: 16px
}

.rt .team-desc-p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin-bottom: 32px
}

.rt .qual-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  list-style: none;
  padding: 0;
  margin: 0
}

.rt .qual-list li {
  font-size: 17px;
  line-height: 1.7;
  color: #D7DFEA;
  padding: 16px;
  background: #41819114;
  border-radius: 3px;
  position: relative
}

.rt .qual-list li::before {
  content: "";
  display: block;
  width: 4px;
  height: 4px;
  border-radius: 32px;
  background: #418191;
  margin-bottom: 8px
}

.rt .team-extra {
  margin-top: 32px;
  display: flex;
  flex-direction: row;
  gap: 48px;
  align-items: flex-start
}

.rt .team-extra-member {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.rt .extra-name {
  font-size: 17px;
  line-height: 1.45;
  color: #eef1f5;
  font-weight: 600
}

.rt .extra-role {
  font-size: 15px;
  line-height: 1.45;
  color: #418191
}

.rt .extra-note {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2
}

.rt .clients-blk {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #0d1418;
  position: relative
}

.rt .clients-blk::before {
  content: "";
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 50% at 50% 100%, #41819112 50%, transparent 50%);
  pointer-events: none
}

.rt .clients-head {
  text-align: center;
  margin-bottom: 48px
}

.rt .clients-head .sec-h {
  text-align: center
}

.rt .clients-head .sec-lead {
  text-align: center;
  max-width: 600px;
  margin-left: auto;
  margin-right: auto
}

.rt .cases-layout {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.rt .case-item {
  background: #0d1418cc;
  border-radius: 32px 3px 3px 32px;
  padding: 32px;
  border: 1px solid #9aabc21a;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1);
  display: flex;
  flex-direction: column;
  gap: 16px
}

.rt .case-item:hover {
  box-shadow: -1px 9px 60px 0 #41819124;
  border-color: #41819159
}

.rt .case-item:focus-within {
  outline: 3px solid #418191 !important;
  outline-offset: 3px
}

.rt .case-name {
  font-size: 21px;
  line-height: 1.45;
  color: #eef1f5;
  margin: 0;
  font-weight: 700
}

.rt .case-ctx {
  font-size: 15px;
  line-height: 1.45;
  color: #418191;
  letter-spacing: .05em;
  text-transform: uppercase;
  margin: 0
}

.rt .case-body {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.rt .case-outcome {
  font-size: 17px;
  line-height: 1.7;
  color: #D7DFEA;
  padding: 16px;
  background: #4181911a;
  border-radius: 3px;
  margin: 0
}

.rt .case-img-wide {
  grid-column: 1 / -1;
  overflow: hidden;
  border-radius: 3px 32px;
  height: 280px;
  box-shadow: -1px 9px 60px 0 #41819124
}

.rt .case-img-wide img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .3s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.rt .case-img-wide:hover img {
  transform: scale(1.04)
}

.rt .div-center {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px
}

.rt .div-line {
  flex: 1 1 0;
  height: 1px;
  background: #9aabc233
}

.rt .div-gem {
  width: 8px;
  height: 8px;
  border-radius: 3px;
  background: #418191;
  transform: rotate(45deg);
  flex-shrink: 0
}

.rt .link-pill {
  color: #9AABC2;
  text-decoration: none;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1), padding .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  border-radius: 32px;
  padding: 2px 4px
}

.rt .link-pill:hover {
  background: #41819133;
  color: #D7DFEA;
  padding: 2px 12px
}

.rt .link-pill:focus {
  outline: 2px solid #418191;
  outline-offset: 2px
}

@media (max-width:1024px) {
  .rt .mx {
    padding-left: 32px;
    padding-right: 32px
  }

  .rt .title-inner {
    gap: 48px
  }

  .rt .title-img-col {
    flex: 0 0 320px
  }

  .rt .title-shape-wrap {
    width: 320px;
    height: 420px
  }

  .rt .title-h {
    font-size: 51px
  }

  .rt .adapt-grid {
    grid-template-columns: 1fr 1fr
  }

  .rt .scale-layout {
    gap: 48px
  }

  .rt .team-layout {
    gap: 48px
  }
}

@media (max-width:768px) {
  .rt .mx {
    padding-left: 16px;
    padding-right: 16px
  }

  .rt .title-inner {
    flex-direction: column;
    gap: 48px
  }

  .rt .title-img-col {
    flex: 0 0 auto;
    width: 100%
  }

  .rt .title-shape-wrap {
    width: 100%;
    height: 320px
  }

  .rt .title-deco-a,
  .rt .title-deco-b {
    display: none
  }

  .rt .title-h {
    font-size: 37px
  }

  .rt .title-sub {
    font-size: 17px
  }

  .rt .adapt-grid {
    grid-template-columns: 1fr
  }

  .rt .adapt-head-row {
    flex-direction: column;
    gap: 16px;
    align-items: flex-start
  }

  .rt .adapt-quote {
    font-size: 51px
  }

  .rt .scale-layout {
    grid-template-columns: 1fr;
    gap: 48px
  }

  .rt .scale-img-wrap {
    height: 300px
  }

  .rt .metric-row {
    grid-template-columns: 1fr 1fr
  }

  .rt .team-layout {
    flex-direction: column;
    gap: 48px
  }

  .rt .team-member {
    width: 100%
  }

  .rt .portrait-wrap {
    width: 100%;
    height: 280px
  }

  .rt .qual-list {
    grid-template-columns: 1fr
  }

  .rt .cases-layout {
    grid-template-columns: 1fr
  }

  .rt .case-img-wide {
    height: 200px
  }

  .rt .team-extra {
    flex-direction: column;
    gap: 24px
  }
}

.srvs-pg {
  background: #080c10;
  color: #d0d8e4;
  overflow-x: clip
}

.srvs-pg .max-w {
  max-width: 1400px;
  margin-left: auto;
  margin-right: auto;
  padding-left: 48px;
  padding-right: 48px
}

.srvs-pg .pan-top {
  position: relative;
  padding-top: 96px;
  padding-bottom: 48px;
  background: linear-gradient(170deg, #418191 0%, #418191 40%, #080c10 40%)
}

.srvs-pg .pan-top__deco {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  overflow: hidden;
  border-radius: 0
}

.srvs-pg .pan-top__shape-a {
  position: absolute;
  top: -32px;
  right: 80px;
  width: 220px;
  height: 220px;
  border: 2px solid #9babc22e;
  border-radius: 32px;
  transform: rotate(18deg)
}

.srvs-pg .pan-top__shape-b {
  position: absolute;
  top: 48px;
  right: 200px;
  width: 120px;
  height: 120px;
  border: 1px solid #41819138;
  border-radius: 32px;
  transform: rotate(-12deg)
}

.srvs-pg .pan-top__shape-c {
  position: absolute;
  bottom: 32px;
  left: 30%;
  width: 80px;
  height: 80px;
  border: 1px solid #d7dfea1f;
  border-radius: 3px;
  transform: rotate(30deg)
}

.srvs-pg .pan-top__num {
  font-size: 68px;
  line-height: 1.15;
  letter-spacing: -.04em;
  color: #d7dfea26;
  font-weight: 800;
  display: block;
  margin-bottom: 8px
}

.srvs-pg .pan-top__h {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #fff;
  margin: 0 0 16px;
  font-weight: 700
}

.srvs-pg .pan-top__h .dot-acc {
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #D7DFEA;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -4px
}

.srvs-pg .pan-top__sub {
  font-size: 17px;
  line-height: 1.7;
  color: #d7dfead1;
  max-width: 560px;
  margin: 0
}

.srvs-pg .pan-top__img-wrap {
  position: relative;
  border-radius: 32px;
  overflow: hidden;
  width: 100%;
  aspect-ratio: 16/7;
  margin-top: 48px;
  box-shadow: -1px 9px 60px 0 #41819124
}

.srvs-pg .pan-top__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block
}

.srvs-pg .pan-top__img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 60%;
  background: linear-gradient(180deg, #4181918c 0%, transparent 100%);
  pointer-events: none
}

.srvs-pg .cards-band {
  padding-top: 96px;
  padding-bottom: 96px;
  background: linear-gradient(180deg, #080c10 0%, #0d1520 100%);
  position: relative
}

.srvs-pg .cards-band::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-image: repeating-linear-gradient(135deg, #4181910a 0px, #4181910a 1px, transparent 1px, transparent 12px);
  pointer-events: none
}

.srvs-pg .cards-band__lbl {
  font-size: 15px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #9AABC2;
  margin-bottom: 16px;
  display: block;
  text-align: center
}

.srvs-pg .cards-band__h {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #fff;
  text-align: center;
  margin: 0 0 48px
}

.srvs-pg .cards-band__h .dot-acc {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #418191;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.srvs-pg .card-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 32px
}

.srvs-pg .svc-card {
  background: #0d1520;
  border-radius: 32px;
  overflow: hidden;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1), transform .28s cubic-bezier(0.34, 1.56, 0.64, 1);
  display: flex;
  flex-direction: column;
  animation: col-appear .32s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.srvs-pg .svc-card:nth-child(1) {
  animation-delay: .08s
}

.srvs-pg .svc-card:nth-child(2) {
  animation-delay: .18s
}

@keyframes col-appear {
  from {
    opacity: 0;
    transform: translateY(24px) scale(0.97)
  }

  to {
    opacity: 1;
    transform: translateY(0) scale(1)
  }
}

.srvs-pg .svc-card:hover {
  box-shadow: -1px 9px 60px 0 #41819124;
  transform: translateY(-4px)
}

.srvs-pg .svc-card__img-wrap {
  width: 100%;
  aspect-ratio: 16/9;
  overflow: hidden;
  position: relative;
  flex-shrink: 0
}

.srvs-pg .svc-card__img-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .32s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.srvs-pg .svc-card:hover .svc-card__img-wrap img {
  transform: scale(1.05)
}

.srvs-pg .svc-card__body {
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  flex: 1
}

.srvs-pg .svc-card__meta {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 8px;
  align-items: center
}

.srvs-pg .svc-card__tag {
  font-size: 15px;
  color: #9AABC2;
  background: #9aabc21f;
  border-radius: 3px;
  padding: 4px 8px;
  line-height: 1.45
}

.srvs-pg .svc-card__h {
  font-size: 27px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #fff;
  margin: 0;
  font-weight: 700
}

.srvs-pg .svc-card__desc {
  font-size: 17px;
  line-height: 1.7;
  color: #d0d8e4cc;
  margin: 0
}

.srvs-pg .svc-card__price-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  margin-top: auto;
  padding-top: 16px;
  border-top: 1px solid #9aabc21f
}

.srvs-pg .svc-card__price {
  font-size: 27px;
  line-height: 1.15;
  color: #9AABC2;
  font-weight: 700;
  letter-spacing: -.02em
}

.srvs-pg .svc-card__readtime {
  font-size: 15px;
  color: #9aabc299;
  line-height: 1.45
}

.srvs-pg .svc-card__link {
  display: inline-block;
  margin-top: 8px;
  padding: 12px 32px;
  background: #418191;
  color: #fff;
  border-radius: 3px;
  font-size: 17px;
  line-height: 1.45;
  text-decoration: none;
  font-weight: 600;
  box-shadow: -1px 3px 5px 0 #41819112;
  transition: background .22s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  align-self: flex-start
}

.srvs-pg .svc-card__link:hover {
  background: #9AABC2;
  color: #080c10;
  transform: scale(1.04)
}

.srvs-pg .svc-card__link:focus {
  outline: 2px solid #D7DFEA;
  outline-offset: 3px
}

.srvs-pg .why-band {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #0a1018;
  position: relative
}

.srvs-pg .why-band__dashed {
  border: 2px dashed #41819147;
  border-radius: 32px;
  padding: 48px;
  position: relative
}

.srvs-pg .why-band__cols {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  align-items: start
}

.srvs-pg .why-col {
  display: flex;
  flex-direction: column;
  gap: 16px;
  animation: col-appear .28s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.srvs-pg .why-col:nth-child(1) {
  animation-delay: .06s;
  padding-top: 0
}

.srvs-pg .why-col:nth-child(2) {
  animation-delay: .14s;
  padding-top: 32px
}

.srvs-pg .why-col:nth-child(3) {
  animation-delay: .22s;
  padding-top: 16px
}

.srvs-pg .why-col__num {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.04em;
  color: #41819138;
  font-weight: 800;
  display: block
}

.srvs-pg .why-col__h {
  font-size: 21px;
  line-height: 1.45;
  color: #D7DFEA;
  margin: 0;
  font-weight: 700;
  text-align: center
}

.srvs-pg .why-col__p {
  font-size: 17px;
  line-height: 1.7;
  color: #d0d8e4bf;
  margin: 0;
  text-align: left
}

.srvs-pg .why-col__link {
  display: inline-block;
  font-size: 15px;
  color: #9AABC2;
  text-decoration: none;
  padding: 4px 12px;
  border-radius: 32px;
  transition: background .25s cubic-bezier(0.34, 1.56, 0.64, 1), color .25s cubic-bezier(0.34, 1.56, 0.64, 1);
  align-self: flex-start
}

.srvs-pg .why-col__link:hover {
  background: #9aabc226;
  color: #D7DFEA
}

.srvs-pg .why-col__link:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 2px
}

.srvs-pg .why-band__head {
  text-align: center;
  margin-bottom: 48px
}

.srvs-pg .why-band__h {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #fff;
  margin: 0 0 16px
}

.srvs-pg .why-band__h .dot-acc {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #9AABC2;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.srvs-pg .why-band__sub {
  font-size: 17px;
  line-height: 1.7;
  color: #d0d8e4b3;
  max-width: 520px;
  margin: 0 auto
}

.srvs-pg .metrics-band {
  padding-top: 96px;
  padding-bottom: 96px;
  background: linear-gradient(180deg, #0d1520 0%, #080c10 100%)
}

.srvs-pg .metrics-band__h {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #fff;
  text-align: center;
  margin: 0 0 48px
}

.srvs-pg .metrics-band__h .dot-acc {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #418191;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.srvs-pg .metrics-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 32px;
  align-items: center
}

.srvs-pg .metric-item {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  animation: col-appear .3s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

.srvs-pg .metric-item:nth-child(1) {
  animation-delay: .05s
}

.srvs-pg .metric-item:nth-child(2) {
  animation-delay: .13s
}

.srvs-pg .metric-item:nth-child(3) {
  animation-delay: .21s
}

.srvs-pg .metric-ring {
  position: relative;
  width: 120px;
  height: 120px;
  flex-shrink: 0
}

.srvs-pg .metric-ring svg {
  width: 120px;
  height: 120px;
  transform: rotate(-90deg)
}

.srvs-pg .metric-ring__bg {
  fill: none;
  stroke: #9aabc21f;
  stroke-width: 8
}

.srvs-pg .metric-ring__fill {
  fill: none;
  stroke-width: 8;
  stroke-linecap: round;
  transition: stroke-dashoffset .35s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.srvs-pg .metric-ring__fill.teal {
  stroke: #418191
}

.srvs-pg .metric-ring__fill.blue {
  stroke: #9AABC2
}

.srvs-pg .metric-ring__fill.light {
  stroke: #D7DFEA
}

.srvs-pg .metric-ring__val {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  font-size: 21px;
  line-height: 1.15;
  font-weight: 700;
  color: #fff
}

.srvs-pg .metric-item__lbl {
  font-size: 17px;
  line-height: 1.45;
  color: #d0d8e4cc;
  text-align: center;
  margin: 0
}

.srvs-pg .metric-item__desc {
  font-size: 15px;
  line-height: 1.7;
  color: #9aabc2a6;
  text-align: center;
  margin: 0
}

.srvs-pg .consult-band {
  padding-top: 96px;
  padding-bottom: 96px;
  background: #080c10
}

.srvs-pg .consult-inner {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center
}

.srvs-pg .consult-txt {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.srvs-pg .consult-txt__lbl {
  font-size: 15px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: #9AABC2;
  display: block
}

.srvs-pg .consult-txt__h {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #fff;
  margin: 0;
  font-weight: 700
}

.srvs-pg .consult-txt__h .dot-acc {
  display: inline-block;
  width: 7px;
  height: 7px;
  background: #D7DFEA;
  border-radius: 50%;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.srvs-pg .consult-txt__p {
  font-size: 17px;
  line-height: 1.7;
  color: #d0d8e4c7;
  margin: 0
}

.srvs-pg .consult-txt__expert {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  margin-top: 8px;
  padding: 16px;
  background: #41819114;
  border-radius: 32px;
  box-shadow: inset 0 2px 8px 0 #41819112
}

.srvs-pg .expert-portrait {
  width: 80px;
  height: 120px;
  border-radius: 32px;
  object-fit: cover;
  object-position: center;
  flex-shrink: 0;
  box-shadow: -1px 3px 5px 0 #41819112
}

.srvs-pg .expert-info {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.srvs-pg .expert-info__name {
  font-size: 17px;
  line-height: 1.45;
  color: #D7DFEA;
  font-weight: 600;
  margin: 0
}

.srvs-pg .expert-info__role {
  font-size: 15px;
  line-height: 1.45;
  color: #9aabc2b3;
  margin: 0
}

.srvs-pg .expert-info__note {
  font-size: 15px;
  line-height: 1.7;
  color: #d0d8e4a6;
  margin: 0
}

.srvs-pg .consult-form {
  background: #0d1520;
  border-radius: 32px;
  padding: 48px;
  box-shadow: -1px 5px 25px 0 #41819117
}

.srvs-pg .consult-form__h {
  font-size: 21px;
  line-height: 1.45;
  color: #fff;
  margin: 0 0 32px;
  font-weight: 700;
  text-align: center
}

.srvs-pg .form-field {
  display: flex;
  flex-direction: column;
  gap: 8px;
  margin-bottom: 16px
}

.srvs-pg .form-field label {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2
}

.srvs-pg .form-field input,
.srvs-pg .form-field select,
.srvs-pg .form-field textarea {
  background: #41819114;
  border: 1px solid #9aabc233;
  border-radius: 3px;
  padding: 12px 16px;
  color: #D7DFEA;
  font-size: 17px;
  line-height: 1.45;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  width: 100%;
  box-sizing: border-box
}

.srvs-pg .form-field input::placeholder,
.srvs-pg .form-field textarea::placeholder {
  color: #9aabc261;
  font-weight: 300
}

.srvs-pg .form-field input:focus,
.srvs-pg .form-field select:focus,
.srvs-pg .form-field textarea:focus {
  outline: none;
  border-color: #418191;
  box-shadow: 0 0 0 3px #4181912e
}

.srvs-pg .form-field select {
  appearance: none;
  cursor: pointer
}

.srvs-pg .form-field select option {
  background: #0d1520;
  color: #D7DFEA
}

.srvs-pg .form-field textarea {
  resize: vertical;
  min-height: 96px
}

.srvs-pg .form-btn {
  width: 100%;
  padding: 16px 32px;
  background: #418191;
  color: #fff;
  border: none;
  border-radius: 3px;
  font-size: 17px;
  line-height: 1.45;
  font-weight: 700;
  cursor: pointer;
  margin-top: 8px;
  box-shadow: -1px 3px 5px 0 #41819112;
  transition: background .25s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.srvs-pg .form-btn:hover {
  background: #9AABC2;
  color: #080c10;
  transform: scale(1.02)
}

.srvs-pg .form-btn:focus {
  outline: 2px solid #D7DFEA;
  outline-offset: 3px
}

.srvs-pg .form-btn:active {
  transform: scale(0.98)
}

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

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

@media (max-width:900px) {
  .srvs-pg .max-w {
    padding-left: 16px;
    padding-right: 16px
  }

  .srvs-pg .card-grid {
    grid-template-columns: 1fr
  }

  .srvs-pg .why-band__cols {
    grid-template-columns: 1fr
  }

  .srvs-pg .why-col:nth-child(2),
  .srvs-pg .why-col:nth-child(3) {
    padding-top: 0
  }

  .srvs-pg .metrics-row {
    grid-template-columns: 1fr
  }

  .srvs-pg .consult-inner {
    grid-template-columns: 1fr
  }

  .srvs-pg .pan-top__h {
    font-size: 37px
  }

  .srvs-pg .why-band__dashed {
    padding: 32px 16px
  }

  .srvs-pg .consult-form {
    padding: 32px 16px
  }
}

.ab-us {
  background: #080c10;
  color: #d0d8e4;
  overflow-x: clip
}

.ab-us .pg-load {
  animation: pgReveal .28s cubic-bezier(0.34, 1.56, 0.64, 1) both
}

@keyframes pgReveal {
  from {
    opacity: 0;
    transform: scale(0.9)
  }

  to {
    opacity: 1;
    transform: scale(1)
  }
}

.ab-us .dot-border {
  position: relative
}

.ab-us .dot-border::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: radial-gradient(circle, #418191 1px, transparent 1px), radial-gradient(circle, #9AABC2 1.5px, transparent 1.5px), radial-gradient(circle, #418191 0.8px, transparent 0.8px);
  background-size: 28px 28px, 52px 52px, 18px 18px;
  background-position: 0 0, 14px 14px, 7px 21px;
  opacity: .12;
  pointer-events: none;
  border-radius: 3px
}

.ab-us .divider-cross {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding: 32px 0
}

.ab-us .divider-cross .d-line {
  width: 80px;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #418191 50%, #418191 50%, transparent 100%)
}

.ab-us .divider-cross .d-cross {
  width: 12px;
  height: 12px;
  position: relative;
  flex-shrink: 0
}

.ab-us .divider-cross .d-cross::before,
.ab-us .divider-cross .d-cross::after {
  content: "";
  position: absolute;
  background: #418191;
  border-radius: 3px
}

.ab-us .divider-cross .d-cross::before {
  width: 100%;
  height: 2px;
  top: 50%;
  left: 0;
  transform: translateY(-50%)
}

.ab-us .divider-cross .d-cross::after {
  width: 2px;
  height: 100%;
  left: 50%;
  top: 0;
  transform: translateX(-50%)
}

.ab-us .top-strip {
  background: #0d1318;
  border-bottom: 1px solid #1e2d38;
  padding: 96px 48px
}

.ab-us .top-strip .strip-inner {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 340px;
  gap: 96px;
  align-items: start
}

.ab-us .top-strip .main-label {
  font-size: 15px;
  color: #9AABC2;
  letter-spacing: .12em;
  text-transform: uppercase;
  margin-bottom: 32px;
  display: block
}

.ab-us .top-strip .big-h {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin-bottom: 32px
}

.ab-us .top-strip .big-h em {
  font-style: normal;
  color: #9AABC2;
  text-decoration: line-through;
  text-decoration-color: #418191;
  margin-right: 8px
}

.ab-us .top-strip .big-h strong {
  font-style: normal;
  color: #eef1f5
}

.ab-us .top-strip .lead-p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  max-width: 560px
}

.ab-us .side-col {
  padding-top: 16px
}

.ab-us .side-col .since-badge {
  background: linear-gradient(135deg, #131d25 50%, #0d1318 50%);
  border: 1px solid #1e2d38;
  border-radius: 32px;
  padding: 32px;
  margin-bottom: 32px;
  box-shadow: -1px 9px 60px 0 #41819124
}

.ab-us .side-col .since-badge .yr {
  font-size: 51px;
  line-height: 1.15;
  color: #418191;
  letter-spacing: -.03em;
  display: block
}

.ab-us .side-col .since-badge .yr-label {
  font-size: 15px;
  color: #9AABC2;
  margin-top: 8px;
  display: block
}

.ab-us .side-col .stat-row {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ab-us .side-col .stat-item {
  background: #0d1318;
  border: 1px solid #1e2d38;
  border-radius: 3px;
  padding: 16px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .side-col .stat-item:hover {
  border-color: #418191;
  box-shadow: -1px 5px 25px 0 #41819117
}

.ab-us .side-col .stat-item .st-num {
  font-size: 27px;
  line-height: 1.15;
  color: #D7DFEA;
  letter-spacing: -.02em;
  flex-shrink: 0
}

.ab-us .side-col .stat-item .st-desc {
  font-size: 15px;
  color: #9AABC2;
  line-height: 1.45
}

.ab-us .dot-accent {
  display: inline-block;
  width: 6px;
  height: 6px;
  background: #418191;
  border-radius: 32px;
  margin-left: 6px;
  vertical-align: middle;
  position: relative;
  top: -2px
}

.ab-us .story-band {
  padding: 96px 48px;
  max-width: 1400px;
  margin: 0 auto
}

.ab-us .story-band .band-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center
}

.ab-us .story-band .img-wrap {
  border-radius: 32px;
  overflow: hidden;
  box-shadow: -1px 9px 60px 0 #41819124;
  position: relative
}

.ab-us .story-band .img-wrap img {
  width: 100%;
  height: 480px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .story-band .img-wrap:hover img {
  transform: scale(1.04)
}

.ab-us .story-band .img-wrap .img-overlay {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 40%;
  background: linear-gradient(180deg, #080c108c 0%, transparent 100%);
  pointer-events: none
}

.ab-us .story-band .txt-side {
  padding: 16px 0
}

.ab-us .story-band .sec-label {
  font-size: 15px;
  color: #418191;
  letter-spacing: .1em;
  text-transform: uppercase;
  margin-bottom: 16px;
  display: block
}

.ab-us .story-band .sec-h {
  font-size: 37px;
  line-height: 1.15;
  color: #eef1f5;
  letter-spacing: -.02em;
  margin-bottom: 32px;
  text-align: center
}

.ab-us .story-band .txt-para {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin-bottom: 16px
}

.ab-us .story-band .txt-two-col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 32px
}

.ab-us .story-band .txt-two-col .col-item {
  background: #0d1318;
  border: 1px solid #1e2d38;
  border-radius: 3px;
  padding: 16px
}

.ab-us .story-band .txt-two-col .col-item .ci-head {
  font-size: 15px;
  color: #D7DFEA;
  margin-bottom: 8px;
  font-weight: 600
}

.ab-us .story-band .txt-two-col .col-item .ci-body {
  font-size: 15px;
  color: #9AABC2;
  line-height: 1.45
}

.ab-us .approach-seg {
  background: #0a0f14;
  border-top: 1px solid #1a2530;
  border-bottom: 1px solid #1a2530;
  padding: 96px 48px
}

.ab-us .approach-seg .seg-inner {
  max-width: 1400px;
  margin: 0 auto
}

.ab-us .approach-seg .seg-top {
  text-align: center;
  margin-bottom: 48px
}

.ab-us .approach-seg .seg-top .seg-h {
  font-size: 37px;
  line-height: 1.15;
  color: #eef1f5;
  letter-spacing: -.02em;
  margin-bottom: 16px
}

.ab-us .approach-seg .seg-top .seg-sub {
  font-size: 17px;
  color: #9AABC2;
  line-height: 1.7;
  max-width: 620px;
  margin: 0 auto
}

.ab-us .approach-seg .checker {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 32px
}

.ab-us .approach-seg .checker .chk-item {
  border-radius: 32px;
  overflow: hidden;
  position: relative
}

.ab-us .approach-seg .checker .chk-item.img-item {
  min-height: 320px
}

.ab-us .approach-seg .checker .chk-item.img-item img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .approach-seg .checker .chk-item.img-item:hover img {
  transform: scale(1.04)
}

.ab-us .approach-seg .checker .chk-item.txt-item {
  background: #0d1318;
  border: 1px solid #1e2d38;
  padding: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center
}

.ab-us .approach-seg .checker .chk-item.txt-item .ti-h {
  font-size: 27px;
  line-height: 1.15;
  color: #eef1f5;
  letter-spacing: -.02em;
  margin-bottom: 16px;
  text-align: center
}

.ab-us .approach-seg .checker .chk-item.txt-item .ti-p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  text-align: left
}

.ab-us .approach-seg .checker .chk-item.accent-item {
  background: linear-gradient(135deg, #0f2028 50%, #0a1820 50%);
  border: 1px solid #1e3040;
  padding: 48px;
  display: flex;
  flex-direction: column;
  justify-content: center
}

.ab-us .approach-seg .checker .chk-item.accent-item .ai-h {
  font-size: 27px;
  line-height: 1.15;
  color: #9AABC2;
  letter-spacing: -.02em;
  margin-bottom: 16px;
  text-align: center
}

.ab-us .approach-seg .checker .chk-item.accent-item .ai-list {
  list-style: none;
  padding: 0;
  margin: 0;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px
}

.ab-us .approach-seg .checker .chk-item.accent-item .ai-list li {
  font-size: 15px;
  color: #D7DFEA;
  line-height: 1.45;
  padding: 8px;
  background: #41819114;
  border-radius: 3px;
  border: 1px solid #41819126
}

.ab-us .team-seg {
  padding: 96px 48px;
  max-width: 1400px;
  margin: 0 auto
}

.ab-us .team-seg .team-top {
  text-align: center;
  margin-bottom: 48px
}

.ab-us .team-seg .team-top .team-h {
  font-size: 37px;
  line-height: 1.15;
  color: #eef1f5;
  letter-spacing: -.02em;
  margin-bottom: 16px
}

.ab-us .team-seg .team-top .team-sub {
  font-size: 17px;
  color: #9AABC2;
  line-height: 1.7;
  max-width: 560px;
  margin: 0 auto
}

.ab-us .team-seg .complex-block {
  display: grid;
  grid-template-columns: 360px 1fr;
  gap: 48px;
  align-items: start
}

.ab-us .team-seg .expert-card {
  background: #0d1318;
  border: 1px solid #1e2d38;
  border-radius: 32px;
  padding: 32px;
  box-shadow: -1px 9px 60px 0 #41819124;
  position: sticky;
  top: 32px
}

.ab-us .team-seg .expert-card .portrait-wrap {
  width: 100%;
  aspect-ratio: 7/9;
  border-radius: 32px;
  overflow: hidden;
  margin-bottom: 32px;
  box-shadow: -1px 5px 25px 0 #41819117
}

.ab-us .team-seg .expert-card .portrait-wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .team-seg .expert-card .portrait-wrap:hover img {
  transform: scale(1.04)
}

.ab-us .team-seg .expert-card .exp-name {
  font-size: 21px;
  line-height: 1.15;
  color: #eef1f5;
  letter-spacing: -.01em;
  margin-bottom: 8px
}

.ab-us .team-seg .expert-card .exp-role {
  font-size: 15px;
  color: #418191;
  margin-bottom: 16px;
  display: block
}

.ab-us .team-seg .expert-card .exp-bio {
  font-size: 15px;
  color: #9AABC2;
  line-height: 1.7
}

.ab-us .team-seg .data-narrative {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.ab-us .team-seg .data-narrative .narr-block {
  background: #0d1318;
  border: 1px solid #1e2d38;
  border-radius: 3px;
  padding: 32px
}

.ab-us .team-seg .data-narrative .narr-block .nb-h {
  font-size: 21px;
  line-height: 1.15;
  color: #D7DFEA;
  letter-spacing: -.01em;
  margin-bottom: 16px;
  text-align: center
}

.ab-us .team-seg .data-narrative .narr-block .nb-p {
  font-size: 17px;
  color: #9AABC2;
  line-height: 1.7;
  margin-bottom: 16px;
  text-align: left
}

.ab-us .team-seg .data-narrative .steps-line {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin-top: 16px
}

.ab-us .team-seg .data-narrative .step-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  background: #4181910f;
  border-radius: 3px;
  border: 1px solid #4181911f;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .team-seg .data-narrative .step-row:hover {
  background: #4181911f;
  border-color: #41819147
}

.ab-us .team-seg .data-narrative .step-num {
  width: 32px;
  height: 32px;
  border-radius: 32px;
  background: #418191;
  color: #eef1f5;
  font-size: 15px;
  font-weight: 700;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  box-shadow: -1px 3px 5px 0 #41819112
}

.ab-us .team-seg .data-narrative .step-icon {
  width: 32px;
  height: 32px;
  border-radius: 3px;
  background: #9aabc21f;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0
}

.ab-us .team-seg .data-narrative .step-icon svg {
  width: 18px;
  height: 18px;
  stroke: #9AABC2;
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round
}

.ab-us .team-seg .data-narrative .step-txt .st-h {
  font-size: 15px;
  color: #D7DFEA;
  font-weight: 600;
  margin-bottom: 4px
}

.ab-us .team-seg .data-narrative .step-txt .st-p {
  font-size: 15px;
  color: #9AABC2;
  line-height: 1.45
}

.ab-us .team-seg .data-narrative .img-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 16px
}

.ab-us .team-seg .data-narrative .img-row .ir-wrap {
  border-radius: 3px;
  overflow: hidden;
  box-shadow: -1px 3px 5px 0 #41819112
}

.ab-us .team-seg .data-narrative .img-row .ir-wrap img {
  width: 100%;
  height: 200px;
  object-fit: cover;
  object-position: center;
  display: block;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .team-seg .data-narrative .img-row .ir-wrap:hover img {
  transform: scale(1.04)
}

.ab-us .team-seg .data-narrative .link-row {
  margin-top: 16px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap
}

.ab-us .team-seg .data-narrative .proc-link {
  display: inline-block;
  padding: 16px 32px;
  background: #418191;
  color: #eef1f5;
  border-radius: 3px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  letter-spacing: .04em;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .team-seg .data-narrative .proc-link:hover {
  background: #9AABC2;
  color: #080c10;
  box-shadow: -1px 9px 60px 0 #41819124;
  transform: scale(1.04)
}

.ab-us .team-seg .data-narrative .proc-link:active {
  transform: scale(1.08)
}

.ab-us .team-seg .data-narrative .sec-link {
  display: inline-block;
  padding: 16px 32px;
  background: transparent;
  color: #9AABC2;
  border: 1px solid #1e2d38;
  border-radius: 3px;
  font-size: 15px;
  font-weight: 600;
  text-decoration: none;
  letter-spacing: .04em;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .team-seg .data-narrative .sec-link:hover {
  border-color: #418191;
  color: #D7DFEA
}

.ab-us .bg-img-seg {
  position: relative;
  padding: 96px 48px;
  overflow: hidden
}

.ab-us .bg-img-seg .bg-photo {
  position: absolute;
  inset: 0;
  z-index: 0
}

.ab-us .bg-img-seg .bg-photo img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block
}

.ab-us .bg-img-seg .bg-photo::after {
  content: "";
  position: absolute;
  inset: 0;
  background: #080c10c7
}

.ab-us .bg-img-seg .bg-inner {
  position: relative;
  z-index: 1;
  max-width: 1400px;
  margin: 0 auto
}

.ab-us .bg-img-seg .bg-inner .bg-h {
  font-size: 37px;
  line-height: 1.15;
  color: #eef1f5;
  letter-spacing: -.02em;
  margin-bottom: 16px;
  text-align: center
}

.ab-us .bg-img-seg .bg-inner .bg-sub {
  font-size: 17px;
  color: #D7DFEA;
  line-height: 1.7;
  max-width: 600px;
  margin: 0 auto 48px;
  text-align: center
}

.ab-us .bg-img-seg .bg-inner .vals-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 32px
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card {
  background: #0d1318d1;
  border: 1px solid #41819140;
  border-radius: 32px;
  padding: 32px;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), transform .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card:hover {
  border-color: #418191;
  transform: scale(1.03)
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card:active {
  transform: scale(1.07)
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card .vc-icon {
  width: 48px;
  height: 48px;
  border-radius: 3px;
  background: #41819126;
  display: flex;
  align-items: center;
  justify-content: center;
  margin: 0 auto 16px
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card .vc-icon svg {
  width: 24px;
  height: 24px;
  stroke: #9AABC2;
  fill: none;
  stroke-width: 1.5;
  stroke-linecap: round;
  stroke-linejoin: round
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card .vc-h {
  font-size: 21px;
  line-height: 1.15;
  color: #D7DFEA;
  letter-spacing: -.01em;
  margin-bottom: 8px;
  text-align: center
}

.ab-us .bg-img-seg .bg-inner .vals-grid .val-card .vc-p {
  font-size: 15px;
  color: #9AABC2;
  line-height: 1.7;
  text-align: left
}

@media (max-width:1024px) {
  .ab-us .top-strip .strip-inner {
    grid-template-columns: 1fr;
    gap: 48px
  }

  .ab-us .story-band .band-grid {
    grid-template-columns: 1fr;
    gap: 32px
  }

  .ab-us .approach-seg .checker {
    grid-template-columns: 1fr
  }

  .ab-us .team-seg .complex-block {
    grid-template-columns: 1fr
  }

  .ab-us .team-seg .expert-card {
    position: static;
    display: grid;
    grid-template-columns: 160px 1fr;
    gap: 32px;
    align-items: start
  }

  .ab-us .team-seg .expert-card .portrait-wrap {
    margin-bottom: 0
  }

  .ab-us .bg-img-seg .bg-inner .vals-grid {
    grid-template-columns: 1fr 1fr
  }
}

@media (max-width:768px) {

  .ab-us .top-strip,
  .ab-us .story-band,
  .ab-us .approach-seg,
  .ab-us .team-seg,
  .ab-us .bg-img-seg {
    padding: 48px 16px
  }

  .ab-us .top-strip .big-h {
    font-size: 37px
  }

  .ab-us .story-band .txt-two-col {
    grid-template-columns: 1fr
  }

  .ab-us .team-seg .expert-card {
    grid-template-columns: 1fr
  }

  .ab-us .bg-img-seg .bg-inner .vals-grid {
    grid-template-columns: 1fr
  }

  .ab-us .team-seg .data-narrative .img-row {
    grid-template-columns: 1fr
  }

  .ab-us .approach-seg .checker .chk-item.accent-item .ai-list {
    grid-template-columns: 1fr
  }
}

.ct-us {
  background: #080c0f;
  color: #d4dde8;
  position: relative;
  overflow: hidden
}

.ct-us .stripe-bg {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  overflow: hidden;
  z-index: 0
}

.ct-us .stripe-bg::before {
  content: '';
  position: absolute;
  top: -60%;
  left: -40%;
  width: 220%;
  height: 220%;
  background: repeating-linear-gradient(128deg, transparent, transparent 48px, #4181910a 48px, #4181910a 50px);
  animation: stripe-move 18s linear infinite
}

@keyframes stripe-move {
  0% {
    transform: translateX(0) translateY(0)
  }

  100% {
    transform: translateX(80px) translateY(80px)
  }
}

.ct-us .vignette {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  pointer-events: none;
  z-index: 0;
  background: radial-gradient(ellipse at 50% 50%, transparent 40%, #04070ab8 100%)
}

.ct-us .pg-wrap {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px;
  position: relative;
  z-index: 1
}

.ct-us .diag-deco {
  position: absolute;
  top: 0;
  right: 0;
  width: 260px;
  height: 260px;
  pointer-events: none;
  overflow: hidden;
  z-index: 0
}

.ct-us .diag-deco::before,
.ct-us .diag-deco::after {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
  background: repeating-linear-gradient(-45deg, transparent, transparent 20px, #9aabc20f 20px, #9aabc20f 21px)
}

.ct-us .diag-deco::after {
  background: repeating-linear-gradient(-45deg, transparent, transparent 40px, #4181910d 40px, #4181910d 41px)
}

.ct-us .anchor-blk {
  position: relative;
  padding: 96px 0;
  overflow: hidden
}

.ct-us .anchor-blk::after {
  content: '';
  display: block;
  height: 1px;
  background: #9aabc221;
  margin-top: 96px
}

.ct-us .anchor-inner {
  display: flex;
  flex-direction: row;
  align-items: flex-end;
  gap: 48px
}

.ct-us .anchor-left {
  flex: 0 0 55%;
  max-width: 55%
}

.ct-us .anchor-right {
  flex: 1;
  padding-bottom: 8px
}

.ct-us .pg-tag {
  display: inline-block;
  font-size: 15px;
  letter-spacing: .12em;
  color: #9AABC2;
  text-transform: uppercase;
  margin-bottom: 32px;
  padding: 8px 16px;
  border: 1px solid #9aabc238;
  border-radius: 3px
}

.ct-us .pg-h1 {
  font-size: 68px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #eef1f5;
  margin: 0 0 32px
}

.ct-us .pg-h1 .line-a {
  display: block;
  color: #eef1f5
}

.ct-us .pg-h1 .line-b {
  display: block;
  color: #418191
}

.ct-us .pg-h1 .line-c {
  display: block;
  color: #9AABC2;
  font-size: 51px
}

.ct-us .anchor-desc {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0;
  max-width: 480px
}

.ct-us .stat-pair {
  display: flex;
  flex-direction: row;
  gap: 32px;
  margin-bottom: 48px
}

.ct-us .stat-item {
  text-align: center
}

.ct-us .stat-num {
  display: block;
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.04em;
  color: #418191
}

.ct-us .stat-num.contrast {
  color: #D7DFEA
}

.ct-us .stat-lbl {
  display: block;
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  margin-top: 8px
}

.ct-us .stat-sep {
  width: 1px;
  background: #9aabc233;
  align-self: stretch
}

.ct-us .info-table {
  width: 100%;
  border-collapse: collapse;
  margin-top: 16px
}

.ct-us .info-table td {
  padding: 8px 16px;
  font-size: 15px;
  line-height: 1.45;
  vertical-align: top
}

.ct-us .info-table .td-key {
  color: #9AABC2;
  white-space: nowrap;
  width: 40%
}

.ct-us .info-table .td-val {
  color: #D7DFEA
}

.ct-us .info-table tr:nth-child(odd) .td-key {
  background: #41819117
}

.ct-us .info-table tr:nth-child(odd) .td-val {
  background: #41819117
}

.ct-us .info-table tr:nth-child(even) .td-key {
  background: #9aabc20d
}

.ct-us .info-table tr:nth-child(even) .td-val {
  background: #9aabc20d
}

.ct-us .info-table a {
  color: #9AABC2;
  text-decoration: none;
  transition: color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ct-us .info-table a:hover {
  color: #D7DFEA
}

.ct-us .form-blk {
  position: relative;
  padding: 96px 0;
  background: #0b1015
}

.ct-us .form-blk::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: radial-gradient(ellipse at 50% 50%, transparent 30%, #04070a99 100%);
  pointer-events: none;
  z-index: 0
}

.ct-us .form-inner {
  display: flex;
  flex-direction: row;
  gap: 96px;
  align-items: flex-start;
  position: relative;
  z-index: 1
}

.ct-us .form-side {
  flex: 0 0 38%;
  max-width: 38%
}

.ct-us .form-main {
  flex: 1
}

.ct-us .side-h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #eef1f5;
  margin: 0 0 16px
}

.ct-us .dot-accent {
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 32px;
  background: #418191;
  margin-left: 6px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.ct-us .side-desc {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 48px
}

.ct-us .avail-label {
  font-size: 15px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #418191;
  margin-bottom: 16px
}

.ct-us .avail-grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 8px
}

.ct-us .avail-slot {
  padding: 8px 16px;
  border: 1px solid #41819140;
  border-radius: 3px;
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  background: #4181910f;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px
}

.ct-us .slot-dot {
  width: 6px;
  height: 6px;
  border-radius: 32px;
  background: #418191;
  flex-shrink: 0
}

.ct-us .slot-dot.busy {
  background: #9aabc24d
}

.ct-us .contact-form {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ct-us .f-row {
  display: flex;
  flex-direction: row;
  gap: 16px
}

.ct-us .f-group {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1
}

.ct-us .f-label {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  letter-spacing: .04em
}

.ct-us .f-input {
  background: #0d141ce6;
  border: 1px solid #9aabc22e;
  border-radius: 3px;
  padding: 16px;
  font-size: 17px;
  line-height: 1.45;
  color: #eef1f5;
  width: 100%;
  box-sizing: border-box;
  box-shadow: inset 0 2px 6px #41819112;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  outline: none;
  -webkit-appearance: none;
  appearance: none
}

.ct-us .f-input::placeholder {
  color: #9aabc266;
  font-weight: 300
}

.ct-us .f-input:focus {
  border-color: #418191;
  box-shadow: inset 0 2px 6px #41819112 -1px 5px 25px 0 #41819117
}

.ct-us .f-select {
  background: #0d141ce6;
  border: 1px solid #9aabc22e;
  border-radius: 3px;
  padding: 16px;
  font-size: 17px;
  line-height: 1.45;
  color: #eef1f5;
  width: 100%;
  box-sizing: border-box;
  box-shadow: inset 0 2px 6px #41819112;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  outline: none;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' viewBox='0 0 16 16'%3E%3Cpath fill='%239AABC2' d='M4 6l4 4 4-4'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 16px center;
  padding-right: 48px
}

.ct-us .f-select:focus {
  border-color: #418191
}

.ct-us .f-select option {
  background: #0b1015;
  color: #eef1f5
}

.ct-us .f-textarea {
  background: #0d141ce6;
  border: 1px solid #9aabc22e;
  border-radius: 3px;
  padding: 16px;
  font-size: 17px;
  line-height: 1.7;
  color: #eef1f5;
  width: 100%;
  box-sizing: border-box;
  box-shadow: inset 0 2px 6px #41819112;
  transition: border-color .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  outline: none;
  resize: vertical;
  min-height: 120px
}

.ct-us .f-textarea::placeholder {
  color: #9aabc266;
  font-weight: 300
}

.ct-us .f-textarea:focus {
  border-color: #418191;
  box-shadow: inset 0 2px 6px #41819112 -1px 5px 25px 0 #41819117
}

.ct-us .slot-group {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.ct-us .slot-options {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 8px
}

.ct-us .slot-opt {
  position: relative
}

.ct-us .slot-opt input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0
}

.ct-us .slot-opt label {
  display: block;
  padding: 8px 16px;
  border: 1px solid #9aabc22e;
  border-radius: 3px;
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2;
  background: #0d141ce6;
  cursor: pointer;
  text-align: center;
  transition: border-color .2s cubic-bezier(0.34, 1.56, 0.64, 1), background .2s cubic-bezier(0.34, 1.56, 0.64, 1), color .2s cubic-bezier(0.34, 1.56, 0.64, 1);
  box-shadow: -1px 3px 5px 0 #41819112
}

.ct-us .slot-opt input[type="radio"]:checked+label {
  border-color: #418191;
  background: #4181912e;
  color: #D7DFEA;
  box-shadow: -1px 5px 25px 0 #41819117
}

.ct-us .slot-opt label:hover {
  border-color: #41819180;
  color: #D7DFEA
}

.ct-us .slot-opt input[type="radio"]:focus+label {
  outline: 2px solid #418191;
  outline-offset: 2px
}

.ct-us .privacy-row {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  padding: 16px;
  background: #4181910f;
  border-radius: 3px;
  border: 1px solid #41819124
}

.ct-us .privacy-row input[type="checkbox"] {
  width: 20px;
  height: 20px;
  flex-shrink: 0;
  margin-top: 2px;
  accent-color: #418191;
  cursor: pointer
}

.ct-us .privacy-txt {
  font-size: 15px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.ct-us .privacy-txt a {
  color: #9AABC2;
  text-decoration: underline;
  text-decoration-color: #9aabc266;
  transition: color .2s cubic-bezier(0.34, 1.56, 0.64, 1);
  border-radius: 3px;
  padding: 0 4px
}

.ct-us .privacy-txt a:hover {
  color: #D7DFEA;
  background: #4181912e;
  text-decoration-color: #d7dfea80
}

.ct-us .submit-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 32px
}

.ct-us .btn-submit {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  padding: 16px 48px;
  background: #418191;
  color: #eef1f5;
  font-size: 17px;
  line-height: 1.45;
  border: none;
  border-radius: 3px;
  cursor: pointer;
  letter-spacing: .03em;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: background .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1), transform .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.ct-us .btn-submit:hover {
  background: #4f96a8;
  box-shadow: -1px 9px 60px 0 #41819124;
  transform: translateY(-2px)
}

.ct-us .btn-submit:active {
  transform: translateY(0);
  box-shadow: -1px 3px 5px 0 #41819112
}

.ct-us .btn-submit:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.ct-us .btn-arrow {
  display: inline-block;
  width: 18px;
  height: 18px;
  position: relative
}

.ct-us .btn-arrow::before {
  content: '';
  position: absolute;
  top: 50%;
  left: 0;
  width: 14px;
  height: 2px;
  background: #eef1f5;
  transform: translateY(-50%)
}

.ct-us .btn-arrow::after {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  width: 7px;
  height: 7px;
  border-top: 2px solid #eef1f5;
  border-right: 2px solid #eef1f5;
  transform: translateY(-50%) rotate(45deg)
}

.ct-us .submit-note {
  font-size: 15px;
  line-height: 1.45;
  color: #9aabc280;
  margin: 0
}

.ct-us .status-band {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px;
  margin-bottom: 48px;
  padding: 16px;
  background: #41819114;
  border-radius: 3px
}

.ct-us .status-label {
  font-size: 15px;
  color: #9AABC2;
  white-space: nowrap
}

.ct-us .status-bar {
  flex: 1;
  height: 4px;
  background: #9aabc21a;
  border-radius: 32px;
  overflow: hidden
}

.ct-us .status-fill {
  height: 100%;
  width: 68%;
  background: linear-gradient(90deg, #418191 0%, #418191 50%, #9AABC2 50%, #9AABC2 100%);
  border-radius: 32px;
  animation: fill-pulse 2.8s cubic-bezier(0.68, -0.55, 0.27, 1.55) infinite alternate
}

@keyframes fill-pulse {
  0% {
    width: 62%
  }

  100% {
    width: 74%
  }
}

.ct-us .status-pct {
  font-size: 15px;
  color: #418191;
  white-space: nowrap
}

@media (max-width:900px) {
  .ct-us .anchor-inner {
    flex-direction: column;
    gap: 32px
  }

  .ct-us .anchor-left {
    flex: unset;
    max-width: 100%
  }

  .ct-us .anchor-right {
    width: 100%
  }

  .ct-us .pg-h1 {
    font-size: 51px
  }

  .ct-us .pg-h1 .line-c {
    font-size: 37px
  }

  .ct-us .form-inner {
    flex-direction: column;
    gap: 48px
  }

  .ct-us .form-side {
    flex: unset;
    max-width: 100%;
    width: 100%
  }

  .ct-us .f-row {
    flex-direction: column
  }

  .ct-us .slot-options {
    grid-template-columns: repeat(2, 1fr)
  }

  .ct-us .submit-row {
    flex-direction: column;
    align-items: flex-start
  }

  .ct-us .stat-pair {
    gap: 16px
  }

  .ct-us .stat-num {
    font-size: 37px
  }
}

@media (max-width:600px) {
  .ct-us .pg-wrap {
    padding: 0 16px
  }

  .ct-us .pg-h1 {
    font-size: 37px
  }

  .ct-us .pg-h1 .line-c {
    font-size: 27px
  }

  .ct-us .anchor-blk {
    padding: 48px 0
  }

  .ct-us .anchor-blk::after {
    margin-top: 48px
  }

  .ct-us .form-blk {
    padding: 48px 0
  }

  .ct-us .slot-options {
    grid-template-columns: 1fr 1fr
  }

  .ct-us .avail-grid {
    grid-template-columns: 1fr
  }
}

.succ-page {
  min-height: 80vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  background-color: #0d1117;
  padding: 96px 32px
}

.succ-page .succ-wrap {
  max-width: 1400px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 48px
}

.succ-page .succ-icon {
  width: 80px;
  height: 80px;
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center
}

.succ-page .succ-icon svg {
  width: 80px;
  height: 80px
}

.succ-page .succ-ring {
  fill: none;
  stroke: #418191;
  stroke-width: 2.5;
  stroke-dasharray: 226;
  stroke-dashoffset: 0;
  animation: ring-draw .35s cubic-bezier(0.34, 1.56, 0.64, 1) forwards
}

.succ-page .succ-check {
  fill: none;
  stroke: #9AABC2;
  stroke-width: 3;
  stroke-linecap: round;
  stroke-linejoin: round;
  stroke-dasharray: 60;
  stroke-dashoffset: 60;
  animation: check-draw .28s cubic-bezier(0.34, 1.56, 0.64, 1) .25s forwards
}

@keyframes ring-draw {
  from {
    stroke-dashoffset: 226
  }

  to {
    stroke-dashoffset: 0
  }
}

@keyframes check-draw {
  from {
    stroke-dashoffset: 60
  }

  to {
    stroke-dashoffset: 0
  }
}

.succ-page .succ-card {
  background: linear-gradient(160deg, #141b24 50%, #0f1820 50%);
  border: 1px solid #418191;
  border-radius: 32px;
  padding: 48px;
  max-width: 560px;
  width: 100%;
  text-align: center;
  box-shadow: -1px 9px 60px 0 #41819124
}

.succ-page .succ-card .succ-title {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #D7DFEA;
  margin: 0 0 16px
}

.succ-page .succ-card .succ-title span {
  display: inline-block;
  width: 6px;
  height: 6px;
  background: #418191;
  border-radius: 50%;
  margin-left: 4px;
  vertical-align: middle;
  position: relative;
  top: -4px
}

.succ-page .succ-card .succ-msg {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0 0 32px
}

.succ-page .succ-card .succ-divider {
  width: 48px;
  height: 2px;
  background: linear-gradient(90deg, #418191 50%, #9AABC2 50%);
  border-radius: 3px;
  margin: 0 auto 32px
}

.succ-page .succ-card .succ-detail {
  font-size: 15px;
  line-height: 1.45;
  color: #6e8a97;
  margin: 0 0 32px
}

.succ-page .succ-card .succ-detail strong {
  color: #9AABC2;
  font-weight: 600
}

.succ-page .succ-card .succ-btn {
  display: inline-block;
  padding: 16px 48px;
  background: #418191;
  color: #0d1117;
  font-size: 15px;
  font-weight: 700;
  letter-spacing: .04em;
  border-radius: 3px;
  text-decoration: none;
  border: none;
  cursor: pointer;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.68, -0.55, 0.27, 1.55)
}

.succ-page .succ-card .succ-btn:hover {
  background: #9AABC2;
  box-shadow: -1px 9px 60px 0 #41819124
}

.succ-page .succ-card .succ-btn:focus {
  outline: 2px solid #D7DFEA;
  outline-offset: 3px
}

.succ-page .succ-card .succ-btn:active {
  background: #D7DFEA
}

.succ-page .succ-footer-note {
  font-size: 15px;
  line-height: 1.45;
  color: #3a5560;
  text-align: center
}

.succ-page .succ-footer-note a {
  color: #418191;
  text-decoration: none;
  padding: 2px 8px;
  border-radius: 3px;
  transition: background .22s cubic-bezier(0.34, 1.56, 0.64, 1), color .22s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.succ-page .succ-footer-note a:hover {
  background: #418191;
  color: #0d1117
}

@media (max-width:600px) {
  .succ-page {
    padding: 48px 16px
  }

  .succ-page .succ-card {
    padding: 32px 16px;
    border-radius: 32px
  }

  .succ-page .succ-card .succ-title {
    font-size: 27px
  }
}

.pg404 {
  background-color: #080c10;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 96px 32px
}

.pg404 .wrap {
  max-width: 1400px;
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  text-align: center;
  gap: 48px
}

.pg404 .num-block {
  position: relative;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 16px
}

.pg404 .num-block .digit {
  font-size: 68px;
  line-height: 1.15;
  letter-spacing: -.04em;
  color: #418191;
  font-weight: 800;
  display: block
}

.pg404 .num-block .sep {
  width: 48px;
  height: 3px;
  background: linear-gradient(90deg, #418191 50%, #080c10 50%);
  border-radius: 3px;
  flex-shrink: 0
}

.pg404 .msg-block {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
  max-width: 560px
}

.pg404 .msg-block .title {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #D7DFEA;
  font-weight: 700;
  margin: 0
}

.pg404 .msg-block .title .dot {
  display: inline-block;
  width: 6px;
  height: 6px;
  background-color: #418191;
  border-radius: 32px;
  margin-left: 6px;
  vertical-align: middle;
  position: relative;
  top: -4px
}

.pg404 .msg-block .body {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.pg404 .divider {
  width: 64px;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, #418191 50%, transparent 100%)
}

.pg404 .actions {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  gap: 16px;
  align-items: center;
  justify-content: center
}

.pg404 .btn-primary {
  display: inline-block;
  padding: 16px 32px;
  background-color: #418191;
  color: #080c10;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.15;
  letter-spacing: .01em;
  border-radius: 3px;
  text-decoration: none;
  border: 2px solid #418191;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: background-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .28s cubic-bezier(0.34, 1.56, 0.64, 1), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  cursor: pointer
}

.pg404 .btn-primary:hover {
  background-color: #9AABC2;
  border-color: #9AABC2;
  box-shadow: -1px 9px 60px 0 #41819124;
  transform: translateY(-2px)
}

.pg404 .btn-primary:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.pg404 .btn-primary:active {
  transform: translateY(0px)
}

.pg404 .btn-ghost {
  display: inline-block;
  padding: 16px 32px;
  background-color: transparent;
  color: #9AABC2;
  font-size: 15px;
  font-weight: 600;
  line-height: 1.15;
  letter-spacing: .01em;
  border-radius: 3px;
  text-decoration: none;
  border: 2px solid #418191;
  transition: color .2s cubic-bezier(0.68, -0.55, 0.27, 1.55), border-color .2s cubic-bezier(0.68, -0.55, 0.27, 1.55), transform .22s cubic-bezier(0.34, 1.56, 0.64, 1);
  cursor: pointer
}

.pg404 .btn-ghost:hover {
  color: #D7DFEA;
  border-color: #9AABC2;
  transform: translateY(-2px)
}

.pg404 .btn-ghost:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 3px
}

.pg404 .btn-ghost:active {
  transform: translateY(0px)
}

.pg404 .deco-bar {
  display: flex;
  flex-direction: row;
  gap: 8px;
  align-items: center
}

.pg404 .deco-bar .bar {
  height: 4px;
  border-radius: 3px;
  background-color: #418191;
  opacity: .25
}

.pg404 .deco-bar .bar-sm {
  width: 16px
}

.pg404 .deco-bar .bar-md {
  width: 32px;
  opacity: .5
}

.pg404 .deco-bar .bar-lg {
  width: 48px;
  opacity: 1;
  background-color: #418191
}

.pg404 .hint {
  font-size: 15px;
  line-height: 1.45;
  color: #418191;
  margin: 0
}

.pg404 .hint a {
  color: #9AABC2;
  text-decoration: none;
  padding: 2px 8px;
  border-radius: 32px;
  transition: background-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), color .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.pg404 .hint a:hover {
  background-color: #418191;
  color: #080c10
}

.pg404 .hint a:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 2px;
  border-radius: 32px
}

@media (max-width:600px) {
  .pg404 {
    padding: 48px 16px
  }

  .pg404 .wrap {
    gap: 32px
  }

  .pg404 .num-block .digit {
    font-size: 51px
  }

  .pg404 .msg-block .title {
    font-size: 27px
  }

  .pg404 .actions {
    flex-direction: column;
    width: 100%
  }

  .pg404 .btn-primary,
  .pg404 .btn-ghost {
    width: 100%;
    text-align: center
  }
}

.mnt {
  background: #080c0f;
  color: #d0dae6;
  overflow-x: clip
}

.mnt .mnt__inner {
  max-width: 1400px;
  margin: 0 auto;
  padding: 0 32px
}

.mnt .geo-line {
  position: absolute;
  pointer-events: none
}

.mnt .top-strip {
  position: relative;
  padding: 96px 32px;
  background: #080c0f;
  display: flex;
  flex-direction: column;
  align-items: flex-start
}

.mnt .top-strip__wrap {
  max-width: 1400px;
  margin: 0 auto;
  width: 100%;
  position: relative
}

.mnt .geo-corner-tl {
  position: absolute;
  top: 0;
  left: 0;
  width: 120px;
  height: 120px;
  pointer-events: none
}

.mnt .geo-corner-br {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 80px;
  height: 80px;
  pointer-events: none
}

.mnt .geo-corner-tl svg,
.mnt .geo-corner-br svg {
  display: block
}

.mnt .badge {
  display: inline-block;
  border: 1px solid #418191;
  border-radius: 3px;
  padding: 8px 16px;
  font-size: 15px;
  color: #9AABC2;
  letter-spacing: .08em;
  margin-bottom: 32px;
  text-transform: uppercase
}

.mnt .top-strip__h1 {
  font-size: 68px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #e8eef5;
  margin: 0 0 32px;
  max-width: 820px
}

.mnt .top-strip__h1 em {
  font-style: normal;
  color: #418191
}

.mnt .top-strip__sub {
  font-size: 21px;
  line-height: 1.7;
  color: #9AABC2;
  max-width: 560px;
  margin: 0 0 48px
}

.mnt .divider-heavy {
  width: 100%;
  height: 6px;
  background: #418191;
  margin: 0
}

.mnt .divider-thin {
  width: 100%;
  height: 1px;
  background: #1e2d35;
  margin: 0
}

.mnt .status-row {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 32px;
  padding: 32px 0 0
}

.mnt .status-dot {
  width: 10px;
  height: 10px;
  border-radius: 32px;
  background: #418191;
  flex-shrink: 0;
  box-shadow: -1px 3px 5px 0 #41819112 -1px 5px 25px 0 #41819117;
  animation: blink 1.8s cubic-bezier(0.34, 1.56, 0.64, 1) infinite
}

@keyframes blink {

  0%,
  100% {
    opacity: 1
  }

  50% {
    opacity: .3
  }
}

.mnt .status-label {
  font-size: 15px;
  color: #9AABC2;
  letter-spacing: .05em
}

.mnt .progress-bar {
  flex: 1;
  height: 3px;
  background: #131c22;
  border-radius: 3px;
  overflow: hidden;
  max-width: 240px
}

.mnt .progress-fill {
  height: 100%;
  width: 72%;
  background: linear-gradient(90deg, #418191 50%, #9AABC2 100%);
  border-radius: 3px
}

.mnt .info-grid {
  position: relative;
  padding: 96px 32px;
  background: #0b1117
}

.mnt .info-grid__wrap {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 3fr 1fr;
  gap: 48px;
  align-items: start
}

.mnt .info-grid__main {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.mnt .info-grid__h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #e8eef5;
  margin: 0
}

.mnt .info-grid__h2::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 32px;
  background: #418191;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.mnt .info-grid__body {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.mnt .info-grid__cols {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  margin-top: 8px
}

.mnt .info-item {
  background: #0f1a22;
  border: 1px solid #1e2d35;
  border-radius: 3px;
  padding: 16px;
  display: flex;
  flex-direction: column;
  gap: 8px;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), box-shadow .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.mnt .info-item:hover {
  border-color: #418191;
  box-shadow: -1px 5px 25px 0 #41819117
}

.mnt .info-item__label {
  font-size: 15px;
  color: #418191;
  letter-spacing: .06em;
  text-transform: uppercase
}

.mnt .info-item__val {
  font-size: 21px;
  line-height: 1.15;
  color: #e8eef5
}

.mnt .side-metric {
  display: flex;
  flex-direction: column;
  gap: 32px;
  padding-top: 8px
}

.mnt .metric-block {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.mnt .metric-num {
  font-size: 51px;
  line-height: 1.15;
  letter-spacing: -.03em;
  color: #418191
}

.mnt .metric-bar {
  height: 2px;
  background: #1e2d35;
  border-radius: 3px;
  overflow: hidden
}

.mnt .metric-bar-fill {
  height: 100%;
  background: #418191;
  border-radius: 3px
}

.mnt .metric-desc {
  font-size: 15px;
  line-height: 1.45;
  color: #9AABC2
}

.mnt .img-split {
  position: relative;
  padding: 96px 32px;
  background: #080c0f;
  border-right: 4px solid #418191
}

.mnt .img-split__wrap {
  max-width: 1400px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 48px;
  align-items: center
}

.mnt .img-split__img-box {
  position: relative;
  border-radius: 3px;
  overflow: hidden;
  box-shadow: -1px 9px 60px 0 #41819124
}

.mnt .img-split__img-box img {
  display: block;
  width: 100%;
  height: 480px;
  object-fit: cover;
  transition: transform .28s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.mnt .img-split__img-box:hover img {
  transform: scale(1.04)
}

.mnt .img-split__img-fade {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 160px;
  background: linear-gradient(to top, #080c0f 0%, transparent 100%);
  pointer-events: none
}

.mnt .img-split__text {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.mnt .img-split__h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #e8eef5;
  margin: 0
}

.mnt .img-split__h2::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 32px;
  background: #9AABC2;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.mnt .img-split__p {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  margin: 0
}

.mnt .feat-list {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
  list-style: none;
  margin: 0;
  padding: 0
}

.mnt .feat-list li {
  font-size: 15px;
  line-height: 1.45;
  color: #D7DFEA;
  padding: 8px 16px;
  border: 1px solid #1e2d35;
  border-radius: 3px;
  background: #0b1117;
  transition: background .22s cubic-bezier(0.68, -0.55, 0.27, 1.55), border-color .22s cubic-bezier(0.68, -0.55, 0.27, 1.55)
}

.mnt .feat-list li:hover {
  background: #0f1a22;
  border-color: #418191
}

.mnt .contact-strip {
  position: relative;
  padding: 96px 32px;
  background: #0b1117
}

.mnt .circuit-bg {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden
}

.mnt .circuit-bg svg {
  width: 100%;
  height: 100%;
  opacity: .04
}

.mnt .contact-strip__wrap {
  max-width: 1400px;
  margin: 0 auto;
  position: relative;
  z-index: 1;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 48px;
  text-align: center
}

.mnt .contact-strip__h2 {
  font-size: 37px;
  line-height: 1.15;
  letter-spacing: -.02em;
  color: #e8eef5;
  margin: 0
}

.mnt .contact-strip__h2::after {
  content: "";
  display: inline-block;
  width: 7px;
  height: 7px;
  border-radius: 32px;
  background: #9AABC2;
  margin-left: 8px;
  vertical-align: middle;
  position: relative;
  top: -3px
}

.mnt .contact-strip__sub {
  font-size: 17px;
  line-height: 1.7;
  color: #9AABC2;
  max-width: 560px;
  margin: -32px 0 0
}

.mnt .contact-cards {
  display: flex;
  flex-direction: row;
  gap: 32px;
  flex-wrap: wrap;
  justify-content: center
}

.mnt .c-card {
  background: #0f1a22;
  border: 1px solid #1e2d35;
  border-radius: 3px;
  padding: 32px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 220px;
  box-shadow: -1px 5px 25px 0 #41819117;
  transition: border-color .25s cubic-bezier(0.34, 1.56, 0.64, 1), transform .25s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.mnt .c-card:hover {
  border-color: #418191;
  transform: translateY(-4px)
}

.mnt .c-card__type {
  font-size: 15px;
  color: #418191;
  letter-spacing: .07em;
  text-transform: uppercase
}

.mnt .c-card__val {
  font-size: 17px;
  line-height: 1.45;
  color: #e8eef5
}

.mnt .c-card__val a {
  color: #e8eef5;
  text-decoration: none;
  padding: 2px 8px;
  border-radius: 32px;
  transition: background .2s cubic-bezier(0.34, 1.56, 0.64, 1), color .2s cubic-bezier(0.34, 1.56, 0.64, 1)
}

.mnt .c-card__val a:hover {
  background: #418191;
  color: #e8eef5
}

.mnt .c-card__val a:focus {
  outline: 2px solid #9AABC2;
  outline-offset: 2px
}

@media (max-width:900px) {
  .mnt .top-strip__h1 {
    font-size: 37px
  }

  .mnt .info-grid__wrap {
    grid-template-columns: 1fr
  }

  .mnt .info-grid__cols {
    grid-template-columns: 1fr
  }

  .mnt .img-split__wrap {
    grid-template-columns: 1fr
  }

  .mnt .img-split__img-box img {
    height: 280px
  }

  .mnt .contact-cards {
    flex-direction: column;
    align-items: center
  }

  .mnt .feat-list {
    grid-template-columns: 1fr
  }

  .mnt .status-row {
    flex-wrap: wrap
  }

  .mnt .progress-bar {
    max-width: 100%;
    width: 100%
  }

  .mnt .top-strip {
    padding: 48px 32px
  }

  .mnt .info-grid,
  .mnt .img-split,
  .mnt .contact-strip {
    padding: 48px 32px
  }
}