/* Main */

:root {
  --bg-body: #0b0e1e;
  --color-body: #fff;
  --content-width: 1122px;
  --font-size: 16px;
  --letter-spacing: -0.64px;
  --line-height: 100%;
  --2-font-family: "PT Mono", monospace;
}

* {
  outline: none;
  padding: 0;
  margin: 0;
}
*,
::after,
::before {
  box-sizing: border-box;
}

body {
  font-family: "IBM Plex Mono", monospace;
  background: var(--bg-body);
  color: var(--color-body);
  font-size: var(--font-size);
  line-height: var(--line-height);
  letter-spacing: var(--letter-spacing);
  font-weight: 400;
  overflow-x: hidden;
}
a {
  text-decoration: none;
  transition: all 0.3s;
}
errored_name {
  border: 1px solid red !important;
}

img {
  max-width: 100%;
  height: auto;
}

button {
  transition: all 0.3s;
}

input,
textarea {
  font-family: "IBM Plex Mono", monospace;
  transition: all 0.3s;
}

button {
  cursor: pointer;
}

.container {
  max-width: 1506px;
  margin: 0 auto;
}

.flex {
  display: flex;
}
.acenter {
  align-items: center;
}
.aend {
  align-items: flex-end;
}
.jbetween {
  justify-content: space-between;
}

