@font-face {
  font-family: Helvetica Neue;
  src: url('../fonts/HelveticaNeue-01.ttf') format("truetype");
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}

@font-face {
  font-family: Helvetica Neue;
  src: url('../fonts/HelveticaNeue-Medium-11.ttf') format("truetype");
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}

:root {
  --_fonts---font-body: "Helvetica Neue", Arial, sans-serif;
  --_colors---base-1000--100: #141414;
  --_fonts---font-display: "Helvetica Neue", Arial, sans-serif;
  --_fonts---h1--size: calc(48rem / var(--_special-units---scale-ratio));
  --_fonts---h1--line-height: 100%;
  --_fonts---h1--letter-spacing: -.04em;
  --_fonts---h2--size: 0rem;
  --_fonts---h2--line-height: 100%;
  --_fonts---h2--letter-spacing: -.048em;
  --_fonts---h3--size: 0rem;
  --_fonts---h3--line-height: 100%;
  --_fonts---h3--letter-spacing: -.048em;
  --_fonts---h4--size: 0rem;
  --_fonts---h4--line-height: 100%;
  --_fonts---h4--letter-spacing: -.048em;
  --_fonts---h5--size: 0rem;
  --_fonts---h5--line-height: 100%;
  --_fonts---h5--letter-spacing: -.048em;
  --_fonts---h6--size: 0rem;
  --_fonts---h6--line-height: 100%;
  --_fonts---h6--letter-spacing: -.048em;
  --_fonts---p1--size: calc(14rem / var(--_special-units---scale-ratio));
  --_fonts---p1--line-height: 114.286%;
  --_fonts---p1--letter-spacing: -.024em;
  --_units---u-0: var(--0px);
  --_units---u-8: var(--8px);
  --_units---u-16: var(--16px);
  --_units---u-4: var(--4px);
  --_units---u-24: var(--24px);
  --_units---u-32: var(--32px);
  --_units---u-48: var(--48px);
  --_units---u-64: var(--64px);
  --_units---u-96: var(--96px);
  --_colors---base-0--100: white;
  --_colors---base-1000--50: #14141480;
  --_colors---additional--success: #1ba64b;
  --_colors---additional--alert: #ffa800;
  --_colors---additional--error: #e23d3d;
  --_fonts---l1--size: calc(10rem / var(--_special-units---scale-ratio));
  --_fonts---l1--line-height: 120%;
  --_fonts---l1--letter-spacing: -.024em;
  --_colors---base-1000--10: #1414141a;
  --_colors---base-1000--30: #1414144d;
  --_colors---white--0\<deleted\|variable-9520d485-92ad-2b51-fcee-c46a25271684\>: #0000;
  --_special-units---100vh: 100vh;
  --_units---u-2: var(--2px);
  --_fonts---p2--size: calc(11rem / var(--_special-units---scale-ratio));
  --_fonts---p2--line-height: 109.091%;
  --_fonts---p2--letter-spacing: -.024em;
  --6px: calc(6rem / var(--_special-units---scale-ratio));
  --12px: calc(12rem / var(--_special-units---scale-ratio));
  --_colors---brand-500--100: #ff2443;
  --_special-units---1-cell: calc(104rem / var(--_special-units---scale-ratio));
  --0px: calc(0rem / var(--_special-units---scale-ratio));
  --1px: calc(1rem / var(--_special-units---scale-ratio));
  --2px: calc(2rem / var(--_special-units---scale-ratio));
  --4px: calc(4rem / var(--_special-units---scale-ratio));
  --8px: calc(8rem / var(--_special-units---scale-ratio));
  --10px: calc(10rem / var(--_special-units---scale-ratio));
  --_special-units---scale-ratio: 14.4;
  --16px: calc(16rem / var(--_special-units---scale-ratio));
  --20px: calc(20rem / var(--_special-units---scale-ratio));
  --24px: calc(24rem / var(--_special-units---scale-ratio));
  --28px: calc(28rem / var(--_special-units---scale-ratio));
  --32px: calc(32rem / var(--_special-units---scale-ratio));
  --36px: calc(36rem / var(--_special-units---scale-ratio));
  --40px: calc(40rem / var(--_special-units---scale-ratio));
  --44px: calc(44rem / var(--_special-units---scale-ratio));
  --48px: calc(48rem / var(--_special-units---scale-ratio));
  --52px: calc(52rem / var(--_special-units---scale-ratio));
  --56px: calc(56rem / var(--_special-units---scale-ratio));
  --60px: calc(60rem / var(--_special-units---scale-ratio));
  --64px: calc(64rem / var(--_special-units---scale-ratio));
  --68px: calc(68rem / var(--_special-units---scale-ratio));
  --72px: calc(72rem / var(--_special-units---scale-ratio));
  --80px: calc(80rem / var(--_special-units---scale-ratio));
  --88px: calc(88rem / var(--_special-units---scale-ratio));
  --96px: calc(96rem / var(--_special-units---scale-ratio));
  --104px: calc(104rem / var(--_special-units---scale-ratio));
  --112px: calc(112rem / var(--_special-units---scale-ratio));
  --120px: calc(120rem / var(--_special-units---scale-ratio));
  --144px: calc(144rem / var(--_special-units---scale-ratio));
  --168px: calc(168rem / var(--_special-units---scale-ratio));
  --192px: calc(192rem / var(--_special-units---scale-ratio));
  --240px: calc(240rem / var(--_special-units---scale-ratio));
  --_colors---base-300--100: silver;
  --_colors---base-0--50: #ffffff80;
  --_colors---base-0--30: #ffffff4d;
  --_colors---base-0--10: #ffffff1a;
}

