body {
  margin: 0;
  padding: 0;
  min-height: 100vh;
  word-break: break-word;
  overflow-wrap: anywhere
}

.pageheader {
  background: linear-gradient(160deg, #0d0d12 0%, #120820 55%, #0a1510 100%);
  position: relative;
  overflow: hidden;
  z-index: 100
}

.pageheader::before {
  background: linear-gradient(90deg, #cc27a112 0%, transparent 60%);
  content: '';
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%
}

.topstrip {
  border-bottom: 1px solid #cc27a12e;
  padding: 8px 32px
}

.topstripinner {
  align-items: center;
  display: flex;
  justify-content: flex-end;
  margin: 0 auto;
  max-width: 1366px
}

.regionbadge {
  align-items: center;
  background: #126c2b26;
  border: 1px solid #126c2b59;
  border-radius: 4px;
  color: #b8e8c4;
  display: flex;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  gap: 8px;
  letter-spacing: .02em;
  line-height: 1.4;
  padding: 4px 16px
}

.regiondot {
  background: #126C2B;
  border-radius: 4px;
  display: inline-block;
  height: 7px;
  width: 7px
}

.brandrow {
  align-items: flex-end;
  display: flex;
  gap: 32px;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1366px;
  padding: 32px 32px 24px
}

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

.logoframe {
  border: 1px solid #fff1dd2e;
  border-radius: 4px;
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  display: inline-flex;
  padding: 8px
}

.logoframe img {
  display: block;
  height: 88px;
  object-fit: contain;
  width: 88px
}

.brandtext {
  display: flex;
  flex-direction: column;
  gap: 4px
}

.brandname {
  color: #FFF1DD;
  font-family: 'IBM Plex Serif', serif;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.15
}

.brandtag {
  color: #cc27a1d9;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4
}

.mainnav {
  align-items: flex-end;
  display: flex;
  flex-direction: column;
  gap: 4px
}

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

.navitem {
  display: inline-block
}

.navlink {
  border-radius: 4px;
  color: #fff1ddc7;
  display: block;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  padding: 8px 16px;
  position: relative;
  text-decoration: none;
  transition: color .28s ease-in-out, background-color .28s ease-in-out
}

.navlink:hover {
  background-color: #cc27a11f;
  color: #FFF1DD
}

.navlink:focus {
  background-color: #fff1dd14;
  color: #FFF1DD;
  outline: none
}

.navlink.active {
  background: #cc27a12e;
  color: #CC27A1
}

.navcontact {
  align-items: center;
  display: flex;
  gap: 16px
}

.navphone {
  color: #b8e8c4bf;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.4;
  text-decoration: none;
  transition: color .25s cubic-bezier(0.4, 0, 0.2, 1)
}

.navphone:hover {
  color: #b8e8c4
}

.navphone:focus {
  background-color: #126c2b26;
  color: #b8e8c4;
  outline: none
}

.headercta {
  background: #CC27A1;
  border: none;
  border-radius: 4px;
  box-shadow: 1px 2px 6px 0 #cc27a114;
  color: #fff;
  cursor: pointer;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  min-height: 44px;
  overflow: hidden;
  padding: 8px 32px;
  position: relative;
  text-decoration: none;
  transition: box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1), color .35s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0
}

.headercta::after {
  background: #126C2B;
  border-radius: 4px;
  content: '';
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  transform: translateX(100%);
  transition: transform .35s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
  z-index: -1
}

.headercta:hover::after {
  transform: translateX(0)
}

.headercta:hover {
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  color: #fff
}

.headercta:focus {
  background-color: #fff1dd1f;
  outline: none
}

.pagefooter {
  background: #0b0b10;
  border-top: 1px solid #cc27a124;
  padding: 64px 32px 32px
}

.footerinner {
  margin: 0 auto;
  max-width: 1366px
}

.footertop {
  align-items: flex-start;
  border-bottom: 1px solid #fff1dd12;
  display: flex;
  gap: 64px;
  justify-content: space-between;
  padding-bottom: 64px
}

.footerbrand {
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-width: 320px
}

.footerlogoframe {
  border: 1px solid #fff1dd1f;
  border-radius: 4px;
  box-shadow: 1px 2px 6px 0 #126c2b14;
  display: inline-flex;
  padding: 8px;
  width: fit-content
}

.footerlogoframe img {
  display: block;
  height: 64px;
  object-fit: contain;
  width: 64px
}

.footerbrandmeta {
  display: flex;
  flex-direction: column;
  gap: 4px
}

.footerbrandname {
  color: #FFF1DD;
  font-family: 'IBM Plex Serif', serif;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.15
}

.foundedlabel {
  color: #fff1dd61;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4
}

.footerdesc {
  color: #fff1dd8c;
  font-family: 'IBM Plex Serif', serif;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6
}

.footercols {
  display: flex;
  gap: 64px
}

.footercol {
  display: flex;
  flex-direction: column;
  gap: 16px;
  min-width: 160px
}

.footercolhead {
  color: #cc27a1e6;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.4;
  text-transform: uppercase
}

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

.footerlink {
  color: #fff1dd99;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  text-decoration: none;
  transition: color .26s ease-in-out
}

.footerlink:hover {
  color: #FFF1DD
}

.footerlink:focus {
  background-color: #fff1dd12;
  color: #FFF1DD;
  outline: none
}

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

.footercontactitem {
  color: #fff1dd8c;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6
}

.footercontactlink {
  color: #fff1dd99;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  text-decoration: none;
  transition: color .26s ease-in-out
}

.footercontactlink:hover {
  color: #FFF1DD
}

.footercontactlink:focus {
  background-color: #fff1dd12;
  color: #FFF1DD;
  outline: none
}

.footerbottom {
  align-items: center;
  display: flex;
  justify-content: space-between;
  padding-top: 32px
}

.copyright {
  color: #fff1dd4d;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.4
}

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

.legallink {
  color: #fff1dd59;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.4;
  text-decoration: none;
  transition: color .28s ease-in-out
}

.legallink:hover {
  color: #fff1ddb3
}

.legallink:focus {
  background-color: #fff1dd12;
  color: #fff1ddb3;
  outline: none
}

.cookiebar {
  background: #110d1a;
  border-bottom: 1px solid #cc27a140;
  box-shadow: 1px 10px 44px 0 #cc27a124;
  box-sizing: border-box;
  display: none;
  left: 0;
  padding: 16px 32px;
  position: fixed;
  top: 0;
  width: 100%;
  z-index: 1200
}

.cookiebarinner {
  align-items: center;
  display: flex;
  gap: 32px;
  justify-content: space-between;
  margin: 0 auto;
  max-width: 1366px
}

.cookieicon {
  flex-shrink: 0
}

.cookiesvg {
  display: block;
  height: 28px;
  width: 28px
}

.cookietext {
  color: #fff1ddbf;
  flex: 1;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6
}

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

.cookieaccept {
  background: transparent;
  border: 1px solid #cc27a199;
  border-radius: 4px;
  color: #fff1ddd9;
  cursor: pointer;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  min-height: 44px;
  padding: 8px 32px;
  transition: border-color .28s ease-in-out, color .28s ease-in-out, background-color .28s ease-in-out
}

.cookieaccept:hover {
  background-color: #cc27a124;
  border-color: #CC27A1;
  color: #FFF1DD
}

.cookieaccept:focus {
  background-color: #fff1dd12;
  outline: none
}

.cookiedecline {
  background: transparent;
  border: 1px solid #fff1dd33;
  border-radius: 4px;
  color: #fff1dd80;
  cursor: pointer;
  font-family: 'Fira Code', monospace;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  min-height: 44px;
  padding: 8px 32px;
  transition: border-color .28s ease-in-out, color .28s ease-in-out, background-color .28s ease-in-out
}

.cookiedecline:hover {
  background-color: #fff1dd0d;
  border-color: #fff1dd66;
  color: #fff1ddbf
}

.cookiedecline:focus {
  background-color: #fff1dd12;
  outline: none
}

@media (max-width: 1024px) {
  .footertop {
    flex-direction: column;
    gap: 32px
  }

  .footercols {
    gap: 32px
  }

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

  .mainnav {
    align-items: flex-start
  }

  .navlist {
    justify-content: flex-start
  }
}

@media (max-width: 768px) {
  .topstrip {
    padding: 8px 16px
  }

  .brandrow {
    padding: 24px 16px 16px
  }

  .pagefooter {
    padding: 32px 16px
  }

  .footercols {
    flex-direction: column;
    gap: 32px
  }

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

  .cookiebar {
    padding: 16px
  }

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

  .cookiebtns {
    width: 100%
  }

  .cookieaccept {
    flex: 1
  }

  .cookiedecline {
    flex: 1
  }
}

@media (max-width: 480px) {
  .brandname {
    font-size: 21px
  }

  .navlink {
    padding: 8px
  }

  .footercols {
    gap: 32px
  }
}

.policy-yp-wrapper {
  background: #111318;
  box-sizing: border-box;
  color: #e8ddd6;
  margin: 0 auto;
  max-width: 1366px;
  padding: 64px 96px
}

.policy-yp-wrapper p {
  font-size: 16px;
  letter-spacing: .015em;
  line-height: 1.6;
  margin-bottom: 16px;
  margin-top: 0
}

.policy-yp-wrapper ul,
.policy-yp-wrapper ol {
  margin-bottom: 16px;
  margin-top: 0;
  padding-left: 32px
}

.policy-yp-wrapper ul {
  list-style-type: disc
}

.policy-yp-wrapper ol {
  list-style-type: decimal
}

.policy-yp-wrapper li {
  font-size: 16px;
  letter-spacing: .015em;
  line-height: 1.6;
  margin-bottom: 8px;
  padding-left: 4px
}

.policy-yp-wrapper li:last-child {
  margin-bottom: 0
}

.policy-yp-wrapper ul ul,
.policy-yp-wrapper ol ol,
.policy-yp-wrapper ul ol,
.policy-yp-wrapper ol ul {
  margin-bottom: 8px;
  margin-top: 8px
}

.policy-yp-wrapper strong,
.policy-yp-wrapper b {
  color: #f5ece6;
  font-weight: 700;
  letter-spacing: .01em
}

.policy-yp-wrapper em,
.policy-yp-wrapper i {
  color: #ddd0c8;
  font-style: italic
}

.policy-yp-wrapper a {
  color: #e04dbf;
  text-decoration: underline;
  text-decoration-color: #cc27a173;
  text-underline-offset: 3px;
  transition: color .28s ease-in-out, text-decoration-color .35s cubic-bezier(0.4, 0, 0.2, 1)
}

.policy-yp-wrapper a:hover {
  color: #f07ad4;
  text-decoration-color: #cc27a1d9
}

.policy-yp-wrapper a:visited {
  color: #b87faa;
  text-decoration-color: #cc27a14d
}

.policy-yp-wrapper div {
  margin-bottom: 32px
}

.policy-yp-wrapper div:last-child {
  margin-bottom: 0
}

@media (max-width: 1024px) {
  .policy-yp-wrapper {
    padding: 64px
  }
}

@media (max-width: 768px) {
  .policy-yp-wrapper {
    padding: 32px
  }

  .policy-yp-wrapper p {
    font-size: 16px
  }

  .policy-yp-wrapper li {
    font-size: 16px
  }
}

@media (max-width: 480px) {
  .policy-yp-wrapper {
    padding: 32px 16px
  }

  .policy-yp-wrapper ul,
  .policy-yp-wrapper ol {
    padding-left: 16px
  }
}

.lprog {
  background: #0e0a0d;
  color: #f0e8ec;
  overflow-x: hidden;
  position: relative
}

.lprog .pgwrap {
  margin: 0 auto;
  max-width: 1366px;
  padding: 0 32px
}

.lprog .titleblock {
  display: flex;
  flex-direction: row;
  min-height: 0;
  padding: 96px 0 64px;
  position: relative
}

.lprog .titleblock::before {
  background: linear-gradient(211deg, #126C2B 0%, transparent 60%);
  content: "";
  height: 100%;
  left: 0;
  opacity: .18;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .imgstrip {
  flex-shrink: 0;
  overflow: hidden;
  position: relative;
  width: 220px
}

.lprog .imgstrip img {
  filter: grayscale(100%);
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: filter .38s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.lprog .imgstrip:hover img {
  filter: grayscale(60%)
}

.lprog .titletext {
  border-left: 2px solid #cc27a140;
  flex: 1;
  padding: 32px 64px;
  position: relative
}

.lprog .titletext::before {
  background: linear-gradient(211deg, #cc27a114 0%, transparent 70%);
  border-radius: 4px;
  content: "";
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .titletext::after {
  border: 1px solid #cc27a11f;
  border-radius: 4px;
  bottom: 8px;
  content: "";
  left: 8px;
  pointer-events: none;
  position: absolute;
  right: 8px;
  top: 8px
}

.lprog .badgenum {
  background: #CC27A1;
  border-radius: 4px;
  color: #fff;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.15;
  padding: 4px 8px;
  position: absolute;
  right: 32px;
  top: 32px
}

.lprog .t1 {
  font-size: 52px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 32px
}

.lprog .t1 span {
  color: #CC27A1
}

.lprog .titlesub {
  color: #c4adb9;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0 0 32px;
  max-width: 540px
}

.lprog .linkprimary {
  background: #CC27A1;
  border-radius: 4px;
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  color: #fff;
  display: inline-block;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4;
  overflow: hidden;
  padding: 16px 32px;
  position: relative;
  text-decoration: none;
  transition: color .28s ease-in-out;
  z-index: 1
}

.lprog .linkprimary::before {
  background: #a01f80;
  content: "";
  height: 100%;
  left: 100%;
  position: absolute;
  top: 0;
  transition: left .32s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%;
  z-index: -1
}

.lprog .linkprimary:hover::before {
  left: 0
}

.lprog .divdoublecurve {
  height: 32px;
  overflow: hidden;
  position: relative;
  width: 100%
}

.lprog .divdoublecurve svg {
  display: block;
  width: 100%
}

.lprog .programblock {
  padding: 96px 0;
  position: relative
}

.lprog .programblock::before {
  background: linear-gradient(211deg, #126c2b1f 0%, transparent 55%);
  content: "";
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .diagonalbg {
  bottom: 0;
  left: 0;
  overflow: hidden;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.lprog .diagonalbg::before {
  background: #cc27a10d;
  clip-path: polygon(0 0, 58% 0, 42% 100%, 0 100%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .diagonalbg::after {
  background: #126c2b0f;
  clip-path: polygon(58% 0, 100% 0, 100% 100%, 42% 100%);
  content: "";
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .proglayout {
  display: flex;
  flex-direction: row;
  gap: 64px;
  position: relative
}

.lprog .progleft {
  flex: 0 0 340px
}

.lprog .progright {
  flex: 1
}

.lprog .seclabel {
  color: #CC27A1;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.15;
  margin: 0 0 16px;
  text-transform: uppercase
}

.lprog .seclabel::before {
  background: #CC27A1;
  border-radius: 4px;
  content: "";
  display: inline-block;
  height: 8px;
  margin-right: 8px;
  vertical-align: middle;
  width: 8px
}

.lprog .h2prog {
  font-size: 38px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 32px
}

.lprog .h2prog span {
  color: #CC27A1
}

.lprog .progdesc {
  color: #c4adb9;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0 0 32px
}

.lprog .metricsrow {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0 0 32px
}

.lprog .metricitem {
  background: #fff1dd0a;
  border: 1px solid #cc27a12e;
  border-radius: 4px;
  box-shadow: 1px 2px 6px 0 #cc27a114;
  padding: 16px;
  position: relative;
  transition: border-color .28s ease-in-out, box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1)
}

.lprog .metricitem:hover {
  border-color: #cc27a173;
  box-shadow: 1px 5px 28px 0 #cc27a11a
}

.lprog .metricitem::before {
  border: 2px solid transparent;
  border-radius: 4px;
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  transition: border-color .32s cubic-bezier(0.4, 0, 0.2, 1)
}

.lprog .metricitem:hover::before {
  border-color: #cc27a14d
}

.lprog .mnum {
  color: #CC27A1;
  display: block;
  font-size: 28px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 4px
}

.lprog .mlabel {
  color: #e0d0da;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.4
}

.lprog .imgcontent {
  border-radius: 4px;
  box-shadow: 1px 10px 44px 0 #126c2b24;
  height: 320px;
  margin: 0 0 32px;
  overflow: hidden;
  width: 100%
}

.lprog .imgcontent img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .4s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.lprog .imgcontent:hover img {
  transform: scale(1.04)
}

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

.lprog .modulelist li {
  align-items: flex-start;
  background: #fff1dd08;
  border: 1px solid #fff1dd14;
  border-radius: 4px;
  counter-increment: modcounter;
  display: flex;
  flex-direction: row;
  gap: 16px;
  padding: 16px;
  transition: background .26s ease-in-out, border-color .3s cubic-bezier(0.4, 0, 0.2, 1)
}

.lprog .modulelist li:hover {
  background: #cc27a112;
  border-color: #cc27a147
}

.lprog .modnum {
  background: #cc27a126;
  border-radius: 4px;
  color: #CC27A1;
  flex-shrink: 0;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.15;
  padding: 4px 8px;
  text-align: right
}

.lprog .modtext {
  flex: 1
}

.lprog .modtitle {
  color: #f0e8ec;
  display: block;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4;
  margin: 0 0 4px
}

.lprog .moddesc {
  color: #b89aaa;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0
}

.lprog .splitblock {
  display: flex;
  flex-direction: row;
  gap: 0;
  margin: 32px 0 0
}

.lprog .splitleft {
  background: #126c2b1a;
  border-radius: 4px 0 0 4px;
  flex: 1;
  padding: 32px
}

.lprog .splitright {
  background: #cc27a114;
  border-radius: 0 4px 4px 0;
  flex: 1;
  padding: 32px
}

.lprog .splith {
  font-size: 16px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.4;
  margin: 0 0 16px
}

.lprog .splith::before {
  background: #126C2B;
  border-radius: 4px;
  content: "";
  display: inline-block;
  height: 10px;
  margin-right: 8px;
  vertical-align: middle;
  width: 10px
}

.lprog .splitright .splith::before {
  background: #CC27A1
}

.lprog .splitlist {
  color: #c4adb9;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  list-style: none;
  margin: 0;
  padding: 0
}

.lprog .splitlist li {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  margin: 0 0 8px;
  padding: 0 0 8px;
  border-bottom: 1px solid #fff1dd12
}

.lprog .splitlist li:last-child {
  border-bottom: none;
  margin: 0;
  padding: 0
}

.lprog .splitlist .numright {
  color: #CC27A1;
  font-weight: 700;
  text-align: right
}

.lprog .reviewsblock {
  background: #110d10;
  padding: 96px 0 64px;
  position: relative
}

.lprog .reviewsblock::before {
  background: linear-gradient(211deg, #fff1dd0a 0%, transparent 50%);
  content: "";
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .revlayout {
  display: grid;
  gap: 32px;
  grid-template-columns: 1fr 1fr;
  position: relative
}

.lprog .revcard {
  background: #fff1dd08;
  border: 1px solid #fff1dd17;
  border-radius: 4px;
  box-shadow: 1px 2px 6px 0 #cc27a114;
  padding: 32px;
  position: relative;
  transition: box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1), border-color .28s ease-in-out
}

.lprog .revcard:hover {
  border-color: #cc27a14d;
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.lprog .revcard::before {
  border: 2px solid transparent;
  border-radius: 4px;
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  transition: border-color .32s cubic-bezier(0.4, 0, 0.2, 1)
}

.lprog .revcard:hover::before {
  border-color: #cc27a138
}

.lprog .revhead {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 16px;
  margin: 0 0 16px
}

.lprog .revportrait {
  border-radius: 50%;
  flex-shrink: 0;
  height: 64px;
  overflow: hidden;
  width: 64px
}

.lprog .revportrait img {
  height: 100%;
  object-fit: cover;
  object-position: center;
  width: 100%
}

.lprog .revname {
  color: #f0e8ec;
  display: block;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4
}

.lprog .revmeta {
  color: #9a7d8e;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.4
}

.lprog .revtext {
  color: #c4adb9;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0
}

.lprog .revnote {
  color: #9a7d8e;
  font-size: 13px;
  font-style: italic;
  letter-spacing: .01em;
  line-height: 1.4;
  margin: 16px 0 0
}

.lprog .resultpanel {
  background: #126c2b14;
  border: 1px solid #126c2b40;
  border-radius: 4px;
  grid-column: 1 / -1;
  padding: 32px;
  position: relative
}

.lprog .resulth {
  font-size: 21px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 32px
}

.lprog .resulth::before {
  background: #126C2B;
  border-radius: 4px;
  content: "";
  display: inline-block;
  height: 12px;
  margin-right: 8px;
  vertical-align: middle;
  width: 12px
}

.lprog .beforeafter {
  display: grid;
  gap: 32px;
  grid-template-columns: 1fr auto 1fr
}

.lprog .baside {
  background: #fff1dd08;
  border-radius: 4px;
  padding: 16px
}

.lprog .basidelabel {
  color: #9a7d8e;
  font-size: 13px;
  font-weight: 700;
  letter-spacing: .02em;
  line-height: 1.15;
  margin: 0 0 16px;
  text-transform: uppercase
}

.lprog .baitem {
  color: #c4adb9;
  display: flex;
  flex-direction: row;
  font-size: 13px;
  justify-content: space-between;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0 0 8px
}

.lprog .baitem .numright {
  color: #CC27A1;
  font-weight: 700
}

.lprog .baarrow {
  align-items: center;
  color: #126C2B;
  display: flex;
  flex-direction: column;
  font-size: 28px;
  font-weight: 700;
  justify-content: center;
  line-height: 1.15
}

.lprog .faqblock {
  padding: 64px 0 96px;
  position: relative
}

.lprog .faqblock::before {
  background: linear-gradient(211deg, #cc27a112 0%, transparent 60%);
  content: "";
  height: 100%;
  left: 0;
  pointer-events: none;
  position: absolute;
  top: 0;
  width: 100%
}

.lprog .faqlayout {
  display: flex;
  flex-direction: row;
  gap: 64px;
  position: relative
}

.lprog .faqinfo {
  flex: 0 0 300px
}

.lprog .faqlist {
  flex: 1
}

.lprog .h3faq {
  font-size: 38px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 16px
}

.lprog .faqnote {
  color: #9a7d8e;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0
}

.lprog .faqitem {
  border-bottom: 1px solid #fff1dd17;
  margin: 0 0 16px;
  padding: 0 0 16px
}

.lprog .faqitem:last-child {
  border-bottom: none;
  margin: 0;
  padding: 0
}

.lprog .faqq {
  color: #f0e8ec;
  font-size: 16px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4;
  margin: 0 0 8px;
  position: relative
}

.lprog .faqq::before {
  background: #CC27A1;
  border-radius: 4px;
  content: "";
  display: inline-block;
  height: 8px;
  margin-right: 8px;
  vertical-align: middle;
  width: 8px
}

.lprog .faqa {
  color: #b89aaa;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0;
  padding-left: 16px
}

.lprog .aside {
  color: #9a7d8e;
  display: block;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0 0 8px
}

.lprog .underlinehover {
  border-bottom: 2px solid #cc27a159;
  color: #f0e8ec;
  display: inline;
  text-decoration: none;
  transition: border-bottom-color .26s ease-in-out, border-bottom-width .22s cubic-bezier(0.4, 0, 0.2, 1)
}

.lprog .underlinehover:hover {
  border-bottom-color: #CC27A1;
  border-bottom-width: 4px
}

@media (max-width: 1024px) {
  .lprog .titleblock {
    padding: 64px 0 48px
  }

  .lprog .imgstrip {
    width: 160px
  }

  .lprog .t1 {
    font-size: 38px
  }

  .lprog .proglayout {
    flex-direction: column;
    gap: 32px
  }

  .lprog .progleft {
    flex: none
  }

  .lprog .faqlayout {
    flex-direction: column;
    gap: 32px
  }

  .lprog .faqinfo {
    flex: none
  }
}

@media (max-width: 768px) {
  .lprog .pgwrap {
    padding: 0 16px
  }

  .lprog .titleblock {
    flex-direction: column;
    padding: 48px 0 32px
  }

  .lprog .imgstrip {
    height: 220px;
    width: 100%
  }

  .lprog .titletext {
    padding: 32px 16px
  }

  .lprog .t1 {
    font-size: 28px
  }

  .lprog .revlayout {
    grid-template-columns: 1fr
  }

  .lprog .resultpanel {
    grid-column: 1
  }

  .lprog .beforeafter {
    grid-template-columns: 1fr
  }

  .lprog .baarrow {
    display: none
  }

  .lprog .splitblock {
    flex-direction: column
  }

  .lprog .splitleft {
    border-radius: 4px 4px 0 0
  }

  .lprog .splitright {
    border-radius: 0 0 4px 4px
  }

  .lprog .programblock {
    padding: 64px 0
  }
}

@media (max-width: 480px) {
  .lprog .t1 {
    font-size: 21px
  }

  .lprog .h2prog {
    font-size: 28px
  }

  .lprog .h3faq {
    font-size: 28px
  }

  .lprog .badgenum {
    position: static;
    display: inline-block;
    margin: 0 0 16px
  }

  .lprog .imgcontent {
    height: 200px
  }
}

.ctus {
  background: #0d0d0f;
  color: #f0ece6;
  overflow-x: clip;
  position: relative
}

.ctus .geoshape {
  position: absolute;
  pointer-events: none;
  z-index: 0
}

.ctus .pulseoutline {
  position: absolute;
  border: 1px solid #cc27a121;
  border-radius: 42px;
  pointer-events: none;
  animation: pulseGeo 5s ease-in-out infinite alternate
}

@keyframes pulseGeo {
  0% {
    opacity: .08;
    transform: scale(1)
  }

  100% {
    opacity: .18;
    transform: scale(1.04)
  }
}

.ctus .topband {
  position: relative;
  background: linear-gradient(211deg, #126C2B 0%, transparent 72%);
  padding: 96px 32px 64px;
  overflow: hidden
}

.ctus .topband .pulseoutline {
  width: 340px;
  height: 340px;
  top: -80px;
  right: -60px
}

.ctus .topband .pulseoutline.two {
  width: 180px;
  height: 180px;
  bottom: 20px;
  left: 40px;
  animation-delay: 2s;
  border-color: #cc27a11a
}

.ctus .bandinner {
  max-width: 1366px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 64px
}

.ctus .bandleft {
  flex: 1 1 0;
  min-width: 0;
  position: relative;
  z-index: 1
}

.ctus .bandright {
  flex: 0 0 320px;
  width: 320px;
  position: relative;
  z-index: 1
}

.ctus .pagelabel {
  display: inline-flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-bottom: 32px
}

.ctus .labelline {
  width: 32px;
  height: 2px;
  background: #CC27A1;
  border-radius: 4px
}

.ctus .labeltext {
  font-size: 13px;
  letter-spacing: .12em;
  color: #CC27A1;
  text-transform: uppercase
}

.ctus .bandtitle {
  font-size: 52px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0ece6;
  margin: 0 0 32px;
  clip-path: inset(0 100% 0 0);
  animation: wipeIn .7s cubic-bezier(0.4, 0, 0.2, 1) .15s forwards
}

@keyframes wipeIn {
  to {
    clip-path: inset(0 0% 0 0)
  }
}

.ctus .banddesc {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #b8b0a8;
  max-width: 520px;
  margin: 0
}

.ctus .metricrow {
  display: flex;
  flex-direction: row;
  gap: 32px;
  margin-top: 64px
}

.ctus .metricitem {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 4px
}

.ctus .metricval {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #CC27A1;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px
}

.ctus .metricarrow {
  width: 0;
  height: 0;
  border-left: 7px solid transparent;
  border-right: 7px solid transparent;
  border-bottom: 11px solid #126C2B;
  display: inline-block;
  margin-bottom: 4px
}

.ctus .metriclabel {
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: .02em;
  color: #7a7470
}

.ctus .bandright .contactcard {
  background: #126c2b1a;
  border: 1px solid #cc27a12e;
  border-radius: 4px;
  padding: 32px;
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  display: flex;
  flex-direction: column;
  gap: 32px
}

.ctus .contactcard .cardhead {
  font-size: 13px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #CC27A1;
  margin: 0
}

.ctus .contactcard .cardentries {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ctus .contactcard .entry {
  display: flex;
  flex-direction: column;
  gap: 4px
}

.ctus .contactcard .entrylabel {
  font-size: 13px;
  letter-spacing: .02em;
  color: #7a7470
}

.ctus .contactcard .entryval {
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: #f0ece6
}

.ctus .contactcard .entryval a {
  color: #f0ece6;
  text-decoration: none;
  border-bottom: 1px solid #cc27a159;
  transition: color .28s ease-in-out, border-color .28s ease-in-out
}

.ctus .contactcard .entryval a:hover {
  color: #CC27A1;
  border-color: #CC27A1
}

.ctus .divider1 {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 0;
  background: #0d0d0f;
  height: 32px;
  position: relative;
  z-index: 2
}

.ctus .divider1 .dline {
  flex: 1;
  max-width: 200px;
  height: 1px;
  background: #cc27a138
}

.ctus .divider1 .ddiamond {
  width: 8px;
  height: 8px;
  background: #CC27A1;
  transform: rotate(45deg);
  border-radius: 1px
}

.ctus .formsec {
  position: relative;
  background: linear-gradient(211deg, #126c2b14 0%, transparent 60%);
  padding: 64px 32px 96px;
  overflow: hidden
}

.ctus .formsec .pulseoutline {
  width: 420px;
  height: 420px;
  bottom: -100px;
  left: -80px;
  border-color: #126c2b1f;
  animation-delay: 1.5s
}

.ctus .formsec .pulseoutline.two {
  width: 200px;
  height: 200px;
  top: 40px;
  right: 60px;
  border-color: #cc27a117;
  animation-delay: 3s
}

.ctus .forminner {
  max-width: 1366px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: flex-start;
  position: relative;
  z-index: 1
}

.ctus .formaside {
  flex: 0 0 260px;
  width: 260px;
  padding-top: 8px
}

.ctus .formaside .asidenote {
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #7a7470;
  border-left: 2px solid #CC27A1;
  padding-left: 16px;
  margin: 0 0 32px
}

.ctus .formaside .asidetitle {
  font-size: 21px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: #f0ece6;
  margin: 0 0 16px
}

.ctus .formaside .asidebody {
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #7a7470;
  margin: 0
}

.ctus .formwrap {
  flex: 1 1 0;
  min-width: 0
}

.ctus .formwrap .formtitle {
  font-size: 28px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: #f0ece6;
  margin: 0 0 32px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 12px
}

.ctus .formwrap .formtitle .shapemark {
  width: 12px;
  height: 12px;
  background: transparent;
  border: 2px solid #CC27A1;
  border-radius: 4px;
  flex-shrink: 0;
  transform: rotate(15deg)
}

.ctus .contactform {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.ctus .contactform .fieldrow {
  display: flex;
  flex-direction: row;
  gap: 32px
}

.ctus .contactform .fieldgroup {
  display: flex;
  flex-direction: column;
  gap: 8px;
  flex: 1 1 0;
  min-width: 0
}

.ctus .contactform .fieldlabel {
  font-size: 13px;
  letter-spacing: .02em;
  color: #7a7470
}

.ctus .contactform .fieldinput {
  background: #fff1dd0a;
  border: 1px solid #cc27a133;
  border-radius: 4px;
  color: #f0ece6;
  font-size: 16px;
  letter-spacing: .01em;
  padding: 12px 16px;
  width: 100%;
  box-sizing: border-box;
  outline: none;
  transition: border-color .35s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1);
  box-shadow: inset 1px 1px 2px 0 #cc27a10a
}

.ctus .contactform .fieldinput::placeholder {
  color: #f0ece640
}

.ctus .contactform .fieldinput:focus {
  border-color: #CC27A1;
  box-shadow: 1px 2px 6px 0 #cc27a114 inset 1px 1px 2px 0 #cc27a10f
}

.ctus .ratingblock {
  display: flex;
  flex-direction: column;
  gap: 16px
}

.ctus .ratingblock .ratinglabel {
  font-size: 13px;
  letter-spacing: .02em;
  color: #7a7470
}

.ctus .ratingblock .ratingdesc {
  font-size: 13px;
  line-height: 1.4;
  color: #5a5450;
  margin: 0
}

.ctus .ratingopts {
  display: flex;
  flex-direction: row;
  gap: 8px;
  flex-wrap: wrap
}

.ctus .ratingopts .ropt {
  position: relative
}

.ctus .ratingopts .ropt input[type="radio"] {
  position: absolute;
  opacity: 0;
  width: 0;
  height: 0
}

.ctus .ratingopts .ropt label {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  border: 1px solid #cc27a138;
  border-radius: 4px;
  font-size: 16px;
  color: #7a7470;
  cursor: pointer;
  transition: background .28s cubic-bezier(0.4, 0, 0.2, 1), border-color .28s cubic-bezier(0.4, 0, 0.2, 1), color .28s cubic-bezier(0.4, 0, 0.2, 1);
  background: #fff1dd08;
  letter-spacing: .01em;
  user-select: none
}

.ctus .ratingopts .ropt input[type="radio"]:checked+label {
  background: #CC27A1;
  border-color: #CC27A1;
  color: #f0ece6;
  box-shadow: 1px 2px 6px 0 #cc27a114
}

.ctus .ratingopts .ropt label:hover {
  border-color: #CC27A1;
  color: #CC27A1
}

.ctus .ratingopts .ropt input[type="radio"]:focus-visible+label {
  outline: 2px solid #CC27A1;
  outline-offset: 2px
}

.ctus .ratescale {
  display: flex;
  flex-direction: row;
  justify-content: space-between;
  padding: 0 4px
}

.ctus .ratescale .scaleend {
  font-size: 13px;
  color: #5a5450;
  letter-spacing: .01em
}

.ctus .privacyrow {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 12px
}

.ctus .privacyrow .privcheck {
  width: 18px;
  height: 18px;
  margin-top: 2px;
  flex-shrink: 0;
  accent-color: #CC27A1;
  cursor: pointer
}

.ctus .privacyrow .privtext {
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #7a7470;
  margin: 0
}

.ctus .privacyrow .privtext a {
  color: #CC27A1;
  text-decoration: none;
  border-bottom: 1px solid #cc27a14d;
  transition: border-color .25s ease-in-out
}

.ctus .privacyrow .privtext a:hover {
  border-color: #CC27A1
}

.ctus .submitrow {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 32px
}

.ctus .submitbtn {
  position: relative;
  overflow: hidden;
  background: #CC27A1;
  border: none;
  border-radius: 4px;
  color: #f0ece6;
  font-size: 16px;
  letter-spacing: .02em;
  padding: 16px 32px;
  cursor: pointer;
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  transition: color .32s cubic-bezier(0.4, 0, 0.2, 1), box-shadow .32s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0
}

.ctus .submitbtn::before {
  content: "";
  position: absolute;
  inset: 0;
  background: #126C2B;
  transform: translateX(100%);
  transition: transform .32s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: -1;
  border-radius: 4px
}

.ctus .submitbtn:hover::before {
  transform: translateX(0)
}

.ctus .submitbtn:hover {
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.ctus .submitbtn:focus-visible {
  outline: 2px solid #CC27A1;
  outline-offset: 3px
}

.ctus .submitbtn:active {
  opacity: .88
}

.ctus .submitnote {
  font-size: 13px;
  line-height: 1.4;
  color: #5a5450;
  letter-spacing: .01em;
  margin: 0
}

.ctus .divider2 {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  height: 32px;
  background: linear-gradient(211deg, #126c2b0f 0%, transparent 60%)
}

.ctus .divider2 .dline {
  flex: 1;
  max-width: 200px;
  height: 1px;
  background: #126c2b59
}

.ctus .divider2 .ddiamond {
  width: 8px;
  height: 8px;
  background: #126C2B;
  transform: rotate(45deg);
  border-radius: 1px
}

.ctus .imgsec {
  position: relative;
  padding: 64px 32px 96px;
  background: #111214;
  overflow: hidden
}

.ctus .imgsec .pulseoutline {
  width: 300px;
  height: 300px;
  top: 32px;
  right: 32px;
  border-color: #fff1dd12;
  animation-delay: .8s
}

.ctus .imginner {
  max-width: 1366px;
  margin: 0 auto;
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: center;
  position: relative;
  z-index: 1
}

.ctus .imgblock {
  flex: 0 0 460px;
  width: 460px;
  position: relative
}

.ctus .imgframe {
  width: 100%;
  height: 320px;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 1px 10px 44px 0 #cc27a124;
  position: relative;
  clip-path: inset(0 100% 0 0);
  animation: wipeIn .65s cubic-bezier(0.4, 0, 0.2, 1) .3s forwards
}

.ctus .imgframe img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block
}

.ctus .imgframe .vignette {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 50% 50%, transparent 40%, #1112149e 100%);
  pointer-events: none
}

.ctus .imgblock .imgcaption {
  margin-top: 16px;
  font-size: 13px;
  line-height: 1.4;
  letter-spacing: .02em;
  color: #5a5450
}

.ctus .imgtext {
  flex: 1 1 0;
  min-width: 0
}

.ctus .imgtext .sectiontag {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  margin-bottom: 16px
}

.ctus .imgtext .sectiontag .tagdot {
  width: 8px;
  height: 8px;
  background: #CC27A1;
  border-radius: 4px;
  flex-shrink: 0
}

.ctus .imgtext .sectiontag .tagword {
  font-size: 13px;
  letter-spacing: .1em;
  text-transform: uppercase;
  color: #CC27A1
}

.ctus .imgtext .imgtitle {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0ece6;
  margin: 0 0 32px
}

.ctus .imgtext .textbody {
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: flex-start
}

.ctus .imgtext .textnote {
  flex: 0 0 120px;
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #5a5450;
  border-top: 1px solid #cc27a12e;
  padding-top: 8px
}

.ctus .imgtext .textmain {
  flex: 1 1 0;
  min-width: 0
}

.ctus .imgtext .textmain p {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #b8b0a8;
  margin: 0 0 16px
}

.ctus .imgtext .textmain p:last-child {
  margin-bottom: 0
}

.ctus .imgtext .numlist {
  list-style: none;
  padding: 0;
  margin: 32px 0 0;
  display: flex;
  flex-direction: column;
  gap: 8px
}

.ctus .imgtext .numlist li {
  display: flex;
  flex-direction: row;
  align-items: baseline;
  justify-content: space-between;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: #b8b0a8;
  border-bottom: 1px solid #cc27a11a;
  padding-bottom: 8px
}

.ctus .imgtext .numlist li .numval {
  font-size: 21px;
  color: #CC27A1;
  line-height: 1.15;
  letter-spacing: .01em;
  flex-shrink: 0;
  margin-left: 16px
}

.ctus .imgblock2 {
  display: none
}

@media (max-width: 1024px) {
  .ctus .bandinner {
    flex-direction: column;
    gap: 32px
  }

  .ctus .bandright {
    flex: none;
    width: 100%
  }

  .ctus .forminner {
    flex-direction: column;
    gap: 32px
  }

  .ctus .formaside {
    flex: none;
    width: 100%
  }

  .ctus .imginner {
    flex-direction: column;
    gap: 32px
  }

  .ctus .imgblock {
    flex: none;
    width: 100%
  }

  .ctus .imgframe {
    height: 260px
  }
}

@media (max-width: 768px) {
  .ctus .topband {
    padding: 64px 16px 32px
  }

  .ctus .bandtitle {
    font-size: 38px
  }

  .ctus .metricrow {
    gap: 16px;
    flex-wrap: wrap
  }

  .ctus .formsec {
    padding: 32px 16px 64px
  }

  .ctus .contactform .fieldrow {
    flex-direction: column;
    gap: 16px
  }

  .ctus .imgsec {
    padding: 32px 16px 64px
  }

  .ctus .imgtext .textbody {
    flex-direction: column;
    gap: 16px
  }

  .ctus .imgtext .textnote {
    flex: none;
    width: 100%
  }

  .ctus .imgtext .imgtitle {
    font-size: 28px
  }

  .ctus .submitrow {
    flex-direction: column;
    align-items: flex-start;
    gap: 16px
  }

  .ctus .ratingopts {
    gap: 4px
  }
}

@media (max-width: 480px) {
  .ctus .bandtitle {
    font-size: 28px
  }

  .ctus .metricval {
    font-size: 28px
  }

  .ctus .bandright .contactcard {
    padding: 16px
  }

  .ctus .formwrap .formtitle {
    font-size: 21px
  }

  .ctus .imgtext .imgtitle {
    font-size: 21px
  }

  .ctus .topband {
    padding: 32px 16px
  }
}

.supp {
  background: #0e0a0d;
  color: #f0e8ec;
  overflow-x: clip;
  position: relative
}

.supp .pageblock {
  max-width: 1366px;
  margin: 0 auto;
  padding: 0 32px
}

.supp .suppHero {
  padding: 96px 0 64px;
  position: relative;
  background: linear-gradient(211deg, #126C2B18 0%, #0e0a0d 55%, #CC27A108 100%);
  border-right: 3px solid #CC27A1
}

.supp .suppHero::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: circle at 20% 80% / 180px 180px, circle at 75% 20% / 120px 120px;
  opacity: .04;
  pointer-events: none
}

.supp .suppHeroEdge {
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 4px;
  background: linear-gradient(211deg, #126C2B, transparent)
}

.supp .suppHeroGlow {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  border: 1px solid transparent;
  pointer-events: none;
  animation: edgeglow 4.5s cubic-bezier(0.4, 0, 0.2, 1) infinite
}

@keyframes edgeglow {

  0%,
  100% {
    box-shadow: inset 0 0 18px 0 #cc27a10a
  }

  50% {
    box-shadow: inset 0 0 38px 0 #cc27a11a
  }
}

.supp .suppHeroLayout {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 64px
}

.supp .suppHeroText {
  flex: 1 1 0;
  min-width: 0
}

.supp .suppHeroCard {
  flex: 0 0 260px;
  width: 260px;
  position: relative
}

.supp .suppTag {
  display: inline-block;
  background: #CC27A118;
  border: 1px solid #CC27A155;
  border-radius: 4px;
  color: #CC27A1;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  padding: 4px 16px;
  margin-bottom: 16px
}

.supp .suppH1 {
  font-size: 52px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f4edf1;
  margin: 0 0 8px
}

.supp .suppH1 em {
  font-style: normal;
  color: #CC27A1
}

.supp .suppH1sub {
  font-size: 28px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: #b89faa;
  margin: 0 0 32px
}

.supp .suppLead {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #d4c4cc;
  margin: 0 0 32px;
  max-width: 560px
}

.supp .suppContactRow {
  display: flex;
  flex-direction: row;
  gap: 16px;
  flex-wrap: wrap;
  margin-bottom: 32px
}

.supp .suppContactItem {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  background: #1a0f16;
  border: 1px solid #3a1f30;
  border-radius: 4px;
  padding: 8px 16px;
  font-size: 13px;
  line-height: 1.4;
  color: #d4c4cc;
  text-decoration: none;
  transition: border-color .28s ease-in-out, color .28s ease-in-out;
  cursor: pointer
}

.supp .suppContactItem:hover {
  border-color: #CC27A1;
  color: #f4edf1
}

.supp .suppContactDot {
  width: 8px;
  height: 8px;
  border-radius: 4px;
  background: #CC27A1;
  flex-shrink: 0
}

.supp .suppContactDot.green {
  background: #126C2B
}

.supp .suppHeroImg {
  width: 260px;
  height: 364px;
  object-fit: cover;
  object-position: center;
  display: block;
  clip-path: polygon(0 0, 100% 8%, 100% 100%, 0 92%);
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.supp .suppImgAccent {
  position: absolute;
  bottom: -8px;
  right: -8px;
  width: 80px;
  height: 80px;
  border-right: 3px solid #126C2B;
  border-bottom: 3px solid #126C2B;
  pointer-events: none
}

.supp .suppPunct {
  position: absolute;
  top: 16px;
  left: -16px;
  font-size: 66px;
  line-height: 1.15;
  color: #CC27A1;
  opacity: .12;
  pointer-events: none;
  user-select: none;
  font-style: normal
}

.supp .suppDivider {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  gap: 8px;
  padding: 32px 0
}

.supp .suppDivLine {
  width: 48px;
  height: 2px;
  background: linear-gradient(90deg, transparent, #CC27A155)
}

.supp .suppDivLine.rev {
  background: linear-gradient(90deg, #CC27A155, transparent)
}

.supp .suppDivShape {
  width: 8px;
  height: 8px;
  background: #CC27A1;
  transform: rotate(45deg)
}

.supp .faqSec {
  padding: 64px 0 96px;
  background: #120d10;
  position: relative;
  border-left: 4px solid #126C2B
}

.supp .faqSecPattern {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow: hidden;
  pointer-events: none
}

.supp .faqSecPattern::before {
  content: '';
  position: absolute;
  top: -60px;
  right: -60px;
  width: 320px;
  height: 320px;
  border: 40px solid #CC27A1;
  opacity: .03;
  transform: rotate(15deg)
}

.supp .faqSecPattern::after {
  content: '';
  position: absolute;
  bottom: -80px;
  left: 10%;
  width: 200px;
  height: 200px;
  border: 30px solid #126C2B;
  opacity: .04;
  border-radius: 4px;
  transform: rotate(-8deg)
}

.supp .faqLayout {
  display: flex;
  flex-direction: row;
  gap: 64px;
  align-items: flex-start
}

.supp .faqSide {
  flex: 0 0 280px;
  width: 280px;
  position: relative
}

.supp .faqSideNote {
  font-size: 13px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #7a5f6e;
  border-left: 2px solid #CC27A133;
  padding-left: 16px;
  margin-bottom: 32px
}

.supp .faqSideHead {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f4edf1;
  margin: 0 0 16px
}

.supp .faqSideHead span {
  display: block;
  font-size: 21px;
  color: #CC27A1;
  line-height: 1.4;
  margin-top: 8px
}

.supp .faqSideDesc {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #b89faa;
  margin: 0 0 32px
}

.supp .faqPortrait {
  width: 200px;
  height: 280px;
  object-fit: cover;
  object-position: center;
  display: block;
  border-radius: 4px;
  box-shadow: 1px 5px 28px 0 #126c2b1a
}

.supp .faqPortraitLabel {
  margin-top: 8px;
  font-size: 13px;
  line-height: 1.4;
  color: #7a5f6e;
  letter-spacing: .01em
}

.supp .faqPortraitLabel strong {
  display: block;
  color: #d4c4cc;
  font-size: 16px
}

.supp .faqMain {
  flex: 1 1 0;
  min-width: 0
}

.supp .faqItem {
  border-bottom: 1px solid #2a1a22;
  margin-bottom: 0
}

.supp .faqItem:first-child {
  border-top: 1px solid #2a1a22
}

.supp .faqToggle {
  width: 100%;
  background: none;
  border: none;
  padding: 16px 0;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  cursor: pointer;
  text-align: left;
  color: #f4edf1;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: .01em;
  transition: color .25s ease-in-out
}

.supp .faqToggle:hover {
  color: #CC27A1
}

.supp .faqToggle:focus-visible {
  outline: 2px solid #CC27A1 !important;
  outline-offset: 2px !important;
  border-radius: 4px !important
}

.supp .faqToggleIcon {
  flex-shrink: 0;
  width: 24px;
  height: 24px;
  border: 1px solid #3a1f30;
  border-radius: 4px;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: background .28s cubic-bezier(0.4, 0, 0.2, 1), border-color .28s cubic-bezier(0.4, 0, 0.2, 1);
  position: relative
}

.supp .faqToggle:hover .faqToggleIcon {
  background: #CC27A122;
  border-color: #CC27A1
}

.supp .faqToggleIcon::before,
.supp .faqToggleIcon::after {
  content: '';
  position: absolute;
  background: #CC27A1;
  border-radius: 2px
}

.supp .faqToggleIcon::before {
  width: 10px;
  height: 2px
}

.supp .faqToggleIcon::after {
  width: 2px;
  height: 10px;
  transition: transform .28s cubic-bezier(0.4, 0, 0.2, 1), opacity .28s cubic-bezier(0.4, 0, 0.2, 1)
}

.supp .faqItem.open .faqToggleIcon::after {
  transform: scaleY(0);
  opacity: 0
}

.supp .faqItem.open .faqToggle {
  color: #CC27A1
}

.supp .faqAnswer {
  max-height: 0;
  overflow: hidden;
  transition: max-height .38s cubic-bezier(0.4, 0, 0.2, 1)
}

.supp .faqItem.open .faqAnswer {
  max-height: 400px
}

.supp .faqAnswerInner {
  padding: 0 0 16px;
  display: flex;
  flex-direction: row;
  gap: 32px;
  align-items: flex-start
}

.supp .faqAnswerNote {
  flex: 0 0 80px;
  font-size: 13px;
  line-height: 1.6;
  color: #7a5f6e;
  text-align: right;
  padding-top: 4px;
  letter-spacing: .01em
}

.supp .faqAnswerText {
  flex: 1 1 0;
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #c4adb8
}

.supp .faqAnswerText strong {
  color: #f4edf1
}

.supp .faqContactStrip {
  margin-top: 32px;
  background: #1a0f16;
  border: 1px solid #3a1f30;
  border-right: 3px solid #CC27A1;
  border-radius: 4px;
  padding: 32px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 32px;
  flex-wrap: wrap
}

.supp .faqContactStripText {
  flex: 1 1 200px
}

.supp .faqContactStripH {
  font-size: 21px;
  line-height: 1.4;
  letter-spacing: .01em;
  color: #f4edf1;
  margin: 0 0 8px
}

.supp .faqContactStripP {
  font-size: 16px;
  line-height: 1.6;
  letter-spacing: .01em;
  color: #b89faa;
  margin: 0
}

.supp .faqContactLinks {
  display: flex;
  flex-direction: column;
  gap: 8px
}

.supp .faqContactLink {
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px;
  color: #d4c4cc;
  font-size: 16px;
  line-height: 1.4;
  letter-spacing: .01em;
  text-decoration: none;
  padding: 8px 16px;
  border: 1px solid #3a1f30;
  border-radius: 4px;
  background: #0e0a0d;
  position: relative;
  overflow: hidden;
  transition: color .28s ease-in-out, border-color .28s ease-in-out
}

.supp .faqContactLink::before {
  content: '';
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  background: #CC27A1;
  transition: width .32s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0
}

.supp .faqContactLink:hover::before {
  width: 100%;
  left: 0;
  right: auto
}

.supp .faqContactLink:hover {
  color: #fff;
  border-color: #CC27A1
}

.supp .faqContactLink span {
  position: relative;
  z-index: 1
}

.supp .faqContactLink:focus-visible {
  outline: 2px solid #CC27A1 !important;
  outline-offset: 2px !important
}

.supp .faqLinkDot {
  width: 6px;
  height: 6px;
  border-radius: 4px;
  background: #CC27A1;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: background .28s ease-in-out
}

.supp .faqContactLink:hover .faqLinkDot {
  background: #fff
}

.supp .suppHeroShapeA {
  position: absolute;
  bottom: 32px;
  left: -24px;
  width: 48px;
  height: 48px;
  border: 2px solid #CC27A133;
  transform: rotate(22deg);
  pointer-events: none
}

.supp .suppHeroShapeB {
  position: absolute;
  top: 16px;
  right: -16px;
  width: 24px;
  height: 24px;
  background: #126C2B22;
  border: 1px solid #126C2B44;
  transform: rotate(-10deg);
  pointer-events: none
}

@media (max-width: 1024px) {
  .supp .suppHeroLayout {
    gap: 32px
  }

  .supp .suppHeroCard {
    flex: 0 0 200px;
    width: 200px
  }

  .supp .suppHeroImg {
    width: 200px;
    height: 280px
  }

  .supp .suppH1 {
    font-size: 38px
  }

  .supp .faqLayout {
    gap: 32px
  }

  .supp .faqSide {
    flex: 0 0 220px;
    width: 220px
  }
}

@media (max-width: 768px) {
  .supp .suppHeroLayout {
    flex-direction: column;
    gap: 32px
  }

  .supp .suppHeroCard {
    flex: none;
    width: 180px;
    align-self: flex-end
  }

  .supp .suppHeroImg {
    width: 180px;
    height: 252px
  }

  .supp .suppH1 {
    font-size: 28px
  }

  .supp .suppH1sub {
    font-size: 21px
  }

  .supp .faqLayout {
    flex-direction: column;
    gap: 32px
  }

  .supp .faqSide {
    flex: none;
    width: 100%
  }

  .supp .faqPortrait {
    width: 120px;
    height: 168px
  }

  .supp .faqContactStrip {
    flex-direction: column;
    gap: 16px
  }
}

@media (max-width: 480px) {
  .supp .suppHero {
    padding: 64px 0 32px
  }

  .supp .faqSec {
    padding: 32px 0 64px
  }

  .supp .suppH1 {
    font-size: 21px
  }

  .supp .suppContactRow {
    flex-direction: column
  }

  .supp .faqAnswerInner {
    flex-direction: column;
    gap: 8px
  }

  .supp .faqAnswerNote {
    text-align: left;
    flex: none
  }

  .supp .pageblock {
    padding: 0 16px
  }
}

.aboutus {
  background: #0d0d0f;
  color: #e8e0d8;
  overflow-x: clip;
  position: relative
}

.aboutus .titblock {
  background: #111014;
  padding: 96px 32px 64px;
  position: relative
}

.aboutus .titblock::before {
  background: radial-gradient(ellipse at 80% 20%, #cc27a112 0%, transparent 60%);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .titblock::after {
  background: radial-gradient(circle at 92% 15%, transparent 28px, #cc27a11f 29px, #cc27a11f 31px, transparent 32px), radial-gradient(circle at 96% 22%, transparent 18px, #cc27a117 19px, #cc27a117 21px, transparent 22px), radial-gradient(circle at 88% 30%, transparent 10px, #cc27a112 11px, #cc27a112 13px, transparent 14px), radial-gradient(circle at 94% 38%, transparent 6px, #cc27a10f 7px, #cc27a10f 9px, transparent 10px), radial-gradient(circle at 90% 45%, transparent 14px, #cc27a10d 15px, #cc27a10d 17px, transparent 18px), radial-gradient(circle at 97% 52%, transparent 8px, #cc27a114 9px, #cc27a114 11px, transparent 12px);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .titinner {
  margin: 0 auto;
  max-width: 1366px;
  position: relative
}

.aboutus .titsplit {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  gap: 64px
}

.aboutus .titleft {
  flex: 0 0 40%
}

.aboutus .titright {
  flex: 0 0 60%;
  padding-top: 32px
}

.aboutus .titlabel {
  background: #cc27a126;
  border: 1px solid #cc27a14d;
  border-radius: 4px;
  color: #CC27A1;
  display: inline-block;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  margin-bottom: 16px;
  padding: 4px 16px
}

.aboutus .tith1 {
  color: #f0e8e0;
  font-size: 52px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 32px
}

.aboutus .titdesc {
  color: #b8aea4;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0;
  max-width: 520px
}

.aboutus .titimgwrap {
  border-radius: 4px;
  overflow: hidden;
  position: relative
}

.aboutus .titimgwrap::after {
  background: linear-gradient(211deg, #126c2b59 0%, transparent 55%);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .titimg {
  display: block;
  height: 380px;
  object-fit: cover;
  object-position: center;
  width: 100%
}

.aboutus .wavdivider {
  display: block;
  line-height: 0;
  overflow: hidden
}

.aboutus .wavdivider svg {
  display: block;
  width: 100%
}

.aboutus .storysec {
  background: #13111a;
  padding: 96px 32px;
  position: relative
}

.aboutus .storysec::before {
  background: linear-gradient(to right, #0006 0%, transparent 18%), linear-gradient(to left, #0006 0%, transparent 18%), linear-gradient(to bottom, #0000004d 0%, transparent 12%), linear-gradient(to top, #0000004d 0%, transparent 12%);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .storyinner {
  margin: 0 auto;
  max-width: 1366px;
  position: relative
}

.aboutus .storygrid {
  display: grid;
  gap: 64px;
  grid-template-columns: 1fr 2fr 1fr
}

.aboutus .storyside {
  padding-top: 8px
}

.aboutus .storysideann {
  border-right: 2px solid #cc27a140;
  color: #8a7e78;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.6;
  padding-right: 16px;
  text-align: right
}

.aboutus .storysideann strong {
  color: #CC27A1;
  display: block;
  font-size: 28px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin-bottom: 8px
}

.aboutus .storymid {
  padding: 0
}

.aboutus .storymidshape {
  background: #cc27a12e;
  border-radius: 4px;
  display: inline-block;
  height: 8px;
  margin-bottom: 16px;
  width: 32px
}

.aboutus .storymidh2 {
  color: #f0e8e0;
  font-size: 38px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 32px
}

.aboutus .storymidp {
  color: #b8aea4;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0 0 16px
}

.aboutus .storymidp.short {
  font-size: 21px;
  color: #d4c8be;
  line-height: 1.4;
  margin-bottom: 16px
}

.aboutus .storyimgwrap {
  border-radius: 4px;
  margin-top: 32px;
  overflow: hidden;
  position: relative
}

.aboutus .storyimgwrap::after {
  background: linear-gradient(211deg, #126c2b40 0%, transparent 50%);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .storyimg {
  display: block;
  height: 260px;
  object-fit: cover;
  object-position: center;
  transform: scale(1.08);
  transition: transform .38s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.aboutus .storyimgwrap:hover .storyimg {
  transform: scale(1)
}

.aboutus .storyrightside {
  padding-top: 8px
}

.aboutus .chartblock {
  background: #fff1dd0a;
  border: 1px solid #fff1dd14;
  border-radius: 4px;
  padding: 16px
}

.aboutus .charttitle {
  color: #8a7e78;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  margin-bottom: 16px;
  text-transform: uppercase
}

.aboutus .chartrow {
  align-items: center;
  display: flex;
  flex-direction: row;
  gap: 8px;
  margin-bottom: 8px
}

.aboutus .chartlabel {
  color: #b8aea4;
  flex: 0 0 auto;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.4;
  text-align: right;
  width: 80px
}

.aboutus .chartbar {
  background: #fff1dd0f;
  border-radius: 4px;
  flex: 1;
  height: 16px;
  overflow: hidden;
  position: relative
}

.aboutus .chartfill {
  border-radius: 4px;
  height: 100%;
  position: relative;
  transition: width .38s cubic-bezier(0.4, 0, 0.2, 1)
}

.aboutus .chartfill.f1 {
  background: linear-gradient(90deg, #CC27A1, #cc27a199);
  width: 82%
}

.aboutus .chartfill.f2 {
  background: linear-gradient(90deg, #126C2B, #126c2b99);
  width: 67%
}

.aboutus .chartfill.f3 {
  background: linear-gradient(90deg, #CC27A1, #cc27a173);
  width: 91%
}

.aboutus .chartfill.f4 {
  background: linear-gradient(90deg, #126C2B, #126c2b73);
  width: 74%
}

.aboutus .chartval {
  color: #CC27A1;
  flex: 0 0 auto;
  font-size: 13px;
  font-weight: 600;
  letter-spacing: .01em;
  line-height: 1.4
}

.aboutus .wavdivider2 {
  display: block;
  line-height: 0;
  overflow: hidden
}

.aboutus .wavdivider2 svg {
  display: block;
  width: 100%
}

.aboutus .teamsec {
  background: #0f0e14;
  padding: 96px 32px;
  position: relative
}

.aboutus .teamcircles {
  bottom: 0;
  opacity: .06;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0;
  width: 320px
}

.aboutus .teamcircles svg {
  height: 100%;
  width: 100%
}

.aboutus .teaminner {
  margin: 0 auto;
  max-width: 1366px;
  position: relative
}

.aboutus .teamlayout {
  align-items: flex-start;
  display: flex;
  flex-direction: row;
  gap: 64px
}

.aboutus .teamleft {
  flex: 0 0 40%
}

.aboutus .teamlefttop {
  margin-bottom: 32px
}

.aboutus .teamshape {
  background: #126c2b40;
  border-radius: 4px;
  display: inline-block;
  height: 8px;
  margin-bottom: 16px;
  width: 32px
}

.aboutus .teamh2 {
  color: #f0e8e0;
  font-size: 38px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin: 0 0 16px
}

.aboutus .teamdesc {
  color: #b8aea4;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0 0 32px
}

.aboutus .teamvallist {
  list-style: none;
  margin: 0;
  padding: 0
}

.aboutus .teamvalitem {
  align-items: flex-start;
  border-bottom: 1px solid #fff1dd12;
  display: flex;
  flex-direction: row;
  gap: 16px;
  padding: 16px 0
}

.aboutus .teamvalitem:first-child {
  border-top: 1px solid #fff1dd12
}

.aboutus .teamvalnum {
  color: #CC27A1;
  flex: 0 0 auto;
  font-size: 21px;
  font-weight: 700;
  letter-spacing: .01em;
  line-height: 1.15;
  min-width: 32px;
  text-align: right
}

.aboutus .teamvaltxt {
  flex: 1
}

.aboutus .teamvaltxt strong {
  color: #d4c8be;
  display: block;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.4;
  margin-bottom: 4px
}

.aboutus .teamvaltxt span {
  color: #8a7e78;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6
}

.aboutus .teamright {
  flex: 0 0 60%
}

.aboutus .portraitgrid {
  display: grid;
  gap: 32px;
  grid-template-columns: 1fr 1fr
}

.aboutus .portraitcard {
  background: #fff1dd08;
  border: 1px solid #fff1dd12;
  border-radius: 4px;
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  overflow: hidden;
  transition: box-shadow .28s ease-in-out, border-color .28s ease-in-out
}

.aboutus .portraitcard:hover {
  border-color: #cc27a140;
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.aboutus .portraitimgwrap {
  aspect-ratio: 4 / 5;
  overflow: hidden;
  position: relative
}

.aboutus .portraitimgwrap::after {
  background: linear-gradient(211deg, #126c2b33 0%, transparent 45%);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .portraitimg {
  display: block;
  height: 100%;
  object-fit: cover;
  object-position: center;
  transition: transform .38s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.aboutus .portraitcard:hover .portraitimg {
  transform: scale(1.04)
}

.aboutus .portraitinfo {
  padding: 16px
}

.aboutus .portraitname {
  color: #f0e8e0;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.4;
  margin: 0 0 4px
}

.aboutus .portraitrole {
  color: #CC27A1;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  margin: 0 0 8px
}

.aboutus .portraitbio {
  color: #8a7e78;
  font-size: 13px;
  letter-spacing: .01em;
  line-height: 1.6;
  margin: 0
}

.aboutus .imgrowblock {
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr 1fr 1fr;
  margin-top: 32px
}

.aboutus .imgrowitem {
  border-radius: 4px;
  overflow: hidden;
  position: relative
}

.aboutus .imgrowitem::after {
  background: linear-gradient(211deg, #cc27a126 0%, transparent 50%);
  bottom: 0;
  content: "";
  left: 0;
  pointer-events: none;
  position: absolute;
  right: 0;
  top: 0
}

.aboutus .imgrowimg {
  display: block;
  height: 140px;
  object-fit: cover;
  object-position: center;
  transition: transform .35s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.aboutus .imgrowitem:hover .imgrowimg {
  transform: scale(1.05)
}

@media (max-width: 1024px) {
  .aboutus .titsplit {
    flex-direction: column;
    gap: 32px
  }

  .aboutus .titleft {
    flex: 0 0 auto;
    width: 100%
  }

  .aboutus .titright {
    flex: 0 0 auto;
    padding-top: 0;
    width: 100%
  }

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

  .aboutus .storysideann {
    border-right: none;
    border-top: 2px solid #cc27a140;
    padding-right: 0;
    padding-top: 16px;
    text-align: left
  }

  .aboutus .teamlayout {
    flex-direction: column;
    gap: 32px
  }

  .aboutus .teamleft {
    flex: 0 0 auto;
    width: 100%
  }

  .aboutus .teamright {
    flex: 0 0 auto;
    width: 100%
  }
}

@media (max-width: 768px) {
  .aboutus .titblock {
    padding: 64px 16px 32px
  }

  .aboutus .tith1 {
    font-size: 38px
  }

  .aboutus .storysec {
    padding: 64px 16px
  }

  .aboutus .storymidh2 {
    font-size: 28px
  }

  .aboutus .teamsec {
    padding: 64px 16px
  }

  .aboutus .teamh2 {
    font-size: 28px
  }

  .aboutus .portraitgrid {
    grid-template-columns: 1fr;
    gap: 16px
  }

  .aboutus .imgrowblock {
    grid-template-columns: 1fr 1fr
  }
}

@media (max-width: 480px) {
  .aboutus .tith1 {
    font-size: 28px
  }

  .aboutus .imgrowblock {
    grid-template-columns: 1fr
  }

  .aboutus .storymidp.short {
    font-size: 16px
  }
}

.successPage {
  background: #0e0b12;
  min-height: 100vh;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  padding: 64px 16px
}

.successPage .successWrap {
  background: linear-gradient(211deg, #126C2B18, transparent);
  border: 1px solid #CC27A122;
  border-radius: 4px;
  box-shadow: 1px 10px 44px 0 #cc27a124;
  max-width: 640px;
  padding: 64px;
  width: 100%
}

.successPage .iconHolder {
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  margin-bottom: 32px
}

.successPage .checkShape {
  border-radius: 4px;
  display: flex;
  flex-direction: row;
  align-items: center;
  justify-content: center;
  height: 72px;
  position: relative;
  width: 72px
}

.successPage .checkShape::before {
  background: linear-gradient(211deg, #126C2B, transparent);
  border: 2px solid #126C2B;
  border-radius: 4px;
  content: "";
  height: 100%;
  inset-shadow: inset 1px 2px 2px 0 #126c2b1f;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%
}

.successPage .checkSvg {
  position: relative;
  z-index: 1
}

.successPage .successHeading {
  color: #f0ece8;
  font-size: 38px;
  letter-spacing: .01em;
  line-height: 1.15;
  margin-bottom: 16px;
  text-align: left
}

.successPage .successHeading span {
  color: #CC27A1
}

.successPage .successLead {
  color: #c4b8b0;
  font-size: 16px;
  letter-spacing: .02em;
  line-height: 1.6;
  margin-bottom: 32px;
  text-align: left
}

.successPage .dividerLine {
  background: linear-gradient(90deg, #CC27A133, #126C2B33, transparent);
  border: none;
  height: 1px;
  margin-bottom: 32px;
  width: 100%
}

.successPage .infoGrid {
  display: grid;
  gap: 16px;
  grid-template-columns: 1fr 1fr;
  margin-bottom: 32px
}

.successPage .infoCell {
  background: #ffffff07;
  border: 1px solid #ffffff0d;
  border-radius: 4px;
  padding: 16px
}

.successPage .infoCellLabel {
  color: #CC27A1;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  margin-bottom: 4px
}

.successPage .infoCellText {
  color: #e8e0d8;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.4
}

.successPage .noteAside {
  border-left: 2px solid #126C2B;
  border-top: 1px solid #126C2B44;
  border-radius: 4px;
  display: flex;
  flex-direction: row;
  gap: 16px;
  margin-bottom: 32px;
  padding: 16px
}

.successPage .noteAside .noteIcon {
  color: #126C2B;
  flex-shrink: 0;
  margin-top: 2px
}

.successPage .noteAside .noteText {
  color: #a09890;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.6
}

.successPage .actionRow {
  display: flex;
  flex-direction: row;
  gap: 16px
}

.successPage .btnPrimary {
  background: #CC27A1;
  border: none;
  border-radius: 4px;
  box-shadow: 1px 5px 28px 0 #cc27a11a;
  color: #fff;
  cursor: pointer;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.4;
  overflow: hidden;
  padding: 16px 32px;
  position: relative;
  transition: box-shadow .28s ease-in-out, color .28s ease-in-out;
  type: submit
}

.successPage .btnPrimary::before {
  background: #a01f80;
  border-radius: 4px;
  content: "";
  height: 100%;
  left: 100%;
  position: absolute;
  top: 0;
  transition: left .35s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.successPage .btnPrimary:hover::before {
  left: 0
}

.successPage .btnPrimary:hover {
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.successPage .btnPrimary span {
  position: relative;
  z-index: 1
}

.successPage .btnSecondary {
  background: transparent;
  border: 1px solid #CC27A155;
  border-radius: 4px;
  color: #CC27A1;
  cursor: pointer;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.4;
  overflow: hidden;
  padding: 16px 32px;
  position: relative;
  transition: border-color .25s ease-in-out, color .25s ease-in-out
}

.successPage .btnSecondary::before {
  background: #CC27A115;
  border-radius: 4px;
  content: "";
  height: 100%;
  left: 100%;
  position: absolute;
  top: 0;
  transition: left .32s cubic-bezier(0.4, 0, 0.2, 1);
  width: 100%
}

.successPage .btnSecondary:hover::before {
  left: 0
}

.successPage .btnSecondary:hover {
  border-color: #CC27A1
}

.successPage .btnSecondary span {
  position: relative;
  z-index: 1
}

.successPage .brandTag {
  color: #5a5058;
  font-size: 13px;
  letter-spacing: .02em;
  line-height: 1.4;
  margin-top: 32px;
  text-align: center
}

.successPage .brandTag a {
  color: #CC27A166;
  text-decoration: none;
  transition: color .26s ease-in-out
}

.successPage .brandTag a:hover {
  color: #CC27A1
}

@media (max-width: 768px) {
  .successPage .successWrap {
    padding: 32px
  }

  .successPage .infoGrid {
    grid-template-columns: 1fr
  }

  .successPage .actionRow {
    flex-direction: column
  }

  .successPage .successHeading {
    font-size: 28px
  }
}

@media (max-width: 480px) {
  .successPage .successWrap {
    padding: 32px 16px
  }

  .successPage .btnPrimary,
  .successPage .btnSecondary {
    font-size: 13px;
    padding: 16px
  }
}

.strt {
  background: #0d0d0f;
  color: #e8e0d8;
  overflow-x: clip;
  position: relative
}

.strt .dropIn {
  animation: dropReveal .55s cubic-bezier(0.4, 0, 0.2, 1) both
}

.strt .dropIn.d1 {
  animation-delay: .08s
}

.strt .dropIn.d2 {
  animation-delay: .22s
}

.strt .dropIn.d3 {
  animation-delay: .38s
}

.strt .dropIn.d4 {
  animation-delay: .52s
}

@keyframes dropReveal {
  from {
    opacity: 0;
    transform: translateY(-32px)
  }

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

.strt .titleWrap {
  display: grid;
  grid-template-columns: 1fr 1fr;
  min-height: 480px;
  max-width: 1366px;
  margin: 0 auto;
  position: relative
}

.strt .titleLeft {
  padding: 96px 64px 96px 32px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 32px;
  position: relative;
  z-index: 1
}

.strt .titleRight {
  position: relative;
  overflow: hidden
}

.strt .titleRight img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
  display: block
}

.strt .leakOverlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(211deg, #cc27a161 0%, transparent 55%);
  pointer-events: none
}

.strt .waveDiv {
  position: absolute;
  bottom: -1px;
  left: 0;
  width: 100%;
  line-height: 0;
  z-index: 2
}

.strt .waveDiv svg {
  display: block;
  width: 100%
}

.strt .siteSec1 {
  position: relative;
  background: #111014
}

.strt .tagline {
  display: inline-block;
  font-size: 13px;
  letter-spacing: .02em;
  color: #CC27A1;
  border: 1px solid #cc27a159;
  border-radius: 4px;
  padding: 4px 16px;
  line-height: 1.4
}

.strt .mainH1 {
  font-size: 52px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f5ede8;
  margin: 0
}

.strt .mainH1 em {
  font-style: normal;
  color: #CC27A1
}

.strt .titleQuote {
  font-size: 21px;
  line-height: 1.4;
  color: #c4b8af;
  letter-spacing: .01em;
  margin: 0;
  border-left: 3px solid #126C2B;
  padding-left: 16px
}

.strt .titleBtn {
  display: inline-block;
  background: #CC27A1;
  color: #fff;
  font-size: 16px;
  letter-spacing: .01em;
  line-height: 1.4;
  padding: 16px 32px;
  border-radius: 4px;
  border: none;
  cursor: pointer;
  position: relative;
  overflow: hidden;
  align-self: flex-start;
  text-decoration: none;
  transition: color .28s ease-in-out;
  box-shadow: 1px 5px 28px 0 #cc27a11a
}

.strt .titleBtn::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  background: #126C2B;
  transition: width .35s cubic-bezier(0.4, 0, 0.2, 1);
  z-index: 0
}

.strt .titleBtn:hover::before {
  width: 100%
}

.strt .titleBtn span {
  position: relative;
  z-index: 1
}

.strt .siteSec2 {
  background: #0f0f12;
  padding: 96px 32px
}

.strt .sec2Inner {
  max-width: 1366px;
  margin: 0 auto
}

.strt .secLabel {
  font-size: 13px;
  letter-spacing: .02em;
  color: #CC27A1;
  line-height: 1.4;
  margin-bottom: 8px;
  display: flex;
  flex-direction: row;
  align-items: center;
  gap: 8px
}

.strt .secLabel::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  background: #CC27A1;
  border-radius: 50%;
  flex-shrink: 0
}

.strt .secH2 {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0e8e2;
  margin: 0 0 64px
}

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

.strt .tCard {
  background: #161519;
  border-radius: 4px;
  padding: 32px;
  position: relative;
  border: 1px solid #cc27a11f;
  box-shadow: 1px 5px 28px 0 #cc27a114;
  transition: border-color .28s ease-in-out, box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1);
  overflow: hidden
}

.strt .tCard::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  width: 4px;
  height: 0;
  background: #CC27A1;
  transition: height .38s cubic-bezier(0.4, 0, 0.2, 1)
}

.strt .tCard:hover::after {
  height: 100%
}

.strt .tCard:hover {
  border-color: #cc27a152;
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.strt .tBefore {
  font-size: 13px;
  color: #8a7f7a;
  line-height: 1.4;
  letter-spacing: .01em;
  margin-bottom: 16px;
  padding-bottom: 16px;
  border-bottom: 1px solid #fff1dd14
}

.strt .tAfter {
  font-size: 16px;
  color: #e0d6cf;
  line-height: 1.6;
  letter-spacing: .01em;
  margin-bottom: 32px
}

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

.strt .tPortrait {
  width: 48px;
  height: 48px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  flex-shrink: 0;
  border: 2px solid #cc27a14d
}

.strt .tName {
  font-size: 16px;
  color: #f0e8e2;
  line-height: 1.4;
  letter-spacing: .01em
}

.strt .tRole {
  font-size: 13px;
  color: #7a7068;
  line-height: 1.4;
  letter-spacing: .01em
}

.strt .siteSec3 {
  background: linear-gradient(211deg, #126c2b2e 0%, #0d0d0f 60%);
  padding: 96px 32px;
  position: relative
}

.strt .sec3Inner {
  max-width: 1366px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 320px 1fr;
  gap: 64px;
  align-items: start
}

.strt .sec3Left {
  position: sticky;
  top: 32px
}

.strt .sec3H2 {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0e8e2;
  margin: 0 0 16px
}

.strt .sec3Desc {
  font-size: 16px;
  line-height: 1.6;
  color: #a89e98;
  letter-spacing: .01em;
  margin: 0
}

.strt .instrList {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.strt .instrItem {
  display: grid;
  grid-template-columns: 80px 1fr;
  gap: 16px;
  align-items: start;
  padding: 32px;
  background: #fff1dd08;
  border-radius: 4px;
  border: 1px solid #fff1dd0f;
  transition: background .32s ease-in-out
}

.strt .instrItem:hover {
  background: #cc27a10f
}

.strt .instrPortrait {
  width: 80px;
  height: 80px;
  border-radius: 50%;
  object-fit: cover;
  object-position: center;
  border: 2px solid #126c2b80
}

.strt .instrName {
  font-size: 21px;
  color: #f0e8e2;
  line-height: 1.4;
  letter-spacing: .01em;
  margin: 0 0 8px
}

.strt .instrCred {
  font-size: 13px;
  color: #126C2B;
  line-height: 1.4;
  letter-spacing: .02em;
  margin: 0 0 8px
}

.strt .instrBio {
  font-size: 16px;
  color: #9a9090;
  line-height: 1.6;
  letter-spacing: .01em;
  margin: 0
}

.strt .siteSec4 {
  padding: 0;
  position: relative
}

.strt .splitBg {
  background: linear-gradient(to bottom, #111014 50%, #0d0d0f 50%)
}

.strt .sec4Inner {
  max-width: 1366px;
  margin: 0 auto;
  padding: 64px 32px;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: center
}

.strt .sec4ImgWrap {
  position: relative;
  border-radius: 4px;
  overflow: hidden;
  box-shadow: 1px 10px 44px 0 #126c2b24
}

.strt .sec4ImgWrap img {
  width: 100%;
  height: 360px;
  object-fit: cover;
  object-position: center;
  display: block
}

.strt .sec4ImgBorder {
  position: absolute;
  inset: 8px;
  border: 2px solid #cc27a138;
  border-radius: 4px;
  pointer-events: none
}

.strt .sec4Text {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.strt .sec4H2 {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0e8e2;
  margin: 0
}

.strt .sec4Body {
  font-size: 16px;
  line-height: 1.6;
  color: #a89e98;
  letter-spacing: .01em;
  margin: 0
}

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

.strt .cStat {
  background: #126c2b1a;
  border-radius: 4px;
  padding: 16px;
  border: 1px solid #126c2b33;
  text-align: left
}

.strt .cStatNum {
  font-size: 38px;
  color: #126C2B;
  line-height: 1.15;
  letter-spacing: .01em;
  display: block
}

.strt .cStatLabel {
  font-size: 13px;
  color: #7a7068;
  line-height: 1.4;
  letter-spacing: .01em;
  display: block;
  margin-top: 4px
}

.strt .siteSec5 {
  background: #0f0f12;
  padding: 96px 32px
}

.strt .sec5Inner {
  max-width: 1366px;
  margin: 0 auto
}

.strt .sec5Head {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: end;
  margin-bottom: 64px
}

.strt .sec5H2 {
  font-size: 52px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0e8e2;
  margin: 0
}

.strt .sec5Intro {
  font-size: 16px;
  line-height: 1.6;
  color: #a89e98;
  letter-spacing: .01em;
  margin: 0
}

.strt .valueGrid {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 16px
}

.strt .vCard {
  background: #161519;
  border-radius: 4px;
  padding: 32px 16px;
  border: 1px solid #fff1dd0f;
  position: relative;
  overflow: hidden;
  transition: transform .28s ease-in-out, box-shadow .35s cubic-bezier(0.4, 0, 0.2, 1)
}

.strt .vCard:hover {
  transform: translateY(-4px);
  box-shadow: 1px 10px 44px 0 #cc27a124
}

.strt .vNum {
  font-size: 66px;
  color: #cc27a11f;
  line-height: 1.15;
  letter-spacing: .01em;
  position: absolute;
  top: 8px;
  right: 16px;
  pointer-events: none
}

.strt .vIcon {
  width: 32px;
  height: 32px;
  margin-bottom: 16px
}

.strt .vTitle {
  font-size: 16px;
  color: #f0e8e2;
  line-height: 1.4;
  letter-spacing: .01em;
  margin: 0 0 8px
}

.strt .vDesc {
  font-size: 13px;
  color: #7a7068;
  line-height: 1.6;
  letter-spacing: .01em;
  margin: 0
}

.strt .sec5ImgRow {
  margin-top: 64px;
  border-radius: 4px;
  overflow: hidden;
  position: relative
}

.strt .sec5ImgRow img {
  width: 100%;
  height: 280px;
  object-fit: cover;
  object-position: center;
  display: block
}

.strt .sec5ImgOverlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(211deg, #cc27a138 0%, transparent 50%);
  pointer-events: none
}

.strt .siteSec6 {
  background: #0d0d0f;
  padding: 96px 32px
}

.strt .sec6Inner {
  max-width: 1366px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 480px;
  gap: 64px;
  align-items: start
}

.strt .sec6H2 {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0e8e2;
  margin: 0 0 32px
}

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

.strt .gapList li {
  display: flex;
  flex-direction: row;
  align-items: flex-start;
  gap: 16px;
  font-size: 16px;
  line-height: 1.6;
  color: #a89e98;
  letter-spacing: .01em
}

.strt .gapNum {
  font-size: 21px;
  color: #CC27A1;
  line-height: 1.15;
  letter-spacing: .01em;
  flex-shrink: 0;
  min-width: 32px;
  text-align: right
}

.strt .sec6Right {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.strt .gapBig {
  font-size: 66px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #CC27A1;
  display: block
}

.strt .gapBigLabel {
  font-size: 21px;
  color: #f0e8e2;
  line-height: 1.4;
  letter-spacing: .01em;
  display: block;
  margin-top: 8px
}

.strt .gapNote {
  font-size: 13px;
  color: #5a5450;
  line-height: 1.6;
  letter-spacing: .01em
}

.strt .sec6ImgWrap {
  border-radius: 4px;
  overflow: hidden;
  position: relative;
  box-shadow: 1px 2px 6px 0 #cc27a114
}

.strt .sec6ImgWrap img {
  width: 100%;
  height: 240px;
  object-fit: cover;
  object-position: center;
  display: block
}

.strt .sec6ImgBorder {
  position: absolute;
  inset: 6px;
  border: 1px solid #126c2b4d;
  border-radius: 4px;
  pointer-events: none
}

.strt .siteSec7 {
  background: linear-gradient(211deg, #cc27a11a 0%, #111014 55%);
  padding: 96px 32px
}

.strt .sec7Inner {
  max-width: 1366px;
  margin: 0 auto;
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 64px;
  align-items: start
}

.strt .sec7H2 {
  font-size: 38px;
  line-height: 1.15;
  letter-spacing: .01em;
  color: #f0e8e2;
  margin: 0 0 32px
}

.strt .sec7Body {
  font-size: 16px;
  line-height: 1.6;
  color: #a89e98;
  letter-spacing: .01em;
  margin: 0 0 16px
}

.strt .sec7Right {
  display: flex;
  flex-direction: column;
  gap: 32px
}

.strt .hesiCard {
  background: #fff1dd08;
  border-radius: 4px;
  padding: 32px;
  border: 1px solid #fff1dd12;
  position: relative;
  overflow: hidden;
  transition: background .32s ease-in-out
}

.strt .hesiCard:hover {
  background: #cc27a112
}

.strt .hesiQ {
  font-size: 16px;
  color: #CC27A1;
  line-height: 1.4;
  letter-spacing: .01em;
  margin: 0 0 8px
}

.strt .hesiA {
  font-size: 16px;
  color: #a89e98;
  line-height: 1.6;
  letter-spacing: .01em;
  margin: 0
}

.strt .sec7Aside {
  display: flex;
  flex-direction: row;
  gap: 16px;
  align-items: flex-start
}

.strt .asideNote {
  font-size: 13px;
  color: #5a5450;
  line-height: 1.6;
  letter-spacing: .01em;
  border-left: 2px solid #126c2b66;
  padding-left: 16px
}

@media (max-width: 1024px) {
  .strt .titleWrap {
    grid-template-columns: 1fr
  }

  .strt .titleRight {
    display: none
  }

  .strt .titleLeft {
    padding: 64px 32px
  }

  .strt .sec3Inner {
    grid-template-columns: 1fr
  }

  .strt .sec3Left {
    position: static
  }

  .strt .sec4Inner {
    grid-template-columns: 1fr
  }

  .strt .sec5Head {
    grid-template-columns: 1fr
  }

  .strt .valueGrid {
    grid-template-columns: repeat(2, 1fr)
  }

  .strt .sec6Inner {
    grid-template-columns: 1fr
  }

  .strt .sec7Inner {
    grid-template-columns: 1fr
  }

  .strt .testimGrid {
    grid-template-columns: 1fr 1fr
  }
}

@media (max-width: 768px) {
  .strt .mainH1 {
    font-size: 38px
  }

  .strt .sec5H2 {
    font-size: 38px
  }

  .strt .gapBig {
    font-size: 52px
  }

  .strt .testimGrid {
    grid-template-columns: 1fr
  }

  .strt .valueGrid {
    grid-template-columns: 1fr
  }

  .strt .commStats {
    grid-template-columns: 1fr 1fr
  }

  .strt .instrItem {
    grid-template-columns: 1fr
  }

  .strt .titleLeft {
    padding: 64px 16px
  }

  .strt .siteSec2,
  .strt .siteSec3,
  .strt .siteSec5,
  .strt .siteSec6,
  .strt .siteSec7 {
    padding: 64px 16px
  }

  .strt .sec4Inner {
    padding: 64px 16px
  }
}

@media (max-width: 480px) {
  .strt .mainH1 {
    font-size: 28px
  }

  .strt .sec2H2,
  .strt .sec3H2,
  .strt .sec4H2,
  .strt .sec6H2,
  .strt .sec7H2 {
    font-size: 28px
  }

  .strt .commStats {
    grid-template-columns: 1fr
  }

  .strt .sec7Inner,
  .strt .sec6Inner {
    gap: 32px
  }
}