.item--center {
  position: relative;
}
.item--center > * {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.item--cover {
  position: relative;
}
.item--cover > img {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: center;
}

.btn-black {
  display: inline-block;
  padding: 15px 25px;
  text-align: center;
  border-radius: 70px;
  background: #000;
  border: 1px solid #000;
  color: #fff;
  font-size: 20px;
  letter-spacing: -0.8px;
  max-width: 100%;
}
.btn-black._border {
  border-color: #fff;
  color: #fff;
  background: none;
}
.btn-black._white {
  border-color: #fff;
  background: #fff;
  color: #000;
}

.btn-black:hover {
  background: none;
  color: #fff;
  border-color: #fff;
}

.btn-black._border:hover {
  background: #fff;
  color: #000;
}

._in {
  padding: 75px 0;
}
._infull {
  padding: 150px 0;
}

._mono {
  font-family: "PT Mono", monospace;
  font-weight: 400;
}

/* Row */
.row {
  display: flex;
  flex-wrap: wrap;
  margin-left: -5px;
  margin-right: -5px;
}
.row__col {
  width: 25%;
  padding-left: 5px;
  padding-right: 5px;
}
.row__col._33 {
  width: 33.3333%;
}
.row__col._50 {
  width: 50%;
}
.row__col._66 {
  width: 66.6666%;
}
.row__col._100 {
  width: 100%;
}
.row__col._20 {
  width: 20%;
}

.block__header {
  display: flex;
  justify-content: space-between;
  margin-bottom: 100px;
}
.block__header-title {
  width: 1122px;
  max-width: 100%;
  font-size: 50px;
  font-family: "PT Mono", monospace;
  letter-spacing: -2px;
  line-height: 100%;
}
.block__header-title i {
  margin-left: 32%;
  font-style: normal;
}

.content {
  margin-left: auto;
  width: var(--content-width);
  max-width: 100%;
}

/* Header */
.header {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  padding: 25px 0;
}
.header .container {
  position: relative;
}
.header__logo {
  max-width: 386px;
  font-size: 20px;
  letter-spacing: -0.8px;
  color: #fff;
  text-align: justify;
  line-height: 100%;
  font-family: "PT Mono", monospace;
  font-weight: 400;
}

.header__logo_page {
  display: flex;
  align-items: center;
  position: relative;
  z-index: 15;
}
.header__logo_page p {
  font-size: 50px;
  margin-left: 20px;
  color: #fff;
}
.header__logo_page:hover {
  opacity: 0.5;
}

.header__icon {
  position: absolute;
  right: 0;
  top: 0;
}

/* menu */
.menu {
  position: fixed;
  left: 50%;
  transform: translate(-50%, 0);
  top: 25px;
  z-index: 999;
  padding: 5px;
  border-radius: 40px;
  border: 1px solid #fff;
  background: rgba(11, 14, 30, 0.95);
}
.menu__main {
  position: relative;
}
.menu__close {
  position: absolute;
  right: 0;
  padding-right: 20px;
  height: 100%;
  width: 100%;
  opacity: 0;
  z-index: -1;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  align-items: center;
  transition: all 0.3s;
}
.menu__catalog {
  display: flex;
  align-items: center;
  padding: 22px 21px;
  border-radius: 30px;
  background: #000;
  color: #fff;
  cursor: pointer;
}
.menu__catalog-title {
  margin: 0 10px 0 5px;
  font-size: 16px;
  letter-spacing: -0.64px;
}
.menu__catalog-icon span {
  display: block;
  margin-bottom: 4px;
  background: #fff;
  width: 15px;
  height: 1px;
}
.menu__catalog-icon span:last-child {
  margin-bottom: 0;
}

.menu__menu {
  padding: 5px;
  border-radius: 60px;
  background: #0b0e1e;
  display: flex;
  margin-left: 5px;
  transition: all 0.3s;
}
.menu__menu a {
  white-space: nowrap;
  padding: 17px 10px;
  border-radius: 30px;
  line-height: 105%;
  color: #fff;
  margin-right: 20px;
}
.menu__menu a:last-child {
  margin-right: 0;
}

.menu._active .menu__main {
  background: #000;
  border-radius: 30px;
}
.menu._active .menu__menu,
.menu._active .menu__callback {
  opacity: 0;
  z-index: -1;
}
.menu._active .menu__close {
  opacity: 1;
  z-index: 10;
  cursor: pointer;
}

.menu__callback {
  white-space: nowrap;
  padding: 21px 20px;
  background: #43d0ee;
  border-radius: 30px;
  line-height: 105%;
  letter-spacing: -0.64px;
  color: #000;
  margin-left: 5px;
  border: 1px solid #43d0ee;
}
.menu__callback:hover {
  background: #00c5ef;
  border-color: #fff;
  color: #fff;
}

.menu__open {
  display: none;
  padding: 25px;
  background: #0b0e1e;
  border-radius: 40px;
  margin-top: 5px;
  margin-left: -5px;
  margin-right: -5px;
  max-width: 549px;
}

.menu__open-title {
  color: #43d0ee;
  font-size: 12px;
  line-height: 105%;
  letter-spacing: -0.48px;
  margin-bottom: 20px;
}
.menu__open-title._close {
  margin-top: 20px;
  margin-bottom: 0;
}

.menu__list {
  font-size: 12px;
  line-height: 105%;
  letter-spacing: -0.48px;
}
.menu__list-title {
  margin-bottom: 10px;
}
.menu__list-title._close {
  margin-top: 10px;
  margin-bottom: 0;
}
.menu__list ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.menu__list ul li {
  opacity: 0.5;
  color: #fff;
  line-height: 105%;
  padding-left: 16px;
  position: relative;
  transition: all 0.3s;
}
.menu__list ul li:not(:last-child) {
  margin-bottom: 5px;
}
.menu__list ul li:hover {
  background: rgba(255, 255, 255, 0.3);
}
.menu__list ul li:before {
  content: "•";
  position: absolute;
  left: 0;
  top: 0;
  font-size: 14px;
}

.menu__open-item:not(:last-child) {
  padding-bottom: 22px;
  margin-bottom: 22px;
  border-bottom: 1px dashed rgba(67, 208, 238, 0.5);
}

.menu__links li:not(:last-child) {
  margin-bottom: 5px;
  line-height: 12px;
}
.menu__links a {
  display: inline-block;
  opacity: 0.5;
  color: #fff;
  font-size: 12px;
  line-height: 12px;
}
.menu__links ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.menu__links a:hover {
  background: rgba(255, 255, 255, 0.3);
}
.menu__links li:last-child a {
  margin-bottom: 0;
}
/* main */
.main {
  background: conic-gradient(
    from 180deg at 50% 50%,
    #00d2ff 0deg,
    #0b0e1e 360deg
  );
  overflow: hidden;
}
.main__body {
  /*padding: 545px 0 70px;*/
  padding: 500px 0 0;
}
.main .container {
  position: relative;
}
.main__icon {
  position: absolute;
  right: 0;
  top: 25px;
}
.main__title {
  font-size: 260px;
  line-height: 100%;
  letter-spacing: -10.8px;
  font-family: "PT Mono", sans-serif;
  font-weight: 400;
}
.main__pretitle {
  position: relative;
  width: 356px;
  max-width: 100%;
  margin-left: auto;
  margin-right: 15px;
  margin-bottom: 40px;
}
.main__pretitle > div {
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
}
.main__text {
  margin-left: 50px;
  position: relative;
  top: -80px;
}
.main__pretitle > svg {
  position: absolute;
  bottom: 0;
  left: 0;
}
.main._page .main__body {
  padding: 150px 0 5px;
}
.main._page .main__body .main__text {
  top: 0;
}
.main._page .main__title {
  margin-bottom: 50px;
  font-size: 150px;
  font-weight: 400;
}
.main._page .main__body .row {
  align-items: flex-end;
}

/* specialization */
.specialization._in {
  padding-top: 150px;
}
.specialization__content {
  width: 745px;
  max-width: 100%;
}
.specialization__item:not(:last-child) {
  margin-bottom: 50px;
}
.specialization__item-title {
  width: 343px;
  max-width: 100%;
}
.specialization__item-text {
  width: calc(100% - 343px);
  padding-left: 50px;
  opacity: 0.5;
}
.specialization__item-text ul {
  margin: 20px 0 10px;
  padding: 0 0 0 10px;
}
.specialization__item-text ul li:not(:last-child) {
  margin-bottom: 10px;
}
.specialization__item-text p {
  margin-left: -20px;
}
.specialization__item-link {
  display: none;
}

/* approach */
.approach {
  padding-bottom: 150px;
}

.approach__item-full {
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.approach__item-full p {
  opacity: 1;
  margin-bottom: -30px;
}
.approach__item-number {
  font-size: 150px;
  line-height: 90%;
  margin-bottom: 30px;
  font-family: var(--2-font-family);
  font-weight: 400;
}
.approach__item p {
  opacity: 0.5;
}
.about__approach .approach__item p {
  opacity: 1;
}

/* About */
.amain {
  padding: 350px 0 150px;
  background: conic-gradient(
    from 180deg at 50% 50%,
    #00d2ff 0deg,
    #0b0e1e 360deg
  );
  overflow: hidden;
}
.amain__title {
  max-width: 678px;
  font-size: 150px;
  font-family: "PT Mono", sans-serif;
  font-weight: 400;
  line-height: 90%;
  letter-spacing: -6px;
  margin-bottom: 150px;
  position: relative;
}
.amain__title > svg {
  position: absolute;
  right: -60px;
  bottom: calc(100% + 50px);
}
.amain__image {
  margin-left: -5%;
  margin-top: 150px;
}
.amain__text {
  font-size: 50px;
  line-height: 100%;
  letter-spacing: -2px;
  font-weight: 400;
  padding-left: 50px;
  margin-bottom: 50px;
  position: relative;
}
.amain__text > svg {
  position: absolute;
  bottom: calc(100% + 189px);
  left: 50px;
}

.amain__contacts {
  padding-left: 50px;
  justify-content: space-between;
}
.amain__contacts .contactus__item {
  margin-right: 0 !important;
}
.amain__contacts .contactus__item .btn-black {
  width: 279px;
}
.amain__contacts .contactus__title {
  opacity: 0.5;
}
.amain__contacts .contactus__item a:not(.btn-black) {
  color: #fff;
}

/* contactus */
.contactus {
  padding: 150px 0;
  background: #efefef;
  color: #000;
}
.contactus__item:not(:last-child) {
  margin-right: 65px;
}
.contactus__item .btn-black {
  width: 298px;
}
.contactus__title {
  margin-bottom: 20px;
}
.contactus__item._or .contactus__title {
  margin-bottom: 0;
  margin-top: 53px;
}
.contactus__item a:not(.btn-black) {
  display: inline-block;
  font-size: 40px;
  letter-spacing: -1.6px;
  color: #000;
  margin-top: 5px;
  line-height: 100%;
}
.contactus__item a:not(.btn-black):hover {
  background: #000;
  color: #fff;
}

.contactus .contactus__item a.btn-black:hover {
  border-color: #000;
  color: #000;
}

/* projects */
.projects {
  padding-top: 150px;
}
.projects__item {
  display: block;
  padding-top: 100%;
  margin-bottom: 20px;
}
.projects__button {
  width: 100%;
  padding: 18px 0;
}

/* software */
.software-content {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
.software-description {
  font-family: IBM Plex Mono;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 105%; /* 16.8px */
  letter-spacing: -0.64px;
}
.software-col {
  display: flex;
  flex-direction: column;
  gap: 15px;
}

/* partners */
.partners {
  padding-bottom: 150px;
}
.partners .block__header {
  margin-bottom: 50px;
}
.partners__item {
  height: 245px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  position: relative;
}
.partners__item:after {
  content: "";
  width: 1px;
  height: 95%;
  background: #fff;
  position: absolute;
  right: -6px;
  top: 50%;
  transform: translate(0, -50%);
}
.partners__item p {
  font-size: 50px;
  line-height: 100%;
}
.partners .row__col:first-child .partners__item:before {
  content: "";
  width: 1px;
  height: 95%;
  background: #fff;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translate(0, -50%);
}
.partners .row__col:last-child .partners__item:after {
  right: 0;
}

/* footer */
.footer {
  padding: 50px 0 25px;
  background: conic-gradient(
    from 180deg at 50% 50%,
    #00d2ff 0deg,
    #0b0e1e 360deg
  );
}

/* Brif */
.brif__text {
  max-width: 216px;
  color: #8c8c8c;
  line-height: 105%;
  text-align: justify;
}
.brif__content:not(:last-child) {
  margin-bottom: 100px;
}

.brif__form {
  width: 745px;
  max-width: 100%;
}

/* form__row */
.form__row {
  position: relative;
  margin-bottom: 20px;
}
.form__row:last-child {
  margin-bottom: 0;
}
.form__row label {
  display: flex;
  align-items: center;
  font-weight: 400;
  margin-bottom: 10px;
}
.form__row input {
  font-size: 20px;
  color: #fff;
  background: none;
  border: 1px solid #8c8c8c;
  padding: 0 20px;
  width: 100%;
  height: 54px;
}
.form__row textarea {
  padding: 20px;
  border: 1px solid #8c8c8c;
  font-size: 20px;
  color: #fff;
  background: none;
  width: 100%;
  height: 241px;
  resize: none;
}
.form__row-error {
  margin-left: 13px;
  color: #ff0909;
}

.form__checkboxes {
  margin-bottom: 100px;
}
.form__checkboxes-item {
  position: relative;
  margin-bottom: 20px;
}
.form__checkboxes-item:last-child {
  margin-bottom: 0;
}
.form__checkboxes-item input {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  z-index: 10;
  cursor: pointer;
}
.form__checkboxes-item span {
  position: absolute;
  left: 0;
  top: 0;
  width: 16px;
  height: 16px;
  border: 1px solid #fff;
  transition: all 0.3s;
}
.form__checkboxes-item span:after {
  content: "";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  width: 12px;
  height: 12px;
  background: url("../img/icon-check.svg") center center no-repeat;
  transition: all 0.3s;
}
.form__checkboxes-item input:checked + span {
  background: #fff;
}
.form__checkboxes-item input:checked + span:after {
  opacity: 1;
}
.form__checkboxes-item label {
  display: block;
  padding-left: 26px;
}
.form__checkboxes-item a {
  color: #fff;
}
.form__file {
  margin: 50px 0;
  position: relative;
  display: flex;
  align-items: center;
}
.form__file input {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  margin: 0;
  opacity: 0;
  z-index: 10;
}
.form__file label {
  margin-left: 10px;
  font-weight: 400;
}
.form__button {
  width: 745px;
}

/* contacts */
.contacts {
  padding: 350px 0 0;
}
.contacts__title {
  font-size: 150px;
  line-height: 90%;
  letter-spacing: -6px;
  margin-bottom: 150px;
  font-weight: 400;
  font-family: var(--2-font-family);
}
.contacts .contactus__title {
  color: #8c8c8c;
}
.contacts .contactus__item a:not(.btn-black) {
  color: #fff;
}
.contacts .contactus__item:not(:last-child) {
  margin-right: 57px;
}
.contacts__address {
  font-size: 20px;
  letter-spacing: -0.8px;
  line-height: 100%;
  margin-bottom: 50px;
}
.contacts__time {
  color: #8c8c8c;
  line-height: 105%;
  letter-spacing: -0.64px;
}

.contacts__block:last-child {
  margin-top: 150px;
}

.contacts__map {
  height: 600px;
  background: #ebebeb;
  margin-bottom: 150px;
  margin-top: 48px;
  position: relative;
}
.contacts__map iframe {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  filter: grayscale(100%) invert(92%) contrast(83%);
}
.contacts__map svg {
  position: absolute;
  top: 47%;
  left: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}

/* policy */
.policy {
  padding: 350px 0 77px;
}
.policy__title {
  font-size: 150px;
  line-height: 90%;
  letter-spacing: -6px;
  margin-bottom: 50px;
  font-weight: 400;
  font-family: var(--2-font-family);
}
.policy__text {
  font-size: 50px;
  line-height: 100%;
  letter-spacing: -2.5px;
  margin-bottom: 100px;
}
.policy__text i {
  font-style: normal;
  margin-left: 32%;
}
.policy__block {
  padding: 100px 0 50px;
}
.policy__block p {
  line-height: 105%;
  letter-spacing: -0.64px;
  margin-bottom: 50px;
}
.policy__block-short {
  max-width: 745px;
}

.policy__item {
  display: flex;
}
.policy__item.jbetween p {
  max-width: 368px;
}
.policy__row + .policy__row {
  margin-top: 100px;
}
.policy__item span {
  min-width: 46px;
  margin-right: 10px;
}

.policy__block-3 {
  padding-bottom: 100px;
}
.policy__block-3 p {
  margin-bottom: 20px;
}

.policy__checkbox {
  padding: 0;
}
.policy__checkbox .content {
  padding-left: 56px;
}

/* Footer */
.footer {
  overflow: hidden;
  position: relative;
}
.footer_icon_text {
  position: absolute;
  bottom: 0;
  right: 0;
}
.footer__quotes {
  margin-bottom: 20px;
  display: block;
}
.footer__quotes._last {
  margin-top: 20px;
  margin-bottom: 0;
}

.footer__address p {
  max-width: 500px;
  opacity: 0.5;
}

.footer__menu {
  margin-left: 380px;
}
.footer__menu ul {
  list-style: none;
  padding: 0;
  margin: 0;
}
.footer__menu ul li:not(:last-child) {
  margin-bottom: 20px;
}
.footer__menu ul li a {
  display: inline-block;
  opacity: 0.5;
  color: #fff;
}
.footer__menu ul li a._active,
.footer__menu ul li a:hover {
  background: rgba(255, 255, 255, 0.3);
  opacity: 1;
}

.footer__icon {
  margin-top: 170px;
  margin-bottom: 20px;
  position: relative;
}
.footer__icon-text {
  position: absolute;
  bottom: 100%;
  left: 0;
}
.footer__copyright-text {
  margin-top: 10px;
  opacity: 0.5;
  color: #fff;
}
.footer__copyright-text a {
  color: #fff;
}

.footer__mail {
  display: flex;
  align-items: center;
  color: #fff;
  font-size: 50px;
  line-height: 100%;
  letter-spacing: -2px;
}
.footer__mail span:last-child {
  margin-left: 40px;
}

.footer__links {
  margin-top: 326px;
  display: flex;
  align-items: flex-end;
  justify-content: space-between;
  position: relative;
}

.footer__policy a {
  display: block;
  margin-bottom: 15px;
  opacity: 0.5;
  color: #fff;
}
.footer__policy a:hover {
  opacity: 1;
}
.footer__policy a:last-child {
  margin-bottom: 0;
}
.footer__policy .footer__quotes {
  margin-bottom: 15px;
}
.footer__policy .footer__quotes._last {
  margin-top: 15px;
}
.footer__socials {
  display: flex;
  align-items: center;
  padding-bottom: 10px;
  position: relative;
  z-index: 10;
}
.footer__socials a:not(:last-child) {
  margin-right: 20px;
}
.footer__socials a path {
  transition: all 0.3s;
}
.footer__socials a:hover path {
  fill: none;
  stroke: #fff;
}
.footer__rules {
  margin-top: 68px;
  color: #747474;
  text-align: right;
}

.footer__links-svg {
  position: absolute;
  left: 0;
  bottom: 60%;
  opacity: 0.7;
  mix-blend-mode: overlay;
}

/* errorpage */
.errorpage {
  padding: 150px 0 300px;
}
.errorpage .block__header-breadcrumb {
  margin-bottom: 50px;
}
.errorpage__title {
  font-family: "PT Mono", sans-serif;
  font-size: 430px;
  line-height: 100%;
  letter-spacing: -17.2px;
  margin-bottom: 50px;
  font-weight: 400;
}
.errorpage__subtitle {
  margin-bottom: 50px;
  font-size: 50px;
  line-height: 100%;
  letter-spacing: -2.5px;
}
.errorpage__subtitle i {
  margin-left: 32%;
  font-style: normal;
}
.errorpage__text {
  max-width: 368px;
  opacity: 0.5;
  margin-bottom: 25px;
}
.errorpage__button {
  width: 300px;
  text-align: center;
}

.approach__item p._close,
.footer__mail._mobile,
.footer__policy._mobile,
.footer__menu._mobile {
  display: none;
}

/* Call Center */
.call-center {
  background: conic-gradient(
    from 180deg at 50% 60%,
    #00d2ff 0deg,
    #0b0e1e 360deg
  );
  overflow: hidden;
}
.call-center__text {
  position: absolute;
  top: 86px;
  right: 50px;
}
.call-center__body {
  padding: 355px 0 100px;
}
.call-center__title {
  font-family: PT Mono;
  font-size: 150px;
  font-style: normal;
  font-weight: 400;
  line-height: 90%; /* 135px */
  letter-spacing: -6px;
}
.call-center__subtitle {
  font-family: IBM Plex Mono;
  font-size: 50px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 50px */
  letter-spacing: -2px;
}
.call-center__subtitle br {
  display: none;
}
.call-center-section {
  width: 100%;
  padding: 150px 50px 150px 430px;
  position: relative;
  display: flex;
  flex-direction: column;
  gap: 100px;
}
.call-center-h3 {
  max-width: 740px;
  margin-bottom: 50px;
  font-family: IBM Plex Mono;
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 30px */
  letter-spacing: -1.2px;
}
.call-center-info {
  font-family: IBM Plex Mono;
  font-size: 16px;
  font-style: normal;
  font-weight: 700;
  line-height: 105%; /* 16.8px */
  letter-spacing: -0.64px;
}
.call-center-description {
  font-family: IBM Plex Mono;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 105%; /* 16.8px */
  letter-spacing: -0.64px;
}
.call-center-item {
  font-family: IBM Plex Mono;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 105%;
  letter-spacing: -0.64px;
}
.call-center-btn {
  white-space: nowrap;
  display: inline-block;
  max-width: fit-content;
  padding: 15px 70px;
  text-align: center;
  border-radius: 70px;
  background: #000;
  border: 1px solid #000;
  color: #fff;
  font-size: 20px;
  letter-spacing: -0.8px;
}
.call-center-arrow {
  top: -210px;
  left: 30%;
}
.call-center-btn.call-center-btn_white {
  background-color: #fff;
  color: #000;
  border: 1px solid #fff;
}
.call-center-btn.call-center-btn_dark {
  background-color: var(--bg-body);
  color: #fff;
  border: 1px solid #fff;
}
.call-center-btn:hover {
  background-color: #fff;
  color: #000;
}
.call-center-btn.call-center-btn_white:hover {
  background-color: #000;
  color: #fff;
}
.call-center-btn.call-center-btn_dark:hover {
  background-color: #fff;
  color: var(--bg-body);
}
.call-center-row {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
  gap: 5px;
}
.call-center-col {
  display: flex;
  flex-direction: column;
  gap: 50px;
}
.call-center-flex-col {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.call-center-item__title {
  margin-bottom: 10px;
}
li.call-center-item {
  padding-left: 50px;
}
li.call-center-item::marker {
  content: "*";
  right: -10px;
}
ul.call-center-col {
  list-style: none;
}

.half-transparent {
  opacity: 0.5;
}
.gap50 {
  gap: 50px;
}
.gap30 {
  gap: 30px;
}
.gap20 {
  gap: 20px;
}
.gap10 {
  gap: 10px;
}
.mt100 {
  margin-top: 100px;
}
.mb50 {
  margin-bottom: 50px;
}
.word-nowrap {
  white-space: nowrap;
}
.show-more-btn {
  display: none;
  width: 340px;
  padding: 20px 70px;
  gap: 10px;
  border-radius: 70px;
  border: 1px solid #fff;
  text-align: center;
  margin: 0 auto;
  margin-bottom: 50px;
}

/* guide */
.guide__title {
  font-family: PT Mono;
  font-size: 150px;
  font-style: normal;
  font-weight: 400;
  line-height: 90%; /* 135px */
  letter-spacing: -6px;
  padding: 132px 160px 0px 430px;
}
.guide__breadcrumb {
  position: absolute;
  top: 160px;
  left: 50px;
}
.guide-breadcrumb__column {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.guide-breadcrumb__row {
  color: #fff;
  font-family: IBM Plex Mono;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 105%; /* 16.8px */
  letter-spacing: -0.64px;
  opacity: 0.5;
}
.guide-breadcrumb__row:first-child,
.guide-breadcrumb__row:last-child {
  opacity: 1;
  line-height: 100%; /* 16px */
}

/* history */
.history {
  background-color: #000;
}
.history-title {
  margin-bottom: 50px;
  font-family: IBM Plex Mono;
  font-size: 50px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 50px */
  letter-spacing: -2px;
}
.history-item {
  display: flex;
  flex-direction: row;
  gap: 10px;
}
.history-item__list {
  padding-left: 30px;
}

/* working */
.working {
  background-color: #fff;
  color: #000;
}
.working-title {
  margin-bottom: 50px;
  font-family: IBM Plex Mono;
  font-size: 50px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 50px */
  letter-spacing: -2px;
}
.working-subtitle {
  font-family: IBM Plex Mono;
  font-size: 30px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 30px */
  letter-spacing: -1.2px;
}
.working-container {
  max-width: 745px;
}
.working-agreement {
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.working a {
  font-family: IBM Plex Mono;
  font-size: 16px;
  font-style: normal;
  font-weight: 400;
  line-height: 105%; /* 16.8px */
  letter-spacing: -0.64px;
}
.working-settings {
  max-width: 365px;
  display: flex;
  flex-direction: column;
  gap: 20px;
}
.working-settings__links {
  display: flex;
  flex-direction: column;
  gap: 10px;
}
.working-row {
  display: grid;
  grid-template-columns: 1fr 1fr;
}

/* tariff */
.tariff {
  background-color: #fff;
  color: #000;
}

/* contacts */
.contacts-content {
  display: flex;
  flex-direction: column;
  gap: 100px;
}
.contacts-title {
  color: #fff;
  font-family: IBM Plex Mono;
  font-size: 40px;
  font-style: normal;
  font-weight: 400;
  line-height: 100%; /* 40px */
  letter-spacing: -1.6px;
}
.contacts-row {
  display: flex;
  flex-direction: row;
  gap: 60px;
  align-items: center;
}

@media screen and (min-width: 1600px) {
  .amain__image {
    position: absolute;
    left: 0;
    top: 900px;
    margin-left: 0;
    margin-top: 0;
  }
}
@media screen and (max-width: 1450px) {
  .call-center-section {
    padding-left: 300px;
  }
  .guide__title {
    padding-left: 300px;
    font-size: 120px;
  }
  .word-nowrap {
    white-space: normal;
  }
}
@media screen and (max-width: 1441px) {
  .container {
    padding-left: 15px;
    padding-right: 15px;
    width: 100%;
  }

  .main__title {
    font-size: 220px;
  }
  .main__pretitle {
    margin-top: 50px;
  }
}

@media screen and (max-width: 1367px) {
  .partners__item p {
    font-size: 40px;
  }
}

@media screen and (max-width: 1281px) {
  .partners__item p {
    font-size: 40px;
  }

  .header__logo {
    max-width: 305px;
  }

  .policy__block {
    flex-wrap: wrap;
  }
  .policy__block .block__header-breadcrumb {
    width: 100%;
    margin-bottom: 50px;
  }
  .policy__block .content {
    width: 100%;
  }

  .contacts__block .block__header-breadcrumb {
    min-width: 250px;
  }

  .amain__text {
    font-size: 30px;
  }
  .amain__contacts {
    flex-wrap: wrap;
    justify-content: flex-start;
  }
  .amain__contacts .contactus__item {
    margin-bottom: 25px;
    width: 100%;
  }
  .amain__contacts .contactus__item:last-child {
    margin-bottom: 0;
  }
  .amain__contacts .contactus__item._or .contactus__title {
    margin-top: 0;
  }

  .partners__item.item--center > * {
    left: 0;
    width: 100%;
    text-align: center;
    transform: translate(0, -50%);
  }

  .about__approach > .flex {
    flex-wrap: wrap;
  }
  .about__approach .block__header-breadcrumb {
    margin-bottom: 50px;
  }

  .menu__menu a {
    margin-right: 10px;
  }
  .menu__callback {
    padding: 21px 15px;
  }
  .menu__catalog {
    padding: 22px 19px;
  }

  .policy._users .policy__title {
    font-size: 120px;
  }
}
@media screen and (max-width: 1200px) {
  .call-center__title {
    font-size: 120px;
  }
  .call-center-section {
    padding-left: 200px;
  }
  .guide__title {
    font-size: 100px;
    padding-left: 200px;
  }
  .guide__breadcrumb {
    display: none;
  }
}
@media screen and (max-width: 1025px) {
  .header__logo {
    font-size: 16px;
    max-width: 220px;
    text-align: left;
  }

  .menu {
    min-width: 527px;
  }

  .block__header-title {
    font-size: 36px;
  }

  .main__body {
    padding: 300px 0 70px;
  }
  .main__icon {
    display: none;
  }
  .main__title {
    font-size: 165px;
  }

  .block__header {
    flex-direction: column;
  }
  .block__header-breadcrumb {
    margin-bottom: 15px;
  }

  .block__header .block__header-breadcrumb {
    margin-bottom: 0;
  }

  .footer__copyright-text br {
    display: none;
  }

  .footer__mail {
    font-size: 35px;
  }

  .brif__content {
    flex-wrap: wrap;
  }

  .header__icon {
    width: 220px;
    height: auto;
  }
  .contacts-row {
    gap: 40px;
  }
}

@media screen and (max-width: 992px) {
  .menu {
    top: auto;
    bottom: 35px;
  }
  .menu._active {
    border-color: rgba(0, 0, 0, 0);
    background: none;
  }

  .menu__main {
    position: relative;
    z-index: 10;
  }

  .menu__open {
    position: absolute;
    bottom: 0;
    left: 0;
    padding-bottom: 80px;
    margin-left: 0;
    margin-right: 0;
    border: 1px solid #fff;
  }

  .main__title {
    font-size: 130px;
  }

  .main__text {
    position: absolute;
    top: auto;
    bottom: 40px;
  }

  .header__logo {
    max-width: 386px;
    text-align: justify;
    font-size: 20px;
  }

  .partners__item p {
    font-size: 24px;
  }
  .partners__item {
    padding-top: 100%;
    height: auto;
  }

  .footer__mail {
    font-size: 24px;
  }
  .footer__menu {
    margin-left: 50%;
  }

  .approach__item-number {
    font-size: 100px;
  }

  .header__icon {
    display: none;
  }

  .contacts__block {
    flex-wrap: wrap;
  }
  .contacts__block .block__header-breadcrumb {
    margin-bottom: 50px;
  }

  .about__approach > .flex {
    flex-wrap: wrap;
  }
  .about__approach .block__header-breadcrumb {
    margin-bottom: 50px;
  }

  .footer {
    padding-bottom: 120px;
  }

  .policy._users .policy__title {
    font-size: 70px;
  }
}
@media screen and (max-width: 940px) {
  .row__col._50 {
    padding-left: 0;
    padding-right: 0;
  }
  li.call-center-item {
    padding-left: 20px;
  }
  .contacts-row {
    gap: 30px;
  }
  .gap30 {
    gap: 10px;
  }
  .call-center__title {
    font-size: 70px;
    margin-bottom: 50px;
  }
  .call-center__subtitle {
    font-size: 40px;
    line-height: 110%;
  }
  .call-center-section {
    padding-left: 0px;
    padding-right: 0px;
    width: 80vw;
    margin: 0 auto;
  }
  .guide__title {
    font-size: 100px;
    width: 80vw;
    padding-left: 0px;
    padding-right: 0px;
    margin: 0 auto;
  }
  .history,
  .working,
  .tariff {
    width: 100%;
    padding: 150px 5vw;
  }
}
@media screen and (max-width: 767px) {
  .container {
    padding-left: 10px;
    padding-right: 10px;
  }

  .main__body .row__col._50 {
    width: 100%;
  }

  .main__body {
    padding: 180px 0 163px;
  }
  .main__text {
    right: -135%;
    bottom: 25%;
  }
  .main__pretitle div > svg {
    width: 145px;
    height: 145px;
  }

  .specialization__item {
    flex-wrap: wrap;
  }
  .specialization__item-text {
    width: 100%;
    padding-left: 20px;
  }

  .block__header-breadcrumb {
    margin-bottom: 50px !important;
  }
  .block__header {
    margin-bottom: 50px;
  }
  .block__header-title {
    font-size: 26px;
    text-align: justify;
  }

  .approach .row__col._33 {
    width: 100%;
  }

  .partners .block__header {
    margin-bottom: 0;
  }

  .menu {
    width: calc(100% - 20px);
    min-width: auto;
  }
  .menu__main {
    justify-content: space-between;
  }
  .menu__menu {
    display: none;
  }

  ._in {
    padding: 50px 0;
  }

  .specialization._in {
    padding-top: 50px;
  }

  .approach {
    padding-top: 50px;
  }
  .approach__item {
    margin-bottom: 25px;
  }
  .approach__item p._close {
    display: block;
    opacity: 1;
    margin-top: 25px;
  }
  .approach__item-full {
    max-width: 180px;
  }
  .approach__item-full p {
    opacity: 1;
    margin-bottom: 0;
  }
  .approach__item-full p:last-child {
    display: none;
  }
  .approach__item-number {
    font-size: 150px;
    margin-bottom: 25px;
    line-height: 90%;
    letter-spacing: -6px;
  }

  .contactus {
    padding: 50px 0;
  }
  .contactus .block__header-title br {
    display: none;
  }
  .contactus .content {
    flex-wrap: wrap;
  }
  .contactus__item .btn-black {
    width: 100% !important;
  }
  .contactus__item {
    width: 100%;
    margin-bottom: 25px;
    margin-right: 0 !important;
  }
  .contactus__item:last-child {
    margin-bottom: 0;
  }
  .contactus__item._or .contactus__title {
    margin-top: 0;
  }

  .projects .row__col._50 {
    width: 100%;
  }

  .partners .row__col {
    width: 50%;
  }

  .partners .row__col:nth-child(2n + 2) .partners__item:after {
    right: 0;
  }
  .partners .row__col:nth-child(2n + 3) .partners__item:before {
    content: "";
    width: 1px;
    height: 95%;
    background: #fff;
    position: absolute;
    left: 0;
    top: 50%;
    transform: translate(0, -50%);
  }

  .header__logo_page svg {
    width: 13px;
    height: 13px;
  }
  .header__logo_page p {
    font-size: 16px;
    margin-left: 5px;
  }

  .main._page {
    background: conic-gradient(
      from 180deg at 50% 62.5%,
      #00d2ff 0deg,
      #0b0e1e 360deg
    );
  }
  .main._page .main__title {
    font-size: 70px;
    letter-spacing: -2.8px;
    margin-bottom: 0;
  }
  ._brif .main__pretitle > svg {
    width: 180px;
    height: 180px;
    bottom: 10px;
    left: 50%;
    transform: translate(-50%, 0);
  }

  .main._page .main__body .main__text {
    top: 20px;
  }

  .main._page .main__pretitle {
    margin: 0;
  }
  .main._page .main__body {
    padding: 126px 0 20px;
  }

  .amain__title > svg {
    bottom: calc(100% - 230px);
  }

  ._infull {
    padding: 50px 0;
  }
  .block__header-title br {
    display: none;
  }

  .brif__text {
    max-width: 100%;
    margin-bottom: 50px;
  }
  .brif__content:not(:last-child) {
    margin-bottom: 50px;
  }
  .form__checkboxes {
    margin-bottom: 50px;
  }
  .form__file {
    margin: 25px 0 50px;
  }
  .form__button {
    width: 100%;
    margin-top: 5px;
  }

  .header__icon {
    display: none;
  }

  .errorpage {
    padding: 90px 0 244px;
  }
  .errorpage .block__header-breadcrumb {
    margin-bottom: 25px;
  }
  .errorpage__title {
    font-size: 120px;
    letter-spacing: -4.8px;
    margin-bottom: 25px;
  }
  .errorpage__subtitle {
    font-size: 26px;
  }
  .errorpage__text {
    max-width: 164px;
    font-size: 12px;
    line-height: 105%;
  }
  .errorpage__button {
    width: 100%;
  }

  .policy {
    padding: 126px 0 50px;
  }
  .policy__title {
    font-size: 70px;
    margin-bottom: 25px;
  }
  .policy__text {
    font-size: 26px;
    margin-bottom: 50px;
  }
  .policy__text br {
    display: none;
  }
  .policy__block {
    padding: 50px 0 25px;
  }
  .policy__block .block__header-breadcrumb {
    margin-bottom: 25px;
  }
  .policy__block p {
    margin-bottom: 25px;
  }
  .policy__block .row__col {
    width: 100%;
  }
  .policy__row + .policy__row {
    margin-top: 0;
  }
  .policy__checkbox {
    padding: 0;
  }
  .policy__checkbox .content {
    padding-left: 0;
  }

  .contacts {
    padding: 126px 0 0;
  }
  .contacts__title {
    font-size: 70px;
    margin-bottom: 125px;
  }
  .contacts__block .content {
    flex-wrap: wrap;
  }
  .contacts .contactus__title {
    color: #fff;
  }
  .contacts__map {
    margin-top: 25px;
    height: 360px;
    margin-bottom: 50px;
  }

  .amain {
    padding: 80px 0 50px;
    background: conic-gradient(
      from 180deg at 50% 95.9%,
      #00d2ff 0deg,
      #0b0e1e 360deg
    );
  }
  .amain__title {
    font-size: 70px;
    margin-bottom: 50px;
  }
  .amain .row__col {
    width: 100%;
  }
  .amain__image {
    display: none;
  }
  .amain__text {
    padding-left: 0;
    font-size: 26px;
    text-align: justify;
    line-height: 100%; /* 26px */
    letter-spacing: -1.3px;
    margin-bottom: 50px;
  }
  .amain__contacts {
    padding-left: 0;
    text-align: center;
  }
  .amain__contacts .contactus__title {
    opacity: 1;
  }

  .amain__text > svg {
    bottom: calc(100% - 120px);
    left: 45%;
  }

  .partners .block__header-breadcrumb {
    margin-bottom: 0;
  }

  .footer__mail {
    display: none;
  }
  .footer__mail._mobile {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    font-size: 40px;
    margin-bottom: 35px;
  }
  .footer__mail span:last-child {
    margin-left: 0;
    margin-top: 15px;
  }
  .footer_icon_text {
    display: none;
  }
  .footer__icon-text {
    left: 50%;
    top: auto;
    bottom: 200px;
  }

  .footer__policy {
    display: none;
  }
  .footer__policy._mobile {
    display: block;
    margin-bottom: 50px;
  }

  .footer__menu {
    display: none;
  }
  .footer__menu._mobile {
    display: block;
    margin-left: 0;
    margin-bottom: 108px;
  }

  .footer__links {
    flex-direction: column;
    margin-top: 400px;
  }

  .footer__copyright-text {
    font-size: 12px;
  }

  .footer__rules {
    margin-top: 50px;
    font-size: 12px;
  }

  .menu__open-item .row__col {
    width: 100%;
    margin-bottom: 10px;
  }
  .menu__open-item:not(:last-child):last-child {
    margin-bottom: 0;
  }
  .menu__list ul li a br {
    display: none;
  }
  .menu__open-item:not(:last-child) {
    padding-bottom: 10px;
    margin-bottom: 10px;
  }

  .errorpage__subtitle {
    padding-right: 20px;
  }
  .errorpage__subtitle i {
    margin-left: 13%;
  }

  .block__header-title i {
    margin-left: 13%;
  }

  .main {
    background: conic-gradient(
      from 180deg at 50% 50%,
      #00d2ff 0deg,
      #0b0e1e 360deg
    );
  }
  .main__title {
    font-size: 120px;
    line-height: 90%;
    letter-spacing: -4.8px;
  }

  .menu__open-scroll {
    overflow-y: auto;
    overflow-x: hidden;
  }

  .menu {
    bottom: 10px;
  }
  .menu__open-title {
    margin-bottom: 10px;
  }
  .menu__open-title._close {
    margin-top: 10px;
  }

  .specialization__item-link {
    display: block;
    margin: 25px 0 10px;
    color: #fff;
  }
  .specialization__item-link span {
    opacity: 0.5;
  }

  .footer__links-svg {
    position: absolute;
    left: -35px;
    bottom: 100%;
    transform: rotate(-90deg);
  }

  .form__checkboxes-item label {
    padding-left: 53px;
  }
  .form__checkboxes-item span {
    width: 28px;
    height: 28px;
    top: 1px;
  }
  .policy__checkbox .block__header-breadcrumb {
    margin: 0 !important;
  }

  .menu__catalog {
    justify-content: center;
  }
  .menu__callback {
    text-align: center;
  }
  .menu__catalog,
  .menu__callback {
    width: calc(50% - 2.5px);
  }

  .main:not(._page) {
    position: relative;
    background: none;
    overflow: hidden;
  }
  .main:not(._page):after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 1140px;
    background: conic-gradient(
      from 180deg at 50% 50%,
      #00d2ff 0deg,
      #0b0e1e 360deg
    );
    z-index: -1;
  }

  .policy._users .policy__title {
    font-size: 40px;
  }

  .call-center-section,
  .contacts,
  .faq,
  .history,
  .working,
  .tariff {
    padding-left: 10px;
    padding-right: 10px;
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .guide__title {
    font-size: 80px;
    width: 80vw;
    padding-left: 0px;
    padding-right: 0px;
    padding-top: 50px;
    margin: 0 auto;
  }
  .contacts-row {
    display: flex;
    flex-direction: column;
    align-items: start;
    gap: 25px;
  }
  .call-center-col {
    gap: 25px;
  }
  .contacts-title {
    font-size: 36px;
  }
  .mb50 {
    margin-bottom: 0px;
  }
  .call-center-info {
    flex-direction: column;
  }
  .call-center__subtitle {
    font-size: 30px;
  }
  .call-center__subtitle br {
    display: inline;
  }
  .call-center__body {
    padding-top: 50px;
    padding-bottom: 50px;
  }
  .call-center__text {
    top: 30px;
    left: 200px;
  }
  .row__col._50 {
    width: 100%;
  }
  .call-center {
    background: conic-gradient(
      from 180deg at 50% 80%,
      #00d2ff 0deg,
      #0b0e1e 360deg
    );
    overflow: hidden;
  }
  .guide-rows {
    display: flex;
    flex-direction: column;
    gap: 25px;
  }
  .call-center-row {
    display: flex;
    flex-direction: column;
    gap: 25px;
  }
  .working-row {
    display: flex;
    flex-direction: column;
    gap: 25px;
  }
  .call-center-section {
    gap: 50px;
  }
  .call-center-h3 {
    margin-bottom: 50px;
  }
  .history-title {
    margin-bottom: 0;
    font-size: 30px;
  }
  .working-title {
    font-size: 30px;
  }
  .working-subtitle {
    font-size: 28px;
  }
  .call-center-h3 {
    font-size: 28px;
  }
  .payment-type {
    font-size: 30px;
  }
  .payment-title {
    margin-bottom: 0;
  }
  .mt100 {
    margin-top: 50px;
  }
  .call-center-arrow {
    width: 306px;
    height: 306px;
    top: -130px !important;
    right: -50px;
    left: initial !important;
  }
}
@media screen and (max-width: 630px) {
  .guide__title {
    font-size: 60px;
  }
  .history-title,
  .working-title {
    font-size: 26px;
  }
  .working-subtitle,
  .call-center-h3 {
    font-size: 22px;
  }
  .call-center-h3 {
    margin-bottom: 0px;
  }
  .payment-type {
    font-size: 30px;
  }
  .call-center-section {
    width: 100%;
    padding-left: 10px;
    padding-right: 10px;
  }
  .call-center__subtitle {
    font-size: 26px;
    letter-spacing: -1.3px;
    text-indent: 30px;
  }
  .guide__title {
    font-size: 50px;
    padding-left: 10px;
    padding-right: 10px;
    margin: 0;
  }
  ._hidden {
    display: none;
  }
  ._hidden._show {
    display: block;
  }
  .show-more-btn {
    display: block;
  }
  .call-center-btn {
    padding: 15px 30px;
  }
}