body {
  font-family: var(--_fonts---font-body);
  color: var(--_colors---base-1000--100);
  font-size: 1vw;
  font-weight: 400;
  line-height: 1;
}

h1 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h1--size);
  line-height: var(--_fonts---h1--line-height);
  letter-spacing: var(--_fonts---h1--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 400;
}

h2 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h2--size);
  line-height: var(--_fonts---h2--line-height);
  letter-spacing: var(--_fonts---h2--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
}

h3 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h3--size);
  line-height: var(--_fonts---h3--line-height);
  letter-spacing: var(--_fonts---h3--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
}

h4 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h4--size);
  line-height: var(--_fonts---h4--line-height);
  letter-spacing: var(--_fonts---h4--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
}

h5 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h5--size);
  line-height: var(--_fonts---h5--line-height);
  letter-spacing: var(--_fonts---h5--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
}

h6 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h6--size);
  line-height: var(--_fonts---h6--line-height);
  letter-spacing: var(--_fonts---h6--letter-spacing);
  margin-top: 0;
  margin-bottom: 0;
}

p {
  font-family: var(--_fonts---font-body);
  font-size: var(--_fonts---p1--size);
  line-height: var(--_fonts---p1--line-height);
  letter-spacing: var(--_fonts---p1--letter-spacing);
  margin-bottom: 0;
  font-weight: 400;
}

a {
  color: var(--_colors---base-1000--100);
  text-decoration: none;
}

ul, ol {
  margin-top: var(--_units---u-0);
  margin-bottom: var(--_units---u-0);
  padding-left: var(--_units---u-0);
}

img {
  object-fit: cover;
  max-width: none;
}

label {
  margin-bottom: var(--_units---u-0);
  font-weight: 700;
  display: block;
}

blockquote {
  margin-bottom: var(--_units---u-0);
  padding: var(--_units---u-0);
  border: 1px #000;
  font-size: 1em;
  line-height: 1;
}

figure {
  margin-bottom: 10px;
}

figcaption {
  text-align: center;
  margin-top: 5px;
}

.a-left {
  text-align: left;
}

.a-right {
  text-align: right;
}

.a-center {
  text-align: center;
}

.blend-diff {
  mix-blend-mode: difference;
}

.d-none, .style-css, .scripts-js {
  display: none;
}

.utility-page-wrap {
  justify-content: center;
  align-items: center;
  width: 100vw;
  max-width: 100%;
  height: 100vh;
  max-height: 100%;
  display: flex;
}

.utility-page-content {
  text-align: center;
  flex-direction: column;
  width: 260px;
  display: flex;
}

.utility-page-form {
  flex-direction: column;
  align-items: stretch;
  display: flex;
}

.h1 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h1--size);
  line-height: var(--_fonts---h1--line-height);
  letter-spacing: var(--_fonts---h1--letter-spacing);
  font-weight: 400;
}

.h2 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h2--size);
  line-height: var(--_fonts---h2--line-height);
  letter-spacing: var(--_fonts---h2--letter-spacing);
}

.h3 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h3--size);
  line-height: var(--_fonts---h3--line-height);
  letter-spacing: var(--_fonts---h3--letter-spacing);
}

.h4 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h4--size);
  line-height: var(--_fonts---h4--line-height);
  letter-spacing: var(--_fonts---h4--letter-spacing);
}

.h5 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h5--size);
  line-height: var(--_fonts---h5--line-height);
  letter-spacing: var(--_fonts---h5--letter-spacing);
}

.h6 {
  font-family: var(--_fonts---font-display);
  font-size: var(--_fonts---h6--size);
  line-height: var(--_fonts---h6--line-height);
  letter-spacing: var(--_fonts---h6--letter-spacing);
}

.p1 {
  font-family: var(--_fonts---font-body);
  font-size: var(--_fonts---p1--size);
  line-height: var(--_fonts---p1--line-height);
  letter-spacing: var(--_fonts---p1--letter-spacing);
  font-weight: 400;
}

.e-none {
  pointer-events: none;
}

.container {
  padding-right: var(--_units---u-8);
  padding-left: var(--_units---u-8);
}

.grid {
  grid-column-gap: var(--_units---u-16);
  grid-row-gap: var(--_units---u-16);
  grid-template-rows: auto;
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr 1fr;
  grid-auto-columns: 1fr;
  width: 100%;
  display: grid;
}

.grid._6-columns {
  grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
}

.grid._3-columns {
  grid-template-columns: 1fr 1fr 1fr;
}

.b-desk {
  display: block;
}

.b-mob, .f-mob {
  display: none;
}

.f-desk {
  display: flex;
}

.unit-4 {
  height: var(--_units---u-4);
}

.unit-8 {
  height: var(--_units---u-8);
}

.unit-16 {
  height: var(--_units---u-16);
}

.unit-24 {
  height: var(--_units---u-24);
}

.unit-32 {
  height: var(--_units---u-32);
}

.unit-48 {
  height: var(--_units---u-48);
}

.clip {
  overflow: clip;
}

.unit-64 {
  height: var(--_units---u-64);
}

.unit-96 {
  height: var(--_units---u-96);
}

.text-dark {
  color: var(--_colors---base-1000--100);
}

.text-light {
  color: var(--_colors---base-0--100);
}

.text-gray {
  color: var(--_colors---base-1000--50);
}

.text-success {
  color: var(--_colors---additional--success);
}

.text-alert {
  color: var(--_colors---additional--alert);
}

.text-error {
  color: var(--_colors---additional--error);
}

.inline {
  display: inline;
}

.l1 {
  font-family: var(--_fonts---font-body);
  font-size: var(--_fonts---l1--size);
  line-height: var(--_fonts---l1--line-height);
  letter-spacing: var(--_fonts---l1--letter-spacing);
  text-transform: uppercase;
  font-weight: 400;
}

.l1.paragraph {
  letter-spacing: .024em;
}

.cms_empty-none {
  background-color: #0000;
  display: none;
}

.h-hiden {
  position: absolute;
  top: -9999em;
  left: -9999em;
}

.theme_on-color {
  --_colors---base-1000--100: white;
  --_colors---base-0--100: white;
  --_colors---base-1000--50: #ffffff80;
  --_colors---additional--success: #1ba64b;
  --_colors---additional--alert: #ffa800;
  --_colors---additional--error: #e23d3d;
  --_colors---base-1000--10: #ffffff4d;
  --_colors---base-1000--30: #ffffff4d;
  --_colors---white--0\<deleted\|variable-9520d485-92ad-2b51-fcee-c46a25271684\>: #0000;
  --_colors---brand-500--100: #ff2443;
  --_colors---base-300--100: silver;
  --_colors---base-0--50: #ffffff80;
  --_colors---base-0--30: #ffffff4d;
  --_colors---base-0--10: #ffffff1a;
}

.theme_on-light {
  --_colors---base-1000--100: #141414;
  --_colors---base-0--100: white;
  --_colors---base-1000--50: #14141480;
  --_colors---additional--success: #1ba64b;
  --_colors---additional--alert: #ffa800;
  --_colors---additional--error: #e23d3d;
  --_colors---base-1000--10: #1414141a;
  --_colors---base-1000--30: #1414144d;
  --_colors---white--0\<deleted\|variable-9520d485-92ad-2b51-fcee-c46a25271684\>: #0000;
  --_colors---brand-500--100: #ff2443;
  --_colors---base-300--100: silver;
  --_colors---base-0--50: #ffffff80;
  --_colors---base-0--30: #ffffff4d;
  --_colors---base-0--10: #ffffff1a;
}

.landscape-cover {
  z-index: 999999;
  display: none;
  position: fixed;
  inset: 0%;
}

.landscape-cover_img {
  z-index: 1;
  width: 100%;
  height: 100%;
  position: relative;
}

.img {
  width: 100%;
  height: 100%;
}

.img.contain {
  object-fit: contain;
}

.landscape-cover_bg {
  z-index: 0;
  background-color: var(--_colors---base-1000--100);
  position: absolute;
  inset: 0%;
}

.field {
  margin-bottom: var(--_units---u-0);
  padding: var(--_units---u-24) var(--_units---u-0) var(--_units---u-8);
  border-style: none none solid;
  border-width: 0 0 1px;
  border-color: black black var(--_colors---base-1000--10);
  color: var(--_colors---base-1000--100);
  background-color: #0000;
  height: auto;
}

.field:hover {
  border-bottom-color: var(--_colors---base-1000--30);
}

.field:focus {
  border-bottom-color: var(--_colors---base-1000--100);
}

.field::placeholder {
  color: var(--_colors---base-1000--30);
}

.form {
  margin-bottom: var(--_units---u-0);
}

.form_block {
  padding: var(--_units---u-8);
  border-radius: var(--_units---u-4);
  background-color: var(--_colors---base-0--100);
}

.form_success {
  padding: var(--_units---u-0);
  background-color: var(--_colors---white--0\<deleted\|variable-9520d485-92ad-2b51-fcee-c46a25271684\>);
  text-align: left;
}

.form_error {
  margin-top: var(--_units---u-4);
  padding: var(--_units---u-16) var(--_units---u-24);
  border-radius: var(--_units---u-4);
  background-color: var(--_colors---additional--error);
}

.article-text blockquote {
  font-size: var(--_fonts---h1--size);
  line-height: var(--_fonts---h1--line-height);
  letter-spacing: var(--_fonts---h1--letter-spacing);
}

.article-text ol, .article-text ul {
  font-size: var(--_fonts---p1--size);
  line-height: var(--_fonts---p1--line-height);
  letter-spacing: var(--_fonts---p1--letter-spacing);
}

.article-text a {
  text-decoration: underline;
}

.article-text a:hover {
  text-decoration: none;
}

.article-text figure {
  margin-bottom: var(--_units---u-0);
}

.article-text figcaption {
  margin-top: var(--_units---u-0);
  font-size: var(--_fonts---p1--size);
  line-height: var(--_fonts---p1--line-height);
  letter-spacing: var(--_fonts---p1--letter-spacing);
}

.body {
  background-color: var(--_colors---base-0--100);
}

.img-w {
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  width: 100%;
  height: 100%;
  display: flex;
  overflow: clip;
}

.img-p {
  width: 100%;
  height: 140%;
}

.btn-list {
  grid-column-gap: var(--_units---u-8);
  grid-row-gap: var(--_units---u-8);
  justify-content: center;
  align-items: center;
  display: flex;
}

.ico {
  width: 100%;
  height: 100%;
}

.main-css {
  display: none;
}

.med {
  font-weight: 500;
}

.text-disabled {
  color: var(--_colors---base-1000--30);
}

.header {
  z-index: 12000;
  position: fixed;
  inset: 0% 0% auto;
}

.header_c {
  padding: var(--_units---u-8);
}

.header_cell {
  grid-column: span 3;
  justify-content: space-between;
  align-items: flex-start;
  display: flex;
  position: relative;
}

.nav-item {
  position: relative;
}

.l1-list {
  grid-column-gap: var(--_units---u-4);
  grid-row-gap: var(--_units---u-4);
  justify-content: center;
  align-items: center;
  display: flex;
}

.nav-item_label {
  position: relative;
  overflow: clip;
}

.nav-item_diagram {
  width: var(--_units---u-8);
  height: var(--_units---u-8);
  background-color: var(--_colors---base-1000--100);
  left: calc(var(--_units---u-8) * -1);
  top: calc(var(--_units---u-8) * -1);
  position: absolute;
}

.hero-s {
  height: var(--_special-units---100vh);
  flex-flow: column;
  justify-content: space-between;
  display: flex;
}

.hero-s_top_about {
  flex-flow: column;
  grid-area: 1 / 1 / 2 / 3;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.hero-s_top_services {
  flex-flow: column;
  grid-area: 1 / 4 / 2 / 6;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.hero-s_top_cases {
  flex-flow: column;
  grid-area: 1 / 7 / 2 / 9;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.hero-s_top_contact {
  flex-flow: column;
  grid-area: 1 / 10 / 2 / 12;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.link-icon {
  grid-column-gap: var(--_units---u-4);
  grid-row-gap: var(--_units---u-4);
  justify-content: flex-start;
  align-items: center;
  display: flex;
}

.ico-16 {
  width: var(--_units---u-16);
  height: var(--_units---u-16);
  position: relative;
}

.link_label {
  position: relative;
  overflow: clip;
}

.master-preloader {
  z-index: 999999;
  background-color: var(--_colors---base-0--100);
  display: none;
  position: fixed;
  inset: 0% 0% -100%;
}

.content-cell-r {
  grid-area: 1 / 7 / 2 / 13;
}

.title {
  grid-column-gap: var(--_units---u-8);
  grid-row-gap: var(--_units---u-8);
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.title_diagram {
  grid-column-gap: var(--_units---u-2);
  grid-row-gap: var(--_units---u-2);
  justify-content: center;
  align-items: center;
  display: flex;
}

.title_diagram_circle {
  width: var(--_units---u-16);
  height: var(--_units---u-16);
  border-radius: var(--_units---u-16);
  outline-color: var(--_colors---base-1000--100);
  outline-offset: -.5px;
  outline-width: 1px;
  outline-style: solid;
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  display: flex;
}

.p2 {
  font-family: var(--_fonts---font-body);
  font-size: var(--_fonts---p2--size);
  line-height: var(--_fonts---p2--line-height);
  letter-spacing: var(--_fonts---p2--letter-spacing);
  font-weight: 400;
}

.p2.med {
  font-weight: 500;
}

.title_diagram_square {
  width: var(--_units---u-16);
  height: var(--_units---u-16);
  border-radius: var(--_units---u-2);
  background-color: var(--_colors---base-1000--100);
  flex-flow: column;
  justify-content: center;
  align-items: stretch;
  display: flex;
}

.about-s_desc {
  grid-area: 1 / 4 / 2 / 6;
}

.about-s_caption {
  padding-right: var(--_units---u-32);
  grid-area: 1 / 1 / 2 / 3;
}

.about-s_caption_red-line {
  width: var(--_units---u-64);
  height: var(--_units---u-8);
  float: left;
}

.ico-32 {
  width: var(--_units---u-32);
  height: var(--_units---u-32);
}

.theme_on-dark {
  --_colors---base-1000--100: white;
  --_colors---base-0--100: #141414;
  --_colors---base-1000--50: #ffffff80;
  --_colors---additional--success: #1ba64b;
  --_colors---additional--alert: #ffa800;
  --_colors---additional--error: #e23d3d;
  --_colors---base-1000--10: #ffffff1a;
  --_colors---base-1000--30: #ffffff4d;
  --_colors---white--0\<deleted\|variable-9520d485-92ad-2b51-fcee-c46a25271684\>: #0000;
  --_colors---brand-500--100: #ff2443;
  --_colors---base-300--100: silver;
  --_colors---base-0--50: #14141480;
  --_colors---base-0--30: #1414144d;
  --_colors---base-0--10: #1414141a;
}

.line-h {
  background-color: var(--_colors---base-1000--10);
  width: 100%;
  height: 1px;
}

.service-card_desc {
  grid-area: 1 / 4 / 2 / 6;
}

.service-card_index {
  grid-area: 1 / 2 / 2 / 3;
}

.service-card_diagram {
  grid-area: 1 / 1 / 2 / 2;
}

.ico-72 {
  width: calc(var(--_units---u-64)  + var(--_units---u-8));
  height: calc(var(--_units---u-64)  + var(--_units---u-8));
}

.cases-w {
  position: relative;
}

.cases-s {
  z-index: 3000;
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  height: calc(var(--_special-units---100vh) * 2);
  flex-flow: column;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: center;
  display: flex;
  position: relative;
}

.cms-team_list_item {
  grid-column: span 2;
}

.team-card_img {
  aspect-ratio: 3 / 4;
  border-radius: var(--_units---u-4);
  width: 100%;
  overflow: hidden;
}

.faq-s {
  min-height: var(--_special-units---100vh);
}

.faq-card {
  cursor: pointer;
  position: relative;
}

.faq-card_question {
  grid-area: 1 / 1 / 2 / 4;
}

.faq-card_answer {
  grid-area: 1 / 4 / 2 / 6;
  overflow: clip;
}

.faq-card_ico {
  grid-area: 1 / 6 / 2 / 7;
  justify-content: flex-end;
  align-items: flex-start;
  display: flex;
}

.ico_plus {
  position: absolute;
  inset: 0%;
}

.faq-card_line {
  position: absolute;
  inset: 0% 0% auto;
}

.content-cell-c {
  flex-flow: column;
  grid-area: 1 / 4 / 2 / 10;
  justify-content: center;
  align-items: center;
  display: flex;
}

.fix-logo {
  z-index: 3000;
  pointer-events: none;
  top: calc(var(--_special-units---100vh)  - (var(--_units---u-24) * 12)  - var(--_units---u-8));
  margin-top: calc(var(--_units---u-24) * -5);
  position: sticky;
}

.fix-logo_c {
  padding-right: var(--_units---u-8);
  padding-bottom: var(--_units---u-8);
  padding-left: var(--_units---u-8);
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.fix-logo_char {
  height: calc(var(--_units---u-24) * 12);
}

.fix-logo_char.t {
  aspect-ratio: 68 / 288;
}

.fix-logo_char.w {
  aspect-ratio: 132 / 288;
}

.fix-logo_char.c {
  aspect-ratio: 104 / 288;
}

.fix-logo_push {
  flex: 0 auto;
  width: 0;
  height: 100%;
}

.fix-logo_push.is-top {
  flex: 1;
}

.floating-tips {
  z-index: 11000;
  pointer-events: none;
  display: block;
  position: fixed;
  inset: 0%;
}

.floating-tips_list {
  flex-flow: column;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
  position: absolute;
  inset: 0%;
}

.floating-tip {
  grid-column-gap: 16px;
  grid-row-gap: 16px;
  grid-template-rows: auto auto;
  grid-template-columns: 1fr 1fr;
  grid-auto-columns: 1fr;
  justify-content: flex-start;
  align-items: center;
  display: none;
  overflow: clip;
}

.floating-tip.is-cur {
  margin-top: calc(var(--6px) * -1);
  margin-left: calc(var(--6px) * -1);
}

.floating-tip.is-cur.show {
  display: block;
}

.floating-tip.is-cur-label {
  margin-left: var(--_units---u-16);
  margin-top: calc((var(--_units---u-16)  - var(--_units---u-2)) * -1);
}

.floating-tip.is-cur-label.show {
  display: block;
}

.cur {
  width: var(--12px);
  height: var(--12px);
  border-radius: var(--_units---u-16);
  background-color: var(--_colors---brand-500--100);
}

.contact-s {
  z-index: 1;
  position: relative;
}

.bg-dark {
  background-color: var(--_colors---base-1000--100);
}

.bg-light {
  background-color: var(--_colors---base-0--100);
}

.bg-brand {
  background-color: var(--_colors---brand-500--100);
}

.scene {
  z-index: 0;
  margin-bottom: var(--_units---u-0);
  cursor: grab;
  width: 100%;
  height: 100%;
  display: block;
  position: relative;
}

.contact-s_bg {
  top: var(--_units---u-0);
  z-index: 0;
  height: var(--_special-units---100vh);
  margin-left: calc(var(--_units---u-8) * -1);
  margin-right: calc(var(--_units---u-8) * -1);
  margin-bottom: calc(var(--_special-units---100vh) * -1);
  position: sticky;
}

.contact-s_title {
  top: var(--_units---u-0);
  z-index: 0;
  height: var(--_special-units---100vh);
  flex-flow: column;
  justify-content: center;
  display: flex;
  position: sticky;
}

.contact-s_form-c {
  z-index: 1;
  padding-bottom: var(--_units---u-8);
  height: calc(var(--_special-units---100vh)  - var(--_units---u-32));
  flex-flow: column;
  grid-area: 1 / 10 / 2 / 13;
  justify-content: space-between;
  display: flex;
  position: relative;
}

.contact {
  flex-flow: column;
  grid-area: 1 / 1 / 2 / 4;
  justify-content: flex-start;
  align-items: flex-start;
  display: flex;
}

.form_block_desc {
  width: calc((var(--_special-units---1-cell) * 2)  + var(--_units---u-16));
}

.form_block_list {
  grid-column-gap: var(--_units---u-8);
  grid-row-gap: var(--_units---u-8);
  flex-flow: column;
  display: flex;
}

.input {
  position: relative;
}

.input:hover {
  border-bottom-color: var(--_colors---base-1000--30);
}

.input_label {
  left: 0%;
  top: var(--_units---u-8);
  pointer-events: none;
  position: absolute;
  bottom: auto;
  right: 0%;
}

.form_block_btn {
  justify-content: flex-end;
  align-items: center;
  display: flex;
}

.btn-submit {
  grid-column-gap: var(--_units---u-4);
  grid-row-gap: var(--_units---u-4);
  cursor: pointer;
  justify-content: center;
  align-items: center;
  display: flex;
}

.cases-w_bg {
  z-index: 10000;
  top: 0%;
  bottom: 0%;
  left: calc(var(--_units---u-8) * -1);
  right: calc(var(--_units---u-8) * -1);
  position: absolute;
}

.cases-cms {
  width: 100%;
  height: 100%;
}

.cases-cms_list {
  transform-style: preserve-3d;
  width: 0;
  height: 0;
  position: relative;
}

.cases-cms_list_item {
  aspect-ratio: 2 / 3;
  background-color: var(--_colors---base-1000--50);
  transform-style: preserve-3d;
  width: 200px;
  position: absolute;
}

.cms-case_list_item {
  aspect-ratio: 1080 / 1350;
  width: calc((var(--_special-units---1-cell) * 2)  + var(--_units---u-16));
  position: absolute;
  inset: 0% auto auto 0%;
  transform: translate(-50%, -50%);
}

.cms-case_list {
  pointer-events: none;
  position: relative;
}

.cms-case {
  top: 0%;
  bottom: 0%;
  left: calc(var(--_units---u-8) * -1);
  right: calc(var(--_units---u-8) * -1);
  position: absolute;
}

.cases-s_title {
  height: var(--_special-units---100vh);
  flex-flow: column;
  justify-content: center;
  display: flex;
}

.text-brand {
  color: var(--_colors---brand-500--100);
}

.error-s {
  height: var(--_special-units---100vh);
  flex-flow: column;
  justify-content: space-between;
  display: flex;
}

.error-s_bot {
  padding-bottom: var(--_units---u-8);
  justify-content: flex-start;
  align-items: flex-end;
  display: flex;
}

.theme_on-gray {
  --_colors---base-1000--100: white;
  --_colors---base-0--100: silver;
  --_colors---base-1000--50: #ffffff80;
  --_colors---additional--success: #1ba64b;
  --_colors---additional--alert: #ffa800;
  --_colors---additional--error: #e23d3d;
  --_colors---base-1000--10: #fff3;
  --_colors---base-1000--30: #ffffff80;
  --_colors---white--0\<deleted\|variable-9520d485-92ad-2b51-fcee-c46a25271684\>: #0000;
  --_colors---brand-500--100: #ff2443;
  --_colors---base-300--100: silver;
  --_colors---base-0--50: #ffffff80;
  --_colors---base-0--30: #ffffff4d;
  --_colors---base-0--10: #ffffff1a;
}

@media screen and (max-width: 991px) {
  body {
    --_fonts---font-body: "Helvetica Neue", Arial, sans-serif;
    --_fonts---font-display: "Helvetica Neue", Arial, sans-serif;
    --_fonts---h1--size: calc(32rem / var(--_special-units---scale-ratio));
    --_fonts---h1--line-height: 100%;
    --_fonts---h1--letter-spacing: -.04em;
    --_fonts---h2--size: 0rem;
    --_fonts---h2--line-height: 100%;
    --_fonts---h2--letter-spacing: -.048em;
    --_fonts---h3--size: 0rem;
    --_fonts---h3--line-height: 100%;
    --_fonts---h3--letter-spacing: -.048em;
    --_fonts---h4--size: 0rem;
    --_fonts---h4--line-height: 100%;
    --_fonts---h4--letter-spacing: -.048em;
    --_fonts---h5--size: 0rem;
    --_fonts---h5--line-height: 100%;
    --_fonts---h5--letter-spacing: -.048em;
    --_fonts---h6--size: 0rem;
    --_fonts---h6--line-height: 100%;
    --_fonts---h6--letter-spacing: -.048em;
    --_fonts---p1--size: calc(14rem / var(--_special-units---scale-ratio));
    --_fonts---p1--line-height: 114.286%;
    --_fonts---p1--letter-spacing: -.024em;
    --_fonts---l1--size: calc(10rem / var(--_special-units---scale-ratio));
    --_fonts---l1--line-height: 120%;
    --_fonts---l1--letter-spacing: -.024em;
    --_fonts---p2--size: calc(11rem / var(--_special-units---scale-ratio));
    --_fonts---p2--line-height: 109.091%;
    --_fonts---p2--letter-spacing: -.024em;
    --6px: calc(6rem / var(--_special-units---scale-ratio));
    --12px: calc(12rem / var(--_special-units---scale-ratio));
    --0px: calc(0rem / var(--_special-units---scale-ratio));
    --1px: calc(1rem / var(--_special-units---scale-ratio));
    --2px: calc(2rem / var(--_special-units---scale-ratio));
    --4px: calc(4rem / var(--_special-units---scale-ratio));
    --8px: calc(8rem / var(--_special-units---scale-ratio));
    --10px: calc(10rem / var(--_special-units---scale-ratio));
    --16px: calc(16rem / var(--_special-units---scale-ratio));
    --20px: calc(20rem / var(--_special-units---scale-ratio));
    --24px: calc(24rem / var(--_special-units---scale-ratio));
    --28px: calc(28rem / var(--_special-units---scale-ratio));
    --32px: calc(32rem / var(--_special-units---scale-ratio));
    --36px: calc(36rem / var(--_special-units---scale-ratio));
    --40px: calc(40rem / var(--_special-units---scale-ratio));
    --44px: calc(44rem / var(--_special-units---scale-ratio));
    --48px: calc(48rem / var(--_special-units---scale-ratio));
    --52px: calc(52rem / var(--_special-units---scale-ratio));
    --56px: calc(56rem / var(--_special-units---scale-ratio));
    --60px: calc(60rem / var(--_special-units---scale-ratio));
    --64px: calc(64rem / var(--_special-units---scale-ratio));
    --68px: calc(68rem / var(--_special-units---scale-ratio));
    --72px: calc(72rem / var(--_special-units---scale-ratio));
    --80px: calc(80rem / var(--_special-units---scale-ratio));
    --88px: calc(88rem / var(--_special-units---scale-ratio));
    --96px: calc(96rem / var(--_special-units---scale-ratio));
    --104px: calc(104rem / var(--_special-units---scale-ratio));
    --112px: calc(112rem / var(--_special-units---scale-ratio));
    --120px: calc(120rem / var(--_special-units---scale-ratio));
    --144px: calc(144rem / var(--_special-units---scale-ratio));
    --168px: calc(168rem / var(--_special-units---scale-ratio));
    --192px: calc(192rem / var(--_special-units---scale-ratio));
    --240px: calc(240rem / var(--_special-units---scale-ratio));
    --_special-units---100vh: 100vh;
    --_special-units---1-cell: calc(104rem / var(--_special-units---scale-ratio));
    --_special-units---scale-ratio: 4.16;
    --_units---u-0: var(--0px);
    --_units---u-8: var(--8px);
    --_units---u-16: var(--16px);
    --_units---u-4: var(--4px);
    --_units---u-24: var(--16px);
    --_units---u-32: var(--24px);
    --_units---u-48: var(--32px);
    --_units---u-64: var(--48px);
    --_units---u-96: var(--64px);
    --_units---u-2: var(--2px);
  }

  .grid, .grid._6-columns, .grid._3-columns {
    grid-template-columns: 1fr 1fr 1fr 1fr;
  }

  .b-desk {
    display: none;
  }

  .b-mob {
    display: block;
  }

  .f-mob {
    display: flex;
  }

  .f-desk {
    display: none;
  }

  .img {
    height: 100%;
  }

  .field.p1 {
    padding-top: var(--_units---u-32);
  }

  .img-p {
    height: 100%;
  }

  .header_cell {
    grid-column: span 1;
  }

  .content-cell-r {
    grid-area: 1 / 1 / 2 / 5;
  }

  .about-s_desc, .service-card_desc {
    grid-area: 1 / 3 / 2 / 5;
  }

  .cases-s {
    height: calc(var(--_special-units---100vh) * 1.5);
  }

  .faq-card_question {
    grid-area: 1 / 1 / 2 / 4;
  }

  .faq-card_answer {
    grid-area: 2 / 3 / 3 / 5;
  }

  .faq-card_ico {
    grid-area: 1 / 4 / 2 / 5;
  }

  .content-cell-c {
    grid-area: 1 / 1 / 2 / 5;
  }

  .fix-logo {
    margin-top: calc((var(--_units---u-24) * -8)  - var(--_units---u-8));
    top: calc(var(--_special-units---100vh)  - (var(--_units---u-24) * 8)  - var(--_units---u-8));
  }

  .fix-logo_char {
    height: calc(var(--_units---u-24) * 8);
  }

  .floating-tips {
    display: none;
  }

  .contact-s_form-c {
    grid-area: 1 / 1 / 2 / 5;
    height: auto;
  }

  .contact {
    grid-area: 1 / 3 / 2 / 5;
  }
}

#w-node-c6f2303e-deb8-e5ce-3eac-1fd8e60b60b7-13d58b92, #w-node-_0fbecce2-9700-9345-11cc-74289eaed0b4-13d58baa {
  grid-area: span 1 / span 2 / span 1 / span 2;
}


@font-face {
  font-family: 'Helvetica Neue';
  src: url('../fonts/HelveticaNeue-01.ttf') format('truetype');
  font-weight: 400;
  font-style: normal;
  font-display: swap;
}
@font-face {
  font-family: 'Helvetica Neue';
  src: url('../fonts/HelveticaNeue-Medium-11.ttf') format('truetype');
  font-weight: 500;
  font-style: normal;
  font-display: swap;
}