@charset "UTF-8";
@font-face {
  font-family: "ProximaNova";
  src: url(../../../fonts/subset-ProximaNova-Regular.woff2?e1564551b6dc49bfecb54846b96526b6) format("woff2");
  font-weight: normal;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "ProximaNova";
  src: url(../../../fonts/subset-ProximaNova-Bold.woff2?951bbec860797a07852788cdf10ac01d) format("woff2");
  font-weight: bold;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "ProximaNova";
  src: url(../../../fonts/subset-ProximaNova-Semibold.woff2?e21a3d4e4072972058baeea77bff777f) format("woff2");
  font-weight: 600;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "ProximaNova";
  src: url(../../../fonts/subset-ProximaNova-Extrabld.woff2?492edfecf36a9ce72381e8f5e3658db3) format("woff2");
  font-weight: 800;
  font-style: normal;
  font-display: swap; }

@font-face {
  font-family: "ProximaNova";
  src: url(../../../fonts/subset-ProximaNova-Black.woff2?8cb268e6937f55f77d9ca34bc13fd8da) format("woff2");
  font-weight: 900;
  font-style: normal;
  font-display: swap; }

/*
 *  Owl Carousel - Core
 */
.owl-carousel {
  display: none;
  width: 100%;
  -webkit-tap-highlight-color: transparent;
  /* position relative and z-index fix webkit rendering fonts issue */
  position: relative;
  z-index: 1; }
  .owl-carousel .owl-stage {
    position: relative;
    -ms-touch-action: pan-Y;
    touch-action: manipulation;
    -moz-backface-visibility: hidden;
    /* fix firefox animation glitch */ }
  .owl-carousel .owl-stage:after {
    content: ".";
    display: block;
    clear: both;
    visibility: hidden;
    line-height: 0;
    height: 0; }
  .owl-carousel .owl-stage-outer {
    position: relative;
    overflow: hidden;
    /* fix for flashing background */
    -webkit-transform: translate3d(0px, 0px, 0px); }
  .owl-carousel .owl-wrapper,
  .owl-carousel .owl-item {
    -webkit-backface-visibility: hidden;
    -moz-backface-visibility: hidden;
    -ms-backface-visibility: hidden;
    -webkit-transform: translate3d(0, 0, 0);
    -moz-transform: translate3d(0, 0, 0);
    -ms-transform: translate3d(0, 0, 0); }
  .owl-carousel .owl-item {
    position: relative;
    min-height: 1px;
    float: left;
    -webkit-backface-visibility: hidden;
    -webkit-tap-highlight-color: transparent;
    -webkit-touch-callout: none; }
  .owl-carousel .owl-item img {
    display: block;
    width: 100%; }
  .owl-carousel .owl-nav.disabled,
  .owl-carousel .owl-dots.disabled {
    display: none; }
  .owl-carousel .owl-nav .owl-prev,
  .owl-carousel .owl-nav .owl-next,
  .owl-carousel .owl-dot {
    cursor: pointer;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel .owl-nav button.owl-prev,
  .owl-carousel .owl-nav button.owl-next,
  .owl-carousel button.owl-dot {
    background: none;
    color: inherit;
    border: none;
    padding: 0 !important;
    font: inherit; }
  .owl-carousel.owl-loaded {
    display: block; }
  .owl-carousel.owl-loading {
    opacity: 0;
    display: block; }
  .owl-carousel.owl-hidden {
    opacity: 0; }
  .owl-carousel.owl-refresh .owl-item {
    visibility: hidden; }
  .owl-carousel.owl-drag .owl-item {
    touch-action: pan-y;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none; }
  .owl-carousel.owl-grab {
    cursor: move;
    cursor: grab; }
  .owl-carousel.owl-rtl {
    direction: rtl; }
  .owl-carousel.owl-rtl .owl-item {
    float: right; }

/* No Js */
.no-js .owl-carousel {
  display: block; }

/*
 *  Owl Carousel - Animate Plugin
 */
.owl-carousel .animated {
  animation-duration: 1000ms;
  animation-fill-mode: both; }

.owl-carousel .owl-animated-in {
  z-index: 0; }

.owl-carousel .owl-animated-out {
  z-index: 1; }

.owl-carousel .fadeOut {
  animation-name: fadeOut; }

@keyframes fadeOut {
  0% {
    opacity: 1; }
  100% {
    opacity: 0; } }

/*
 * 	Owl Carousel - Auto Height Plugin
 */
.owl-height {
  transition: height 500ms ease-in-out; }

/*
 * 	Owl Carousel - Lazy Load Plugin
 */
.owl-carousel .owl-item {
  /**
			This is introduced due to a bug in IE11 where lazy loading combined with autoheight plugin causes a wrong
			calculation of the height of the owl-item that breaks page layouts
		 */ }
  .owl-carousel .owl-item .owl-lazy {
    opacity: 0;
    transition: opacity 400ms ease; }
  .owl-carousel .owl-item .owl-lazy[src^=""], .owl-carousel .owl-item .owl-lazy:not([src]) {
    max-height: 0; }
  .owl-carousel .owl-item img.owl-lazy {
    transform-style: preserve-3d; }

/*
 * 	Owl Carousel - Video Plugin
 */
.owl-carousel .owl-video-wrapper {
  position: relative;
  height: 100%;
  background: #000; }

.owl-carousel .owl-video-play-icon {
  position: absolute;
  height: 80px;
  width: 80px;
  left: 50%;
  top: 50%;
  margin-left: -40px;
  margin-top: -40px;
  background: url(../../../images/owl.video.play.png) no-repeat;
  cursor: pointer;
  z-index: 1;
  -webkit-backface-visibility: hidden;
  transition: transform 100ms ease; }

.owl-carousel .owl-video-play-icon:hover {
  transform: scale(1.3, 1.3); }

.owl-carousel .owl-video-playing .owl-video-tn,
.owl-carousel .owl-video-playing .owl-video-play-icon {
  display: none; }

.owl-carousel .owl-video-tn {
  opacity: 0;
  height: 100%;
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  transition: opacity 400ms ease; }

.owl-carousel .owl-video-frame {
  position: relative;
  z-index: 1;
  height: 100%;
  width: 100%; }

/*
 * 	Default theme - Owl Carousel CSS File
 */
.owl-theme .owl-nav {
  margin-top: 10px;
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-nav [class*='owl-'] {
    color: #FFF;
    font-size: 14px;
    margin: 5px;
    padding: 4px 7px;
    background: #D6D6D6;
    display: inline-block;
    cursor: pointer;
    border-radius: 3px; }
    .owl-theme .owl-nav [class*='owl-']:hover {
      background: #869791;
      color: #FFF;
      text-decoration: none; }
  .owl-theme .owl-nav .disabled {
    opacity: 0.5;
    cursor: default; }

.owl-theme .owl-nav.disabled + .owl-dots {
  margin-top: 10px; }

.owl-theme .owl-dots {
  text-align: center;
  -webkit-tap-highlight-color: transparent; }
  .owl-theme .owl-dots .owl-dot {
    display: inline-block;
    zoom: 1;
    *display: inline; }
    .owl-theme .owl-dots .owl-dot span {
      width: 10px;
      height: 10px;
      margin: 5px 7px;
      background: #D6D6D6;
      display: block;
      -webkit-backface-visibility: visible;
      transition: opacity 200ms ease;
      border-radius: 30px; }
    .owl-theme .owl-dots .owl-dot.active span, .owl-theme .owl-dots .owl-dot:hover span {
      background: #869791; }

header {
  color: #000;
  padding: 19px 0;
  position: fixed;
  top: 0;
  width: 100%;
  transition: background-color 0.3s, transform 0.3s;
  background-color: #fff;
  z-index: 101; }
  html.details header {
    top: 115px; }
  header.open {
    background-color: #fff; }
    header.open .header-inner {
      visibility: visible;
      opacity: 1;
      overflow-y: auto; }
  @media only screen and (max-width: 1023px) {
    header.hide {
      transform: translateY(-100%); } }
  header .contact-icons {
    display: flex;
    align-items: center;
    height: 26px;
    width: 188px; }
    header .contact-icons .phone-icon {
      display: none; }
    header .contact-icons .mail-icon {
      display: flex;
      align-items: center;
      position: relative;
      width: 100%;
      justify-content: flex-end; }
      header .contact-icons .mail-icon svg {
        animation: slideAnimation 3s infinite; }
      header .contact-icons .mail-icon::after {
        content: '\41F\420\41E\421\427\418\422\410\422\42C   \41F\420\41E\415\41A\422';
        height: calc(100% - 3px);
        font-size: 14px;
        line-height: 17px;
        padding: 0 8px;
        white-space: nowrap;
        box-sizing: border-box;
        color: #fff;
        background: #000;
        position: absolute;
        right: 1px;
        top: 50%;
        transform: translateY(-50%);
        clip: rect(0px, auto, auto, 100px);
        animation: clipAnimation 3s infinite; }
  header .mobile-contact-icon {
    display: flex;
    align-items: center; }
    header .mobile-contact-icon .contact-icons {
      display: flex;
      margin-right: 10px;
      justify-content: flex-end;
      width: auto; }
      @media only screen and (min-width: 1024px) {
        header .mobile-contact-icon .contact-icons {
          display: none; } }
  @media only screen and (min-width: 1024px) {
    header .logo.home {
      transform: translateY(-200%);
      transition: transform .3s; }
      header .logo.home.active {
        transform: translateY(0); } }
  header .logo {
    grid-column: 2;
    display: flex;
    align-items: center; }
    header .logo svg {
      width: 108px;
      height: 14px;
      fill: #000;
      display: block; }
    header .logo a {
      position: relative; }
    header .logo span {
      position: absolute;
      width: 100%;
      height: 100%;
      top: 0; }
  header .menu-opener {
    grid-column: 5;
    display: flex;
    justify-content: flex-end; }
  header .opener {
    display: flex;
    justify-content: flex-end;
    tap-highlight-color: transparent; }
    @media only screen and (min-width: 1024px) {
      header .opener {
        display: none; } }
    header .opener.open b:before {
      animation: krest1 0.5s forwards; }
    header .opener.open b:after {
      animation: krest2 0.5s forwards; }
    header .opener b {
      width: 36px;
      height: 36px;
      position: relative;
      transform: translateX(2px); }
      header .opener b:before, header .opener b:after {
        content: '';
        width: 32px;
        height: 4px;
        background-color: #000;
        position: absolute;
        top: 11px;
        left: 2px; }
      header .opener b:before {
        animation: krest1init 0.5s forwards; }
      header .opener b:after {
        top: auto;
        bottom: 11px;
        animation: krest2init 0.5s forwards; }
  header .header-inner {
    padding: 25px var(--outsideIndent);
    box-sizing: border-box;
    background-color: #fff;
    position: absolute;
    top: var(--headerHeight);
    width: 100%;
    height: calc(100vh - var(--headerHeight));
    visibility: hidden;
    transition: visibility 0.4s, opacity 0.4s;
    opacity: 0; }
    @media only screen and (min-width: 1024px) {
      header .header-inner {
        position: static;
        width: auto;
        height: auto;
        grid-column: 3 / span 5;
        padding: 0;
        display: flex;
        align-items: center;
        justify-content: flex-end;
        visibility: visible;
        opacity: 1;
        background: none; }
        header .header-inner .contact-icons {
          padding-left: 0; } }
    @media only screen and (max-width: 1023px) {
      header .header-inner > .contact-icons {
        display: none; } }
    header .header-inner .language_block {
      display: none !important; }
    header .header-inner nav {
      font-size: 36px;
      font-weight: 900;
      text-transform: uppercase;
      line-height: 0.89;
      margin-bottom: 34px; }
      @media only screen and (min-width: 768px) {
        header .header-inner nav {
          font-size: 88px;
          margin-bottom: 64px; } }
      @media only screen and (min-width: 1024px) {
        header .header-inner nav {
          font-size: 14px;
          line-height: 1.43;
          font-weight: bold;
          letter-spacing: 0.5px;
          display: flex;
          margin-right: 30px;
          margin-bottom: 0; } }
      header .header-inner nav a,
      header .header-inner nav span {
        display: block;
        padding: 18px 0 14px; }
        @media only screen and (min-width: 768px) {
          header .header-inner nav a,
          header .header-inner nav span {
            padding: 23px 0 18px; } }
        @media only screen and (min-width: 1024px) {
          header .header-inner nav a,
          header .header-inner nav span {
            padding: 0;
            border: none; } }
      header .header-inner nav a {
        margin-right: 20px; }
    header .header-inner .m-item {
      position: relative;
      border-bottom: 1px solid #000; }
      @media only screen and (min-width: 1024px) {
        header .header-inner .m-item {
          border-bottom: none; } }
      header .header-inner .m-item.first {
        border-top: 1px solid #000; }
        @media only screen and (min-width: 1024px) {
          header .header-inner .m-item.first {
            border: none; } }
      header .header-inner .m-item:last-child > a {
        margin-right: 0; }
      @media only screen and (min-width: 1024px) {
        header .header-inner .m-item.active .sub-opener a:after {
          content: '\25B2'; } }
      @media only screen and (max-width: 1023px) {
        header .header-inner .m-item.active .sub-opener:after {
          transform: none; } }
      header .header-inner .m-item.active .sub-menu {
        display: block; }
      header .header-inner .m-item .sub-opener {
        display: flex;
        justify-content: space-between;
        padding: 0; }
        @media only screen and (min-width: 1024px) {
          header .header-inner .m-item .sub-opener a:after {
            content: '\25BC';
            margin-left: 5px; } }
        @media only screen and (max-width: 1023px) {
          header .header-inner .m-item .sub-opener::after, header .header-inner .m-item .sub-opener::before {
            content: '';
            position: absolute;
            right: 0;
            top: 32px;
            width: 24px;
            height: 3px;
            margin: 0;
            background: #000;
            transition: transform .3s; }
          header .header-inner .m-item .sub-opener::after {
            transform: rotate(-90deg); } }
        header .header-inner .m-item .sub-opener > span {
          padding: 0;
          margin: 0; }
      header .header-inner .m-item .sub-menu {
        display: none; }
        header .header-inner .m-item .sub-menu a {
          margin-right: 0; }
        @media only screen and (min-width: 1024px) {
          header .header-inner .m-item .sub-menu {
            position: absolute;
            list-style: none;
            margin: 0;
            min-height: auto;
            font-size: 14px;
            line-height: 20px;
            text-transform: uppercase;
            font-weight: bold;
            display: none;
            width: auto;
            min-width: calc(100% + 40px);
            top: auto;
            left: 50%;
            transform: translateX(-50%);
            padding: 30px var(--outsideIndent);
            background-color: #fff;
            box-sizing: border-box;
            border: 1px solid #000; }
            header .header-inner .m-item .sub-menu .sub-opener {
              position: relative;
              cursor: pointer;
              padding-right: 30px; }
              header .header-inner .m-item .sub-menu .sub-opener::after, header .header-inner .m-item .sub-menu .sub-opener::before {
                content: '';
                position: absolute;
                right: 0;
                top: 50%;
                width: 12px;
                height: 1.5px;
                margin: 0;
                transform: translateY(-50%);
                background: #000;
                transition: transform .3s; }
              header .header-inner .m-item .sub-menu .sub-opener::after {
                transform: translateY(-50%) rotate(-90deg); }
              header .header-inner .m-item .sub-menu .sub-opener a {
                white-space: nowrap;
                position: relative; }
                header .header-inner .m-item .sub-menu .sub-opener a::before, header .header-inner .m-item .sub-menu .sub-opener a::after {
                  display: none; }
            header .header-inner .m-item .sub-menu .sub-menu {
              margin-top: 15px;
              position: static;
              font-weight: 600;
              min-width: initial;
              transform: none;
              padding: 0 0 0 15px;
              border-width: 0 0 0 1px;
              border-color: rgba(0, 0, 0, 0.4); }
            header .header-inner .m-item .sub-menu .m-item:not(.active) > .sub-menu {
              display: none; }
            header .header-inner .m-item .sub-menu .m-item.active > .sub-opener::after {
              transform: translateY(-50%); }
            header .header-inner .m-item .sub-menu > a {
              white-space: nowrap; }
            header .header-inner .m-item .sub-menu > *:not(:first-child) {
              margin-top: 15px; } }
        @media only screen and (max-width: 1023px) {
          header .header-inner .m-item .sub-menu {
            font-weight: 900;
            font-size: 20px; }
            header .header-inner .m-item .sub-menu .sub-opener a {
              max-width: calc(100% - 50px); }
            header .header-inner .m-item .sub-menu a {
              padding: 15px 0; }
            header .header-inner .m-item .sub-menu .sub-menu {
              margin: 15px 0;
              font-weight: 600;
              padding: 0 0 0 15px;
              border-left: 1px solid rgba(0, 0, 0, 0.4); }
              header .header-inner .m-item .sub-menu .sub-menu a {
                text-transform: none; }
                header .header-inner .m-item .sub-menu .sub-menu a:first-child {
                  padding-top: 0; }
                header .header-inner .m-item .sub-menu .sub-menu a:last-child {
                  padding-bottom: 0; }
            header .header-inner .m-item .sub-menu .m-item {
              border: none; }
              header .header-inner .m-item .sub-menu .m-item:not(.active) > .sub-menu {
                display: none; }
              header .header-inner .m-item .sub-menu .m-item:not(.active) > .sub-opener::after {
                transform: rotate(-90deg); } }

@keyframes slideAnimation {
  0%, 100% {
    transform: translateX(-165px); }
  50% {
    transform: translateX(0px); } }

@keyframes clipAnimation {
  0%, 100% {
    clip: rect(0px, auto, auto, 0px); }
  50% {
    clip: rect(0px, auto, auto, 165px); } }

@keyframes krest1init {
  from {
    transform: translateY(5px) rotateZ(20deg); }
  50% {
    transform: translateY(5px); }
  to {
    transform: translateY(0); } }

@keyframes krest2init {
  from {
    transform: translateY(-5px) rotateZ(-20deg); }
  50% {
    transform: translateY(-5px); }
  to {
    transform: translateY(0); } }

@keyframes krest1 {
  50% {
    transform: translateY(5px); }
  to {
    transform: translateY(5px) rotateZ(20deg); } }

@keyframes krest2 {
  50% {
    transform: translateY(-5px); }
  to {
    transform: translateY(-5px) rotateZ(-20deg); } }

.our-offers-list a:first-child .item {
  border-top: 1px solid #000; }

.our-offers-list.margin-bottom {
  margin-bottom: 120px; }
  @media only screen and (min-width: 1024px) {
    .our-offers-list.margin-bottom {
      margin-bottom: 210px; } }

.our-offers-list .offer {
  margin-bottom: var(--margin120); }
  .our-offers-list .offer.fact-inside .header:before {
    content: none; }
  .our-offers-list .offer.about {
    margin-bottom: 150px; }
    .our-offers-list .offer.about .header {
      margin-bottom: 30px; }
      .our-offers-list .offer.about .header:before {
        content: none; }
    @media only screen and (min-width: 1024px) {
      .our-offers-list .offer.about .pic .wrap {
        width: calc(100% - var(--blueCell)); }
        .our-offers-list .offer.about .pic .wrap .block-wrap {
          height: auto;
          position: relative;
          width: 100%;
          display: block; }
          .our-offers-list .offer.about .pic .wrap .block-wrap img {
            width: 100%;
            height: auto; } }
    @media only screen and (min-width: 1900px) {
      .our-offers-list .offer.about .pic .wrap {
        width: var(--contentCell); } }
  .our-offers-list .offer .header {
    grid-column: var(--start234)/span var(--span422);
    margin-bottom: var(--margin303060); }
    .our-offers-list .offer .header:before {
      content: '';
      display: block;
      width: 100%;
      height: 5px;
      background-color: #000;
      margin-bottom: 30px; }
      @media only screen and (min-width: 1200px) {
        .our-offers-list .offer .header:before {
          height: 10px; } }
  .our-offers-list .offer .blocks-list-item {
    grid-column-end: span 2;
    border: 1px solid #000;
    box-sizing: border-box;
    margin-right: -1px;
    margin-bottom: -1px; }
    .our-offers-list .offer .blocks-list-item:nth-of-type(2n - 1) {
      grid-column-start: var(--start234); }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer .blocks-list-item {
        grid-column-end: span 1; }
        .our-offers-list .offer .blocks-list-item:nth-of-type(2n - 1) {
          grid-column-start: auto; }
        .our-offers-list .offer .blocks-list-item:nth-of-type(3n - 2) {
          grid-column-start: var(--start234); } }
    .no-touch .our-offers-list .offer .blocks-list-item:hover .hover-image {
      opacity: 1;
      animation: bgAnim 3s linear infinite; }
      .no-touch .our-offers-list .offer .blocks-list-item:hover .hover-image + .text {
        color: #fff; }
    .no-touch .our-offers-list .offer .blocks-list-item:hover .inner-wrap {
      background-color: #000;
      animation: bgAnim 3s linear infinite; }
      .no-touch .our-offers-list .offer .blocks-list-item:hover .inner-wrap > div {
        color: #fff; }
    .our-offers-list .offer .blocks-list-item .inner {
      padding-bottom: 100%;
      position: relative; }
    .our-offers-list .offer .blocks-list-item .inner-wrap {
      position: absolute;
      width: 100%;
      height: 100%;
      padding: 12px;
      box-sizing: border-box;
      display: flex;
      align-items: flex-end;
      overflow: hidden;
      background-position: 50% 0;
      background-size: auto 100%;
      transition: background-color 0.3s; }
      .our-offers-list .offer .blocks-list-item .inner-wrap > div {
        transition: color 0.3s; }
    .our-offers-list .offer .blocks-list-item .hover-image {
      position: absolute;
      width: 400%;
      height: 100%;
      left: 0;
      top: 0;
      background-size: auto 100%;
      opacity: 0;
      transition: opacity 0.3s;
      will-change: transform;
      background-color: #000;
      transform: translateX(-10.45%); }
    .our-offers-list .offer .blocks-list-item .text {
      position: relative;
      line-height: 1;
      transition: color 0.3s; }
  .our-offers-list .offer .blocks-list {
    grid-column: var(--start234)/span var(--span433);
    display: flex;
    flex-wrap: wrap;
    padding-left: 1px;
    padding-top: 1px;
    margin-bottom: 30px; }
    .our-offers-list .offer .blocks-list .block {
      width: calc(50% + 1px);
      border: 1px solid #000;
      box-sizing: border-box;
      margin-left: -1px;
      margin-top: -1px; }
      @media only screen and (min-width: 760px) {
        .our-offers-list .offer .blocks-list .block {
          width: calc(33.33% + 1px); } }
      .our-offers-list .offer .blocks-list .block .inner {
        padding-bottom: 100%;
        position: relative; }
      .our-offers-list .offer .blocks-list .block .inner-wrap {
        position: absolute;
        width: 100%;
        height: 100%;
        padding: 12px;
        box-sizing: border-box;
        display: flex;
        align-items: flex-end; }
      .our-offers-list .offer .blocks-list .block .text {
        line-height: 1; }
  .our-offers-list .offer .services-list {
    grid-column: var(--start234)/span var(--span332);
    font-weight: 600;
    line-height: 1.38;
    margin-top: 30px; }
    .our-offers-list .offer .services-list .item {
      display: block; }
      .our-offers-list .offer .services-list .item:not(:last-child) {
        margin-bottom: 1em; }
        @media only screen and (min-width: 760px) {
          .our-offers-list .offer .services-list .item:not(:last-child) {
            margin-bottom: 0; } }
  .our-offers-list .offer .pic {
    grid-column: 3 / span 3;
    margin-top: var(--margin30); }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer .pic {
        grid-column: 2 / span 2; } }
    @media only screen and (min-width: 1024px) {
      .our-offers-list .offer .pic {
        grid-row: 1 / span 1;
        margin-top: 0; } }
    .our-offers-list .offer .pic .wrap {
      position: relative;
      width: 100%; }
    @media only screen and (min-width: 1024px) {
      .our-offers-list .offer .pic .block-wrap {
        width: calc(100% - var(--blueCell));
        display: block;
        position: relative; } }
    .our-offers-list .offer .pic img {
      width: 100%;
      display: block;
      margin-bottom: 10px;
      height: auto; }
      @media only screen and (min-width: 1024px) {
        .our-offers-list .offer .pic img {
          margin: 0; } }
    .our-offers-list .offer .pic .title {
      font-size: 14px;
      font-weight: bold;
      text-transform: uppercase;
      line-height: 1.43; }
      @media only screen and (min-width: 1024px) {
        .our-offers-list .offer .pic .title {
          position: absolute;
          top: calc(100% + 10px);
          width: 100%;
          text-align: right; } }
  .our-offers-list .offer .fact {
    grid-column: 4 / span 2;
    padding: 10px 0 50px;
    margin-top: 30px; }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer .fact {
        grid-column: 2 / span 1;
        grid-row: 1 / span 1;
        padding: 0 45px 0 0;
        margin-top: 0; } }
    @media only screen and (min-width: 1024px) {
      .our-offers-list .offer .fact {
        grid-column-start: 3;
        padding-right: 0; } }
    .our-offers-list .offer .fact:before, .our-offers-list .offer .fact:after {
      content: '';
      grid-column: 4 / span 2;
      height: 1px;
      display: block;
      background-color: #000;
      position: absolute;
      left: var(--outsideIndent);
      right: var(--outsideIndent);
      margin-top: -10px; }
      @media only screen and (min-width: 760px) {
        .our-offers-list .offer .fact:before, .our-offers-list .offer .fact:after {
          content: none; } }
    .our-offers-list .offer .fact:after {
      margin-top: 50px; }
    .our-offers-list .offer .fact > * {
      display: block; }
    .our-offers-list .offer .fact .text {
      font-size: 72px;
      font-weight: 800;
      line-height: 0.89;
      letter-spacing: -0.016em;
      margin-bottom: 0; }
      @media only screen and (min-width: 1024px) {
        .our-offers-list .offer .fact .text {
          font-size: 120px; } }
    .our-offers-list .offer .fact .small {
      font-size: 12px;
      line-height: 1.33; }

.our-offers-list .description {
  grid-column: content-start / content-end;
  padding: 30px 0;
  border: 1px solid #000;
  border-width: 1px 0; }
  @media only screen and (min-width: 760px) {
    .our-offers-list .description {
      grid-column-start: content-1;
      display: flex; } }

.our-offers-list .text {
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 600;
  line-height: 1.38; }
  @media only screen and (min-width: 760px) {
    .our-offers-list .text {
      font-size: 24px;
      font-weight: bold;
      line-height: 1.17;
      width: 66.66%;
      margin-bottom: 0; } }

.our-offers-list .services {
  font-size: 12px; }
  @media only screen and (min-width: 760px) {
    .our-offers-list .services {
      text-align: right;
      width: 33.33%; } }
  .our-offers-list .services a {
    display: block; }

.our-offers-list .offer2 {
  margin-bottom: 90px; }
  .our-offers-list .offer2 .img-wrap {
    grid-column: content-start / content-end;
    margin-bottom: var(--margin303060); }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer2 .img-wrap {
        grid-column-start: content-center; } }
  .our-offers-list .offer2 img {
    width: 100%;
    display: block; }
  .our-offers-list .offer2 .header {
    grid-column: content-start / content-end;
    margin-bottom: 10px; }
    .our-offers-list .offer2 .header a {
      display: grid; }
      .our-offers-list .offer2 .header a .clip-block,
      .our-offers-list .offer2 .header a .border-block {
        grid-column: 1;
        grid-row: 1;
        position: relative;
        margin-left: -0.04em;
        padding-right: 0.9em; }
      .our-offers-list .offer2 .header a .clip-block {
        transition: clip-path 0.5s;
        clip-path: polygon(0 500px, calc(500px + -300px) 500px, calc(0px + -300px) 0, 0 0);
        color: #000;
        -webkit-text-stroke: 0;
        text-stroke: 0; }
        .our-offers-list .offer2 .header a .clip-block .arrow {
          fill: #000; }
      .our-offers-list .offer2 .header a:hover .clip-block {
        clip-path: polygon(0 500px, calc(500px + 100%) 500px, calc(0px + 100%) 0, 0 0); }
    .our-offers-list .offer2 .header .arrow {
      position: absolute;
      right: -0.08em;
      height: auto;
      width: 0.9em;
      top: 0.03em; }
      @media only screen and (min-width: 760px) {
        .our-offers-list .offer2 .header .arrow {
          width: 0.85em;
          top: 0.05em; } }
      @media only screen and (min-width: 1200px) {
        .our-offers-list .offer2 .header .arrow {
          top: 0.03em; } }
      .no-touch .our-offers-list .offer2 .header .arrow {
        fill: rgba(0, 0, 0, 0);
        stroke: #000;
        stroke-width: 1; }
  .our-offers-list .offer2 .caption {
    max-width: 570px;
    grid-column: content-start / content-3;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.38;
    margin-bottom: 30px; }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer2 .caption {
        font-size: 24px;
        line-height: 1.17;
        grid-column-end: content-end;
        font-weight: bold; } }
  .our-offers-list .offer2 .decor {
    grid-column: content-start / content-end;
    height: 5px;
    background-color: #000;
    margin-bottom: 30px; }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer2 .decor {
        display: block; } }
    .our-offers-list .offer2 .decor.marginb30 {
      margin-bottom: var(--margin303060); }
  .our-offers-list .offer2 .services-list {
    grid-column: content-start / content-end;
    font-size: 14px;
    line-height: 1.43;
    letter-spacing: 0.5px;
    font-weight: bold;
    text-transform: uppercase; }
    @media only screen and (min-width: 760px) {
      .our-offers-list .offer2 .services-list {
        grid-column: content-center / content-end; } }
    .our-offers-list .offer2 .services-list .item {
      padding: 5px 0;
      border-bottom: 1px solid #000; }
      .our-offers-list .offer2 .services-list .item:after {
        display: block;
        opacity: 0;
        transform: translateX(-20px);
        transition: all 0.15s ease-in-out;
        content: "";
        width: 30px;
        height: 30px;
        float: right;
        background: url(../../../images/arrow-black-link.svg) no-repeat; }
      .our-offers-list .offer2 .services-list .item:hover:after {
        opacity: 1;
        transform: translateX(0); }

.technologies .our-offers-list:after, .technologies .our-offers-list:before {
  display: block;
  position: static;
  grid-column: 2 / span 4;
  background-color: #000;
  height: 5px;
  width: 0;
  margin-bottom: 10px;
  transition: width 0.6s; }

.technologies .our-offers-list:before {
  margin-bottom: 30px; }

.page-node-type-service .offer-lvl1 .pic-block {
  margin-top: 0; }
  .page-node-type-service .offer-lvl1 .pic-block .fon {
    grid-column: start / end; }
    @media only screen and (min-width: 1024px) {
      .page-node-type-service .offer-lvl1 .pic-block .fon {
        grid-column: content-start / content-3;
        position: relative; } }
  @media only screen and (max-width: 1023px) {
    .page-node-type-service .offer-lvl1 .pic-block .img-wrap {
      grid-column: start / end; } }
  @media only screen and (max-width: 1023px) {
    .page-node-type-service .offer-lvl1 .pic-block img {
      width: 100%;
      margin-left: 0;
      transform: none; } }
  @media only screen and (min-width: 760px) {
    .page-node-type-service .offer-lvl1 .pic-block + .mainGrid {
      position: relative; } }
  @media only screen and (min-width: 760px) {
    .page-node-type-service .offer-lvl1 .pic-block + .mainGrid .description {
      grid-column: content-start / content-3;
      position: relative;
      padding-top: 70px; } }

.page-node-type-service .offer-lvl1 .header-style7 {
  max-width: 900px; }

.offer-lvl1 .main-header {
  position: relative; }

.offer-lvl1 .main-header-offers {
  grid-column: content-start / content-end;
  z-index: 1;
  margin: 0 0 20px; }
  @media only screen and (min-width: 760px) {
    .offer-lvl1 .main-header-offers {
      margin: 0 0 30px; } }

.offer-lvl1 .pic-block {
  margin-top: var(--headerHeight);
  margin-bottom: var(--px3030-30); }
  .offer-lvl1 .pic-block .img-wrap {
    grid-column: start / end;
    grid-row: 1 / 1;
    overflow: hidden; }
    @media only screen and (min-width: 760px) {
      .offer-lvl1 .pic-block .img-wrap {
        grid-column: content-start / content-end; } }
    @media only screen and (min-width: 1024px) {
      .offer-lvl1 .pic-block .img-wrap {
        grid-column: content-start / content-3;
        position: relative; } }
  .offer-lvl1 .pic-block img {
    width: 100%;
    width: 126.4%;
    position: relative;
    margin-left: -13.2%;
    display: block;
    transform: scale(0.9);
    transform-origin: bottom center; }
    @media only screen and (min-width: 760px) {
      .offer-lvl1 .pic-block img {
        width: 100%;
        margin-left: 0;
        transform: none; } }
  .offer-lvl1 .pic-block .fon {
    grid-column: content-1 / end;
    grid-row: 1 / 1;
    background-color: #f7f7f7;
    height: 100%; }
    @media only screen and (min-width: 760px) {
      .offer-lvl1 .pic-block .fon {
        grid-column-start: content-center; } }
    @media only screen and (min-width: 1024px) {
      .offer-lvl1 .pic-block .fon {
        grid-column-end: content-end; } }

.offer-lvl1 .services-benefits {
  grid-column: content-start / content-end; }
  @media only screen and (min-width: 768px) {
    .offer-lvl1 .services-benefits {
      grid-column: content-center / content-end;
      grid-row: 1; } }

.offer-lvl1 .services-list {
  grid-column: content-start / content-end;
  font-size: 14px;
  line-height: 1.43;
  letter-spacing: 0.5px;
  font-weight: bold;
  text-transform: uppercase; }
  @media only screen and (min-width: 760px) {
    .offer-lvl1 .services-list {
      grid-column: content-center / content-end; } }
  .offer-lvl1 .services-list .item {
    padding: 5px 0;
    border-bottom: 1px solid #000; }
    .offer-lvl1 .services-list .item:first-child {
      border-top: 1px solid #000; }
    .offer-lvl1 .services-list .item a:after {
      content: "";
      display: block;
      transition: all 0.3s ease-in-out;
      width: 20px;
      height: 20px;
      float: right;
      background: url(../../../images/rotated-arrow.svg) no-repeat; }
    .offer-lvl1 .services-list .item a:hover:after {
      transform: rotate(45deg); }

.offer-lvl1 .description {
  grid-column: content;
  margin-bottom: var(--margin60); }
  .offer-lvl1 .description a {
    text-decoration: underline;
    text-underline-offset: 2px; }
  @media only screen and (min-width: 760px) {
    .offer-lvl1 .description {
      grid-column: content-start / content-3;
      font-size: 24px;
      line-height: 1.17;
      margin-bottom: var(--margin120); } }
  @media only screen and (min-width: 1024px) {
    .offer-lvl1 .description {
      grid-column-start: content-1; } }
  @media only screen and (min-width: 1200px) {
    .offer-lvl1 .description {
      margin-bottom: 120px; } }
  .offer-lvl1 .description p {
    margin-top: 0;
    margin-bottom: 0;
    line-height: 1.38; }
    @media only screen and (min-width: 760px) {
      .offer-lvl1 .description p {
        line-height: 1.17; } }
  @media only screen and (min-width: 768px) {
    .page-node-type-service .offer-lvl1 .description {
      font-size: 24px; } }
  @media only screen and (min-width: 1024px) {
    .page-node-type-service .offer-lvl1 .description {
      grid-column: content-start / content-3;
      font-size: 36px;
      font-weight: 700;
      max-width: 855px; } }
  .page-node-type-service .offer-lvl1 .description p {
    font-weight: 700; }
    @media only screen and (min-width: 768px) {
      .page-node-type-service .offer-lvl1 .description p {
        line-height: 1.1; } }

.offer-lvl1 .service-target {
  margin: 0 0 120px; }
  @media only screen and (min-width: 1024px) {
    .offer-lvl1 .service-target {
      margin: 0 0 180px; } }
  .offer-lvl1 .service-target .description {
    grid-column: content-start / content-end;
    font-size: 24px;
    margin: 0 0 30px;
    font-weight: 700; }
    .offer-lvl1 .service-target .description a {
      text-decoration: underline;
      text-underline-offset: 2px; }
    @media only screen and (min-width: 768px) {
      .offer-lvl1 .service-target .description {
        grid-column: content-start / content-center;
        padding: 0 70px 0 0; } }
    @media only screen and (min-width: 1024px) {
      .offer-lvl1 .service-target .description {
        font-size: 36px; } }
    .offer-lvl1 .service-target .description p {
      margin-top: 0; }
  .offer-lvl1 .service-target .caption {
    margin: 0 0 30px;
    /* @include m768 {
				max-width: 420px;
			} */ }
    .offer-lvl1 .service-target .caption a {
      text-decoration: underline;
      text-underline-offset: 2px; }
    .offer-lvl1 .service-target .caption p {
      margin-top: 0; }

.select-offer-pack {
  margin-bottom: var(--margin120); }
  .select-offer-pack .header {
    grid-column: content-start / content-end;
    margin-bottom: var(--margin30); }
    @media only screen and (min-width: 760px) {
      .select-offer-pack .header {
        grid-column-end: content-center; } }
    @media only screen and (min-width: 1024px) {
      .select-offer-pack .header {
        grid-column: content-start / content-end; } }
  .select-offer-pack a.offer-pack:hover .title:after {
    opacity: 1;
    transform: translateX(0); }
  .select-offer-pack .offer-pack:hover .img-wrap {
    opacity: 1; }
    .select-offer-pack .offer-pack:hover .img-wrap .img-inner {
      animation: bgAnim 3s linear infinite; }
  .select-offer-pack .offer-pack:before, .select-offer-pack .offer-pack:after {
    content: '';
    height: 1px;
    background-color: #000;
    display: block;
    grid-column: content-start;
    margin-top: 60px;
    grid-column-end: content-end; }
  .select-offer-pack .offer-pack:before {
    content: '';
    margin-top: 0;
    margin-bottom: 30px;
    height: 0; }
  .select-offer-pack .offer-pack.pos-0:before {
    height: 1px; }
  .select-offer-pack .offer-pack .title {
    max-width: 430px;
    grid-column: content;
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 20px;
    line-height: 1.17;
    word-break: break-word;
    position: relative; }
    .select-offer-pack .offer-pack .title:after {
      position: absolute;
      right: 10px;
      display: block;
      opacity: 0;
      transform: translateX(-20px);
      transition: all 0.15s ease-in-out;
      content: "";
      width: 30px;
      height: 30px;
      float: right;
      background: url(../../../images/arrow-black-link.svg) no-repeat;
      margin-top: 10px; }
    @media only screen and (min-width: 1024px) {
      .select-offer-pack .offer-pack .title {
        padding-right: 50px;
        grid-column: content-start / content-center;
        font-size: 36px;
        line-height: 1.11;
        display: flex;
        align-items: flex-end;
        justify-content: space-between; } }
  .select-offer-pack .offer-pack .pack-items {
    grid-column: content-1 / content-end; }
  .select-offer-pack .offer-pack .pack-description {
    grid-column: content-start / content-end; }
    .select-offer-pack .offer-pack .pack-description .item:not(.no-dash) {
      padding-left: 40px; }
      .select-offer-pack .offer-pack .pack-description .item:not(.no-dash):before {
        margin-left: 0; }
  @media only screen and (min-width: 760px) {
    .select-offer-pack .offer-pack .pack-items,
    .select-offer-pack .offer-pack .pack-description {
      grid-column-start: content-center;
      grid-row: 2 / span 3; } }
  .select-offer-pack .offer-pack .item {
    position: relative; }
    .select-offer-pack .offer-pack .item:not(:last-child) {
      margin-bottom: 1em; }
    .select-offer-pack .offer-pack .item:not(.no-dash):before {
      content: '';
      position: absolute;
      top: 0.69em;
      left: 0;
      width: 30px;
      height: 1px;
      background-color: #000;
      margin-left: -40px; }
  .select-offer-pack .offer-pack .price-action {
    grid-column: 3 / span 3;
    display: flex;
    align-items: baseline;
    margin-top: 30px; }
    @media only screen and (min-width: 760px) {
      .select-offer-pack .offer-pack .price-action {
        grid-column: 2 / span 2;
        grid-row: auto;
        display: block;
        margin-top: 0; } }
    @media only screen and (min-width: 1024px) {
      .select-offer-pack .offer-pack .price-action {
        grid-column: 4 / span 2;
        display: flex; } }
  .select-offer-pack .offer-pack .price {
    width: 66.66%;
    padding-right: 20px; }
    @media only screen and (min-width: 760px) {
      .select-offer-pack .offer-pack .price {
        width: auto; } }
  .select-offer-pack .offer-pack .img-wrap {
    grid-column: content-start / span 1;
    grid-row: 1 / span 4;
    position: relative;
    display: none;
    opacity: 0; }
    @media only screen and (min-width: 1024px) {
      .select-offer-pack .offer-pack .img-wrap {
        display: block; } }
    .select-offer-pack .offer-pack .img-wrap .img-inner {
      padding-bottom: 100%;
      position: absolute;
      width: 100%;
      background-color: #000;
      margin-left: calc(-1*var(--blueCell));
      background-position: 50% 0;
      background-size: auto 100%; }
  .select-offer-pack .button {
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.43;
    letter-spacing: 0.5px; }
  .select-offer-pack .black-button {
    grid-column: var(--start246)/span var(--span421);
    background-color: #000;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    height: 60px;
    margin-top: 30px; }
    @media only screen and (min-width: 760px) {
      .select-offer-pack .black-button {
        height: 70px; } }

@keyframes bgAnim {
  from {
    background-position: 50% 0; }
  to {
    background-position: 207% 0; } }

.cross-links {
  margin-bottom: 30px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.17; }
  @media only screen and (min-width: 760px) {
    .cross-links {
      font-size: 44px;
      font-weight: 900;
      line-height: 0.91;
      text-transform: uppercase; } }
  @media only screen and (min-width: 1024px) {
    .cross-links {
      font-size: 64px;
      line-height: 0.88; } }
  .cross-links a {
    grid-column: content-start / content-end;
    display: block;
    margin-bottom: 1em; }
    @media only screen and (min-width: 760px) {
      .cross-links a {
        margin-bottom: 0;
        color: transparent;
        transition: color 0.3s;
        -webkit-text-stroke: 1px #000;
        text-stroke: 1px #000; }
        .cross-links a:hover {
          color: #000; }
        .cross-links a:after {
          content: '/';
          color: #000;
          -webkit-text-stroke: unset;
          text-stroke: unset; } }

@media only screen and (min-width: 760px) {
  .solutions .case-text-wide .caption {
    grid-column: content-start / content-center;
    max-width: 100%; } }

.image-gallery.slides {
  display: flex;
  grid-column: content-start / content-end;
  justify-content: space-between;
  flex-wrap: wrap; }
  @media only screen and (min-width: 1024px) {
    .image-gallery.slides {
      grid-column: content-start / content-center; } }
  .image-gallery.slides a {
    margin-top: var(--margin10);
    margin-bottom: var(--margin30);
    width: 300px; }
    @media only screen and (min-width: 1024px) {
      .image-gallery.slides a {
        width: 400px; } }
    @media only screen and (min-width: 1281px) {
      .image-gallery.slides a {
        width: 500px; } }
    @media only screen and (min-width: 1440px) {
      .image-gallery.slides a {
        width: 600px; } }
    @media only screen and (min-width: 1900px) {
      .image-gallery.slides a {
        width: 720px; } }

.solutions {
  margin-bottom: var(--margin120); }
  @media only screen and (min-width: 1024px) {
    .solutions .img-wrap {
      justify-content: center; } }
  .solutions .img-wrap a img {
    display: block;
    width: 100%; }
  .solutions .mainPic {
    grid-column: content-start / content-end;
    margin-bottom: 30px; }
    @media only screen and (min-width: 1024px) {
      .solutions .mainPic {
        margin-bottom: 60px; } }
  .solutions .item {
    margin-bottom: 30px; }
  .solutions .header {
    grid-column: content-start / content-end;
    margin-bottom: 10px; }
    @media only screen and (min-width: 760px) {
      .solutions .header {
        grid-column: content-start / content-3; } }
    @media only screen and (min-width: 1024px) {
      .solutions .header {
        margin-top: 60px;
        margin-bottom: 20px; } }
  .solutions .caption {
    grid-column: content-start / content-end;
    margin-bottom: var(--margin10);
    max-width: 350px; }
    @media only screen and (min-width: 760px) {
      .solutions .caption {
        grid-column: content-start / content-center; } }
  .solutions .pics {
    grid-column: content-start / content-end;
    display: flex;
    flex-flow: row wrap;
    justify-content: space-around; }
  .solutions .img-wrap {
    grid-column: content-start / content-end;
    margin-top: var(--margin10);
    width: 100%;
    max-width: 1200px; }
  .solutions .local-video {
    margin-top: var(--margin60); }
    .solutions .local-video:first-child, .solutions .local-video:only-child {
      margin-top: var(--margin60); }
  .solutions .video {
    grid-column: content-start / content-end;
    margin-bottom: 0; }
  .solutions .case-text-wide .img-wrap {
    max-width: 100%; }
  .solutions .case-text-wide .caption + .pics {
    margin-top: 30px; }
  .solutions .case-text-wide:first-child .pics:first-child {
    --margin: calc(var(--outsideIndent) * -1);
    margin-left: var(--margin);
    margin-right: var(--margin);
    pointer-events: none; }
    @media only screen and (min-width: 1024px) {
      .solutions .case-text-wide:first-child .pics:first-child {
        --margin: calc((var(--outsideIndent) + var(--blueCell)) * -1); } }
    @media only screen and (min-width: 1900px) {
      .solutions .case-text-wide:first-child .pics:first-child {
        --margin: calc((50vw - (var(--contentCell) * 2)) * -1); } }

.path-technologies .header-style3 {
  grid-column: content-start / content-end; }
  @media only screen and (max-width: 1023px) {
    .path-technologies .header-style3 {
      font-size: 36px; } }

@media only screen and (max-width: 1023px) {
  .path-technologies .header-style1 {
    font-size: 36px; } }

.path-technologies .our-offers-list .header-style3 {
  border-top: 5px solid black;
  padding: 20px 0; }

.path-technologies .technology {
  grid-column: content; }
  .path-technologies .technology__list-item {
    display: grid;
    grid-template-columns: repeat(4, var(--contentCell));
    margin-bottom: 20px;
    padding: 30px 0;
    border-top: 1px solid #000; }
    @media only screen and (min-width: 1200px) {
      .path-technologies .technology__list-item {
        margin-bottom: 0; } }
  .path-technologies .technology__tag {
    grid-column: 1 / 5;
    font-size: 36px;
    line-height: 1.2;
    font-weight: bold;
    margin-bottom: 20px; }
    @media only screen and (min-width: 1200px) {
      .path-technologies .technology__tag {
        grid-column: 1 / 2;
        margin-bottom: 0; } }

.path-technologies .technology__list {
  grid-column: 1 / 5; }
  @media only screen and (min-width: 1200px) {
    .path-technologies .technology__list {
      grid-column: 2 / span3; } }
  .path-technologies .technology__list:not(:nth-child(2)) a {
    margin: 0 30px; }
  .path-technologies .technology__list .header {
    padding-right: 0;
    display: inline; }
    .path-technologies .technology__list .header a {
      display: inline;
      background: transparent url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 4"><path fill="%23000" d="M0 0L0 4 4 4"/></svg>') no-repeat;
      background-size: 250%;
      -webkit-background-clip: text;
      transition: background 0.5s;
      background-position: 0% -30%; }
      .path-technologies .technology__list .header a:hover {
        background-position: 0% 100%; }

.technology {
  margin-bottom: var(--margin120); }
  .technology .header {
    grid-column: content-start / content-end;
    margin-bottom: 30px;
    display: block; }
  .technology .item {
    grid-column: content-start / content-end;
    padding: 30px 0;
    border-top: var(--border); }
    .technology .item:last-child {
      border-bottom: var(--border); }
    @media only screen and (min-width: 1024px) {
      .technology .item:hover .list .list {
        clip: rect(0px, 2000px, auto, 0px); } }
  .technology .list {
    position: relative; }
    .technology .list .list {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      clip: rect(0px, 0, auto, 0px);
      transition: clip .5s;
      pointer-events: none;
      color: #000; }
      .technology .list .list > * {
        color: #000; }
    .technology .list .span {
      display: inline; }
      .technology .list .span:last-child:after {
        content: none; }
      .technology .list .span:after {
        content: ' /';
        white-space: nowrap;
        padding-right: 10px; }
    .technology .list span {
      position: relative;
      display: inline-block; }
      .technology .list span:last-child:after {
        content: none; }
      .technology .list span:last-child .clip:after {
        content: none; }
      .technology .list span .clip {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        clip: rect(0px, 0, auto, 0px);
        transition: clip .5s;
        pointer-events: none;
        color: #000; }
        .technology .list span .clip:after {
          content: ' / ';
          white-space: nowrap;
          display: inline; }
      @media only screen and (min-width: 1024px) {
        .technology .list span:hover .clip {
          clip: rect(0px, 2000px, auto, 0px); } }
      .technology .list span:after {
        content: ' / ';
        white-space: nowrap; }

.page-node-type-marketing-case .products {
  margin-bottom: 0; }

.page-node-type-marketing-case .header-style1 {
  word-break: break-word; }
  .page-node-type-marketing-case .header-style1.stroke {
    word-break: break-word; }
    @media only screen and (min-width: 1024px) {
      .page-node-type-marketing-case .header-style1.stroke {
        margin-bottom: 80px;
        grid-column: 3 / span 3; } }

.page-node-type-marketing-case .standard-content > *,
.page-node-type-marketing-case .standard-content > .header.stroke {
  grid-column: content; }

.page-node-type-marketing-case .standard-content .field__item > .mainGrid.img {
  display: block;
  margin: 0; }

.page-node-type-marketing-case .standard-content .field__item > .wrapper--digit {
  margin-top: 60px; }
  .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit .header-style1 {
    margin-bottom: 30px;
    font-size: 48px; }

.page-node-type-marketing-case .standard-content .pics {
  margin: var(--margin30) 0; }

.page-node-type-marketing-case .standard-content .digit-list-component .item .top-text {
  line-height: 1; }

.page-node-type-marketing-case .standard-content .digit-list-component .item .header {
  word-break: break-word; }

@media only screen and (min-width: 768px) {
  .page-node-type-marketing-case .standard-content > *,
  .page-node-type-marketing-case .standard-content > .header.stroke {
    grid-column: 3 / span 3; }
  .page-node-type-marketing-case .standard-content .field__item > .mainGrid.img {
    display: block;
    margin: 0; }
  .page-node-type-marketing-case .standard-content .field__item > .wrapper {
    max-width: 66.67%; }
  .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit .header-style1 {
    font-size: 44px;
    margin-bottom: 30px; } }

@media only screen and (min-width: 1024px) {
  .page-node-type-marketing-case .standard-content > *,
  .page-node-type-marketing-case .standard-content > .header.stroke {
    grid-column: content-start/ span 3; }
  .page-node-type-marketing-case .standard-content .digit-list-component .item:not(:last-child) {
    margin-bottom: 40px; }
  .page-node-type-marketing-case .standard-content .pics {
    margin: 80px 0; }
  .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit {
    max-width: 100%;
    width: 513px;
    box-sizing: border-box;
    padding-left: 113px;
    margin: 80px auto 0; }
    .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit .header-style1 {
      margin-bottom: 80px;
      font-size: 64px; }
    .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit .digit-list-component .header {
      font-size: 88px; }
  .page-node-type-marketing-case .standard-content .before-contact-form {
    grid-column: 4 / span 3; } }

@media only screen and (min-width: 1440px) {
  .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit {
    width: 80%;
    margin-right: 0;
    padding-left: 13.22%; }
    .page-node-type-marketing-case .standard-content .field__item > .wrapper--digit .digit-list-component .header {
      font-size: 120px; } }

.page-node-type-marketing-case .about-project {
  padding-top: 30px; }
  .page-node-type-marketing-case .about-project-component .text-col .text p {
    margin: 0 0 15px;
    font-size: 12px;
    font-weight: 400;
    line-height: 1.33; }
    .page-node-type-marketing-case .about-project-component .text-col .text p strong {
      font-size: 16px;
      font-weight: 600;
      margin: 5px 0 0;
      display: block; }
  .page-node-type-marketing-case .about-project-component .text-col .text ul {
    padding-left: 31px; }
    .page-node-type-marketing-case .about-project-component .text-col .text ul strong {
      font-weight: 600; }
    .page-node-type-marketing-case .about-project-component .text-col .text ul li {
      margin: 0; }
      .page-node-type-marketing-case .about-project-component .text-col .text ul li::before {
        width: 16px;
        border-width: 1px;
        left: -31px; }
      .page-node-type-marketing-case .about-project-component .text-col .text ul li + li {
        margin-top: 5px; }
    @media only screen and (min-width: 768px) {
      .page-node-type-marketing-case .about-project-component .text-col .text ul {
        padding-left: 40px;
        margin-left: -40px;
        width: calc(100% + 40px); }
        .page-node-type-marketing-case .about-project-component .text-col .text ul li::before {
          width: 30px;
          left: -40px; } }
    @media only screen and (min-width: 1024px) {
      .page-node-type-marketing-case .about-project-component .text-col .text ul li + li {
        margin-top: 15px; } }

.results-descriptions-component {
  margin-bottom: 15px;
  margin-top: 30px; }
  .results-descriptions-component .title {
    font-size: 24px;
    font-weight: 700;
    line-height: 1.16;
    margin-bottom: 15px; }
  .results-descriptions-component .descriptions {
    font-weight: 600;
    line-height: 1.37;
    margin-bottom: 15px; }
  .results-descriptions-component .number {
    font-weight: 800;
    font-size: 80px;
    line-height: 1.25;
    letter-spacing: -2px;
    text-transform: uppercase;
    word-break: break-word; }
  .results-descriptions-component .text {
    font-size: 12px;
    font-weight: 400;
    line-height: 1.33;
    max-width: 153px; }
  @media only screen and (min-width: 768px) {
    .results-descriptions-component {
      margin-bottom: 20px; }
      .results-descriptions-component .title {
        margin-bottom: 20px; }
      .results-descriptions-component .descriptions {
        margin-bottom: 20px; }
      .results-descriptions-component .number {
        font-size: 88px;
        line-height: 1.13; } }
  @media only screen and (min-width: 1440px) {
    .results-descriptions-component {
      margin-bottom: 55px; }
      .results-descriptions-component .descriptions {
        margin-bottom: 40px; }
      .results-descriptions-component .number {
        font-size: 120px;
        line-height: 1; } }

.view-industries {
  padding-top: 224px; }
  .view-industries .breadcrumbs-wrapper,
  .view-industries .main-header,
  .view-industries .industries__items,
  .view-industries .before-contact-form__content,
  .view-industries .descriptions {
    grid-column: content; }
  .view-industries .breadcrumbs {
    margin-bottom: 5px;
    grid-row: 1; }
  .view-industries .main-header {
    margin-bottom: 0;
    grid-row: 2; }
  .view-industries .descriptions {
    grid-row: 3;
    margin-top: 10px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25; }
  .view-industries .industries__items {
    grid-row: 4;
    margin-top: 120px; }
  .view-industries .industries_item {
    padding: 10px 0;
    box-sizing: border-box;
    border-top: 1px solid #000; }
    .view-industries .industries_item .title {
      position: relative;
      display: flex;
      align-items: center;
      font-size: 36px;
      font-weight: 900;
      line-height: 0.88;
      text-transform: uppercase; }
      .view-industries .industries_item .title svg {
        flex-shrink: 0;
        width: 35px;
        height: 30px; }
      .view-industries .industries_item .title > svg {
        fill: transparent;
        stroke-width: 1px;
        stroke: currentColor; }
      .view-industries .industries_item .title span {
        width: 100%;
        display: block;
        box-sizing: border-box;
        padding-right: 20px; }
      .view-industries .industries_item .title .clip {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        clip: rect(0px, 0, auto, 0px);
        transition: clip .5s;
        pointer-events: none;
        color: currentColor;
        display: flex;
        align-items: center; }
    .view-industries .industries_item .description {
      font-size: 16px;
      line-height: 1.25;
      margin: 15px 0 50px; }
  .view-industries .before-contact-form {
    margin-top: 40px; }
    .view-industries .before-contact-form__content {
      padding: 30px;
      box-sizing: border-box;
      border: 1px solid #000; }
    .view-industries .before-contact-form .header {
      max-width: 100%;
      margin-bottom: 15px;
      word-break: break-word; }
    .view-industries .before-contact-form .description {
      font-weight: 600; }
    .view-industries .before-contact-form .footer-button {
      margin: 30px 0 0;
      width: 100%;
      max-width: 100%; }
  @media only screen and (min-width: 768px) {
    .view-industries .breadcrumbs {
      margin-bottom: 15px; }
    .view-industries .industries__items {
      margin-top: 150px; }
    .view-industries .descriptions {
      max-width: 531px; }
    .view-industries .industries_item {
      padding: 20px 0; }
      .view-industries .industries_item .title {
        font-size: 72px; }
        .view-industries .industries_item .title svg {
          flex-shrink: 0;
          width: 75px;
          height: 64px; }
      .view-industries .industries_item .description {
        margin: 10px 0 40px;
        max-width: 75.21%; }
    .view-industries .before-contact-form {
      margin-top: 60px; }
      .view-industries .before-contact-form__content {
        padding: 60px;
        display: grid;
        grid-template-columns: repeat(2, 1fr);
        align-items: stretch;
        column-gap: 80px; }
      .view-industries .before-contact-form .header {
        margin-bottom: 0;
        grid-column: 1;
        grid-row: span 2;
        text-align: right;
        display: flex;
        align-items: center;
        position: relative; }
        .view-industries .before-contact-form .header::before {
          content: '';
          display: block;
          position: absolute;
          top: 0;
          right: -40px;
          width: 1px;
          height: 100%;
          background: currentColor; }
      .view-industries .before-contact-form .description {
        grid-row: 1;
        grid-column: 2; }
      .view-industries .before-contact-form .footer-button {
        margin: 20px 0 0;
        grid-row: 2;
        grid-column: 2; } }
  @media only screen and (min-width: 1024px) {
    .view-industries .breadcrumbs {
      margin-bottom: 20px; }
    .view-industries .descriptions {
      max-width: 570px; }
    .view-industries .industries_item .title {
      font-size: 120px; }
      .view-industries .industries_item .title svg {
        flex-shrink: 0;
        width: 115px;
        height: 99px; }
    .view-industries .industries_item .description {
      margin: 10px 0 30px;
      opacity: 0;
      transition: opacity .3s;
      max-width: 50.26%; }
    .view-industries .industries_item:hover .title .clip {
      clip: rect(0px, 1600px, auto, 0px); }
    .view-industries .industries_item:hover .description {
      opacity: 1; }
    .view-industries .before-contact-form {
      margin-top: 80px; }
      .view-industries .before-contact-form__content {
        padding: 85px 13.16%;
        column-gap: 120px; }
      .view-industries .before-contact-form .header::before {
        right: -60px; }
      .view-industries .before-contact-form .footer-button {
        margin: 30px 0 0; } }

.vacancies-header {
  margin-bottom: 100px;
  display: none; }
  @media only screen and (min-width: 760px) {
    .vacancies-header {
      margin-bottom: 140px; } }
  @media only screen and (min-width: 1281px) {
    .vacancies-header {
      margin-bottom: 200px; } }
  .vacancies-header .header {
    grid-column: content-start / content-end; }
    @media only screen and (min-width: 760px) {
      .vacancies-header .header {
        grid-row-start: 1;
        order: 1; } }
    .vacancies-header .header .stroke {
      color: #fff; }
  .vacancies-header .img-wrap {
    grid-column: content-start / content-end;
    margin-top: 40px; }
    @media only screen and (min-width: 760px) {
      .vacancies-header .img-wrap {
        grid-column: content-1 / content-end;
        grid-row-start: 1;
        margin-top: 0; } }
    .vacancies-header .img-wrap img {
      display: block;
      width: 100%; }

.vacancies-list {
  margin-bottom: 50px; }
  @media only screen and (min-width: 760px) {
    .vacancies-list {
      margin-bottom: 130px; } }
  @media only screen and (min-width: 1281px) {
    .vacancies-list {
      margin-bottom: 210px; } }
  .vacancies-list h3 {
    grid-column: content-start / content-end;
    position: relative;
    padding-top: 8px;
    margin-top: 20px;
    margin-bottom: 60px;
    font-size: 24px;
    line-height: 28px;
    font-weight: bold; }
    @media only screen and (min-width: 760px) {
      .vacancies-list h3 {
        margin-bottom: 70px; } }
    @media only screen and (min-width: 1024px) {
      .vacancies-list h3 ~ .views-row {
        padding-top: 5px; } }
    @media only screen and (min-width: 1281px) {
      .vacancies-list h3 {
        grid-column: content-start / content-1;
        margin-top: 0; } }
    .vacancies-list h3:before {
      content: '';
      position: absolute;
      top: 0;
      left: 0;
      width: 100%;
      height: 1px;
      background-color: #000; }
      @media only screen and (min-width: 1281px) {
        .vacancies-list h3:before {
          width: 400%; } }
  .vacancies-list .content {
    grid-column: var(--start224)/span var(--span443);
    border-bottom: 1px solid #000; }
    .vacancies-list .content .responsibility {
      margin-bottom: 60px; }
      @media only screen and (min-width: 1440px) {
        .vacancies-list .content .responsibility {
          margin-bottom: 100px; } }
      .vacancies-list .content .responsibility .title, .vacancies-list .content .responsibility .responsibility-list {
        grid-column: start / end;
        max-width: 1200px; }
        @media only screen and (min-width: 1440px) {
          .vacancies-list .content .responsibility .title, .vacancies-list .content .responsibility .responsibility-list {
            grid-column: start / content-end; } }
      .vacancies-list .content .responsibility .title {
        font-size: 36px;
        line-height: 1.11;
        font-weight: bold;
        margin-bottom: 40px; }
        .vacancies-list .content .responsibility .title::before {
          display: none; }
        @media only screen and (min-width: 1440px) {
          .vacancies-list .content .responsibility .title {
            margin-bottom: 50px; } }
      .vacancies-list .content .responsibility .responsibility-list {
        font-weight: 600; }
        .vacancies-list .content .responsibility .responsibility-list ul {
          padding: 0 0 0 28px; }
          .vacancies-list .content .responsibility .responsibility-list ul li {
            position: relative; }
            .vacancies-list .content .responsibility .responsibility-list ul li:after {
              content: '';
              width: 8px;
              height: 8px;
              position: absolute;
              background: #000;
              left: -28px;
              top: 10px;
              transform: translateY(-50%); }
  .vacancies-list .views-row {
    grid-column: content-start / content-end;
    margin-bottom: 70px;
    border: 1px solid transparent;
    border-width: 4px 0;
    transition: border-color 0.3s; }
    @media only screen and (min-width: 760px) {
      .vacancies-list .views-row {
        grid-column: content-1 / content-end; } }
    @media only screen and (min-width: 1281px) {
      .vacancies-list .views-row {
        margin-bottom: 135px; }
        .vacancies-list .views-row + h3 {
          margin-top: -20px; }
          .vacancies-list .views-row + h3 + .views-row {
            margin-top: -20px; } }
    .vacancies-list .views-row .header {
      position: relative; }
      .vacancies-list .views-row .header.active i {
        transform: rotateZ(90deg); }
        .vacancies-list .views-row .header.active i::before {
          width: 0; }
      .vacancies-list .views-row .header .field-content {
        position: relative;
        display: block;
        padding-right: 100px;
        margin-top: 30px; }
        @media only screen and (min-width: 1024px) {
          .vacancies-list .views-row .header .field-content a:hover + .arrow {
            right: 0;
            opacity: 1; } }
      .vacancies-list .views-row .header i {
        position: absolute;
        width: 30px;
        height: 30px;
        right: 0;
        top: 50%;
        transition: transform 0.5s; }
        .vacancies-list .views-row .header i:before, .vacancies-list .views-row .header i:after {
          content: '';
          background-color: #000;
          position: absolute; }
        .vacancies-list .views-row .header i:before {
          width: 30px;
          height: 1px;
          top: 50%;
          transition: width 0.5s; }
        .vacancies-list .views-row .header i:after {
          width: 1px;
          height: 30px;
          left: 50%; }
    .vacancies-list .views-row .arrow {
      position: absolute;
      display: none;
      height: 80px;
      width: 95px;
      transition: right 0.3s, opacity 0.3s;
      top: 0;
      right: 100px;
      opacity: 0; }
      @media only screen and (min-width: 1024px) {
        .vacancies-list .views-row .arrow {
          display: block; } }
      @media only screen and (min-width: 1200px) {
        .vacancies-list .views-row .arrow {
          width: 115px;
          height: 99px; } }
  @media only screen and (min-width: 768px) {
    .vacancies-list .button {
      grid-column: start / content-1; } }

.vacancy-benefits-wrap {
  margin-bottom: 120px; }
  @media only screen and (min-width: 760px) {
    .vacancy-benefits-wrap {
      margin-bottom: 190px; } }
  @media only screen and (min-width: 1024px) {
    .vacancy-benefits-wrap {
      margin-bottom: 250px; } }
  .vacancy-benefits-wrap .header {
    grid-column: var(--start223)/span var(--span433); }

@media only screen and (min-width: 1024px) {
  .vacancy-benefits {
    margin-top: 78px; } }

.vacancy-benefits-item {
  grid-column: content-start / content-end;
  margin-top: 80px; }
  @media only screen and (min-width: 1024px) {
    .vacancy-benefits-item {
      margin-top: 90px;
      padding-right: 150px; } }
  @media only screen and (min-width: 760px) {
    .vacancy-benefits-item:first-child {
      margin-top: 90px; } }
  @media only screen and (min-width: 1024px) {
    .vacancy-benefits-item:first-child {
      margin-bottom: 50px; } }
  @media only screen and (min-width: 760px) {
    .vacancy-benefits-item:nth-child(2n-1) {
      grid-column: content-start / content-3; } }
  @media only screen and (min-width: 1024px) {
    .vacancy-benefits-item:nth-child(2n-1) {
      grid-column: content-start / content-center; } }
  @media only screen and (min-width: 760px) {
    .vacancy-benefits-item:nth-child(2n) {
      grid-column: content-1 / content-end; } }
  @media only screen and (min-width: 1024px) {
    .vacancy-benefits-item:nth-child(2n) {
      margin-top: 0;
      grid-column: content-center / content-end; } }
  .vacancy-benefits-item .heading {
    font-size: 24px;
    line-height: 28px;
    font-weight: bold;
    padding-top: 10px;
    height: 78px;
    box-sizing: border-box;
    border-top: 1px solid #000; }
    @media only screen and (min-width: 1024px) {
      .vacancy-benefits-item .heading {
        height: 90px;
        font-size: 36px;
        line-height: 40px; } }

.listing {
  margin: 0 0 80px 0;
  grid-column: content-start / content-end; }
  .listing__item {
    grid-column: content-start / content-end; }
    .listing__item + .listing__item {
      margin-top: 60px; }
      @media only screen and (min-width: 640px) {
        .listing__item + .listing__item {
          margin-top: 80px; } }
      @media only screen and (min-width: 1024px) {
        .listing__item + .listing__item {
          margin-top: 100px; } }
    @media only screen and (min-width: 640px) {
      .listing__item {
        display: flex;
        flex-flow: wrap row; }
        .listing__item:nth-of-type(odd) {
          grid-column: content-1 / content-end; }
        .listing__item:nth-of-type(even) {
          grid-column: content-start / content-3; } }
  .listing__item-date {
    order: 1;
    font: bold 14px/1.2 "ProximaNova";
    text-transform: uppercase;
    display: inline-block;
    margin: 30px 0 0 0; }
    @media only screen and (min-width: 640px) {
      .listing__item-date {
        align-self: flex-end;
        margin: 0 0 0 50px; } }
  .listing__item-w {
    margin: 0; }
  .listing__item-img {
    max-width: 160px; }
    @media only screen and (min-width: 640px) {
      .listing__item-img {
        max-width: 175px; } }
    @media only screen and (min-width: 1024px) {
      .listing__item-img {
        max-width: 285px; } }
  .listing__item-img-w {
    display: block; }
  .listing__item-description {
    width: 100%;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 10px 0;
    margin-top: 30px;
    display: inline-block; }
    @media only screen and (min-width: 640px) {
      .listing__item-description {
        margin-top: 50px;
        order: 2; } }
    @media only screen and (min-width: 1024px) {
      .listing__item-description {
        padding: 14px 0; } }
  @media only screen and (min-width: 640px) {
    .listing {
      margin: 0 0 120px 0; } }
  @media only screen and (min-width: 1024px) {
    .listing {
      margin: 0 0 180px 0; } }

[id="logg"] {
  position: fixed;
  z-index: 100;
  width: 100%;
  height: 100%;
  background-color: rgba(255, 255, 255, 0.9);
  pointer-events: none;
  overflow: auto;
  top: 0; }
  [id="logg"] pre {
    font-size: 10px; }

[id="width-size"] {
  position: fixed;
  left: 100px;
  top: 0;
  background-color: rgba(255, 255, 255, 0.8);
  z-index: 110; }

:root {
  --padding: 30px;
  --mpadding: -30px;
  --outsideIndent: 20px;
  --blueCell: 90px;
  --mainCell: repeat(2, 1fr);
  --contentCell: 1fr;
  --technologyLogoCell: 30px;
  --headerHeight: 74px;
  --margin30: 30px;
  --margin303060: 30px;
  --margin60: 60px;
  --margin120: 120px;
  --margin160: 60px;
  --indent20_30_60: 20px;
  --B-Padding: 100px;
  --start124: 1;
  --start223: 2;
  --start224: 2;
  --start234: 2;
  --start245: 2;
  --start246: 2;
  --start344: 3;
  --span211: 2;
  --span311: 3;
  --span321: 3;
  --span322: 3;
  --span332: 3;
  --span421: 4;
  --span422: 4;
  --span432: 4;
  --span433: 4;
  --span443: 4;
  --span643: 6;
  --px3030-30: 30px;
  --px3030120: 30px;
  --border: 1px solid black;
  --border5: 5px solid black; }
  @media only screen and (min-width: 360px) {
    :root {
      --outsideIndent: 30px; } }
  @media only screen and (min-width: 760px) {
    :root {
      --technologyLogoCell: 65px;
      --margin30: 60px;
      --indent20_30_60: 30px;
      --margin160: 90px;
      --start124: 2;
      --start234: 3;
      --start245: 4;
      --start246: 4;
      --start344: 4;
      --span211: 1;
      --span311: 1;
      --span321: 2;
      --span322: 2;
      --span421: 2;
      --span422: 2;
      --span432: 3;
      --span433: 3;
      --span643: 4; } }
  @media only screen and (min-width: 1024px) {
    :root {
      --technologyLogoCell: 100px;
      --headerHeight: 58px;
      --margin160: 160px;
      --start124: 4;
      --start223: 3;
      --start224: 4;
      --start234: 4;
      --start245: 5;
      --start246: 6;
      --span321: 1;
      --span332: 2;
      --span421: 1;
      --span432: 2;
      --span443: 3;
      --span643: 3;
      --indent20_30_60: 60px; } }
  @media only screen and (min-width: 1200px) {
    :root {
      --margin303060: 60px;
      --margin60: 120px;
      --margin120: 180px;
      --px3030-30: -30px;
      --px3030120: 120px; } }
  @media only screen and (min-width: 1281px) {
    :root {
      --blueCell: 120px; } }
  @media only screen and (min-width: 1900px) {
    :root {
      --blueCell: 1fr;
      --mainCell: repeat(2, 400px);
      --contentCell: 400px; } }

html {
  font-family: "ProximaNova";
  color: #000;
  font-size: 16px;
  background: #fff; }
  html:not(.details) {
    cursor: none; }

body {
  margin: 0;
  background: #fff;
  position: relative;
  transition: background 0.3s; }
  body button {
    cursor: none; }
  body.fixed {
    position: fixed;
    overflow: hidden; }

h1,
h2,
h3 {
  margin: 0;
  font-size: inherit;
  font-weight: inherit; }

img {
  height: auto;
  max-width: 100%;
  display: block; }

.base-tools, .listing, .main-header2--md, .social .share, .blog-article, .popular-article, .pagination__list {
  padding: 0; }
  .base-tools li, .listing li, .main-header2--md li, .social .share li, .blog-article li, .popular-article li, .pagination__list li {
    list-style: none; }
  .base-tools ol li, .listing ol li, .main-header2--md ol li, .social .share ol li, .blog-article ol li, .popular-article ol li, .pagination__list ol li {
    list-style: decimal; }
  .base-tools *, .listing *, .main-header2--md *, .social .share *, .blog-article *, .popular-article *, .pagination__list * {
    box-sizing: border-box; }

::selection {
  background-color: rgba(0, 0, 0, 0.1); }

/* width */
::-webkit-scrollbar {
  width: 7px; }

/* Track */
::-webkit-scrollbar-track {
  background: #f1f1f1;
  border-radius: 7px; }

/* Handle */
::-webkit-scrollbar-thumb {
  background: #000;
  border-radius: 7px; }

/* Handle on hover */
::-webkit-scrollbar-thumb:hover {
  background: #888; }

#cursor {
  position: fixed;
  z-index: 103;
  will-change: left, top;
  top: -300px;
  left: -300px;
  transform: translateX(-50%) translateY(-50%);
  mix-blend-mode: difference;
  pointer-events: none;
  width: 300px;
  height: 300px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  transition: width 0.3s, height 0.3s, background 0.3s; }
  html.details #cursor {
    display: none; }
  .touch #cursor {
    display: none; }
  .no-blend-mode #cursor {
    z-index: 101;
    mix-blend-mode: normal; }
    .no-blend-mode #cursor i {
      z-index: 1;
      border-color: #000; }
    .no-blend-mode #cursor b {
      display: block;
      border: 6px solid #fff;
      left: calc(50% - 6px);
      top: calc(50% - 6px); }
    .no-blend-mode #cursor svg {
      display: none; }
  #cursor i,
  #cursor b {
    position: absolute;
    left: calc(50% - 5px);
    top: calc(50% - 5px);
    width: 0px;
    height: 0px;
    border-radius: 100%;
    border: 5px solid #fff;
    transition: left 0.3s, top 0.3s, width 0.3s, height 0.3s, border-width 0.3s, background 0.3s;
    box-sizing: border-box;
    display: none; }
  .no-svg2 #cursor i {
    display: block; }
  #cursor.link > svg {
    stroke-width: 1.5; }
    #cursor.link > svg circle {
      r: 15; }
  #cursor.link i {
    left: calc(50% - 31px);
    top: calc(50% - 31px);
    width: 60px;
    height: 60px;
    border-width: 1.5px; }
  .no-blend-mode #cursor.link b {
    left: calc(50% - 32px);
    top: calc(50% - 32px);
    width: 62px;
    height: 62px;
    border-width: 4px;
    border-color: #fff; }
  #cursor.bigCursor {
    fill: #fff;
    z-index: 99; }
    #cursor.bigCursor ~ main .intro .move .b-wrap:nth-child(2) {
      z-index: 99; }
    #cursor.bigCursor > svg {
      stroke-width: 0; }
      #cursor.bigCursor > svg circle {
        r: 145; }
    #cursor.bigCursor i {
      left: 5px;
      top: 5px;
      width: 290px;
      height: 290px;
      border-width: 0;
      background-color: #fff; }
    .no-blend-mode #cursor.bigCursor i {
      border-width: 2px;
      background: none; }
    .no-blend-mode #cursor.bigCursor b {
      left: 4px;
      top: 4px;
      width: 292px;
      height: 292px;
      border-width: 4px;
      border-color: #fff; }
  #cursor.xRayCursor {
    fill: #fff;
    z-index: 99;
    --cursorSize:490px;
    width: var(--cursorSize);
    height: var(--cursorSize); }
    #cursor.xRayCursor ~ main .general-banner__content .images__clean img {
      opacity: 1;
      -webkit-mask-position: calc(var(--cursorLeft) - 245px) calc(var(--cursorTop) - (245px + var(--generalBannerTop)));
      mask-size: 490px;
      -webkit-mask-size: 490px;
      animation: maskPositionDesk .337s 1; }
    #cursor.xRayCursor > svg {
      stroke-width: 0;
      transform: scale(1.689); }
      #cursor.xRayCursor > svg circle {
        r: 145; }
    #cursor.xRayCursor i {
      left: 0px;
      top: 0px;
      width: var(--cursorSize);
      height: var(--cursorSize);
      border-width: 0;
      display: block; }
    .no-svg2 #cursor.xRayCursor i {
      background: #fff; }

@keyframes maskPositionDesk {
  from {
    mask-size: 0px;
    -webkit-mask-size: 0px;
    -webkit-mask-position: calc(var(--cursorLeft)) calc(var(--cursorTop) - var(--generalBannerTop)); }
  to {
    mask-size: 490px;
    -webkit-mask-size: 490px;
    -webkit-mask-position: calc(var(--cursorLeft) - 245px) calc(var(--cursorTop) - (245px + var(--generalBannerTop))); } }

@keyframes maskPositionMob {
  from {
    mask-size: 0px;
    -webkit-mask-size: 0px;
    -webkit-mask-position: calc(var(--cursorLeft)) calc(var(--cursorTop) - var(--generalBannerTop)); }
  to {
    mask-size: 280px;
    -webkit-mask-size: 280px;
    -webkit-mask-position: calc(var(--cursorLeft) - 140px) calc(var(--cursorTop) - (140px + var(--generalBannerTop))); } }
    @media only screen and (max-width: 1023px) {
      #cursor.xRayCursor {
        --cursorSize:290px; }
        #cursor.xRayCursor ~ main .general-banner__content .images__clean img {
          opacity: 1;
          -webkit-mask-position: calc(var(--cursorLeft) - 140px) calc(var(--cursorTop) - (140px + var(--generalBannerTop)));
          mask-size: 280px;
          -webkit-mask-size: 280px;
          animation: maskPositionMob .3s 1; }
        #cursor.xRayCursor > svg {
          transform: scale(1); } }
  #cursor[zindex="1"] {
    z-index: 102; }
  #cursor > svg {
    stroke-width: 6;
    stroke: #fff;
    transition: stroke-width 0.3s, fill 0.1s, transform .3s; }
    .no-svg2 #cursor > svg {
      display: none; }
    #cursor > svg circle {
      r: 3;
      transition: r 0.3s; }

body .mt120 {
  margin-top: var(--margin120); }

body .mb20-30-60 {
  margin-bottom: var(--indent20_30_60); }

a {
  text-decoration: none;
  color: currentColor; }
  html:not(.details) a {
    cursor: none; }
  a:focus {
    outline: none; }

.layout-content {
  border-top: 1px solid transparent; }

.container {
  max-width: 1440px;
  margin: 0 auto;
  padding: 0 var(--padding); }

.mainGrid {
  display: grid;
  grid-template-columns: [start] var(--outsideIndent) [after-start content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [before-end content-end] var(--outsideIndent) [end]; }
  @media only screen and (min-width: 1024px) {
    .mainGrid {
      grid-template-columns: [start] var(--outsideIndent) [after-start] var(--blueCell) [content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [content-end] var(--blueCell) [before-end] var(--outsideIndent) [end]; } }

.content-start-end {
  grid-column: content-start / content-end; }

.content-start-center {
  grid-column: content-start / content-center; }

.content-center-end {
  grid-column: content-center / content-end; }

.stroke {
  -webkit-text-stroke: 1px #000;
  text-stroke: 1px #000;
  color: transparent; }

.font16 {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.38; }
  .font16 h3 {
    font-size: 24px;
    line-height: 1.6; }

.button {
  min-width: 230px;
  background-color: #000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: var(--margin60);
  transition: background-color .3s;
  padding: 0 20px;
  margin: 0 0 36px 0; }
  .button.hidden, .button.js-hide {
    display: none; }

.path-taxonomy .layout-content {
  display: flex;
  flex-direction: column; }
  .path-taxonomy .layout-content #block-seoblockfortaxonomyterms.services {
    order: 1; }

.policy-header-first {
  padding-top: 275px;
  margin-bottom: 80px;
  font-size: 12px;
  line-height: 16px; }
  @media only screen and (min-width: 760px) {
    .policy-header-first {
      margin-bottom: 115px; } }
  @media only screen and (min-width: 1200px) {
    .policy-header-first {
      margin-bottom: 155px; } }
  .policy-header-first > div {
    margin-bottom: 10px; }

.policy-header {
  margin-top: 120px;
  margin-bottom: 40px; }
  .policy-header .dig {
    font-size: 64px;
    font-weight: 900;
    line-height: 0.875;
    margin-bottom: 10px; }

.policy-contacts {
  margin-bottom: 180px;
  display: grid;
  grid-gap: 30px; }
  @media only screen and (min-width: 760px) {
    .policy-contacts {
      display: flex;
      justify-content: space-between;
      margin-top: 80px; } }
  .policy-contacts .contact {
    font-weight: 600; }
    .policy-contacts .contact > div {
      font-size: 16px;
      line-height: 22px; }
      .policy-contacts .contact > div:first-child {
        font-size: 14px;
        line-height: 20px;
        text-transform: uppercase; }

.header-style0 {
  font-size: 24px;
  line-height: 0.86;
  font-weight: bold; }
  .header-style0.header-style1 {
    max-width: 920px; }
    @media only screen and (min-width: 360px) {
      .header-style0.header-style1 {
        font-size: 36px;
        line-height: 0.89; } }
    @media only screen and (min-width: 760px) {
      .header-style0.header-style1 {
        font-size: 44px;
        line-height: 0.91;
        text-transform: uppercase;
        font-weight: 900; } }
    @media only screen and (min-width: 1200px) {
      .header-style0.header-style1 {
        font-size: 64px;
        line-height: 0.88; } }
  @media only screen and (min-width: 360px) {
    .header-style0 {
      font-size: 36px;
      line-height: 0.89; } }
  @media only screen and (min-width: 760px) {
    .header-style0 {
      font-size: 44px;
      line-height: 0.91;
      text-transform: uppercase;
      font-weight: 900; } }
  @media only screen and (min-width: 1200px) {
    .header-style0 {
      font-size: 64px;
      line-height: 0.88; } }
  .header-style0.b800 {
    font-weight: 800; }

.header-style1:not(.header-style0) {
  font-size: 32px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase; }
  @media only screen and (min-width: 360px) {
    .header-style1:not(.header-style0) {
      font-size: 36px;
      line-height: 0.89; } }
  @media only screen and (min-width: 760px) {
    .header-style1:not(.header-style0) {
      font-size: 44px;
      line-height: 0.91; } }
  @media only screen and (min-width: 1200px) {
    .header-style1:not(.header-style0) {
      font-size: 64px;
      line-height: 0.88; } }
  .header-style1:not(.header-style0).b800 {
    font-weight: 800; }

.header-style2 {
  font-size: 24px;
  font-weight: bold;
  line-height: 1.17; }
  @media only screen and (min-width: 640px) {
    .header-style2 {
      font-size: 36px;
      line-height: 1.1; } }

.header-style3 {
  font-size: 48px;
  font-weight: 900;
  line-height: 0.92;
  text-transform: uppercase; }
  @media only screen and (min-width: 640px) {
    .header-style3--md {
      font-size: 88px; } }
  @media only screen and (min-width: 760px) {
    .header-style3 {
      font-size: 88px;
      letter-spacing: -1.5px; } }
  @media only screen and (min-width: 1200px) {
    .header-style3 {
      font-size: 120px;
      line-height: 0.83;
      letter-spacing: -2px; } }
  @media only screen and (min-width: 1024px) {
    .header-style3 a {
      background: transparent url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 4"><path fill="%23000" d="M0 0L0 4 4 4"/></svg>') no-repeat;
      background-size: 250%;
      background-position: 0% -30%;
      -webkit-background-clip: text;
      transition: background 0.3s;
      padding-right: 5px; }
      .header-style3 a:hover {
        background-position: 0% 100%; } }
  .macintosh .header-style3 a {
    background: none;
    transition: color 0.3s; }
    .macintosh .header-style3 a:hover {
      color: #000; }

.header-style7 {
  font-size: 32px;
  font-weight: 900;
  line-height: 1;
  text-transform: uppercase; }
  @media only screen and (min-width: 360px) {
    .header-style7 {
      font-size: 36px;
      line-height: 0.89; } }
  @media only screen and (min-width: 760px) {
    .header-style7 {
      font-size: 88px;
      line-height: 0.91; } }
  @media only screen and (min-width: 1200px) {
    .header-style7 {
      font-size: 120px;
      line-height: 0.88;
      letter-spacing: -2px; } }

.header-style8 {
  font-size: 54px;
  font-weight: 900;
  line-height: 0.89;
  text-transform: uppercase; }
  @media only screen and (min-width: 760px) {
    .header-style8 {
      font-size: 88px;
      letter-spacing: -0.017em; } }
  @media only screen and (min-width: 1200px) {
    .header-style8 {
      font-size: 120px;
      line-height: 0.83; } }

.main-header {
  grid-column: content-start / content-end;
  margin-bottom: 20px; }

.main-header2 {
  grid-column: content-start / content-end;
  margin-bottom: 60px; }
  @media only screen and (min-width: 760px) {
    .main-header2 {
      margin-bottom: 120px; } }
  .main-header2--lg {
    margin-bottom: 80px; }
    @media only screen and (min-width: 640px) {
      .main-header2--lg {
        margin-bottom: 120px; } }
    @media only screen and (min-width: 1024px) {
      .main-header2--lg {
        margin-bottom: 180px; } }
  .main-header2--md {
    margin-bottom: 75px; }
    @media only screen and (min-width: 640px) {
      .main-header2--md {
        margin-bottom: 80px; } }
    @media only screen and (min-width: 768px) {
      .main-header2--md {
        grid-column: content-start / content-3;
        margin-bottom: 100px; } }
    @media only screen and (max-width: 930px) {
      .main-header2--md {
        max-width: 590px; } }

.main-header3 {
  grid-column: content-start / content-end;
  margin-bottom: 30px; }
  @media only screen and (min-width: 760px) {
    .main-header3 {
      margin-bottom: 60px; } }
  @media only screen and (min-width: 1024px) {
    .main-header3 {
      margin-bottom: 120px; } }

.header-description {
  grid-column: 2 / span 4;
  margin-bottom: var(--margin30); }
  .header-description:before {
    content: '';
    display: block;
    margin-bottom: 30px;
    height: 5px;
    background-color: #000; }

.secondary-header {
  grid-column: content-start / content-end;
  margin-bottom: var(--margin60); }

.secondary-header2 {
  grid-column: content-start / content-end;
  margin-bottom: var(--margin30); }

.secondary-header3 {
  grid-column: content-start / content-end;
  margin-bottom: 30px; }
  @media only screen and (min-width: 760px) {
    .secondary-header3 {
      margin-bottom: 60px; } }
  @media only screen and (min-width: 1024px) {
    .secondary-header3 {
      margin-bottom: 120px; } }

.vh100 {
  height: 100vh; }

.vh50 {
  height: 50vh; }

.language_block {
  display: flex;
  font-size: 14px;
  margin-bottom: 50px; }
  @media only screen and (min-width: 1024px) {
    .language_block {
      margin-bottom: 0; } }
  .language_block > div {
    font-weight: bold;
    text-transform: uppercase;
    line-height: 1.43;
    letter-spacing: 0.5px;
    position: relative; }
    .language_block > div:not(:last-child) {
      margin-right: 20px; }
  .language_block .current:before {
    content: '';
    position: absolute;
    height: 2px;
    width: 100%;
    background-color: #000;
    bottom: calc(100% + 2px); }

@media only screen and (max-width: 1023px) {
  .without-banner {
    padding-top: 100px; } }

.general-banner {
  padding-top: 63px;
  box-sizing: border-box;
  position: relative; }
  .general-banner .absolute {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
    .general-banner .absolute img {
      user-select: none;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      object-fit: cover; }
  .general-banner__content {
    position: relative; }
    .no-touch .general-banner__content .images__clean {
      z-index: 1; }
      .no-touch .general-banner__content .images__clean img {
        -webkit-mask-image: url(../../../images/xray-mask.svg);
        mask-image: url(../../../images/xray-mask.svg);
        -webkit-mask-repeat: no-repeat;
        mask-repeat: no-repeat;
        -webkit-mask-size: 0px;
        mask-size: 0px;
        opacity: 0;
        will-change: -webkit-mask-position; }
    .general-banner__content .mainGrid {
      pointer-events: none;
      box-sizing: border-box; }
    .general-banner__content .title {
      text-transform: uppercase;
      font-weight: 900;
      line-height: 0.8; }
  .general-banner_b-wrap {
    display: none; }
  @media only screen and (min-width: 1024px) {
    .general-banner {
      margin-bottom: -160px;
      height: 100vh;
      z-index: 100; }
      .general-banner__content {
        height: calc(100vh - 63px); }
        .general-banner__content .mainGrid {
          align-items: end;
          padding-bottom: 98px;
          z-index: 99; }
        .general-banner__content .title {
          color: #fff;
          font-size: 64px;
          grid-column: 4 / span 2; }
          .general-banner__content .title * {
            margin: 0; }
      .general-banner_b-wrap {
        height: calc(100% - 63px) !important;
        overflow: hidden;
        pointer-events: none;
        display: block;
        z-index: 99;
        clip: rect(auto, auto, 100vh, auto);
        align-items: flex-end; }
        .general-banner_b-wrap .banner-button {
          position: fixed;
          left: var(--outsideIndent);
          bottom: 93px;
          width: calc((var(--blueCell) + ( (100vw - ((var(--outsideIndent) + var(--blueCell)) * 2)) /4)) - 2px); } }
      @media only screen and (min-width: 1024px) and (min-width: 1900px) {
        .general-banner_b-wrap .banner-button {
          width: calc(((100vw - (1600px + (var(--outsideIndent) * 2))) / 2) + 400px); } }
  @media only screen and (min-width: 1024px) {
        .general-banner_b-wrap svg {
          fill: #fff;
          width: 100%;
          height: auto; } }
  @media only screen and (min-width: 1200px) {
    .general-banner__content .title {
      font-size: 84px; } }
  @media only screen and (max-width: 1023px) {
    .general-banner {
      padding-top: 73px;
      margin-bottom: 100px; }
      .general-banner__content {
        display: flex;
        flex-direction: column; }
        .general-banner__content .images {
          position: relative;
          padding-top: 112%;
          overflow: hidden; }
          .general-banner__content .images__dirty {
            clip: rect(auto, auto, auto, var(--clipWidth));
            z-index: 1; }
            .general-banner__content .images__dirty img {
              transform: translateX(var(--clipWidth)); }
            .touch .general-banner__content .images__dirty {
              transform: scaleX(-1); }
              .touch .general-banner__content .images__dirty::before {
                content: '';
                display: block;
                position: absolute;
                width: 43px;
                height: 20px;
                z-index: 1;
                left: 8px;
                position: absolute;
                background: url(../../../images/arrowsSlide.svg) 50% 50%/contain no-repeat;
                top: 50%;
                transform: translateY(-50%) scaleX(-1); }
              .touch .general-banner__content .images__dirty picture {
                position: absolute;
                left: 0;
                top: 0;
                width: 100%;
                height: 100%;
                clip-path: polygon(79.95% 50%, 80.21% 43.95%, 80.91% 38.48%, 82.13% 32.69%, 83.79% 27.21%, 85.36% 23.14%, 87.44% 18.74%, 89.71% 14.64%, 93.41% 8.86%, 96.67% 4.45%, 100% 0.48%, 100% -0.02%, 0% -0.02%, 0% 99.98%, 100% 99.98%, 100% 99.48%, 97.63% 96.69%, 94.93% 93.24%, 92.93% 90.38%, 91.31% 87.93%, 87.63% 81.48%, 85.09% 76.19%, 83.73% 72.74%, 82% 66.9%, 80.83% 61.24%, 80.16% 55.69%, 79.95% 50%);
                transform: scaleX(-1); }
          .no-touch .general-banner__content .images__clean img {
            filter: invert(1); }
          .touch .general-banner__content .images.animate-clip-disabled {
            pointer-events: none; }
          .general-banner__content .images.animate-clip .images__dirty {
            transition: clip .3s linear; }
            .general-banner__content .images.animate-clip .images__dirty picture, .general-banner__content .images.animate-clip .images__dirty img {
              transition: transform .3s linear; }
          .touch .general-banner__content .images[style*="clipWidth"] .images__dirty picture {
            transform: translateX(var(--clipWidth)) scaleX(-1); }
          .touch .general-banner__content .images__item {
            user-select: none;
            -webkit-user-select: none; }
            .touch .general-banner__content .images__item img {
              pointer-events: none; }
        .general-banner__content .mainGrid {
          position: static;
          order: -1;
          padding: 146px 0 100px; }
        .general-banner__content .title {
          grid-column: content-start / content-end;
          font-size: 54px;
          -webkit-text-stroke: 1px #000;
          text-stroke: 1px #000;
          color: transparent; }
          .general-banner__content .title > span {
            max-width: 375px;
            display: block; }
            .general-banner__content .title > span span {
              -webkit-text-stroke: unset;
              text-stroke: unset;
              color: #000; } }
  @media only screen and (max-width: 767px) {
    .general-banner__content .mainGrid {
      padding: 60px 0 40px; } }

.intro svg {
  display: block;
  width: 100%;
  height: auto; }

.intro .header {
  grid-column: 2 / span 4;
  padding-bottom: 60px;
  box-sizing: border-box; }
  @media only screen and (min-width: 768px) {
    .intro .header {
      grid-column: 3 / span 2; } }
  @media only screen and (min-width: 1024px) {
    .intro .header {
      grid-column: 4 / span 2;
      padding-bottom: 23px;
      display: flex;
      align-items: flex-end;
      padding-top: 320px; } }
  .intro .header > span {
    display: block; }

.intro .letter-wrap {
  grid-column: 1 / span 6;
  position: relative; }
  @media only screen and (min-width: 760px) {
    .intro .letter-wrap {
      grid-column: content-start / content-3; } }
  @media only screen and (min-width: 1024px) {
    .intro .letter-wrap {
      grid-column: 2 / span 2;
      grid-row: 1 / span 3; } }

@media only screen and (min-width: 1024px) {
  .intro .move {
    display: flex;
    flex-direction: column;
    justify-content: flex-end;
    padding-bottom: 23px; } }

.intro .move .b-wrap {
  position: absolute;
  will-change: transform;
  width: 100%; }
  @media only screen and (min-width: 1024px) {
    .intro .move .b-wrap {
      position: -webkit-sticky;
      position: sticky;
      bottom: 0;
      padding: 30px 0; }
      .intro .move .b-wrap .top {
        position: absolute;
        width: 100%;
        bottom: 98px; }
        .no-blend-mode .intro .move .b-wrap .top {
          display: none; }
      .intro .move .b-wrap .videoWrap {
        overflow: hidden; }
        .intro .move .b-wrap .videoWrap svg {
          width: 100%; }
        .intro .move .b-wrap .videoWrap video {
          position: absolute;
          left: 0;
          top: 0;
          height: 100%;
          width: 100%;
          object-fit: cover;
          -webkit-clip-path: polygon(0% 0%, 0% 21.608%, 42.914% 21.608%, 43.735% 21.648%, 44.52% 21.765%, 45.268% 21.955%, 45.976% 22.217%, 46.641% 22.547%, 47.26% 22.942%, 47.832% 23.399%, 48.355% 23.915%, 48.825% 24.485%, 49.24% 25.11%, 49.598% 25.785%, 49.897% 26.505%, 50.133% 27.27%, 50.305% 28.076%, 50.409% 28.918%, 50.444% 29.795%, 50.409% 30.698%, 50.305% 31.563%, 50.133% 32.388%, 49.896% 33.17%, 49.597% 33.905%, 49.239% 34.591%, 48.823% 35.224%, 48.352% 35.804%, 47.828% 36.326%, 47.255% 36.787%, 46.633% 37.185%, 45.966% 37.517%, 45.255% 37.78%, 44.504% 37.972%, 43.715% 38.089%, 42.908% 38.129%, 21.605% 38.129%, 21.605% 21.608%, 0% 21.608%, 0% 78.392%, 22.074% 78.392%, 22.074% 60.262%, 43.901% 60.262%, 44.87% 60.311%, 45.783% 60.449%, 46.641% 60.674%, 47.441% 60.98%, 48.183% 61.364%, 48.867% 61.82%, 49.49% 62.345%, 50.053% 62.932%, 50.552% 63.576%, 50.99% 64.275%, 51.361% 65.022%, 51.669% 65.814%, 51.909% 66.645%, 52.082% 67.511%, 52.187% 68.406%, 52.223% 69.327%, 52.186% 70.325%, 52.077% 71.278%, 51.898% 72.184%, 51.651% 73.038%, 51.337% 73.84%, 50.956% 74.586%, 50.512% 75.272%, 50.007% 75.9%, 49.439% 76.462%, 48.812% 76.958%, 48.129% 77.385%, 47.389% 77.74%, 46.595% 78.021%, 45.748% 78.225%, 44.849% 78.35%, 43.901% 78.392%, 0% 78.392%, 0% 100%, 49.308% 100%, 52.313% 99.854%, 55.122% 99.429%, 57.738% 98.741%, 60.157% 97.804%, 62.383% 96.634%, 64.414% 95.246%, 66.252% 93.657%, 67.895% 91.883%, 69.345% 89.937%, 70.6% 87.836%, 71.663% 85.598%, 72.531% 83.237%, 73.206% 80.765%, 73.688% 78.204%, 73.977% 75.565%, 74.075% 72.865%, 73.993% 70.532%, 73.752% 68.266%, 73.362% 66.073%, 72.827% 63.964%, 72.158% 61.947%, 71.359% 60.032%, 70.441% 58.227%, 69.41% 56.542%, 68.274% 54.986%, 67.042% 53.564%, 65.719% 52.291%, 64.313% 51.172%, 62.834% 50.215%, 61.288% 49.433%, 59.682% 48.832%, 58.025% 48.421%, 59.501% 47.953%, 60.933% 47.341%, 62.314% 46.589%, 63.639% 45.698%, 64.897% 44.674%, 66.084% 43.519%, 67.191% 42.236%, 68.213% 40.829%, 69.141% 39.302%, 69.968% 37.656%, 70.688% 35.896%, 71.292% 34.025%, 71.774% 32.047%, 72.128% 29.964%, 72.346% 27.779%, 72.42% 25.497%, 72.326% 23.134%, 72.046% 20.783%, 71.576% 18.464%, 70.917% 16.196%, 70.067% 13.999%, 69.024% 11.892%, 67.788% 9.893%, 66.359% 8.023%, 64.732% 6.3%, 62.91% 4.745%, 60.889% 3.375%, 58.67% 2.212%, 56.25% 1.273%, 53.629% 0.579%, 50.805% 0.148%, 47.777% 0%);
          clip-path: polygon(0% 0%, 0% 21.608%, 42.914% 21.608%, 43.735% 21.648%, 44.52% 21.765%, 45.268% 21.955%, 45.976% 22.217%, 46.641% 22.547%, 47.26% 22.942%, 47.832% 23.399%, 48.355% 23.915%, 48.825% 24.485%, 49.24% 25.11%, 49.598% 25.785%, 49.897% 26.505%, 50.133% 27.27%, 50.305% 28.076%, 50.409% 28.918%, 50.444% 29.795%, 50.409% 30.698%, 50.305% 31.563%, 50.133% 32.388%, 49.896% 33.17%, 49.597% 33.905%, 49.239% 34.591%, 48.823% 35.224%, 48.352% 35.804%, 47.828% 36.326%, 47.255% 36.787%, 46.633% 37.185%, 45.966% 37.517%, 45.255% 37.78%, 44.504% 37.972%, 43.715% 38.089%, 42.908% 38.129%, 21.605% 38.129%, 21.605% 21.608%, 0% 21.608%, 0% 78.392%, 22.074% 78.392%, 22.074% 60.262%, 43.901% 60.262%, 44.87% 60.311%, 45.783% 60.449%, 46.641% 60.674%, 47.441% 60.98%, 48.183% 61.364%, 48.867% 61.82%, 49.49% 62.345%, 50.053% 62.932%, 50.552% 63.576%, 50.99% 64.275%, 51.361% 65.022%, 51.669% 65.814%, 51.909% 66.645%, 52.082% 67.511%, 52.187% 68.406%, 52.223% 69.327%, 52.186% 70.325%, 52.077% 71.278%, 51.898% 72.184%, 51.651% 73.038%, 51.337% 73.84%, 50.956% 74.586%, 50.512% 75.272%, 50.007% 75.9%, 49.439% 76.462%, 48.812% 76.958%, 48.129% 77.385%, 47.389% 77.74%, 46.595% 78.021%, 45.748% 78.225%, 44.849% 78.35%, 43.901% 78.392%, 0% 78.392%, 0% 100%, 49.308% 100%, 52.313% 99.854%, 55.122% 99.429%, 57.738% 98.741%, 60.157% 97.804%, 62.383% 96.634%, 64.414% 95.246%, 66.252% 93.657%, 67.895% 91.883%, 69.345% 89.937%, 70.6% 87.836%, 71.663% 85.598%, 72.531% 83.237%, 73.206% 80.765%, 73.688% 78.204%, 73.977% 75.565%, 74.075% 72.865%, 73.993% 70.532%, 73.752% 68.266%, 73.362% 66.073%, 72.827% 63.964%, 72.158% 61.947%, 71.359% 60.032%, 70.441% 58.227%, 69.41% 56.542%, 68.274% 54.986%, 67.042% 53.564%, 65.719% 52.291%, 64.313% 51.172%, 62.834% 50.215%, 61.288% 49.433%, 59.682% 48.832%, 58.025% 48.421%, 59.501% 47.953%, 60.933% 47.341%, 62.314% 46.589%, 63.639% 45.698%, 64.897% 44.674%, 66.084% 43.519%, 67.191% 42.236%, 68.213% 40.829%, 69.141% 39.302%, 69.968% 37.656%, 70.688% 35.896%, 71.292% 34.025%, 71.774% 32.047%, 72.128% 29.964%, 72.346% 27.779%, 72.42% 25.497%, 72.326% 23.134%, 72.046% 20.783%, 71.576% 18.464%, 70.917% 16.196%, 70.067% 13.999%, 69.024% 11.892%, 67.788% 9.893%, 66.359% 8.023%, 64.732% 6.3%, 62.91% 4.745%, 60.889% 3.375%, 58.67% 2.212%, 56.25% 1.273%, 53.629% 0.579%, 50.805% 0.148%, 47.777% 0%); }
      .intro .move .b-wrap:nth-child(1) svg {
        position: absolute;
        width: 100%;
        bottom: 98px; } }
  .intro .move .b-wrap:nth-child(2) {
    display: none;
    z-index: 99;
    mix-blend-mode: multiply;
    padding: 0; }
    @media only screen and (min-width: 1024px) {
      .intro .move .b-wrap:nth-child(2) {
        display: block; } }
    .fixed .intro .move .b-wrap:nth-child(2) {
      z-index: 1; }
  .intro .move .b-wrap svg {
    will-change: transform; }
    @media only screen and (max-width: 767px) {
      .ios .intro .move .b-wrap svg.B-letter {
        transform: translate3d(0px, 0px, 0px) !important; } }

@media only screen and (min-width: 1024px) {
  .intro .invisible {
    display: none; } }

.intro .invisible .B-letter {
  visibility: hidden; }

.video {
  grid-column: 1 / span 6;
  margin-bottom: var(--margin60); }
  @media only screen and (min-width: 768px) {
    .video {
      grid-column: 3 / span 3; } }
  @media only screen and (min-width: 1024px) {
    .video {
      grid-column: 4 / span 3; } }
  @media only screen and (min-width: 1024px) {
    .no-touch .video {
      border: 1px solid #000;
      transition: border-color 0.5s; }
      .no-touch .video:hover {
        border-color: transparent; } }
  .video.pause .pause {
    display: none; }
  .video.play .play {
    display: none; }
  .video.play .inner .wrapper img {
    opacity: 0; }
  .video.play .inner .wrapper video {
    opacity: 1; }
  .video .pause {
    opacity: 0;
    transition: opacity 5s; }
  .no-touch .video:hover .pause {
    opacity: 1; }
  .video .inner {
    padding-bottom: 56.25%;
    position: relative; }
    .video .inner .wrapper {
      position: absolute;
      width: 100%;
      height: 100%;
      overflow: hidden;
      display: flex;
      align-items: center;
      justify-content: center; }
      @media only screen and (min-width: 1024px) {
        .no-touch .video .inner .wrapper:hover i {
          transform: scale3d(1, 1, 1); }
        .no-touch .video .inner .wrapper:hover svg {
          fill: #fff; }
          .no-touch .video .inner .wrapper:hover svg.pause {
            animation: pauseFade 3s forwards; } }
      .video .inner .wrapper .text {
        position: absolute;
        left: 0;
        bottom: 0;
        width: 115px;
        padding: 10px;
        color: #fff; }
      .video .inner .wrapper svg {
        position: absolute;
        width: 50px;
        height: 60px;
        fill: #fff;
        transition: fill 0.3s;
        margin-left: 7px; }
        @media only screen and (min-width: 1024px) {
          .no-touch .video .inner .wrapper svg {
            fill: #000; }
            .no-touch .video .inner .wrapper svg.pause {
              fill: #fff;
              transition: fill 0.3s, opacity 0.3s; } }
      .video .inner .wrapper .pause {
        transition: fill 0.3s, opacity 0.3s;
        fill: #fff; }
      .video .inner .wrapper video {
        position: absolute;
        width: 100%;
        height: 100%;
        opacity: 0;
        transition: opacity 1s; }
      .video .inner .wrapper img {
        width: 100%;
        mix-blend-mode: screen;
        filter: brightness(0.9);
        display: block;
        transition: opacity 1s;
        opacity: 1; }
      .video .inner .wrapper i {
        position: absolute;
        width: 121%;
        padding-bottom: 121%;
        height: 0;
        background-color: #000;
        border-radius: 50%;
        transition: transform 1s;
        will-change: transform; }
        @media only screen and (min-width: 1024px) {
          .no-touch .video .inner .wrapper i {
            transform: scale3d(0.01, 0.01, 1); } }

@keyframes pauseFade {
  to {
    opacity: 0; } }

.stands-for {
  grid-column: 3 / span 3;
  padding-bottom: var(--margin60);
  padding-top: 60px;
  mix-blend-mode: difference;
  color: #fff; }
  .no-blend-mode .stands-for {
    mix-blend-mode: normal;
    color: #000; }
  @media only screen and (min-width: 768px) {
    .stands-for {
      grid-column: 3 / span 2; } }
  @media only screen and (min-width: 1024px) {
    .stands-for {
      grid-column: 4 / span 2;
      padding-top: 30px; } }
  .stands-for .heading {
    margin-bottom: 20px; }

.partnering {
  grid-column: 2 / span 4;
  margin-bottom: var(--margin120); }
  @media only screen and (min-width: 768px) {
    .partnering {
      grid-column: 3 / span 2; } }
  @media only screen and (min-width: 1024px) {
    .partnering {
      grid-column: 4 / span 3; } }
  @media only screen and (min-width: 1200px) {
    .partnering {
      grid-column: 4 / span 2; } }

.products-header {
  margin-bottom: calc(var(--margin30) - 15px); }
  .products-header > div {
    grid-column: var(--start223)/span 4; }
  .products-header .inner-header {
    grid-column: var(--start223)/span 4; }

.products {
  margin-bottom: var(--margin120); }
  .products.one-product {
    padding-top: 95px; }
    @media only screen and (min-width: 1024px) {
      .products.one-product {
        padding-top: 13%; } }
    .products.one-product .item {
      padding-bottom: 15px; }
      @media only screen and (min-width: 1024px) {
        .products.one-product .item .department {
          flex-direction: column;
          align-items: flex-start; }
        .products.one-product .item .title::before,
        .products.one-product .item .department::after {
          content: '';
          display: block;
          position: static;
          grid-column: 2 / span 4;
          background-color: #000;
          height: 5px;
          width: 100%;
          margin: 10px 0;
          transition: width 0.6s; } }
      .products.one-product .item:after {
        width: 100%; }
        @media only screen and (min-width: 1024px) {
          .products.one-product .item:after {
            width: 0; } }
      .no-touch .products.one-product .item:hover:before, .no-touch .products.one-product .item:hover:after {
        width: 0; }
      .products.one-product .item .pic-inner.is-new:after {
        opacity: 1; }
    .products.one-product img {
      opacity: 1;
      transform: translateX(0); }
    .products.one-product .department span {
      opacity: 1; }
    .products.one-product .header {
      grid-column: content-start / content-end;
      position: relative;
      z-index: 1;
      margin-bottom: 30px;
      word-break: break-word;
      min-height: var(--minHeight); }
      @media only screen and (min-width: 768px) {
        .products.one-product .header {
          padding-top: 15px; } }
      @media only screen and (min-width: 1024px) {
        .products.one-product .header {
          grid-column: 3 / span 2;
          padding-top: 0; } }
    .products.one-product .links {
      grid-column: content-1 / content-end;
      text-transform: uppercase;
      font-size: 14px;
      font-weight: bold;
      line-height: 1.43;
      letter-spacing: 0.5px;
      margin-bottom: 30px; }
      @media only screen and (min-width: 760px) {
        .products.one-product .links {
          grid-column: content-start / content-center; } }
    .products.one-product .description {
      grid-column: content-1 / content-end;
      font-size: 16px;
      font-weight: 600;
      line-height: 1.38; }
      @media only screen and (min-width: 760px) {
        .products.one-product .description {
          grid-column: content-center / content-end;
          font-size: 24px;
          line-height: 1.17; } }
      @media only screen and (min-width: 1024px) {
        .products.one-product .description {
          font-size: 36px;
          line-height: 1.1; } }
  .products .item {
    padding-bottom: 10px;
    position: relative; }
    .products .item:after, .products .item:before {
      --indent: 10px;
      display: block;
      position: static;
      grid-column: 2 / span 4;
      background-color: #000;
      height: 5px;
      width: 0;
      margin-bottom: var(--indent);
      transition: width 0.6s; }
    @media only screen and (max-width: 1023px) {
      .products .item:after, .products .item:before {
        content: ''; } }
    @media only screen and (min-width: 768px) {
      .products .item {
        padding-bottom: 30px; }
        .products .item:before, .products .item:after {
          --indent: 20px; } }
    @media only screen and (min-width: 1024px) {
      .products .item:before, .products .item:after {
        content: '';
        grid-column: 3 / span 4; } }
    .products .item:last-child:after {
      content: '';
      margin-top: var(--indent); }
    .products .item:not(:last-child):after {
      margin-bottom: 0;
      margin-top: var(--indent); }
    .no-touch .products .item:hover {
      z-index: 3; }
      .no-touch .products .item:hover:before, .no-touch .products .item:hover:after {
        width: 100%; }
      .no-touch .products .item:hover .pic-inner:before {
        opacity: 1; }
      .no-touch .products .item:hover .pic-inner.is-new:after {
        opacity: 1; }
      .no-touch .products .item:hover img {
        opacity: 1;
        transition-delay: 1.2s;
        transition-duration: 0.5s; }
      .no-touch .products .item:hover svg {
        opacity: 1; }
        .no-touch .products .item:hover svg path,
        .no-touch .products .item:hover svg polygon,
        .no-touch .products .item:hover svg polyline {
          stroke-dashoffset: 0;
          transition: stroke-dashoffset 1.5s; }
      .no-touch .products .item:hover .department span,
      .no-touch .products .item:hover .department a {
        opacity: 1; }
      .no-touch .products .item:hover .slogan,
      .no-touch .products .item:hover .stats {
        opacity: 1; }
    .products .item.see-All:before, .products .item.see-All:after {
      content: none; }
    .touch .products .item.active:before, .touch .products .item.active:after {
      width: 100%; }
    .touch .products .item.active .pic-inner:before {
      opacity: 1; }
    .touch .products .item.active img {
      opacity: 1;
      transition-delay: 1.2s;
      transition-duration: 0.5s; }
    .touch .products .item.active svg {
      opacity: 1; }
      .touch .products .item.active svg path,
      .touch .products .item.active svg polygon,
      .touch .products .item.active svg polyline {
        stroke-dashoffset: 0;
        transition: stroke-dashoffset 1.5s; }
    .touch .products .item.active .department span {
      opacity: 1; }
  .products .breadcrumbs-wrapper {
    grid-column: content; }
    @media only screen and (min-width: 1200px) {
      .products .breadcrumbs-wrapper {
        grid-column: 3 / span 2; } }
  .products .title {
    grid-column: 2 / span 4;
    min-height: 1.84em;
    margin-bottom: 0.46em;
    z-index: 1; }
    @media only screen and (min-width: 768px) {
      .products .title {
        grid-column: 2 / span 2;
        margin-bottom: 0;
        z-index: 2;
        padding-bottom: calc(100% - 3em); } }
    @media only screen and (min-width: 1024px) {
      .products .title {
        grid-column: 3 / span 2;
        padding-bottom: calc(100% - 3.5em); } }
    @media only screen and (min-width: 1200px) {
      .products .title {
        font-size: 88px;
        padding-bottom: calc(100% - 3.8em); } }
    @media only screen and (min-width: 1440px) {
      .products .title {
        padding-bottom: calc(5%); } }
  .products .slogan {
    padding-bottom: 15px;
    grid-column: 2 / span 4;
    grid-row: 4;
    box-sizing: border-box;
    min-height: 3.75em;
    font-size: 16px;
    font-weight: 600;
    line-height: 1.25; }
    .products .slogan + .title {
      min-height: initial;
      padding-bottom: 15px;
      margin-bottom: 0; }
      @media only screen and (min-width: 768px) {
        .products .slogan + .title {
          padding-bottom: 20px; } }
    @media only screen and (min-width: 768px) {
      .products .slogan {
        opacity: 0;
        padding-bottom: 20px;
        grid-column: 2 / span 2;
        min-height: 6.25em; } }
    @media only screen and (min-width: 1024px) {
      .products .slogan {
        grid-column: 3 / span 2; } }
  .products .department {
    grid-column: 2 / span 4;
    font-size: 14px;
    font-weight: 600;
    line-height: 1.28;
    display: flex;
    align-items: flex-end;
    padding-bottom: 15px; }
    .products .department .inner {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      margin: 0 0 -4px -16px;
      width: calc(100% + 16px); }
      .products .department .inner > * {
        margin: 0 0 4px 16px; }
      .products .department .inner a {
        position: relative; }
        .products .department .inner a::before {
          content: '';
          left: 0;
          bottom: 0;
          width: 0;
          height: 1px;
          position: absolute;
          background: #000;
          transition: width .3s; }
        .no-touch .products .department .inner a:hover::before {
          width: 100%; }
    @media only screen and (min-width: 768px) {
      .products .department {
        padding-bottom: 20px;
        grid-column: 2 / span 2; } }
    @media only screen and (min-width: 1024px) {
      .products .department {
        grid-column: 3 / span 2; } }
    .products .department span,
    .products .department a {
      display: block;
      opacity: 1; }
      @media only screen and (min-width: 768px) {
        .products .department span,
        .products .department a {
          opacity: 0; } }
  .products .stats {
    grid-column: 2 / span 2; }
    .products .stats__list {
      display: flex;
      flex-direction: column;
      justify-content: center;
      pointer-events: none; }
    .products .stats .stat {
      display: flex;
      flex-direction: column; }
      .products .stats .stat .first {
        font-size: 32px;
        font-weight: 700;
        line-height: 1; }
      .products .stats .stat .second {
        margin-top: 4px;
        font-size: 14px;
        font-weight: 600;
        line-height: 1.28; }
      .products .stats .stat + .stat {
        margin-top: 20px; }
    @media only screen and (min-width: 768px) {
      .products .stats {
        opacity: 0; }
        .products .stats__list {
          margin: 0 0 -16px -32px;
          width: calc(100% + 32px);
          flex-direction: row;
          justify-content: flex-start;
          flex-wrap: wrap; }
        .products .stats .stat {
          margin: 0 0 16px 32px;
          text-align: center;
          align-items: center; }
          .products .stats .stat .first {
            font-size: 36px;
            line-height: 1.11; }
          .products .stats .stat .second {
            font-size: 16px;
            line-height: 1.25; }
          .products .stats .stat + .stat {
            margin-top: 0; } }
    @media only screen and (min-width: 1024px) {
      .products .stats {
        grid-column: 3 / span 2; } }
    @media only screen and (min-width: 1200px) {
      .products .stats__list {
        margin: 0 0 -16px -40px;
        width: calc(100% + 40px); }
      .products .stats .stat {
        margin: 0 0 16px 40px; }
        .products .stats .stat .first {
          font-size: 48px;
          line-height: 1; }
        .products .stats .stat .second {
          font-size: 20px;
          line-height: 1.2; } }
  .products .pic {
    grid-column: 4 / span 2;
    display: flex;
    align-items: flex-end; }
    @media only screen and (min-width: 768px) {
      .products .pic {
        grid-row: 2 / span 5;
        position: relative;
        align-items: center; } }
    @media only screen and (min-width: 1024px) {
      .products .pic {
        grid-column: 5 / span 2; } }
  .products .pic-inner {
    width: 100%;
    display: block;
    pointer-events: none;
    position: relative;
    opacity: 1; }
    @media only screen and (min-width: 768px) {
      .products .pic-inner {
        position: absolute;
        z-index: 1; } }
    .products .pic-inner.is-new:after {
      font-size: 14.28571px;
      font-weight: 900;
      position: absolute;
      width: 50px;
      height: 50px;
      background-color: #000;
      color: #fff;
      display: flex;
      align-items: center;
      justify-content: center;
      border-radius: 50%;
      transform: rotate(-30deg);
      z-index: 1;
      content: 'NEW';
      opacity: 0;
      left: 10px;
      top: 10px;
      transition: opacity 0.3s; }
    .products .pic-inner:before {
      content: '';
      position: absolute;
      border: 1px solid #000;
      background-color: #fff;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      opacity: 0;
      will-change: opacity; }
  .products img {
    display: block;
    width: 100%;
    position: relative;
    z-index: 1;
    opacity: 1; }
    .products img:nth-child(2) {
      position: absolute;
      top: 0;
      left: 0; }
    @media only screen and (min-width: 768px) {
      .products img {
        transition: opacity 0.01s;
        will-change: opacity;
        opacity: 0; } }
  .products svg {
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    fill: none;
    stroke: #000;
    stroke-width: 1;
    opacity: 0; }
    .products svg path,
    .products svg polygon,
    .products svg polyline {
      vector-effect: non-scaling-stroke; }
  .products .seeAll {
    grid-column: 2 / span 4; }
    @media only screen and (min-width: 1024px) {
      .products .seeAll {
        grid-column: 3 / span 2; } }

.products-filters__content {
  grid-column: content;
  display: flex;
  align-items: center;
  position: relative;
  margin-top: 20px;
  margin-bottom: 109px; }
  .products-filters__content .filter {
    --indent: 25px;
    font-size: 14px;
    font-weight: 700;
    text-transform: uppercase;
    max-width: calc(50% - (var(--indent) / 2)); }
    .products-filters__content .filter__current {
      padding: 0 15px 11px 0;
      height: 28px;
      box-sizing: border-box;
      position: relative;
      max-width: 215px;
      white-space: nowrap;
      text-overflow: ellipsis;
      overflow: hidden; }
      .products-filters__content .filter__current:empty {
        opacity: 0; }
      .products-filters__content .filter__current::before {
        content: '';
        position: absolute;
        transform: rotate(90deg);
        top: 5px;
        right: 2px;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 4px 0 4px 5px;
        border-color: transparent transparent transparent #000;
        transition: transform .3s; }
    .products-filters__content .filter__list {
      margin: 0;
      display: none;
      position: absolute;
      left: 0;
      top: calc(100% - 1px);
      background: #fff;
      padding: 30px;
      border: 1px solid #000;
      box-sizing: border-box;
      list-style: none;
      z-index: 3;
      width: 260px; }
      .products-filters__content .filter__list li[data-id="all"] {
        font-size: 0; }
        .products-filters__content .filter__list li[data-id="all"]::before {
          content: attr(data-id);
          font-size: 14px; }
      .products-filters__content .filter__list li + li {
        margin-top: 15px; }
    .products-filters__content .filter:hover .filter__list {
      display: block; }
    .products-filters__content .filter:hover .filter__current::before {
      transform: rotate(-90deg); }
    .products-filters__content .filter + .filter {
      margin-left: var(--indent); }
    @media only screen and (min-width: 480px) {
      .products-filters__content .filter {
        position: relative; } }
    @media only screen and (min-width: 1024px) {
      .products-filters__content .filter {
        --indent: 40px; } }
  @media only screen and (min-width: 1024px) {
    .products-filters__content {
      margin-top: 30px;
      margin-bottom: 149px; } }

.products-filters-empty {
  display: none;
  margin: calc(var(--margin120) * -1) 0 var(--margin120); }
  .products-filters-empty__content {
    grid-column: content;
    color: #fff;
    background: #000;
    box-sizing: border-box;
    padding: 30px;
    text-transform: uppercase; }
    .products-filters-empty__content .stroke {
      -webkit-text-stroke: 1px #fff;
      text-stroke: 1px #fff; }
    .products-filters-empty__content .title,
    .products-filters-empty__content .stroke {
      margin: 0 auto 0;
      max-width: 570px;
      width: 100%; }
    @media only screen and (min-width: 768px) {
      .products-filters-empty__content {
        padding: 60px; } }
    @media only screen and (min-width: 1024px) {
      .products-filters-empty__content {
        padding: 100px; } }
    @media only screen and (min-width: 1200px) {
      .products-filters-empty__content .title,
      .products-filters-empty__content .stroke {
        max-width: 700px; } }

@media only screen and (min-width: 1024px) {
  .no-touch .companies-wrap {
    margin-bottom: calc(var(--margin120) - 60px); } }

.companies .header {
  grid-column: 2 / span 4;
  margin-bottom: var(--margin30); }
  @media only screen and (min-width: 768px) {
    .companies .header {
      grid-column: 2 / span 3; } }
  @media only screen and (min-width: 1024px) {
    .companies .header {
      grid-column: 3 / span 2;
      max-width: 500px; } }

.companies .company {
  grid-column: 2 / span 2;
  border-color: #000;
  border-style: solid;
  border-width: 0 1px 1px 0; }
  @media only screen and (min-width: 760px) {
    .companies .company {
      grid-column: 2 / span 1; } }
  @media only screen and (min-width: 1024px) {
    .companies .company {
      grid-column: 3 / span 1; } }
  .companies .company:nth-child(1) {
    border-top-width: 1px; }
  .companies .company:nth-child(2) {
    border-top-width: 1px; }
  .companies .company:nth-child(2n-1) {
    border-left-width: 1px; }
    @media only screen and (min-width: 760px) {
      .companies .company:nth-child(2n-1) {
        border-left-width: 0; } }
  .companies .company:nth-child(2n) {
    grid-column: span 2; }
    @media only screen and (min-width: 760px) {
      .companies .company:nth-child(2n) {
        grid-column: span 1; } }
  @media only screen and (min-width: 760px) {
    .companies .company:nth-child(3) {
      border-top-width: 1px; }
    .companies .company:nth-child(4) {
      border-top-width: 1px; }
    .companies .company:nth-child(4n-3) {
      border-left-width: 1px; }
    .companies .company:nth-child(4n-2) {
      grid-column: span 1; }
    .companies .company:nth-child(4n-1) {
      grid-column: span 1; } }
  .companies .company .inner-wrap {
    width: 100%;
    padding-bottom: 100%;
    position: relative; }
  .companies .company .inner {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center; }
    .companies .company .inner .slogan {
      position: absolute;
      left: 10px;
      bottom: 10px;
      font-size: 0.65rem;
      line-height: 0.95;
      width: 75%; }
      @media only screen and (min-width: 1024px) {
        .companies .company .inner .slogan {
          left: 15px;
          bottom: 15px;
          line-height: 1; } }
    .companies .company .inner .svg {
      width: 60%;
      height: 60%;
      position: relative; }
      .companies .company .inner .svg svg {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0; }
        .companies .company .inner .svg svg:nth-child(2) {
          mix-blend-mode: multiply;
          z-index: 104; }
          .no-blend-mode .companies .company .inner .svg svg:nth-child(2),
          .touch .companies .company .inner .svg svg:nth-child(2) {
            display: none; }
        .companies .company .inner .svg svg:nth-child(3) {
          z-index: 105; }
          .no-blend-mode .companies .company .inner .svg svg:nth-child(3) {
            display: none; }

.enumeration-wrap {
  margin-top: calc(var(--margin120) - 30px);
  margin-bottom: var(--margin120); }
  .enumeration-wrap.margin-top-none {
    margin-top: 0; }
  .touch .enumeration-wrap {
    margin-top: 25vh; }
  .enumeration-wrap .dot-i {
    width: 0;
    height: 0;
    position: -webkit-sticky;
    position: sticky;
    top: calc(50%); }
  .enumeration-wrap .dot {
    top: calc(50%);
    position: -webkit-sticky;
    position: sticky;
    width: 10px;
    height: 10px;
    mix-blend-mode: difference;
    left: calc(50% - 5px);
    align-items: center;
    justify-content: center;
    display: none;
    pointer-events: none; }
    @media only screen and (max-width: 767px) {
      .enumeration-wrap .dot {
        top: 50vh;
        transform: translateY(-50%); } }
    .touch .enumeration-wrap .dot {
      display: flex; }
    .enumeration-wrap .dot:before {
      position: absolute;
      content: '';
      width: 1px;
      height: 1px;
      background-color: #fff;
      border-radius: 50%;
      transition: width 0.5s, height 0.5s;
      will-change: width, height; }
    .enumeration-wrap .dot.active:before {
      width: 200px;
      height: 200px; }
  .enumeration-wrap .dummy.vh50,
  .enumeration-wrap .dummy2.vh50 {
    height: 25vh; }
  .no-touch .enumeration-wrap .dummy, .no-touch
  .enumeration-wrap .dummy2 {
    display: none; }
  .enumeration-wrap .header {
    grid-column: var(--start223)/span var(--span433);
    margin-bottom: 30px; }
    @media only screen and (min-width: 760px) {
      .enumeration-wrap .header {
        margin-bottom: 60px; } }
    @media only screen and (min-width: 1200px) {
      .enumeration-wrap .header {
        margin-bottom: 120px; } }

.enumeration-item {
  grid-column: 2 / span 4; }
  @media only screen and (min-width: 1024px) {
    .enumeration-item {
      grid-column: 3 / span 4; } }
  .enumeration-item:first-child:before {
    margin-top: 0; }
  .enumeration-item:nth-child(2n) .enumeration-inner .left {
    grid-column: 1 / span 4; }
  .enumeration-item:nth-child(2n) .enumeration-inner .heading {
    grid-column: 1 / span 4; }
    @media only screen and (min-width: 768px) {
      .enumeration-item:nth-child(2n) .enumeration-inner .heading {
        grid-column: 3 / span 2; } }
  .enumeration-item:nth-child(2n) .enumeration-inner .list {
    grid-column: 2 / span 3; }
    @media only screen and (min-width: 768px) {
      .enumeration-item:nth-child(2n) .enumeration-inner .list {
        grid-column: 3 / span 2; } }
  .enumeration-item:nth-child(2n) .enumeration-inner .description {
    grid-column: 2 / span 3; }
    @media only screen and (min-width: 768px) {
      .enumeration-item:nth-child(2n) .enumeration-inner .description {
        grid-column: 3 / span 2; } }
    @media only screen and (min-width: 1200px) {
      .enumeration-item:nth-child(2n) .enumeration-inner .description {
        grid-column: 3 / span 1; } }
  .enumeration-item:last-child:after {
    content: ''; }
  .touch .enumeration-item.active:before, .touch .enumeration-item.active:after,
  .enumeration-item .no-touch:before,
  .enumeration-item .no-touch:after {
    width: 100%; }
  .touch .enumeration-item.active + .enumeration-item:before,
  .enumeration-item .no-touch + .enumeration-item:before {
    width: 100%; }
  .touch .enumeration-item.active .left > span,
  .enumeration-item .no-touch .left > span {
    opacity: 1; }
  .enumeration-item:before, .enumeration-item:after {
    content: '';
    display: block;
    height: 1px;
    background-color: #000;
    margin: 30px 0;
    transition: width 0.3s; }
  .enumeration-item:after {
    content: none; }
  .enumeration-item .enumeration-inner {
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr; }
    .enumeration-item .enumeration-inner .left {
      grid-column: 1 / span 4;
      margin-bottom: 15px; }
    .enumeration-item .enumeration-inner .heading {
      grid-column: 1 / span 4;
      margin-bottom: 10px; }
      @media only screen and (min-width: 768px) {
        .enumeration-item .enumeration-inner .heading {
          grid-column-start: 2; } }
    .enumeration-item .enumeration-inner .left {
      font-size: 12px;
      line-height: 1.33;
      display: block; }
      @media only screen and (min-width: 768px) {
        .enumeration-item .enumeration-inner .left {
          grid-column: 1 / span 1;
          grid-row: 1 / span 2; } }
      .enumeration-item .enumeration-inner .left > span {
        display: block;
        opacity: 1;
        transition: opacity 1s;
        margin-bottom: 10px; }
    .enumeration-item .enumeration-inner .list {
      grid-column: 1 / span 3;
      font-weight: 600;
      line-height: 1.38; }
      @media only screen and (min-width: 768px) {
        .enumeration-item .enumeration-inner .list {
          grid-column: 2 / span 2; } }
    .enumeration-item .enumeration-inner .description {
      grid-column: 1 / span 3;
      font-weight: 600;
      line-height: 1.38; }
      @media only screen and (min-width: 768px) {
        .enumeration-item .enumeration-inner .description {
          grid-column: 2 / span 2; } }
      @media only screen and (min-width: 1200px) {
        .enumeration-item .enumeration-inner .description {
          grid-column: 2 / span 1; } }

.before-contact-form .header {
  grid-column: 2 / span 4;
  margin-bottom: 30px;
  max-width: 350px; }
  @media only screen and (min-width: 768px) {
    .before-contact-form .header {
      grid-column: 2 / span 3;
      max-width: 400px; } }
  @media only screen and (min-width: 1024px) {
    .before-contact-form .header {
      grid-column: 3 / span 3;
      max-width: 500px; }
      .path-taxonomy .before-contact-form .header,
      .page-node-type-service .before-contact-form .header {
        grid-column: 4 / span 3; } }
  @media only screen and (min-width: 1200px) {
    .before-contact-form .header {
      max-width: 600px; } }

.before-contact-form .footer-button {
  grid-column: 2 / span 4;
  background-color: #000;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 60px;
  text-transform: uppercase;
  font-size: 14px;
  font-weight: bold;
  margin-bottom: var(--margin60);
  transition: background-color .3s; }
  @media only screen and (min-width: 760px) {
    .before-contact-form .footer-button {
      grid-column: 2 / span 2; } }
  @media only screen and (min-width: 1024px) {
    .before-contact-form .footer-button {
      grid-column: 3 / span 1; }
      .path-taxonomy .before-contact-form .footer-button,
      .page-node-type-service .before-contact-form .footer-button {
        grid-column: 4 / span 1; } }
  @media only screen and (min-width: 1900px) {
    .before-contact-form .footer-button {
      max-width: 230px; } }

footer {
  padding-bottom: 20px;
  padding-top: 60px; }
  @media only screen and (min-width: 360px) {
    footer {
      padding-bottom: 30px; } }
  @media only screen and (min-width: 1024px) {
    footer {
      padding-bottom: 120px;
      padding-top: 100px; } }
  @media only screen and (min-width: 1440px) {
    footer {
      padding-bottom: 150px; } }
  @media only screen and (min-width: 1900px) {
    footer {
      padding-bottom: 160px; } }
  footer nav {
    display: none;
    font-size: 14px;
    text-transform: uppercase;
    font-weight: bold;
    line-height: 1.43;
    letter-spacing: 0.5px; }
    @media only screen and (min-width: 1200px) {
      footer nav {
        display: block;
        grid-column: 3 / span 1; } }
    footer nav a {
      display: block;
      margin-bottom: 10px; }
  footer .language_block {
    display: none; }
    @media only screen and (min-width: 1200px) {
      footer .language_block {
        display: flex;
        align-items: flex-end;
        grid-column: 3 / span 1; } }
  footer .contacts {
    grid-column: 2 / span 4;
    font-size: 24px;
    font-weight: bold;
    line-height: 1.17;
    margin-bottom: 60px; }
    @media only screen and (min-width: 760px) {
      footer .contacts {
        grid-column: 2 / span 2;
        grid-row: span 2;
        margin-bottom: 0; } }
    @media only screen and (min-width: 1024px) {
      footer .contacts {
        grid-column: 3 / span 2; } }
    @media only screen and (min-width: 1200px) {
      footer .contacts {
        grid-column: 4 / span 1;
        grid-row: 1 / span 2; } }
    footer .contacts .item {
      margin-bottom: 22px;
      display: block; }
      footer .contacts .item:last-child {
        margin-bottom: 0; }
      footer .contacts .item span {
        display: block; }
    footer .contacts .item-header {
      margin-bottom: 3px; }
  footer .adress-phones {
    grid-column: 2 / span 4;
    margin-bottom: 60px; }
    @media only screen and (min-width: 760px) {
      footer .adress-phones {
        grid-column: span 1;
        grid-row: span 2;
        margin-bottom: 0; } }
    @media only screen and (min-width: 1200px) {
      footer .adress-phones {
        grid-column: 5 / span 1;
        grid-row: 1 / span 2; } }
    footer .adress-phones .adress {
      margin-bottom: 17px; }
    footer .adress-phones a {
      display: block;
      margin-bottom: 10px; }
    footer .adress-phones > p:first-child {
      margin-top: 0; }
  footer .socki {
    grid-column: 2 / span 4;
    font-size: 14px;
    font-weight: bold;
    text-transform: uppercase;
    display: flex;
    flex-direction: column;
    margin-bottom: 20px;
    letter-spacing: 0.5px; }
    @media only screen and (min-width: 760px) {
      footer .socki {
        grid-column: span 1;
        display: block;
        text-align: right;
        margin-bottom: 0; } }
    @media only screen and (min-width: 1200px) {
      footer .socki {
        grid-column: 6 / span 1;
        grid-row: 1 / span 2; } }
    footer .socki a {
      margin-right: 5px; }
      @media only screen and (min-width: 760px) {
        footer .socki a {
          display: block;
          margin-right: 0;
          margin-bottom: 15px; } }
  footer .rights {
    grid-column: 2 / span 4;
    font-size: 12px;
    line-height: 1.33;
    display: flex;
    flex-direction: column; }
    @media only screen and (min-width: 760px) {
      footer .rights {
        grid-column: 5 / span 1;
        display: flex;
        align-items: flex-end;
        justify-content: flex-end; } }
    @media only screen and (min-width: 1024px) {
      footer .rights {
        grid-column: 6 / span 1; } }
    @media only screen and (min-width: 1200px) {
      footer .rights {
        grid-column: 6 / span 1;
        grid-row: 2 / span 1; } }

.contact-form-wrap,
.subscribe-form-wrap {
  display: none;
  background-color: #fff;
  position: fixed;
  left: 0;
  top: -100px;
  width: 100%;
  height: 100%;
  z-index: 102;
  padding: 100px 0; }
  html.details .contact-form-wrap, html.details
  .subscribe-form-wrap {
    margin-top: 100px;
    z-index: 500; }
  .contact-form-wrap ::-webkit-scrollbar,
  .subscribe-form-wrap ::-webkit-scrollbar {
    width: 0; }
  .contact-form-wrap.active,
  .subscribe-form-wrap.active {
    display: block; }
  .contact-form-wrap .contact-form,
  .contact-form-wrap .subscribe-form,
  .subscribe-form-wrap .contact-form,
  .subscribe-form-wrap .subscribe-form {
    height: 100%; }
  .contact-form-wrap .contact-form,
  .contact-form-wrap .subcribe-form,
  .subscribe-form-wrap .contact-form,
  .subscribe-form-wrap .subcribe-form {
    margin-bottom: 0; }
    .contact-form-wrap .contact-form .form-inner-wrapper,
    .contact-form-wrap .subcribe-form .form-inner-wrapper,
    .subscribe-form-wrap .contact-form .form-inner-wrapper,
    .subscribe-form-wrap .subcribe-form .form-inner-wrapper {
      position: absolute;
      width: 100%; }
    .contact-form-wrap .contact-form form,
    .contact-form-wrap .subcribe-form form,
    .subscribe-form-wrap .contact-form form,
    .subscribe-form-wrap .subcribe-form form {
      padding-bottom: 80px; }

@media only screen and (min-width: 1024px) {
  .subscribe-form:not(.subscribe-form--blog) .form-inner-wrapper .mainGrid {
    display: block;
    max-width: 570px;
    margin: 0 auto; } }

.subscribe-form .header.header-style1 {
  margin-bottom: 30px;
  margin-top: 0; }

.subscribe-form .description {
  grid-column: 2 / span 4;
  max-width: 420px;
  font-size: .875rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-weight: bold; }
  @media only screen and (min-width: 760px) {
    .subscribe-form .description {
      grid-column: 2 / span 3; } }
  @media only screen and (min-width: 1024px) {
    .subscribe-form .description {
      grid-column: 4 / span 2; } }
  .subscribe-form .description p {
    margin: 0; }

.subscribe-form .form-style.form-type-email {
  margin-bottom: 50px; }

.subscribe-form .success-message-block {
  display: none; }
  .subscribe-form .success-message-block .description {
    max-width: 200px; }
  .subscribe-form .success-message-block .button-holder {
    grid-column: 2 / span 4;
    margin-bottom: 30px; }
    @media only screen and (min-width: 760px) {
      .subscribe-form .success-message-block .button-holder {
        grid-column: 3 / span 2; } }
    @media only screen and (min-width: 1024px) {
      .subscribe-form .success-message-block .button-holder {
        grid-column: 4 / span 2; } }
  .subscribe-form .success-message-block .button--primary {
    width: 100%;
    font-weight: 700;
    text-transform: uppercase;
    padding: 0;
    border-radius: 0;
    background: #000;
    color: #fff;
    border: none;
    height: 60px; }
    @media only screen and (min-width: 1024px) {
      .subscribe-form .success-message-block .button--primary {
        width: 50%; } }

.contact-form,
.subscribe-form,
.form-content {
  display: flex;
  flex-direction: column; }
  .contact-form .head,
  .subscribe-form .head,
  .form-content .head {
    height: 74px;
    position: absolute;
    width: 100%;
    z-index: 106;
    background-color: white; }
    .contact-form .head + .form-inner-block,
    .subscribe-form .head + .form-inner-block,
    .form-content .head + .form-inner-block {
      position: relative;
      flex-grow: 1;
      overflow-y: auto;
      padding-top: 74px; }
      .contact-form .head + .form-inner-block .header,
      .subscribe-form .head + .form-inner-block .header,
      .form-content .head + .form-inner-block .header {
        margin-top: 30px; }
        @media only screen and (min-width: 760px) {
          .contact-form .head + .form-inner-block .header,
          .subscribe-form .head + .form-inner-block .header,
          .form-content .head + .form-inner-block .header {
            margin-top: 45px; } }
  .contact-form .logo,
  .subscribe-form .logo,
  .form-content .logo {
    grid-column: 2 / span 2;
    display: flex;
    align-items: center; }
    .contact-form .logo svg,
    .subscribe-form .logo svg,
    .form-content .logo svg {
      width: 108px;
      height: 14px; }
  .contact-form .closer,
  .subscribe-form .closer,
  .form-content .closer {
    grid-column: 5 / span 1;
    display: flex;
    justify-content: flex-end;
    align-items: center; }
    html:not(.details) .contact-form .closer, html:not(.details)
    .subscribe-form .closer, html:not(.details)
    .form-content .closer {
      cursor: none; }
    @media only screen and (min-width: 1024px) {
      .contact-form .closer,
      .subscribe-form .closer,
      .form-content .closer {
        grid-column: 7 / span 1; } }
    .contact-form .closer:hover b:before,
    .subscribe-form .closer:hover b:before,
    .form-content .closer:hover b:before {
      transform: translateY(5px) rotateZ(45deg); }
    .contact-form .closer:hover b:after,
    .subscribe-form .closer:hover b:after,
    .form-content .closer:hover b:after {
      top: auto;
      bottom: 11px;
      transform: translateY(-5px) rotateZ(-45deg); }
    .contact-form .closer b,
    .subscribe-form .closer b,
    .form-content .closer b {
      width: 36px;
      height: 36px;
      position: relative;
      display: block; }
      .contact-form .closer b:before, .contact-form .closer b:after,
      .subscribe-form .closer b:before,
      .subscribe-form .closer b:after,
      .form-content .closer b:before,
      .form-content .closer b:after {
        content: '';
        width: 32px;
        height: 4px;
        background-color: #000;
        position: absolute;
        top: 11px;
        left: 2px;
        transition: transform 0.3s; }
      .contact-form .closer b:before,
      .subscribe-form .closer b:before,
      .form-content .closer b:before {
        transform: translateY(5px) rotateZ(20deg); }
      .contact-form .closer b:after,
      .subscribe-form .closer b:after,
      .form-content .closer b:after {
        top: auto;
        bottom: 11px;
        transform: translateY(-5px) rotateZ(-20deg); }
  .contact-form .header,
  .subscribe-form .header,
  .form-content .header {
    grid-column: 2 / span 4;
    margin-bottom: 60px; }
    @media only screen and (min-width: 760px) {
      .contact-form .header,
      .subscribe-form .header,
      .form-content .header {
        grid-column: 2 / span 3; } }
    @media only screen and (min-width: 1024px) {
      .contact-form .header,
      .subscribe-form .header,
      .form-content .header {
        grid-column: 4 / span 2; } }
  .contact-form .form-inner,
  .contact-form .send_again,
  .subscribe-form .form-inner,
  .subscribe-form .send_again,
  .form-content .form-inner,
  .form-content .send_again {
    grid-column: 2 / span 4; }
    @media only screen and (min-width: 760px) {
      .contact-form .form-inner,
      .contact-form .send_again,
      .subscribe-form .form-inner,
      .subscribe-form .send_again,
      .form-content .form-inner,
      .form-content .send_again {
        grid-column: 2 / span 3; } }
    @media only screen and (min-width: 1024px) {
      .contact-form .form-inner,
      .contact-form .send_again,
      .subscribe-form .form-inner,
      .subscribe-form .send_again,
      .form-content .form-inner,
      .form-content .send_again {
        grid-column: 4 / span 2; } }
  .contact-form .form-inner.hide,
  .subscribe-form .form-inner.hide,
  .form-content .form-inner.hide {
    display: none; }
    .contact-form .form-inner.hide + .send_again,
    .subscribe-form .form-inner.hide + .send_again,
    .form-content .form-inner.hide + .send_again {
      display: block; }
  .contact-form .form-inner + .send_again,
  .subscribe-form .form-inner + .send_again,
  .form-content .form-inner + .send_again {
    display: none; }
  .contact-form .form-style,
  .subscribe-form .form-style,
  .form-content .form-style {
    margin-bottom: 36px;
    margin-top: 0;
    display: flex;
    flex-direction: column; }
    .contact-form .form-style .t-input-phonemask__select,
    .subscribe-form .form-style .t-input-phonemask__select,
    .form-content .form-style .t-input-phonemask__select {
      font-weight: bold;
      padding-bottom: 2px; }
    .contact-form .form-style .t-input-phonemask__options-wrap,
    .subscribe-form .form-style .t-input-phonemask__options-wrap,
    .form-content .form-style .t-input-phonemask__options-wrap {
      font-weight: bold; }
    .contact-form .form-style .t-input-wrap,
    .subscribe-form .form-style .t-input-wrap,
    .form-content .form-style .t-input-wrap {
      width: 100%;
      display: inline-flex;
      flex-direction: column; }
    .contact-form .form-style input[type="tel"],
    .subscribe-form .form-style input[type="tel"],
    .form-content .form-style input[type="tel"] {
      font-weight: bold; }
      .contact-form .form-style input[type="tel"]:not(.error):focus,
      .subscribe-form .form-style input[type="tel"]:not(.error):focus,
      .form-content .form-style input[type="tel"]:not(.error):focus {
        border-width: 5px;
        padding-top: 4px;
        outline: none; }
    .contact-form .form-style .iti--allow-dropdown,
    .subscribe-form .form-style .iti--allow-dropdown,
    .form-content .form-style .iti--allow-dropdown {
      display: flex;
      flex-direction: column; }
      .contact-form .form-style .iti--allow-dropdown .iti__flag-container,
      .subscribe-form .form-style .iti--allow-dropdown .iti__flag-container,
      .form-content .form-style .iti--allow-dropdown .iti__flag-container {
        right: auto;
        left: 0;
        top: 12px;
        bottom: auto; }
        .contact-form .form-style .iti--allow-dropdown .iti__flag-container .iti__selected-flag:hover, .contact-form .form-style .iti--allow-dropdown .iti__flag-container .iti__selected-flag:focus,
        .subscribe-form .form-style .iti--allow-dropdown .iti__flag-container .iti__selected-flag:hover,
        .subscribe-form .form-style .iti--allow-dropdown .iti__flag-container .iti__selected-flag:focus,
        .form-content .form-style .iti--allow-dropdown .iti__flag-container .iti__selected-flag:hover,
        .form-content .form-style .iti--allow-dropdown .iti__flag-container .iti__selected-flag:focus {
          outline: none;
          background: none; }
    .contact-form .form-style input.error,
    .subscribe-form .form-style input.error,
    .form-content .form-style input.error {
      margin-bottom: 0;
      border: none; }
      .contact-form .form-style input.error ~ .field-suffix .underline,
      .subscribe-form .form-style input.error ~ .field-suffix .underline,
      .form-content .form-style input.error ~ .field-suffix .underline {
        height: 5px;
        width: 100%;
        background: #fff url('data:image/svg+xml;charset=utf8,<svg%20xmlns="http://www.w3.org/2000/svg"%20viewBox="0%200%2012%204"><path%20fill="none"%20stroke="%23000"%20stroke-width="0.9"%20stroke-linecap="round"%20stroke-linejoin="round"%20d="M0%200.5C3%200.5,3%203.5,6%203.5C9%203.5,9%200.5,12%200.5"/></svg>') repeat-x;
        background-position: left center; }
    .contact-form .form-style input.webform-counter-warning,
    .subscribe-form .form-style input.webform-counter-warning,
    .form-content .form-style input.webform-counter-warning {
      background: none; }
    .contact-form .form-style label,
    .subscribe-form .form-style label,
    .form-content .form-style label {
      cursor: none; }
      .contact-form .form-style label.error,
      .subscribe-form .form-style label.error,
      .form-content .form-style label.error {
        order: 1;
        display: block;
        font-size: 12px;
        line-height: 1.33;
        text-align: right;
        margin-top: 5px; }
      .contact-form .form-style label.button-action,
      .subscribe-form .form-style label.button-action,
      .form-content .form-style label.button-action {
        padding: 0;
        margin: 0;
        font-size: 14px;
        line-height: 20px;
        text-transform: uppercase;
        font-weight: bold;
        margin-top: 4px; }
        .contact-form .form-style label.button-action:before,
        .subscribe-form .form-style label.button-action:before,
        .form-content .form-style label.button-action:before {
          content: none; }
    .contact-form .form-style .validation-text,
    .subscribe-form .form-style .validation-text,
    .form-content .form-style .validation-text {
      display: none; }
    .contact-form .form-style .label,
    .contact-form .form-style input,
    .contact-form .form-style textarea,
    .contact-form .form-style button,
    .subscribe-form .form-style .label,
    .subscribe-form .form-style input,
    .subscribe-form .form-style textarea,
    .subscribe-form .form-style button,
    .form-content .form-style .label,
    .form-content .form-style input,
    .form-content .form-style textarea,
    .form-content .form-style button {
      font-size: 14px;
      font-weight: bold;
      text-transform: uppercase;
      font-family: "ProximaNova"; }
      .ios .contact-form .form-style .label, .ios
      .contact-form .form-style input, .ios
      .contact-form .form-style textarea, .ios
      .contact-form .form-style button, .ios
      .subscribe-form .form-style .label, .ios
      .subscribe-form .form-style input, .ios
      .subscribe-form .form-style textarea, .ios
      .subscribe-form .form-style button, .ios
      .form-content .form-style .label, .ios
      .form-content .form-style input, .ios
      .form-content .form-style textarea, .ios
      .form-content .form-style button {
        font-size: 16px; }
    .contact-form .form-style textarea,
    .subscribe-form .form-style textarea,
    .form-content .form-style textarea {
      text-transform: none; }
    .contact-form .form-style .label,
    .subscribe-form .form-style .label,
    .form-content .form-style .label {
      padding: 10px 0;
      display: block; }
    .contact-form .form-style input,
    .subscribe-form .form-style input,
    .form-content .form-style input {
      height: 40px;
      width: 100%;
      border: none;
      border-bottom: 1px solid #000;
      padding: 0;
      border-radius: 0; }
      html:not(.details) .contact-form .form-style input, html:not(.details)
      .subscribe-form .form-style input, html:not(.details)
      .form-content .form-style input {
        cursor: none; }
      .contact-form .form-style input:focus,
      .subscribe-form .form-style input:focus,
      .form-content .form-style input:focus {
        border-width: 5px;
        outline: none;
        margin-bottom: 0; }
    .contact-form .form-style input::-webkit-input-placeholder,
    .subscribe-form .form-style input::-webkit-input-placeholder,
    .form-content .form-style input::-webkit-input-placeholder {
      /* Chrome/Opera/Safari */
      color: rgba(0, 0, 0, 0.25); }
    .contact-form .form-style input::-moz-placeholder,
    .subscribe-form .form-style input::-moz-placeholder,
    .form-content .form-style input::-moz-placeholder {
      /* Firefox 19+ */
      color: rgba(0, 0, 0, 0.25); }
    .contact-form .form-style input:-ms-input-placeholder,
    .subscribe-form .form-style input:-ms-input-placeholder,
    .form-content .form-style input:-ms-input-placeholder {
      /* IE 10+ */
      color: rgba(0, 0, 0, 0.25); }
    .contact-form .form-style input:-moz-placeholder,
    .subscribe-form .form-style input:-moz-placeholder,
    .form-content .form-style input:-moz-placeholder {
      /* Firefox 18- */
      color: rgba(0, 0, 0, 0.25); }
    .contact-form .form-style textarea,
    .subscribe-form .form-style textarea,
    .form-content .form-style textarea {
      width: 100%;
      box-sizing: border-box;
      padding: 10px;
      min-height: 200px;
      border: 1px solid #000;
      border-radius: 0;
      max-height: 400px; }
      html:not(.details) .contact-form .form-style textarea, html:not(.details)
      .subscribe-form .form-style textarea, html:not(.details)
      .form-content .form-style textarea {
        cursor: none; }
      .contact-form .form-style textarea:focus,
      .subscribe-form .form-style textarea:focus,
      .form-content .form-style textarea:focus {
        border-width: 5px;
        outline: none;
        padding: 6px; }
    .contact-form .form-style button,
    .subscribe-form .form-style button,
    .form-content .form-style button {
      width: 100%;
      border-radius: 0;
      background: #000;
      color: #fff;
      border: none;
      height: 60px; }
      html:not(.details) .contact-form .form-style button, html:not(.details)
      .subscribe-form .form-style button, html:not(.details)
      .form-content .form-style button {
        cursor: none; }
      @media only screen and (min-width: 1024px) {
        .contact-form .form-style button,
        .subscribe-form .form-style button,
        .form-content .form-style button {
          width: 50%; } }
    .contact-form .form-style [type="submit"],
    .subscribe-form .form-style [type="submit"],
    .form-content .form-style [type="submit"] {
      width: 100%;
      border-radius: 0;
      background: #000;
      color: #fff;
      border: none;
      height: 60px; }
      html:not(.details) .contact-form .form-style [type="submit"], html:not(.details)
      .subscribe-form .form-style [type="submit"], html:not(.details)
      .form-content .form-style [type="submit"] {
        cursor: none; }
      @media only screen and (min-width: 1024px) {
        .contact-form .form-style [type="submit"],
        .subscribe-form .form-style [type="submit"],
        .form-content .form-style [type="submit"] {
          width: 200px; } }
    .contact-form .form-style [data-drupal-selector="edit-cv-upload-remove-button"],
    .contact-form .form-style [data-drupal-selector="edit-add-file-remove-button"],
    .subscribe-form .form-style [data-drupal-selector="edit-cv-upload-remove-button"],
    .subscribe-form .form-style [data-drupal-selector="edit-add-file-remove-button"],
    .form-content .form-style [data-drupal-selector="edit-cv-upload-remove-button"],
    .form-content .form-style [data-drupal-selector="edit-add-file-remove-button"] {
      width: 16px;
      height: 16px;
      margin: 0;
      color: transparent;
      background: transparent url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path fill="none" stroke="%23000" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round" d="M3 3L13 13zM13 3 L3 13z"/></svg>') no-repeat; }
    .contact-form .form-style.form-item-agree-policy input,
    .subscribe-form .form-style.form-item-agree-policy input,
    .form-content .form-style.form-item-agree-policy input {
      display: none; }
      .contact-form .form-style.form-item-agree-policy input:checked ~ .agree-policy-wrap svg,
      .subscribe-form .form-style.form-item-agree-policy input:checked ~ .agree-policy-wrap svg,
      .form-content .form-style.form-item-agree-policy input:checked ~ .agree-policy-wrap svg {
        background-color: #000; }
    .contact-form .form-style.form-item-agree-policy .agree-policy-wrap,
    .subscribe-form .form-style.form-item-agree-policy .agree-policy-wrap,
    .form-content .form-style.form-item-agree-policy .agree-policy-wrap {
      display: flex;
      align-items: center; }
      .contact-form .form-style.form-item-agree-policy .agree-policy-wrap svg,
      .subscribe-form .form-style.form-item-agree-policy .agree-policy-wrap svg,
      .form-content .form-style.form-item-agree-policy .agree-policy-wrap svg {
        width: 20px;
        height: 20px;
        flex-shrink: 0;
        background-color: #fff;
        border: 1px solid #000;
        margin-right: 15px; }
      .contact-form .form-style.form-item-agree-policy .agree-policy-wrap .option,
      .subscribe-form .form-style.form-item-agree-policy .agree-policy-wrap .option,
      .form-content .form-style.form-item-agree-policy .agree-policy-wrap .option {
        padding-left: 37px;
        margin-left: -37px; }
    .contact-form .form-style .file,
    .subscribe-form .form-style .file,
    .form-content .form-style .file {
      font-size: 14px;
      line-height: 20px;
      font-weight: bold;
      text-transform: uppercase;
      letter-spacing: 0.5px;
      background-image: none;
      padding: 0; }
    .contact-form .form-style .webform-document-file.error .webform-file-button,
    .subscribe-form .form-style .webform-document-file.error .webform-file-button,
    .form-content .form-style .webform-document-file.error .webform-file-button {
      background: red; }
      .contact-form .form-style .webform-document-file.error .webform-file-button:before,
      .subscribe-form .form-style .webform-document-file.error .webform-file-button:before,
      .form-content .form-style .webform-document-file.error .webform-file-button:before {
        content: url('data:image/svg+xml;charset=utf8,<svg viewBox="0 0 13 13" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M5.875 8.375H7.125V9.625H5.875V8.375ZM5.875 3.375H7.125V7.125H5.875V3.375ZM6.49375 0.25C3.04375 0.25 0.25 3.05 0.25 6.5C0.25 9.95 3.04375 12.75 6.49375 12.75C9.95 12.75 12.75 9.95 12.75 6.5C12.75 3.05 9.95 0.25 6.49375 0.25ZM6.5 11.5C3.7375 11.5 1.5 9.2625 1.5 6.5C1.5 3.7375 3.7375 1.5 6.5 1.5C9.2625 1.5 11.5 3.7375 11.5 6.5C11.5 9.2625 9.2625 11.5 6.5 11.5Z" fill="white"/></svg>'); }
    .contact-form .form-style .webform-document-file .webform-file-button,
    .subscribe-form .form-style .webform-document-file .webform-file-button,
    .form-content .form-style .webform-document-file .webform-file-button {
      border-radius: 0;
      background: #000;
      color: #fff;
      border: none;
      font-size: 12px;
      width: 200px;
      padding: 10px 16px;
      line-height: 1;
      box-sizing: border-box;
      display: flex;
      justify-content: center;
      align-items: center; }
      .contact-form .form-style .webform-document-file .webform-file-button:before,
      .subscribe-form .form-style .webform-document-file .webform-file-button:before,
      .form-content .form-style .webform-document-file .webform-file-button:before {
        content: url('data:image/svg+xml;charset=utf8,<svg viewBox="0 0 11 11" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M0.625 9.29159H10.375V10.3749H0.625V9.29159ZM6.04167 2.15675V8.20825H4.95833V2.15675L1.66988 5.44575L0.903958 4.67984L5.5 0.083252L10.096 4.67929L9.33012 5.44521L6.04167 2.15784V2.15675Z" fill="white"/></svg>');
        margin-right: 1em;
        width: 1.5em;
        height: 1.5em; }
    .contact-form .form-style .webform-document-file.x-loader [data-drupal-selector="edit-cv-upload-remove-button"],
    .contact-form .form-style .webform-document-file.x-loader [data-drupal-selector="edit-add-file-remove-button"],
    .subscribe-form .form-style .webform-document-file.x-loader [data-drupal-selector="edit-cv-upload-remove-button"],
    .subscribe-form .form-style .webform-document-file.x-loader [data-drupal-selector="edit-add-file-remove-button"],
    .form-content .form-style .webform-document-file.x-loader [data-drupal-selector="edit-cv-upload-remove-button"],
    .form-content .form-style .webform-document-file.x-loader [data-drupal-selector="edit-add-file-remove-button"] {
      opacity: 0; }
    .contact-form .form-style .webform-document-file.x-loader .custom-progress-indicator b,
    .subscribe-form .form-style .webform-document-file.x-loader .custom-progress-indicator b,
    .form-content .form-style .webform-document-file.x-loader .custom-progress-indicator b {
      background: none;
      width: 30px !important;
      height: 30px !important;
      margin-left: 0;
      margin-top: -5px; }
    .contact-form .form-style .webform-document-file.x-loader [data-drupal-selector="edit-cv-upload-remove-button"],
    .subscribe-form .form-style .webform-document-file.x-loader [data-drupal-selector="edit-cv-upload-remove-button"],
    .form-content .form-style .webform-document-file.x-loader [data-drupal-selector="edit-cv-upload-remove-button"] {
      opacity: 0; }
    .contact-form .form-style .webform-document-file .webform-managed-file-placeholder,
    .subscribe-form .form-style .webform-document-file .webform-managed-file-placeholder,
    .form-content .form-style .webform-document-file .webform-managed-file-placeholder {
      font-size: .75em;
      line-height: 1; }
      @media only screen and (min-width: 1024px) {
        .contact-form .form-style .webform-document-file .webform-managed-file-placeholder,
        .subscribe-form .form-style .webform-document-file .webform-managed-file-placeholder,
        .form-content .form-style .webform-document-file .webform-managed-file-placeholder {
          flex: 2; } }
    .contact-form .form-style .webform-document-file .field-suffix,
    .subscribe-form .form-style .webform-document-file .field-suffix,
    .form-content .form-style .webform-document-file .field-suffix {
      width: 100%; }
    .contact-form .form-style .webform-document-file .error,
    .subscribe-form .form-style .webform-document-file .error,
    .form-content .form-style .webform-document-file .error {
      display: none; }
    .contact-form .form-style .webform-document-file .custom-progress-indicator b,
    .subscribe-form .form-style .webform-document-file .custom-progress-indicator b,
    .form-content .form-style .webform-document-file .custom-progress-indicator b {
      position: relative;
      background: none;
      width: 30px !important;
      height: 30px !important; }
    .contact-form .form-style.form-checkboxes,
    .subscribe-form .form-style.form-checkboxes,
    .form-content .form-style.form-checkboxes {
      display: inline-flex; }
      .contact-form .form-style.form-checkboxes .field-suffix,
      .subscribe-form .form-style.form-checkboxes .field-suffix,
      .form-content .form-style.form-checkboxes .field-suffix {
        margin-left: 37px; }
      .contact-form .form-style.form-checkboxes .error,
      .subscribe-form .form-style.form-checkboxes .error,
      .form-content .form-style.form-checkboxes .error {
        display: none; }
  .contact-form .contacts-inside,
  .subscribe-form .contacts-inside,
  .form-content .contacts-inside {
    grid-template-rows: max-content; }
    .contact-form .contacts-inside .dop-contacts,
    .subscribe-form .contacts-inside .dop-contacts,
    .form-content .contacts-inside .dop-contacts {
      grid-column: content-start / content-end;
      border: 5px solid #000;
      border-width: 5px 0;
      margin-bottom: 120px;
      padding: 30px 0;
      align-self: start; }
      @media only screen and (min-width: 760px) {
        .contact-form .contacts-inside .dop-contacts,
        .subscribe-form .contacts-inside .dop-contacts,
        .form-content .contacts-inside .dop-contacts {
          grid-column: content-start / content-center; } }
      @media only screen and (min-width: 1200px) {
        .contact-form .contacts-inside .dop-contacts,
        .subscribe-form .contacts-inside .dop-contacts,
        .form-content .contacts-inside .dop-contacts {
          grid-column: content-3 / content-end;
          grid-row-end: span 2; } }
      .contact-form .contacts-inside .dop-contacts .phones,
      .subscribe-form .contacts-inside .dop-contacts .phones,
      .form-content .contacts-inside .dop-contacts .phones {
        font-size: 24px;
        line-height: 1.17;
        font-weight: bold;
        margin-bottom: 22px; }
        .contact-form .contacts-inside .dop-contacts .phones a,
        .subscribe-form .contacts-inside .dop-contacts .phones a,
        .form-content .contacts-inside .dop-contacts .phones a {
          display: block;
          margin-bottom: 10px; }
          .contact-form .contacts-inside .dop-contacts .phones a:last-child,
          .subscribe-form .contacts-inside .dop-contacts .phones a:last-child,
          .form-content .contacts-inside .dop-contacts .phones a:last-child {
            margin-bottom: 0; }
      .contact-form .contacts-inside .dop-contacts .contacts .item,
      .subscribe-form .contacts-inside .dop-contacts .contacts .item,
      .form-content .contacts-inside .dop-contacts .contacts .item {
        display: block;
        margin-bottom: 22px; }
        .contact-form .contacts-inside .dop-contacts .contacts .item:last-child,
        .subscribe-form .contacts-inside .dop-contacts .contacts .item:last-child,
        .form-content .contacts-inside .dop-contacts .contacts .item:last-child {
          margin-bottom: 0; }
        .contact-form .contacts-inside .dop-contacts .contacts .item span,
        .subscribe-form .contacts-inside .dop-contacts .contacts .item span,
        .form-content .contacts-inside .dop-contacts .contacts .item span {
          display: block; }
          .contact-form .contacts-inside .dop-contacts .contacts .item span:last-child,
          .subscribe-form .contacts-inside .dop-contacts .contacts .item span:last-child,
          .form-content .contacts-inside .dop-contacts .contacts .item span:last-child {
            font-size: 24px;
            font-weight: bold;
            line-height: 1.17; }
    @media only screen and (min-width: 1200px) {
      .contact-form .contacts-inside .header,
      .subscribe-form .contacts-inside .header,
      .form-content .contacts-inside .header {
        grid-column: content-start / content-center;
        grid-row-start: 1; } }
    .contact-form .contacts-inside .header.form_success_message,
    .subscribe-form .contacts-inside .header.form_success_message,
    .form-content .contacts-inside .header.form_success_message {
      margin-bottom: 30px; }
    @media only screen and (min-width: 1200px) {
      .contact-form .contacts-inside .form-inner,
      .contact-form .contacts-inside .send_again,
      .subscribe-form .contacts-inside .form-inner,
      .subscribe-form .contacts-inside .send_again,
      .form-content .contacts-inside .form-inner,
      .form-content .contacts-inside .send_again {
        grid-column: content-start / content-center; } }
  @media only screen and (min-width: 1024px) {
    .contact-form--blog .header.header-style1,
    .subscribe-form--blog .header.header-style1,
    .form-content--blog .header.header-style1 {
      grid-column: 3 / span 2; } }
  @media only screen and (min-width: 1024px) {
    .contact-form--blog .form-inner,
    .subscribe-form--blog .form-inner,
    .form-content--blog .form-inner {
      grid-column: 3 / span 3;
      max-width: 570px; } }
  @media only screen and (min-width: 1024px) {
    .contact-form--blog .description,
    .subscribe-form--blog .description,
    .form-content--blog .description {
      grid-column: 3 / span 3; } }

.accordion_js .content {
  position: relative;
  overflow: hidden;
  transition: height 0.5s;
  height: 0; }
  .accordion_js .content .inner {
    position: absolute;
    width: 100%; }

.faq {
  margin-bottom: var(--margin120); }
  .faq .heading {
    grid-column: var(--start245)/span var(--span422);
    margin-bottom: 30px;
    font-size: 32px; }
    @media only screen and (min-width: 1024px) {
      .faq .heading {
        font-size: 64px; } }
  .faq .header {
    grid-column: var(--start245)/span var(--span422);
    min-height: 120px;
    padding: 30px 0 0;
    box-sizing: border-box;
    display: flex;
    position: relative; }
    .faq .header:first-child {
      border-top: 1px solid #000; }
    .faq .header.active i {
      transform: rotateZ(90deg); }
      .faq .header.active i:before {
        width: 0; }
    .faq .header > span {
      width: 75%;
      max-width: 350px;
      font-size: 14px;
      font-weight: bold;
      text-transform: uppercase;
      letter-spacing: 0.5px; }
      @media only screen and (min-width: 760px) {
        .faq .header > span {
          width: 50%; } }
    .faq .header i {
      position: absolute;
      width: 30px;
      height: 30px;
      right: 0;
      top: 25px;
      transition: transform 0.5s; }
      .faq .header i:before, .faq .header i:after {
        content: '';
        background-color: #000;
        position: absolute; }
      .faq .header i:before {
        width: 30px;
        height: 1px;
        top: 50%;
        transition: width 0.5s; }
      .faq .header i:after {
        width: 1px;
        height: 30px;
        left: 50%; }
  .faq .content {
    grid-column: var(--start245)/span var(--span422);
    border-bottom: 1px solid #000; }
    .faq .content .inner {
      padding-left: 25%;
      width: 75%; }
      @media only screen and (min-width: 760px) {
        .faq .content .inner {
          padding-left: 50%;
          width: 50%; } }
      @media only screen and (min-width: 1024px) {
        .faq .content .inner {
          padding-left: 66.66%;
          width: 33.33%; } }
    .faq .content .style {
      position: relative;
      padding-bottom: 30px; }
      .faq .content .style:before {
        content: '';
        position: absolute;
        top: 0.69em;
        left: 0;
        width: 30px;
        height: 1px;
        background-color: #000;
        margin-left: -40px; }

.reviews {
  margin: var(--margin60) 0; }
  .reviews .header {
    grid-column: content-start / span 3;
    margin-bottom: var(--margin30); }
  .reviews .item:before, .reviews .item:after {
    content: '';
    display: block;
    background-color: #000;
    grid-column: content-start / content-end; }
  .reviews .item:before {
    content: '';
    grid-row-start: 1;
    margin-bottom: 30px;
    height: 1px; }
  .reviews .item:after {
    height: 0;
    margin-top: var(--margin60); }
  .reviews .item:last-child:after {
    height: 1px; }
  .reviews .item.video-inside {
    position: relative; }
    .reviews .item.video-inside .photo {
      position: relative; }
      .reviews .item.video-inside .photo:before {
        content: '';
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.1);
        position: absolute;
        pointer-events: none; }
      .reviews .item.video-inside .photo:after {
        content: '';
        width: 0;
        height: 0;
        position: absolute;
        top: calc(50% - 30px);
        left: calc(50% - 26px);
        border: 10px solid transparent;
        border-left-color: #fff;
        border-width: 30px 0 30px 52px;
        pointer-events: none; }
      .reviews .item.video-inside .photo a {
        position: absolute;
        width: 100%;
        height: 100%;
        left: 0;
        top: 0; }
  .reviews .item__title {
    margin-bottom: 10px;
    font-size: 16px;
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: 0.6px; }
  .reviews .item__text {
    grid-column: var(--start245)/span var(--span422);
    grid-row-end: span 3;
    margin-top: 30px;
    margin-bottom: 60px; }
    @media only screen and (min-width: 760px) {
      .reviews .item__text {
        grid-row-start: 2;
        margin-top: 0;
        margin-bottom: 0; } }
  .reviews .item__name {
    margin-bottom: 0; }
    @media only screen and (min-width: 760px) {
      .reviews .item__name {
        margin-bottom: 20px; } }
  .reviews .item__comment {
    margin-left: 25%;
    position: relative;
    margin-top: 60px; }
    @media only screen and (min-width: 760px) {
      .reviews .item__comment {
        margin-left: 0;
        margin-top: 0;
        max-width: 320px; } }
    @media only screen and (min-width: 1024px) {
      .reviews .item__comment {
        max-width: 350px; } }
    .reviews .item__comment:before {
      content: '';
      position: absolute;
      top: 0.69em;
      left: 0;
      width: 30px;
      height: 1px;
      background-color: #000;
      margin-left: -40px; }
  .reviews .item__watch-video {
    grid-column: var(--start223)/span var(--span421);
    margin-top: 20px;
    font-weight: bold;
    text-transform: uppercase;
    letter-spacing: 0.6px;
    display: flex;
    align-items: center;
    position: absolute;
    bottom: 0;
    left: 25%;
    margin-bottom: 30px; }
    @media only screen and (min-width: 768px) {
      .reviews .item__watch-video {
        position: relative;
        left: 0;
        margin-bottom: 0; } }
    .reviews .item__watch-video i {
      font-size: 0;
      border: 10px solid transparent;
      border-left-color: #000;
      border-width: 7px 5px 7px 10px; }
  .reviews .item .field--type-fivestar {
    margin-bottom: 10px; }
  .reviews .item__photo {
    grid-column: var(--start223)/span var(--span211);
    position: relative; }
    .reviews .item__photo.is-new {
      position: relative; }
      .reviews .item__photo.is-new:before {
        font-size: 6.57143px;
        font-weight: 900;
        position: absolute;
        width: 23px;
        height: 23px;
        background-color: #000;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        transform: rotate(-30deg);
        z-index: 1;
        content: 'NEW';
        left: 6px;
        top: 6px; }
    .reviews .item__photo img {
      display: block;
      width: 100%; }
    .reviews .item__photo > a {
      position: absolute;
      left: 0;
      top: 0;
      right: 0;
      bottom: 0;
      display: flex;
      align-items: center;
      justify-content: center; }
      .reviews .item__photo > a svg {
        width: 50px;
        height: 60px;
        fill: #fff;
        pointer-events: none; }

.brander {
  grid-column: content-start / content-end;
  margin-bottom: var(--margin120); }
  .touch .brander {
    margin-bottom: 0; }
  .brander.active .brander-text {
    max-height: unset; }
    .brander.active .brander-text:after {
      background: none; }
  .brander .brander-header {
    font-size: 16px;
    font-weight: 600;
    line-height: 1;
    margin-bottom: 10px; }
  .brander .brander-text {
    font-size: 12px;
    line-height: 1;
    max-height: 95px;
    position: relative;
    overflow: hidden; }
    .brander .brander-text:after {
      content: '';
      position: absolute;
      width: 100%;
      height: 70%;
      bottom: 0;
      left: 0;
      background: linear-gradient(to top, white 0%, rgba(255, 255, 255, 0) 100%); }
  .brander .opener {
    font-size: 55px;
    letter-spacing: -0.05em;
    height: 30px;
    position: relative; }
    .brander .opener span {
      position: absolute;
      top: 50%;
      transform: translateY(-50%);
      margin-top: -0.25em; }

.mask-slider {
  --current: 0;
  overflow: hidden;
  margin-bottom: var(--margin120); }
  .mask-slider .link-holder {
    position: absolute;
    z-index: 1000;
    left: 0;
    bottom: 0; }
  .mask-slider .description {
    position: relative;
    padding: 0 0 30px;
    display: flex;
    flex-direction: column; }
  .mask-slider .description-text {
    line-height: 22px;
    overflow: hidden;
    text-overflow: ellipsis;
    -webkit-box-orient: vertical;
    display: -webkit-box;
    -webkit-line-clamp: 15; }
  .mask-slider .clamp-more {
    display: inline-block;
    vertical-align: middle;
    margin: 10px 0 0;
    background-color: transparent;
    border: none;
    outline: none;
    font-weight: 800;
    position: relative;
    z-index: 1000; }
    .mask-slider .clamp-more::after {
      content: '';
      position: absolute;
      left: 50%;
      transform: translateX(-50%);
      bottom: 1px;
      height: 2px;
      width: 100%;
      transition: width 0.3s ease-in-out;
      background-color: #000; }
    @media only screen and (min-width: 1024px) {
      .mask-slider .clamp-more:hover::after {
        width: 0; } }
    .mask-slider .clamp-more.d-none {
      display: none; }
    .mask-slider .clamp-more.more .more-text {
      display: inline-block;
      vertical-align: middle; }
    .mask-slider .clamp-more.less .less-text {
      display: inline-block;
      vertical-align: middle; }
    .mask-slider .clamp-more .more-text,
    .mask-slider .clamp-more .less-text {
      display: none; }
  .mask-slider .masked {
    grid-column: start / end;
    position: relative;
    font-size: 200px;
    font-weight: 800;
    line-height: 0.8;
    letter-spacing: -0.025em;
    left: 0; }
    @media only screen and (min-width: 760px) {
      .mask-slider .masked {
        font-size: 280px;
        line-height: 0.79; } }
    @media only screen and (min-width: 1024px) {
      .mask-slider .masked {
        font-size: 320px;
        line-height: 0.75; } }
    @media only screen and (min-width: 1281px) {
      .mask-slider .masked {
        --blueCell: 120px; } }
    .mask-slider .masked.transition {
      transition: left 0.5s; }
    .mask-slider .masked .overflow {
      width: 100%;
      overflow: hidden; }
    .mask-slider .masked .item {
      width: var(--width);
      display: flex; }
      .mask-slider .masked .item.active > span {
        left: 0; }
      .mask-slider .masked .item.active ~ div > span {
        left: 0; }
        @media only screen and (min-width: 760px) {
          .mask-slider .masked .item.active ~ div > span {
            left: calc(100% - var(--width) - 1px); } }
      .mask-slider .masked .item .slider-button {
        transition: color 0.3s ease-in-out;
        background-color: transparent;
        border: none;
        outline: none; }
        .mask-slider .masked .item .slider-button:hover {
          cursor: none;
          color: #000; }
      .mask-slider .masked .item span {
        position: relative;
        left: calc(100% - var(--width) - 1px);
        transition: left 0.5s, color 0.3s ease-in-out; }
    .mask-slider .masked .number-list {
      position: relative;
      display: flex;
      width: calc(var(--width)*var(--count));
      left: calc(var(--width)*var(--current)*(-1));
      transition: left 0.5s; }
      .mask-slider .masked .number-list > div {
        width: 100%; }
    .mask-slider .masked .number-list-inner {
      display: flex;
      position: relative; }
    .mask-slider .masked .center {
      overflow: hidden; }
    .mask-slider .masked .left-cell,
    .mask-slider .masked .right-cell {
      -webkit-text-stroke: 1px #000;
      text-stroke: 1px #000;
      color: transparent;
      display: flex; }
    @media only screen and (min-width: 1024px) {
      .mask-slider .masked .left-cell {
        grid-column: 1 / content-start; } }
    .mask-slider .masked .left-cell .number-list-inner {
      left: var(--outsideIndent); }
      @media only screen and (min-width: 1024px) {
        .mask-slider .masked .left-cell .number-list-inner {
          left: calc(var(--outsideIndent) + var(--blueCell)); } }
    .mask-slider .masked .right-cell {
      -webkit-text-stroke: 0;
      text-stroke: 0; }
      @media only screen and (min-width: 760px) {
        .mask-slider .masked .right-cell {
          grid-column: content-center / end; } }
      .mask-slider .masked .right-cell .number-list-inner {
        left: calc(-1*var(--width)); }
    .mask-slider .masked .center {
      grid-column: content-start / content-end; }
      @media only screen and (min-width: 760px) {
        .mask-slider .masked .center {
          grid-column: content-start / content-center; } }
  .mask-slider .decor {
    height: 1px;
    background-color: #000;
    margin: 20px 0 30px;
    grid-column: content-start / content-end; }
    @media only screen and (min-width: 760px) {
      .mask-slider .decor {
        margin: 30px 0; } }
    .mask-slider .decor:last-child {
      margin: 60px 0 0; }
  .mask-slider .counter {
    grid-column: content-start / content-end;
    grid-row-start: 4;
    margin-bottom: 10px;
    font-weight: 400;
    font-size: 12px; }
    @media only screen and (min-width: 760px) {
      .mask-slider .counter {
        grid-column: content-start / content-center; } }
  .mask-slider .text-block {
    grid-column: start / end;
    overflow: hidden; }
    @media only screen and (min-width: 760px) {
      .mask-slider .text-block {
        grid-row-start: 3;
        min-height: 370px; } }
    .mask-slider .text-block .text-block-inner {
      display: grid;
      position: relative;
      grid-template-columns: 1fr;
      left: 0; }
      .mask-slider .text-block .text-block-inner.transition {
        transition: left 0.5s; }
    .mask-slider .text-block .text-item {
      width: var(--width);
      grid-column-start: 1;
      grid-row-start: 1;
      position: relative;
      left: -3%;
      opacity: 0;
      transition: opacity 0.5s, left 0.5s; }
      .mask-slider .text-block .text-item.active {
        left: 0;
        opacity: 1; }
        .mask-slider .text-block .text-item.active ~ .text-item {
          left: 3%;
          opacity: 0; }
    .mask-slider .text-block .wrap {
      grid-column: content-start / content-end; }
      @media only screen and (min-width: 760px) {
        .mask-slider .text-block .wrap {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          align-items: flex-start;
          padding-right: 34px; } }
      @media only screen and (min-width: 1200px) {
        .mask-slider .text-block .wrap {
          padding-right: 150px; } }
      @media only screen and (min-width: 760px) {
        .mask-slider .text-block .wrap .description {
          max-width: 45.2%; } }
      @media only screen and (min-width: 1024px) {
        .mask-slider .text-block .wrap .description {
          max-width: 42.5%; } }
    .mask-slider .text-block .title {
      font-weight: 700;
      line-height: 1.1;
      font-size: 24px;
      max-width: 300px; }
      @media only screen and (min-width: 1024px) {
        .mask-slider .text-block .title {
          font-size: 36px; } }
      .mask-slider .text-block .title .counter {
        display: none;
        margin: 15px -3px 0; }
        @media only screen and (min-width: 760px) {
          .mask-slider .text-block .title .counter {
            display: block; } }
        .mask-slider .text-block .title .counter > span {
          padding: 0 3px; }
    .mask-slider .text-block .header {
      margin-bottom: 20px; }
  .mask-slider .nav {
    display: flex;
    grid-column: content-start / content-end; }
    .mask-slider .nav > div {
      width: 40px;
      height: 40px;
      display: flex;
      align-items: center;
      justify-content: center;
      border: 1px solid #000;
      user-select: none; }
      .mask-slider .nav > div:hover {
        background-color: #ccc; }

.about-slider {
  margin-bottom: 30px; }
  .about-slider .about-slider-inner {
    padding: 0 var(--outsideIndent);
    box-sizing: border-box;
    overflow: hidden;
    padding-bottom: 30px; }
    .touch .about-slider .about-slider-inner {
      display: flex;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch; }
      .touch .about-slider .about-slider-inner::-webkit-scrollbar {
        display: none; }
      .touch .about-slider .about-slider-inner:after {
        content: '';
        width: var(--outsideIndent);
        flex-shrink: 0; }
    .about-slider .about-slider-inner > .item {
      flex-shrink: 0;
      margin-right: 10px;
      width: calc(var(--Cell)*2);
      display: flex;
      max-width: 600px; }
      @media only screen and (min-width: 760px) {
        .about-slider .about-slider-inner > .item {
          width: calc(var(--Cell)); } }
      .about-slider .about-slider-inner > .item:nth-child(4n-3) {
        width: calc(var(--Cell)*3); }
        @media only screen and (min-width: 760px) {
          .about-slider .about-slider-inner > .item:nth-child(4n-3) {
            width: calc(var(--Cell) + var(--blueCell) - 10px); } }
        @media only screen and (min-width: 1200px) {
          .about-slider .about-slider-inner > .item:nth-child(4n-3) {
            width: calc(var(--Cell) + var(--bCell) - 10px); } }
      .about-slider .about-slider-inner > .item:nth-child(8n-5), .about-slider .about-slider-inner > .item:nth-child(8n-2), .about-slider .about-slider-inner > .item:nth-child(8n) {
        align-items: flex-end; }
      .about-slider .about-slider-inner > .item:last-child {
        margin-right: 0; }
  .about-slider .owl-stage-outer {
    overflow: visible; }
  .about-slider .owl-stage {
    display: flex; }
    .about-slider .owl-stage:after {
      content: none; }
  .about-slider .calc-block i {
    grid-column: content-start / span 1;
    order: 1; }
  .about-slider .calc-block b {
    grid-column: after-start / content-start; }
  .about-slider .pan-block {
    padding: 0 var(--outsideIndent);
    display: flex;
    overflow: hidden; }
    .about-slider .pan-block .pan-inner {
      display: flex;
      position: relative; }
      .about-slider .pan-block .pan-inner.transition {
        transition: left 0.2s; }
  .about-slider .owl-item {
    display: flex; }
    .about-slider .owl-item:nth-child(4n-3) .item {
      width: calc(var(--Cell)*3); }
      @media only screen and (min-width: 760px) {
        .about-slider .owl-item:nth-child(4n-3) .item {
          width: calc(var(--Cell) + var(--blueCell) - 10px); } }
      @media only screen and (min-width: 1200px) {
        .about-slider .owl-item:nth-child(4n-3) .item {
          width: calc(var(--Cell) + var(--bCell) - 10px); } }
    .about-slider .owl-item:nth-child(8n-5) .item, .about-slider .owl-item:nth-child(8n-2) .item, .about-slider .owl-item:nth-child(8n) .item {
      align-items: flex-end; }
    .about-slider .owl-item .item {
      width: calc(var(--Cell)*2);
      display: flex;
      max-width: 600px; }
      @media only screen and (min-width: 760px) {
        .about-slider .owl-item .item {
          width: calc(var(--Cell)); } }
  .about-slider img {
    width: 100%;
    pointer-events: none; }
  .about-slider .name {
    margin-top: 10px; }
  .about-slider .dep {
    font-size: 12px;
    line-height: 16px; }

.map-wrapper {
  grid-column: content-start / content-end;
  margin-bottom: var(--margin120);
  padding-bottom: 100%;
  position: relative; }
  @media only screen and (min-width: 1024px) {
    .map-wrapper {
      padding-bottom: 56.25%; } }
  .map-wrapper [id="map"] {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }

.custom-button {
  background-color: #000;
  border: none;
  color: #fff;
  height: 60px;
  width: 50%;
  font-weight: bold;
  text-transform: uppercase;
  cursor: none; }

a.custom-button {
  display: flex;
  align-items: center;
  justify-content: center; }

.mobile-stores {
  display: flex;
  flex-wrap: wrap; }
  .mobile-stores svg {
    position: static;
    display: block;
    width: 40px;
    height: 40px;
    fill: #000;
    opacity: 1;
    stroke: none; }
  .mobile-stores .store {
    display: flex;
    align-items: center;
    margin-right: 30px; }
  .mobile-stores .s-wrap {
    margin-right: 6px;
    pointer-events: none; }
  .mobile-stores .cap {
    pointer-events: none; }
    .mobile-stores .cap span {
      display: block; }
    .mobile-stores .cap .top {
      font-size: 12px;
      line-height: 1;
      font-weight: normal;
      text-transform: none; }

.page-404 .caption-404 {
  grid-column: content;
  max-width: 575px;
  font-weight: 600;
  line-height: 1.38;
  margin-bottom: var(--margin120); }
  @media only screen and (min-width: 760px) {
    .page-404 .caption-404 {
      grid-column-start: content; } }
  @media only screen and (min-width: 1024px) {
    .page-404 .caption-404 {
      grid-column-start: content; } }

.markered-list-wrap {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.38;
  margin-bottom: var(--margin60); }
  .markered-list-wrap .img-wrap {
    grid-column: content-start / content-end;
    margin-bottom: var(--px3030120); }
    .markered-list-wrap .img-wrap img {
      width: 100%; }
  .markered-list-wrap ul {
    grid-column: content-start / content-end;
    margin: 0;
    padding-left: 30px;
    list-style: none; }
    @media only screen and (min-width: 760px) {
      .markered-list-wrap ul {
        grid-column: content-start / content-center;
        padding-left: 40px; } }
    @media only screen and (min-width: 1200px) {
      .markered-list-wrap ul {
        grid-column: content-start / content-1;
        width: 100%; } }
    .markered-list-wrap ul li:before {
      content: '';
      width: 20px;
      height: 1px;
      position: absolute;
      background-color: #000;
      margin: 0.6em 0 0 -30px; }
      @media only screen and (min-width: 760px) {
        .markered-list-wrap ul li:before {
          width: 30px;
          margin-left: -40px; } }

.markered-list-head {
  grid-column: content-start / content-end;
  margin-bottom: 20px; }
  @media only screen and (min-width: 760px) {
    .markered-list-head {
      grid-column: content-start / content-3; } }

.brag-digit-wrap {
  font-size: 16px;
  font-weight: 600;
  line-height: 1.38;
  margin-bottom: var(--margin60); }
  .brag-digit-wrap .img-wrap {
    grid-column: content-start / content-end;
    margin-bottom: var(--px3030120); }
    .brag-digit-wrap .img-wrap img {
      width: 100%; }
  .brag-digit-wrap .digits {
    grid-column: content-start / content-end;
    font-size: 54px;
    font-weight: 800;
    line-height: 0.89; }
    @media only screen and (min-width: 760px) {
      .brag-digit-wrap .digits {
        font-size: 88px;
        letter-spacing: -1.5px;
        display: flex;
        flex-wrap: wrap; } }
    @media only screen and (min-width: 760px) {
      .brag-digit-wrap .digits {
        font-size: 120px;
        letter-spacing: -2px; } }
    .brag-digit-wrap .digits b {
      font-weight: 800; }
    .brag-digit-wrap .digits i {
      font-style: normal; }
    .brag-digit-wrap .digits .caption {
      font-size: 12px;
      font-weight: normal;
      line-height: 1.33;
      letter-spacing: 0;
      max-width: 230px; }
  .brag-digit-wrap .digit {
    padding: 20px 0 20px 30px;
    border-left: 1px solid #000;
    box-sizing: border-box; }
    @media only screen and (min-width: 760px) {
      .brag-digit-wrap .digit {
        width: 50%;
        padding: 30px 0 30px 40px; } }
    @media only screen and (min-width: 760px) {
      .brag-digit-wrap .digit.first {
        margin-bottom: 60px;
        font-size: 1.5em;
        width: 100%; } }

.brag-digit-head {
  grid-column: content-start / content-end;
  margin-bottom: var(--margin30); }
  @media only screen and (min-width: 760px) {
    .brag-digit-head {
      grid-column: content-start / content-3; } }
  .brag-digit-head .caption {
    margin-top: 10px; }
    @media only screen and (min-width: 1200px) {
      .brag-digit-head .caption {
        margin-top: 20px; } }

.further {
  grid-column: content-start / content-end;
  margin-bottom: 45px; }

.blik {
  text-shadow: 0 0 5px transparent;
  transition: text-shadow 1s;
  animation: shad-start 1s 2; }
  .scrolling .blik {
    animation: shad 1s 1; }
    .scrolling .blik:before {
      animation: blik 1s 1; }
  .blik:hover {
    animation: shad 1s 1; }
  .blik:before {
    content: attr(data-text);
    position: absolute;
    color: transparent;
    background: transparent url('data:image/svg+xml;charset=utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 4 4"><path stroke="%23fff" stroke-width="2" fill="none" d="M1 -1L3 5"/></svg>') no-repeat;
    background-size: auto 100%;
    background-position: -55% 0%;
    -webkit-background-clip: text;
    background-clip: text;
    transition: background 1s;
    text-shadow: none;
    animation: blik-start 1s 2;
    animation-fill-mode: both;
    animation-direction: alternate; }

@keyframes shad-start {
  to {
    text-shadow: 0 0 5px transparent; } }

@keyframes shad {
  to {
    text-shadow: 0 0 5px #000; } }

@keyframes blik-start {
  to {
    background-position: -55% 0%; } }

@keyframes blik {
  from {
    background-position: -55% 0%; }
  to {
    background-position: 155% 0%; } }

.test-pic {
  position: relative;
  width: 50vw; }
  .test-pic:hover svg path,
  .test-pic:hover svg polygon,
  .test-pic:hover svg polyline {
    stroke-dashoffset: 0; }
  .test-pic:hover img {
    opacity: 1;
    transition-delay: 1s; }
  .test-pic img {
    display: block;
    width: 100%;
    z-index: 1;
    position: relative;
    opacity: 0;
    transition: opacity 1s;
    transition-delay: 0; }
  .test-pic svg {
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    fill: none;
    stroke: #000;
    stroke-width: 2; }
    .test-pic svg path,
    .test-pic svg polygon,
    .test-pic svg polyline {
      vector-effect: non-scaling-stroke;
      transition: stroke-dashoffset 2s; }

.posa-wrap {
  height: 100vh; }

.sti {
  position: sticky;
  top: 100px;
  width: 0; }

.posa {
  position: absolute; }
  .posa svg {
    display: block;
    background-color: #ccc; }

.custom-progress-indicator {
  position: relative;
  align-self: flex-start; }
  .custom-progress-indicator b {
    position: absolute;
    display: block; }
    .custom-progress-indicator b:before, .custom-progress-indicator b:after {
      content: '';
      border-radius: 50%;
      background-color: #fff;
      position: absolute;
      width: 4px;
      height: 4px;
      left: calc(50% - 2px);
      top: calc(50% - 2px); }
    .custom-progress-indicator b:before {
      animation: progress-indicator 1s infinite; }
    .custom-progress-indicator b:after {
      background-color: #000;
      animation: progress-indicator2 1s infinite; }
  .custom-progress-indicator + .button {
    margin-left: 0;
    margin-right: 0; }

@keyframes progress-indicator {
  from {
    width: 32px;
    height: 32px;
    left: calc(50% - 16px);
    top: calc(50% - 16px);
    animation-timing-function: ease-in; }
  50% {
    width: 16px;
    height: 16px;
    left: calc(50% - 8px);
    top: calc(50% - 8px); }
  to {
    width: 32px;
    height: 32px;
    left: calc(50% - 16px);
    top: calc(50% - 16px);
    animation-timing-function: ease-out; } }

@keyframes progress-indicator2 {
  from {
    width: 4px;
    height: 4px;
    left: calc(50% - 2px);
    top: calc(50% - 2px);
    animation-timing-function: ease-in; }
  50% {
    width: 16px;
    height: 16px;
    left: calc(50% - 8px);
    top: calc(50% - 8px); }
  to {
    width: 4px;
    height: 4px;
    left: calc(50% - 2px);
    top: calc(50% - 2px);
    animation-timing-function: ease-out; } }

body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy {
  position: fixed;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  display: flex;
  align-items: flex-end;
  pointer-events: none;
  z-index: 101; }
  body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .internal-wrapper {
    width: 100%;
    background-color: #000;
    color: #fff;
    display: flex;
    align-items: center;
    padding: 10px 20px;
    font-size: 12px;
    line-height: 1;
    pointer-events: auto;
    cursor: default; }
    @media only screen and (min-width: 760px) {
      body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .internal-wrapper {
        padding: 10px 30px; } }
    @media only screen and (min-width: 1024px) {
      body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .internal-wrapper {
        padding: 15px 120px; } }
    @media only screen and (min-width: 1281px) {
      body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .internal-wrapper {
        padding: 15px 150px; } }
    body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .internal-wrapper a {
      cursor: pointer; }
  body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .message-wrapper {
    flex-grow: 1; }
    body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .message-wrapper a {
      text-decoration: underline; }
  body.cookiePolicy-is-visible #cookie-consent-popup.cookiePolicy .dismiss-wrapper {
    margin-left: 20px;
    font-size: 14px;
    line-height: 20px;
    text-transform: uppercase;
    font-weight: bold; }

.vacancy-detail-wrapper {
  margin-bottom: 160px; }
  @media only screen and (min-width: 760px) {
    .vacancy-detail-wrapper {
      margin-bottom: 200px; } }

.vacancy-detail .main-header {
  margin-bottom: 100px; }
  @media only screen and (min-width: 760px) {
    .vacancy-detail .main-header {
      margin-bottom: 160px;
      grid-column: content-start / content-3; } }

.responsibility {
  margin-bottom: 100px; }
  .responsibility .header {
    font-size: 36px;
    line-height: 1.11;
    font-weight: bold;
    grid-column: content-start / content-end;
    margin-bottom: 30px; }
    @media only screen and (min-width: 760px) {
      .responsibility .header {
        margin-bottom: 50px;
        grid-column: content-start / content-3; } }
    @media only screen and (min-width: 1281px) {
      .responsibility .header {
        grid-column: content-1 / content-3; } }
    .responsibility .header:before {
      content: '';
      display: block;
      height: 1px;
      background-color: #000;
      margin-bottom: 5px; }
  .responsibility .responsibility-list {
    grid-column: content-start / content-end; }
    @media only screen and (min-width: 760px) {
      .responsibility .responsibility-list {
        grid-column: content-start / content-3; } }
    @media only screen and (min-width: 1281px) {
      .responsibility .responsibility-list {
        grid-column: content-1 / content-3; } }
    .responsibility .responsibility-list ul {
      list-style: none;
      padding: 0;
      margin: 0; }

[id="awwwards"] {
  position: fixed;
  right: 0;
  top: calc(50% - 85px);
  display: none;
  z-index: 2; }
  @media only screen and (min-width: 760px) {
    [id="awwwards"] {
      display: block; } }
  [id="awwwards"] a {
    display: block; }
  [id="awwwards"] svg {
    display: block; }

.subscribe__open {
  width: 60px;
  height: 60px;
  position: fixed;
  right: 30px;
  bottom: 30px;
  padding: 0;
  background: none;
  border: none;
  outline: none;
  z-index: 5; }
  @media only screen and (min-width: 768px) {
    .subscribe__open {
      width: 70px;
      height: 70px; } }
  .subscribe__open::before {
    content: "";
    background-color: #000;
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    z-index: 0;
    animation: button-wave infinite 5s 0s linear; }
  .subscribe__open::before {
    animation-delay: 0; }
  .subscribe__open svg {
    position: relative;
    z-index: 1;
    width: 60px;
    height: 60px; }
    @media only screen and (min-width: 768px) {
      .subscribe__open svg {
        width: 70px;
        height: 70px; } }

@keyframes button-wave {
  0%, 100% {
    transform: scale(1); }
  50% {
    transform: scale(1.1); } }

@media only screen and (min-width: 640px) {
  [about*="privacy-policy"] .policy-header-first {
    max-width: 530px; } }

@media only screen and (min-width: 1024px) {
  [about*="privacy-policy"] .policy-header-first {
    max-width: 855px; } }

@media only screen and (min-width: 640px) {
  [about*="privacy-policy"] .policy-header {
    max-width: 530px; } }

@media only screen and (min-width: 1024px) {
  [about*="privacy-policy"] .policy-header {
    max-width: 855px; } }

@media only screen and (min-width: 640px) {
  [about*="privacy-policy"] p,
  [about*="privacy-policy"] ul {
    max-width: 530px; } }

@media only screen and (min-width: 1024px) {
  [about*="privacy-policy"] p,
  [about*="privacy-policy"] ul {
    max-width: 855px; } }

[about*="privacy-policy"] ul {
  list-style: none;
  padding-left: 60px;
  font-weight: 700; }
  [about*="privacy-policy"] ul li {
    margin-bottom: 25px;
    position: relative; }
    [about*="privacy-policy"] ul li:before {
      content: '';
      border-bottom: 2px solid black;
      height: 0;
      width: 35px;
      position: absolute;
      left: -60px;
      top: 11px; }

.social {
  grid-column: content-start / content-end; }
  @media only screen and (min-width: 640px) {
    .social {
      grid-column: content-start / content-1;
      padding-right: 60px; } }
  .social .promo-image {
    margin-bottom: 30px; }
    @media only screen and (min-width: 1024px) {
      .social .promo-image {
        margin-right: 60px;
        margin-bottom: 60px; } }
    .social .promo-image.is-new {
      position: relative; }
      .social .promo-image.is-new:before {
        font-size: 6.57143px;
        font-weight: 900;
        position: absolute;
        width: 23px;
        height: 23px;
        background-color: #000;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        transform: rotate(-30deg);
        z-index: 1;
        content: 'NEW';
        left: 6px;
        top: 6px; }
  .social .share {
    font-size: 12px; }
    .social .share__inner {
      padding: 10px 0;
      border-top: 1px solid #000;
      border-bottom: 1px solid #000; }
      @media only screen and (max-width: 639px) {
        .social .share__inner {
          display: flex;
          align-items: center;
          flex-wrap: wrap;
          justify-content: space-between; } }
      @media only screen and (min-width: 640px) {
        .social .share__inner {
          max-width: 130px; } }
      @media only screen and (min-width: 1440px) {
        .social .share__inner {
          max-width: 50%; } }
    .social .share__list {
      margin: 0;
      padding: 20px 0 0; }
      @media only screen and (max-width: 639px) {
        .social .share__list {
          padding: 0; } }
    @media only screen and (max-width: 639px) {
      .social .share__item {
        display: inline-block; }
        .social .share__item:last-child {
          margin-left: 15px; }
        .social .share__item + .social .share__item {
          margin-left: 15px; } }
    .social .share__link {
      font: bold 14px/1.5 "ProximaNova";
      text-transform: uppercase; }
    @media only screen and (max-width: 639px) {
      .social .share__action {
        padding: 0 25px 0 0;
        flex: 1; } }
    @media only screen and (max-width: 639px) {
      .social .share {
        margin-bottom: 40px; } }

.article-view {
  margin-top: 1em;
  display: flex; }
  .article-view__node-statistic, .article-view__estimated-read-time {
    display: flex;
    align-items: center; }
    .article-view__node-statistic:before, .article-view__estimated-read-time:before {
      width: 16px;
      height: 16px;
      margin: 0 7px; }
  .article-view__node-statistic {
    text-transform: uppercase;
    font: bold 14px/1.4 "ProximaNova"; }
    .article-view__node-statistic:before {
      content: url(../../../images/view-count.svg); }
  .article-view__estimated-read-time:before {
    content: url(../../../images/read-est-time.svg); }

.blog-article {
  grid-column: content-start / content-end;
  margin-bottom: 60px; }
  .blog-article > .mainGrid {
    display: block; }
  .blog-article P:first-child {
    margin-top: 0; }
  .blog-article h2 {
    font-size: 2rem;
    line-height: 1.11;
    font-weight: bold; }
  .blog-article h3 {
    font-size: 1.75rem;
    line-height: 1.11;
    font-weight: bold; }
  .blog-article h2:not([class]),
  .blog-article h3:not([class]) {
    padding: 1rem 0; }
  .blog-article .header-style2:first-of-type {
    margin-top: 0; }
  .blog-article__intro > p:first-child {
    margin-top: 0; }
  .blog-article__intro:not(:empty) {
    margin-bottom: 40px; }
    @media only screen and (min-width: 760px) {
      .blog-article__intro:not(:empty) {
        margin-bottom: 80px; } }
    @media only screen and (min-width: 1024px) {
      .blog-article__intro:not(:empty) {
        margin-bottom: 100px; } }
  .blog-article p, .blog-article li {
    font: 600 16px/1.4 "ProximaNova"; }
  .blog-article .text ul li {
    margin-left: auto; }
    .blog-article .text ul li:before {
      content: none; }
  .blog-article .border-text {
    border: 1px solid #000;
    padding: 20px; }
    @media only screen and (min-width: 1024px) {
      .blog-article .border-text {
        padding: 50px; } }
  .blog-article img,
  .blog-article img.media__image.media__element {
    margin: 50px 0; }
    @media only screen and (min-width: 640px) {
      .blog-article img,
      .blog-article img.media__image.media__element {
        margin: 60px 0; } }
    @media only screen and (min-width: 1024px) {
      .blog-article img,
      .blog-article img.media__image.media__element {
        margin: 80px 0; } }
  .blog-article .header-style2 + .img-wrap img {
    margin-top: 0; }
  .blog-article a {
    border-bottom: 1px solid #000; }
  .blog-article .header-style2 {
    margin: 60px 0 30px 0; }
    @media only screen and (min-width: 640px) {
      .blog-article .header-style2 {
        margin: 60px 0 40px 0; } }
    @media only screen and (min-width: 1024px) {
      .blog-article .header-style2 {
        margin: 80px 0 40px 0; } }
  .blog-article .wrapper + .wrapper {
    margin-top: 30px; }
    @media only screen and (min-width: 640px) {
      .blog-article .wrapper + .wrapper {
        margin-top: 40px; } }
  .blog-article > .image:first-child img, .blog-article > img:first-child {
    margin-top: 0; }
  .blog-article ul {
    padding: 0 0 0 28px; }
    .blog-article ul li {
      position: relative; }
      .blog-article ul li:after {
        content: '';
        width: 8px;
        height: 8px;
        position: absolute;
        background: #000;
        left: -28px;
        top: 12px;
        transform: translateY(-50%); }
  .blog-article ol {
    padding: 0 0 0 17px; }
    .blog-article ol li {
      list-style: decimal; }
      .blog-article ol li p {
        margin: 0 0 0 10px; }
  .blog-article mark {
    background: #f8f8f8; }
  .blog-article .table-wrap-outer {
    position: relative; }
  @media only screen and (max-width: 479px) {
    .blog-article .table-wrap-fade {
      position: absolute;
      right: 0;
      width: 30px;
      height: 100%;
      background-image: -webkit-linear-gradient(0deg, rgba(255, 255, 255, 0.5), #fff);
      background-image: -moz-linear-gradient(0deg, rgba(255, 255, 255, 0.5), #fff);
      background-image: -ms-linear-gradient(0deg, rgba(255, 255, 255, 0.5), #fff);
      background-image: -o-linear-gradient(0deg, rgba(255, 255, 255, 0.5), #fff); } }
  .blog-article .table-wrap {
    width: 100%;
    overflow-x: auto;
    margin: 0 0 1em; }
    .blog-article .table-wrap:-webkit-scrollbar {
      -webkit-appearance: none;
      width: 14px;
      height: 14px; }
    .blog-article .table-wrap:-webkit-scrollbar-thumb {
      border-radius: 8px;
      border: 3px solid #fff;
      background-color: rgba(0, 0, 0, 0.3); }
    .blog-article .table-wrap table {
      margin-bottom: 30px;
      width: 100% !important;
      table-layout: auto !important; }
      .blog-article .table-wrap table tbody tr td {
        vertical-align: middle !important;
        padding: 10px 3px !important; }
        .blog-article .table-wrap table tbody tr td p {
          font-size: 14px;
          font-family: Arial;
          color: #000000;
          background-color: transparent;
          font-weight: 400;
          font-style: normal;
          font-variant: normal;
          text-decoration: none;
          vertical-align: baseline;
          white-space: pre;
          margin-bottom: 0;
          padding: 0 10px; }
  @media only screen and (min-width: 640px) {
    .blog-article {
      grid-column: content-1 / content-end; } }

.description-w {
  border: 1px solid #000;
  margin: 30px 0;
  padding: 20px 30px; }
  .description-w p {
    max-width: 100%; }
  @media only screen and (min-width: 640px) {
    .description-w {
      margin: 50px 0;
      padding: 50px 60px; } }

.img-w__description {
  font-size: 12px;
  margin-top: 10px;
  display: inline-block; }

.img-w--with-description {
  margin-bottom: 50px; }
  @media only screen and (min-width: 640px) {
    .img-w--with-description {
      margin-bottom: 60px; } }
  @media only screen and (min-width: 1024px) {
    .img-w--with-description {
      margin-bottom: 80px; } }

.review__date {
  font-size: 12px;
  margin-top: 20px;
  display: inline-block; }

.article-author-info > div {
  grid-column: content-start / content-end; }
  @media only screen and (min-width: 768px) {
    .article-author-info > div {
      grid-column: content-1 / content-end; } }

.author-box {
  display: flex;
  justify-content: flex-start;
  flex-direction: column;
  margin-bottom: 90px; }
  @media only screen and (min-width: 640px) {
    .author-box {
      flex-direction: row; } }
  @media only screen and (min-width: 768px) {
    .author-box {
      flex-direction: column; } }
  @media only screen and (min-width: 1024px) {
    .author-box {
      flex-direction: row; } }
  .author-box__img-w {
    flex: 0 0 210px;
    margin: 0 0 30px 0; }
    @media only screen and (min-width: 640px) {
      .author-box__img-w {
        margin-right: 20px;
        margin-bottom: 0; } }
    @media only screen and (min-width: 768px) {
      .author-box__img-w {
        margin-bottom: 30px;
        margin-right: 0; } }
    @media only screen and (min-width: 1024px) {
      .author-box__img-w {
        margin-right: 75px;
        margin-bottom: 0; } }
  .author-box__inner {
    padding: 10px 0 15px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    font-size: 12px;
    flex-grow: 1; }
    @media only screen and (min-width: 640px) {
      .author-box__inner {
        padding: 0;
        display: flex;
        flex-direction: column;
        justify-content: center; } }
    @media only screen and (min-width: 768px) {
      .author-box__inner {
        padding: 10px 0 15px; } }
    @media only screen and (min-width: 1024px) {
      .author-box__inner {
        padding: 0; } }
    @media only screen and (max-width: 479px) {
      .author-box__inner {
        max-width: 100%; } }
  .author-box__title {
    font: bold 24px/1.15 "ProximaNova";
    margin-bottom: 2px; }
    .author-box__title a {
      display: flex;
      align-items: center; }
      .author-box__title a:after {
        content: "";
        flex-shrink: 0;
        margin-left: 8px;
        width: 30px;
        height: 25px;
        display: block;
        flex-shrink: 0;
        transition: all 0.15s ease-in-out;
        background: url(/themes/custom/brander/assets/css/../../../images/arrow-right-white.svg) no-repeat; }
      .author-box__title a:hover:after {
        background: url(/themes/custom/brander/assets/css/../../../images/arrow-black-link.svg) no-repeat; }
  .author-box__subtitle {
    margin-bottom: 30px; }
  .author-box__description > p {
    margin: 0; }

.popular-article {
  grid-column: 2 / span 5;
  margin-bottom: var(--margin60);
  max-width: 100%; }
  .popular-article__title {
    margin-bottom: 75px; }
    @media only screen and (min-width: 640px) {
      .popular-article__title {
        grid-column: 3 / span 4;
        max-width: calc(100% / 4 * 2);
        margin-bottom: 60px; } }
    @media only screen and (min-width: 1024px) {
      .popular-article__title {
        margin-bottom: 10px; } }
  @media only screen and (min-width: 1024px) {
    .popular-article {
      grid-column: 3 / span 4; } }

.popular-article-slider {
  display: flex;
  justify-content: space-between;
  overflow: hidden; }
  @media only screen and (min-width: 768px) {
    .popular-article-slider {
      padding-right: 100px; } }
  @media only screen and (min-width: 1024px) {
    .popular-article-slider {
      padding-right: 0; } }
  @media only screen and (min-width: 1024px) {
    .popular-article-slider .owl-item:first-child .article-slide {
      margin-top: 120px; }
    .popular-article-slider .owl-item:nth-child(2) .article-slide {
      margin-top: 80px; }
    .popular-article-slider .owl-item:nth-child(3) .article-slide {
      margin-top: 40px; }
    .popular-article-slider .owl-item:last-child .article-slide {
      margin-top: 0; } }
  .popular-article-slider .owl-stage {
    left: -30px; }
    @media only screen and (min-width: 768px) {
      .popular-article-slider .owl-stage {
        left: 0; } }
  .popular-article-slider .owl-stage-outer {
    overflow: visible; }
  @media only screen and (min-width: 1024px) {
    .popular-article-slider .owl-stage {
      transform: none !important; } }

.article-slide__img-w {
  display: block;
  margin-bottom: 30px; }
  @media only screen and (min-width: 640px) {
    .article-slide__img-w {
      margin-bottom: 40px;
      max-width: 100%; } }

.article-slide__description-w {
  display: inline-block;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 10px 0;
  margin-bottom: 10px;
  width: 100%; }
  @media only screen and (min-width: 640px) {
    .article-slide__description-w {
      padding: 14px 0; } }

.article-slide__description {
  margin: 0;
  font: bold 24px/1.17 "ProximaNova"; }

.article-slide__category {
  line-height: 1.25;
  font-size: .875rem;
  font-weight: bold; }

@media only screen and (min-width: 640px) {
  .article-slide {
    max-width: 315px;
    width: 100%; } }

.blog-listing .breadcrumbs {
  margin-bottom: 20px; }

.blog-listing .blog-listing-header {
  margin-bottom: 20px; }

.blog-listing .menu-opener {
  font-size: 14px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: bold; }
  @media only screen and (min-width: 760px) {
    .blog-listing .menu-opener {
      display: none; } }

.blog-listing .menu {
  list-style: none;
  margin: 0;
  font-size: 14px;
  line-height: 20px;
  text-transform: uppercase;
  font-weight: bold;
  left: 0;
  background-color: #fff;
  box-sizing: border-box;
  display: flex;
  flex-wrap: wrap; }
  @media only screen and (min-width: 760px) {
    .blog-listing .menu .menu-opener {
      display: flex; } }
  .blog-listing .menu .menu-opener.active i::before {
    transform: rotateZ(180deg);
    top: 10%; }
  @media only screen and (min-width: 760px) {
    .blog-listing .menu .menu-opener i::before {
      top: 40%;
      border-left-color: transparent;
      border-top-color: #000;
      border-width: 5px 4px;
      transform: none; } }
  .blog-listing .menu .menu {
    top: 0;
    min-height: calc(100% - 1px);
    z-index: 10;
    border: 0; }
    @media only screen and (min-width: 760px) {
      .blog-listing .menu .menu {
        list-style: none;
        margin: 0;
        min-height: auto;
        font-size: 14px;
        line-height: 20px;
        text-transform: uppercase;
        font-weight: bold;
        display: none;
        position: absolute;
        width: auto;
        min-width: calc(100% + 40px);
        top: auto;
        left: 50%;
        transform: translateX(-50%);
        padding: 30px var(--outsideIndent);
        background-color: #fff;
        box-sizing: border-box;
        border: 1px solid #000; } }
    @media only screen and (min-width: 768px) {
      .blog-listing .menu .menu.active {
        display: block;
        z-index: 10; } }
  @media only screen and (min-width: 760px) {
    .blog-listing .menu {
      position: static;
      border: none;
      padding: 0; } }
  .blog-listing .menu.active {
    display: block;
    z-index: 10;
    border: 1px solid #000; }
  .blog-listing .menu .menu-item {
    padding: 0;
    margin-top: 20px;
    margin-right: 40px; }
    @media only screen and (min-width: 760px) {
      .blog-listing .menu .menu-item {
        position: relative; } }
    @media only screen and (max-width: 759px) {
      .blog-listing .menu .menu-item {
        margin-right: 20px; } }
    .blog-listing .menu .menu-item.active .menu {
      display: block; }
    .blog-listing .menu .menu-item.active > a span {
      position: relative; }
      .blog-listing .menu .menu-item.active > a span:before {
        content: '';
        position: absolute;
        bottom: -2px;
        width: 100%;
        height: 2px;
        background-color: #000; }
    .blog-listing .menu .menu-item:last-child {
      margin-bottom: 0; }
      @media only screen and (min-width: 760px) {
        .blog-listing .menu .menu-item:last-child {
          margin-right: 0; } }

@media only screen and (max-width: 759px) {
  .blog-listing > .menu {
    flex-wrap: nowrap;
    overflow-y: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none;
    justify-content: flex-start;
    margin-left: calc(var(--outsideIndent) * -1);
    width: calc(100% + (var(--outsideIndent) * 2));
    box-sizing: border-box;
    padding: 0 calc(var(--outsideIndent) - 20px) 0 var(--outsideIndent);
    max-width: 100vw; }
    .blog-listing > .menu::-webkit-scrollbar {
      display: none; }
    .blog-listing > .menu .menu-item {
      flex-shrink: 0; } }

.blog-category-title {
  grid-column: content-start / content-end;
  margin-bottom: 80px;
  padding-top: 10px;
  border-top: 1px solid #000; }
  @media only screen and (min-width: 1024px) {
    .blog-category-title {
      position: relative;
      padding-top: 15px; } }
  .blog-category-title a {
    display: grid; }
    .blog-category-title a .clip-block,
    .blog-category-title a .border-block {
      grid-column: 1;
      grid-row: 1;
      position: relative;
      margin-left: -0.04em;
      padding-right: 0.9em; }
      @media only screen and (max-width: 479px) {
        .blog-category-title a .clip-block,
        .blog-category-title a .border-block {
          word-break: break-word; } }
    .blog-category-title a .clip-block {
      transition: clip-path 0.5s;
      clip-path: polygon(0 500px, calc(500px + -300px) 500px, calc(0px + -300px) 0, 0 0);
      color: #000;
      -webkit-text-stroke: 0;
      text-stroke: 0; }
      .blog-category-title a .clip-block .arrow {
        fill: #000; }
    .blog-category-title a:hover .clip-block {
      clip-path: polygon(0 500px, calc(500px + 100%) 500px, calc(0px + 100%) 0, 0 0); }
  .macintosh .blog-category-title {
    background: none;
    transition: color 0.3s; }
    .macintosh .blog-category-title:hover {
      color: #000; }
  .blog-category-title .arrow {
    position: absolute;
    right: -0.08em;
    height: auto;
    width: 0.9em;
    top: 0.03em; }
    @media only screen and (min-width: 760px) {
      .blog-category-title .arrow {
        width: 0.85em;
        top: 0.05em; } }
    @media only screen and (min-width: 1200px) {
      .blog-category-title .arrow {
        top: 0.03em; } }
    .no-touch .blog-category-title .arrow {
      fill: rgba(0, 0, 0, 0);
      stroke: #000;
      stroke-width: 1; }

.services-list .blog-articles-list {
  display: block; }

.blog-articles-list {
  grid-column: content-start / content-end;
  margin-bottom: 60px;
  display: flex;
  flex-wrap: wrap; }
  .blog-articles-list .view-blog-category-list, .blog-articles-list .view-content, .blog-articles-list .views-infinite-scroll-content-wrapper {
    display: contents; }
  .blog-articles-list .js-pager__items {
    padding: 0;
    margin: 30px 0 0 0;
    width: 100%; }
    .blog-articles-list .js-pager__items .pager__item {
      padding: 0;
      display: flex;
      justify-content: flex-end; }
      .blog-articles-list .js-pager__items .pager__item .button {
        padding: 10px 0 0 0;
        border-top: 1px solid #000;
        -webkit-text-stroke: 1px #000;
        text-stroke: 1px #000;
        font-weight: 900;
        height: auto;
        color: transparent;
        justify-content: flex-start;
        background: transparent;
        position: relative;
        margin: 0;
        transition: color .3s;
        font-size: 32px;
        line-height: 32px;
        min-width: 236px;
        padding-right: 33px; }
        .blog-articles-list .js-pager__items .pager__item .button::before, .blog-articles-list .js-pager__items .pager__item .button:after {
          content: '';
          display: block;
          width: 33px;
          height: 28px;
          position: absolute;
          right: 0;
          top: 10px; }
        .blog-articles-list .js-pager__items .pager__item .button::before {
          background: url("data:image/svg+xml,%3Csvg width='62' height='54' viewBox='0 0 62 54' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M19.5891 1L40.1068 21.5374L1 21.5374L1.00001 32.4627L40.1068 32.4626L19.5891 53L32.0004 53C33.9367 53 35.7944 52.2298 37.162 50.8597L61 27L37.162 3.14027C35.7944 1.77023 33.9367 1 32.0004 1L19.5891 1Z' fill='white' stroke='black'/%3E%3C/svg%3E%0A") 50% 50%/contain no-repeat; }
        .blog-articles-list .js-pager__items .pager__item .button:after {
          background: url("data:image/svg+xml,%3Csvg width='62' height='54' viewBox='0 0 62 54' fill='none' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath fill-rule='evenodd' clip-rule='evenodd' d='M19.5891 1L40.1068 21.5374L1 21.5374L1.00001 32.4627L40.1068 32.4626L19.5891 53L32.0004 53C33.9367 53 35.7944 52.2298 37.162 50.8597L61 27L37.162 3.14027C35.7944 1.77023 33.9367 1 32.0004 1L19.5891 1Z' fill='black' stroke='black'/%3E%3C/svg%3E%0A") 50% 50%/contain no-repeat;
          z-index: 1;
          opacity: 0;
          transition: opacity .3s; }
        @media only screen and (min-width: 1024px) {
          .blog-articles-list .js-pager__items .pager__item .button:hover {
            color: #000; }
            .blog-articles-list .js-pager__items .pager__item .button:hover:after {
              opacity: 1; } }
  @media only screen and (min-width: 768px) {
    .blog-articles-list {
      display: grid;
      grid-template-columns: repeat(2, calc(50% - 15px));
      column-gap: 30px;
      margin-bottom: 120px; }
      .blog-articles-list .js-pager__items {
        grid-column: span  2; } }
  @media only screen and (min-width: 1281px) {
    .blog-articles-list {
      margin-bottom: 140px;
      grid-template-columns: repeat(3, calc(33.332% - 40px));
      column-gap: 60px; }
      .blog-articles-list .js-pager__items {
        grid-column: span  3; }
        .blog-articles-list .js-pager__items .pager__item .button {
          font-size: 64px;
          line-height: 56px;
          min-width: 520px;
          padding-right: 75px; }
          .blog-articles-list .js-pager__items .pager__item .button::before, .blog-articles-list .js-pager__items .pager__item .button:after {
            width: 60px;
            height: 52px; } }

.ajax-progress.ajax-progress-fullscreen {
  display: none !important; }

@media only screen and (min-width: 768px) {
  .blog-category-page__blog-article-item {
    margin-bottom: 60px; } }

a.blog-article-item > * {
  pointer-events: none; }

.blog-article-item {
  font-weight: 700;
  margin-bottom: 30px;
  border-bottom: 1px solid #000; }
  @media (min-width: 768px) and (max-width: 1365px) {
    .blog-article-item {
      position: relative;
      padding-bottom: 50px; } }
  @media only screen and (min-width: 1281px) {
    .blog-article-item:nth-child(3n) {
      margin-right: 0; } }
  .blog-article-item__img-wrap {
    float: right;
    margin-left: 10px;
    width: calc(50% - 10px); }
    .blog-article-item__img-wrap.is-new {
      position: relative; }
      .blog-article-item__img-wrap.is-new:before {
        font-size: 6.57143px;
        font-weight: 900;
        position: absolute;
        width: 23px;
        height: 23px;
        background-color: #000;
        color: #fff;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        transform: rotate(-30deg);
        z-index: 1;
        content: 'NEW';
        left: 6px;
        top: 6px; }
  .blog-article-item__info-block {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 10px 0;
    float: right;
    width: 100%; }
    @media only screen and (min-width: 768px) {
      .blog-article-item__info-block {
        flex-wrap: nowrap;
        float: left;
        width: 100%; } }
    @media (min-width: 768px) and (max-width: 1365px) {
      .blog-article-item__info-block {
        position: absolute;
        bottom: 0; } }
    .blog-article-item__info-block__category {
      font-size: .875rem;
      line-height: 1.065;
      margin-bottom: 20px;
      width: calc(50% - 10px);
      float: left; }
      .blog-article-item__info-block__category a {
        position: relative; }
        .blog-article-item__info-block__category a::before {
          content: '';
          position: absolute;
          left: 0;
          bottom: 0;
          width: 0;
          transition: width .3s;
          height: 1px;
          background: #000; }
        .no-touch .blog-article-item__info-block__category a:hover::before {
          width: 100%; }
    .blog-article-item__info-block__info-data {
      display: flex; }
      .blog-article-item__info-block__info-data__node-statistic, .blog-article-item__info-block__info-data__estimated-read-time {
        display: flex;
        align-items: center; }
        .blog-article-item__info-block__info-data__node-statistic:before, .blog-article-item__info-block__info-data__estimated-read-time:before {
          width: 16px;
          height: 16px;
          margin: 0 7px; }
      .blog-article-item__info-block__info-data__node-statistic:before {
        content: url(../../../images/view-count.svg); }
      .blog-article-item__info-block__info-data__estimated-read-time:before {
        content: url(../../../images/read-est-time.svg); }
    .blog-article-item__info-block__date .author {
      display: grid;
      grid-template-columns: auto 1fr;
      font-weight: 400;
      font-size: 12px;
      line-height: 16px; }
      .blog-article-item__info-block__date .author img {
        object-fit: cover;
        border-radius: 50%;
        grid-row: span 2;
        width: 36px;
        height: 36px;
        margin-right: 10px;
        grid-column: 1; }
      .blog-article-item__info-block__date .author span {
        position: relative;
        font-weight: 700;
        font-size: 14px;
        line-height: 18px;
        grid-column: 2; }
        .blog-article-item__info-block__date .author span::before {
          content: '';
          position: absolute;
          left: 0;
          bottom: 0;
          width: 0;
          transition: width .3s;
          height: 1px;
          background: #000; }
      .blog-article-item__info-block__date .author .blog-article-item__date {
        grid-row: 2;
        grid-column: 2; }
      .no-touch .blog-article-item__info-block__date .author:hover span::before {
        width: 100%; }
  .blog-article-item:nth-child(2) {
    /*
		@include tablet {
			width: 100%;
			grid-column-start: 1;
			grid-column-end: 3;
			margin-bottom: 65px;
			display: block;
			border-bottom: none;
			.blog-article-item__img-wrap {
				width: calc(50% - 20px);
				float: left;
				margin-right: 20px;
				height: 344px;
				margin-left: 0;
			}
			.blog-article-item__info-block {
				width: 50%;
				float: right;
				border-bottom: 1px solid black;
				padding-bottom: 16px;
			}
			.blog-article-item__title {
				width: 50%;
				margin-right: 0;
				float: right;
				font-size: 44px;
				line-height: 40px;
				border-top: none;
				padding-top: 0;
			}
		}
		*/ }
  .blog-article-item__article-category {
    float: left;
    width: calc(100% - 124px); }
  .blog-article-item__info-block {
    font-size: 0.75rem;
    line-height: 0.914; }
  .blog-article-item__title {
    font-size: 1.125rem;
    line-height: 1.37;
    margin-right: 10px;
    width: calc(50% - 10px);
    float: left; }
    @media only screen and (min-width: 768px) {
      .blog-article-item__title {
        padding-bottom: 1.21875rem;
        font-size: 1.25rem;
        margin-top: 0; } }
  .blog-article-item .header-style1 {
    display: none; }
    @media only screen and (min-width: 1440px) {
      .blog-article-item .header-style1 {
        display: block;
        padding-bottom: 12px;
        border-bottom: 1px solid #000;
        margin-bottom: 18px; } }
  .blog-article-item.category-list {
    width: 100%; }
    .blog-article-item.category-list .categories-list {
      border-bottom: none;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      @media only screen and (max-width: 767px) {
        .blog-article-item.category-list .categories-list {
          margin-bottom: var(--margin30);
          line-height: 2;
          flex-wrap: nowrap;
          overflow-y: hidden;
          -ms-overflow-style: none;
          scrollbar-width: none;
          justify-content: flex-start;
          margin-left: calc(var(--outsideIndent) * -1);
          width: calc(100% + (var(--outsideIndent) * 2));
          box-sizing: border-box;
          padding: 0 calc(var(--outsideIndent) - 20px) 0 var(--outsideIndent);
          max-width: 100vw; }
          .blog-article-item.category-list .categories-list::-webkit-scrollbar {
            display: none; }
          .blog-article-item.category-list .categories-list a {
            flex-shrink: 0; } }
      @media only screen and (min-width: 1024px) {
        .blog-article-item.category-list .categories-list {
          justify-content: flex-start; } }
      .blog-article-item.category-list .categories-list a {
        display: inline-block;
        margin-right: 20px; }
        @media only screen and (min-width: 1281px) {
          .blog-article-item.category-list .categories-list a {
            margin-right: 30px;
            margin-bottom: 23px; } }
  .blog-article-item.category-list-empty {
    display: none; }

.menu-opener {
  display: flex; }
  .menu-opener.active i:before {
    transform: rotateZ(180deg);
    top: 10%; }
  .menu-opener i {
    width: 8px;
    position: relative;
    margin-left: 6px;
    margin-top: -1px; }
    .menu-opener i:before {
      content: '';
      position: absolute;
      width: 0;
      height: 0;
      left: 0;
      top: 40%;
      border: 5px solid transparent;
      border-top-color: #000;
      border-width: 5px 4px; }
  @media only screen and (min-width: 760px) {
    .menu-opener + .menu .menu-item .menu .menu-item:first-child {
      margin-top: 0; } }
  @media only screen and (max-width: 759px) {
    .menu-opener + .menu .menu-item {
      margin-left: var(--outsideIndent);
      margin-right: 0; }
      .menu-opener + .menu .menu-item:last-child {
        margin-bottom: 20px; }
      .menu-opener + .menu .menu-item:not(.active) > .menu {
        display: none; }
      .menu-opener + .menu .menu-item .menu {
        margin-left: calc((var(--outsideIndent) + 1px) * -1);
        margin-right: -1px;
        padding-left: var(--outsideIndent); }
        .menu-opener + .menu .menu-item .menu .menu {
          margin-left: calc(((var(--outsideIndent) * 2) + 1px) * -1);
          padding-left: calc(var(--outsideIndent) * 2); }
      .menu-opener + .menu .menu-item.active > a span:before {
        display: none; }
      .menu-opener + .menu .menu-item:not(.active) .menu-opener i::before {
        top: 40%;
        transform: none; } }
  @media only screen and (max-width: 759px) {
    .menu-opener + .menu[data-drop-content="0"] {
      margin-left: calc(var(--outsideIndent) * -1);
      margin-right: calc(var(--outsideIndent) * -1); }
      .menu-opener + .menu[data-drop-content="0"]:not(.active) {
        display: none; } }

footer .contact-icons {
  display: flex; }
  @media only screen and (max-width: 767px) {
    footer .contact-icons {
      width: 100%;
      margin: 0;
      padding: 0;
      margin-bottom: 20px; }
      footer .contact-icons li {
        flex: 1;
        text-align: center;
        border: 2px solid #000000;
        padding: 20px 0; }
        footer .contact-icons li:first-child {
          margin-right: 5px; }
        footer .contact-icons li svg {
          width: 30px;
          height: 30px; } }
  @media only screen and (min-width: 768px) {
    footer .contact-icons {
      justify-content: flex-end; } }

.contact-icons {
  display: none;
  list-style: none;
  margin: 0; }
  @media only screen and (min-width: 1024px) {
    .contact-icons {
      display: flex;
      justify-content: flex-end; } }
  .contact-icons li {
    line-height: 1.43;
    font-weight: bold; }
    .contact-icons li:first-child {
      margin-right: 20px; }
    .contact-icons li svg {
      height: 20px; }
  .contact-icons .mail-icon, .contact-icons .phone-icon {
    cursor: none; }

#user-login-form {
  display: flex;
  align-items: center;
  margin-top: 100px;
  flex-direction: column; }

.captcha {
  margin-bottom: 50px; }

.seo-services-list {
  grid-column: content-start / content-end;
  display: flex;
  flex-direction: column;
  box-sizing: border-box;
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 150px;
  transition: max-height .3s;
  margin-bottom: 60px;
  padding-right: 20px;
  z-index: 0; }
  .seo-services-list h1, .seo-services-list h2, .seo-services-list h3, .seo-services-list h4, .seo-services-list h5, .seo-services-list h6, .seo-services-list span {
    font-size: 1rem;
    font-weight: 800; }
  .seo-services-list .mrc-content-wrap a:not(:last-child):after {
    content: "|";
    margin: 0 0 0 5px; }
  .seo-services-list .mrc-shadow {
    pointer-events: none;
    position: absolute;
    height: 100px;
    /* Высота блока с тенью */
    left: 0;
    right: 0;
    bottom: 0;
    z-index: 999;
    /* Цвета градиента в зависимости от фона сайта */
    background: linear-gradient(0deg, #fff 14%, rgba(255, 255, 255, 0) 100%); }
  .seo-services-list .mrc-btn {
    background-color: transparent;
    font-size: 1rem;
    font-weight: 700;
    border: none;
    outline: none; }
    .seo-services-list .mrc-btn:active, .seo-services-list .mrc-btn:focus, .seo-services-list .mrc-btn:hover, .seo-services-list .mrc-btn:visited {
      border: none;
      outline: none; }
  @media only screen and (min-width: 1024px) {
    .seo-services-list {
      justify-content: start;
      font-size: 0.75rem;
      margin-top: 60px;
      font-weight: normal; } }

div[data-mrc-text] {
  display: flex;
  flex-direction: column; }

.technologies .works-header {
  margin-top: 0; }

.technologies .select-offer-pack {
  margin-bottom: var(--margin120); }
  @media only screen and (min-width: 1024px) {
    .technologies .select-offer-pack {
      margin-bottom: 200px; } }
  .technologies .select-offer-pack .offer2 .decor {
    display: block; }
  .technologies .select-offer-pack .header-style1:not(.header-style0) {
    font-size: 32px; }
    @media only screen and (min-width: 1024px) {
      .technologies .select-offer-pack .header-style1:not(.header-style0) {
        font-size: 36px; } }

@media only screen and (min-width: 1024px) {
  .technologies .itemSlider .secondary-header2 {
    grid-column: content-start / content-center; } }

.technologies > .image,
.technologies > .blazy--field {
  --padding: calc(var(--outsideIndent));
  width: 100%;
  padding: 0 var(--padding);
  box-sizing: border-box;
  margin-bottom: 30px; }
  .technologies > .image img,
  .technologies > .blazy--field img {
    width: 100%;
    height: auto; }
  @media only screen and (min-width: 768px) {
    .technologies > .image,
    .technologies > .blazy--field {
      width: 75%;
      padding-right: 0; } }
  @media only screen and (min-width: 1024px) {
    .technologies > .image,
    .technologies > .blazy--field {
      width: 50%;
      margin-bottom: 140px;
      --padding: calc((var(--outsideIndent) + var(--blueCell))); } }
  @media only screen and (min-width: 1900px) {
    .technologies > .image,
    .technologies > .blazy--field {
      --padding: calc((50vw - (var(--contentCell) * 2))); } }

.technologies .header.stroke {
  word-break: break-word; }

.technologies .style-2-text ul {
  list-style-type: none;
  line-height: 22px;
  font-weight: 600; }
  .technologies .style-2-text ul li {
    position: relative;
    font-size: 16px;
    margin-left: 20px;
    margin-bottom: 25px; }
    .technologies .style-2-text ul li:last-child {
      margin-bottom: 0; }
    .technologies .style-2-text ul li:before {
      content: '';
      border-bottom: 2px solid black;
      height: 0;
      width: 35px;
      position: absolute;
      left: -60px;
      top: 11px; }

.technology-image {
  margin-bottom: 30px;
  grid-column: content; }
  @media only screen and (min-width: 768px) {
    .technology-image {
      grid-column: content-start / content-3;
      margin-bottom: 80px; } }
  @media only screen and (min-width: 1024px) {
    .technology-image {
      margin-bottom: 60px; } }

.related-service {
  margin-top: 226px;
  margin-bottom: 20px; }
  @media only screen and (min-width: 1024px) {
    .related-service {
      margin-top: 252px; } }

.related-service .heading {
  grid-column: content;
  font-size: 22px;
  line-height: 1.27;
  font-weight: bold;
  box-sizing: border-box; }
  @media only screen and (min-width: 1024px) {
    .related-service .heading {
      grid-column: content-start / content-end;
      font-size: 36px;
      line-height: 40px; } }

.technology-title {
  grid-column: content;
  margin-bottom: 30px; }
  .technology-title.header-style3 {
    font-size: 36px;
    line-height: 0.89; }
  @media only screen and (min-width: 768px) {
    .technology-title {
      grid-column: content-start / content-end;
      margin-bottom: 40px; }
      .technology-title.header-style3 {
        font-size: 88px; } }
  @media only screen and (min-width: 1024px) {
    .technology-title {
      margin-bottom: 60px; } }

.mainGridTechnology {
  display: grid;
  grid-template-columns: [start] var(--outsideIndent) [after-start logo-start] var(--technologyLogoCell) [logo-end content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [before-end content-end] var(--outsideIndent) [end]; }
  @media only screen and (min-width: 1024px) {
    .mainGridTechnology {
      grid-template-columns: [start] var(--outsideIndent) [after-start] var(--blueCell) [logo-start] var(--technologyLogoCell) [content-start logo-end] var(--technologyLogoCell) repeat(2, [col-start] var(--technologyLogoCell) [col-end]) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [content-end] var(--blueCell) [before-end] var(--outsideIndent) [end]; } }

.main-header-technology {
  z-index: 1;
  margin-bottom: 30px; }
  @media only screen and (min-width: 768px) {
    .main-header-technology {
      margin-bottom: 40px; } }
  @media only screen and (min-width: 1024px) {
    .main-header-technology {
      margin-bottom: 60px; } }

.technology-logo {
  grid-column: logo;
  display: flex;
  align-items: center; }
  .technology-logo img {
    max-height: 32px; }
    @media only screen and (min-width: 1024px) {
      .technology-logo img {
        max-height: 90px; } }

.technology-name {
  grid-column: span 4;
  margin-left: 15px; }
  @media only screen and (min-width: 1024px) {
    .technology-name {
      grid-column: content-start / content-end;
      margin-left: 30px; } }

.technology-description {
  font-size: 16px;
  line-height: 22px;
  grid-column: content;
  margin-bottom: 60px;
  grid-column: content; }
  @media only screen and (min-width: 768px) {
    .technology-description {
      margin-bottom: 40px; } }
  .technology-description p {
    font-size: 16px;
    line-height: 1.375;
    font-weight: 700; }
  @media only screen and (min-width: 768px) {
    .technology-description {
      grid-column: content-start / content-end;
      max-width: 855px; }
      .technology-description p {
        font-size: 36px;
        margin: 0;
        line-height: 40px;
        font-weight: 700; } }
  @media only screen and (min-width: 1024px) {
    .technology-description {
      font-size: 36px;
      line-height: 1.1; } }

.style-1 {
  margin-bottom: var(--margin120); }
  @media only screen and (min-width: 1024px) {
    .style-1 {
      margin-bottom: 200px; } }
  .style-1 .style-1-title, .style-1 .style-1-text {
    padding-top: 30px;
    border-top: var(--border); }
  .style-1 .style-1-title {
    grid-column: content;
    margin-bottom: 20px;
    font-size: 24px;
    line-height: 1.17;
    font-weight: bold; }
    @media only screen and (min-width: 768px) {
      .style-1 .style-1-title {
        grid-column: content-start / content-center; } }
    @media only screen and (min-width: 1024px) {
      .style-1 .style-1-title {
        font-size: 36px;
        line-height: 40px; } }
  .style-1 .style-1-text {
    grid-column: content; }
    @media only screen and (min-width: 768px) {
      .style-1 .style-1-text {
        grid-column: content-center / content-end;
        padding: 25px; } }
    .style-1 .style-1-text p {
      margin: 0; }

.style-2, .style-3 {
  margin-bottom: 40px; }
  @media only screen and (min-width: 1024px) {
    .style-2, .style-3 {
      margin-bottom: 60px; } }
  .style-2 .style-2-text, .style-3 .style-2-text {
    grid-column: content; }
    .style-2 .style-2-text p, .style-2 .style-2-text ul, .style-2 .style-2-text ol, .style-3 .style-2-text p, .style-3 .style-2-text ul, .style-3 .style-2-text ol {
      font-size: 16px;
      line-height: 1.375;
      font-weight: 700; }
      @media only screen and (min-width: 768px) {
        .style-2 .style-2-text p, .style-2 .style-2-text ul, .style-2 .style-2-text ol, .style-3 .style-2-text p, .style-3 .style-2-text ul, .style-3 .style-2-text ol {
          font-size: 24px;
          line-height: 1.17; } }
    @media only screen and (min-width: 768px) {
      .style-2 .style-2-text, .style-3 .style-2-text {
        grid-column: content-start / content-3; } }

.style-2-title {
  grid-column: content;
  margin-bottom: 30px; }
  @media only screen and (min-width: 768px) {
    .style-2-title {
      margin-bottom: 40px; } }
  @media only screen and (min-width: 1024px) {
    .style-2-title {
      grid-column: content-start / content-end; } }

.page-node-type-service .layout-content {
  display: flex;
  flex-direction: column; }
  .page-node-type-service .layout-content #block-seoserviceslinkslist {
    order: 3; }
  .page-node-type-service .layout-content #block-seoblockfornodes {
    order: 2; }

.page-node-type-service .field__item > .table-wrap-outer {
  display: grid;
  grid-template-columns: [start] var(--outsideIndent) [after-start content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [before-end content-end] var(--outsideIndent) [end]; }
  @media only screen and (min-width: 1024px) {
    .page-node-type-service .field__item > .table-wrap-outer {
      grid-template-columns: [start] var(--outsideIndent) [after-start] var(--blueCell) [content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [content-end] var(--blueCell) [before-end] var(--outsideIndent) [end]; } }
  .page-node-type-service .field__item > .table-wrap-outer .table-wrap {
    grid-column: content; }
    .page-node-type-service .field__item > .table-wrap-outer .table-wrap table:not([style]) {
      border-width: initial;
      border-style: none;
      border-color: initial;
      border-collapse: collapse;
      margin-bottom: 30px;
      width: 100%;
      table-layout: auto; }
      .page-node-type-service .field__item > .table-wrap-outer .table-wrap table:not([style]) td {
        vertical-align: middle;
        padding: 10px 3px;
        border: 2px solid #000000; }
    @media only screen and (min-width: 768px) {
      .page-node-type-service .field__item > .table-wrap-outer .table-wrap {
        grid-column: content-1 / content-end; } }

.block-fivestar {
  order: 4;
  display: grid;
  grid-template-columns: [start] var(--outsideIndent) [after-start content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [before-end content-end] var(--outsideIndent) [end]; }
  @media only screen and (min-width: 1024px) {
    .block-fivestar {
      grid-template-columns: [start] var(--outsideIndent) [after-start] var(--blueCell) [content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [content-end] var(--blueCell) [before-end] var(--outsideIndent) [end]; } }
  .block-fivestar > .field {
    grid-column: content-start / content-end; }
  .block-fivestar .fivestar-widget div.star {
    width: 23px; }
  .block-fivestar .fivestar-summary {
    margin-left: 10px; }

.mainGrid.style-2.img .header-style2 {
  grid-column: content-start / content-end;
  margin-bottom: 16px; }

.mainGrid.style-2.img.gif-block > div {
  grid-column: content; }

.style-3 .header-style2 {
  margin-bottom: 30px;
  font-size: 32px;
  font-weight: 900; }
  @media only screen and (min-width: 1024px) {
    .style-3 .header-style2 {
      font-size: 64px; } }

.style-3 .style-2-title {
  margin-bottom: 0px; }
  @media only screen and (min-width: 1024px) {
    .style-3 .style-2-title {
      grid-column: content-1 / content-end; } }

@media only screen and (min-width: 1024px) {
  .style-3 .style-2-text {
    grid-column: content-1 / content-3; } }

.style-3 .style-2-text p, .style-3 .style-2-text ul, .style-3 .style-2-text ol {
  font-size: 16px;
  line-height: 22px;
  font-weight: 600; }

.style-3 .style-2-text ul {
  max-width: 422px; }

.style-3 .style-2-text p + ul {
  margin-top: 35px; }

.style-3 ul {
  list-style: none;
  padding-left: 60px; }
  .style-3 ul li {
    margin-bottom: 25px;
    position: relative; }
    .style-3 ul li:before {
      content: '';
      border-bottom: 2px solid black;
      height: 0;
      width: 35px;
      position: absolute;
      left: -60px;
      top: 11px; }

.blog-article-previous-next {
  grid-column: content-start / content-end;
  margin-bottom: 200px; }
  @media only screen and (min-width: 640px) {
    .blog-article-previous-next {
      grid-column: content / content-end; } }
  @media only screen and (min-width: 768px) {
    .blog-article-previous-next {
      grid-column: content-1 / content-end; } }
  .blog-article-previous-next .previous-next {
    display: flex;
    flex-direction: column; }
    @media only screen and (min-width: 640px) {
      .blog-article-previous-next .previous-next {
        flex-direction: row;
        flex-flow: wrap; } }
    .blog-article-previous-next .previous-next__previous {
      flex: 0 1 49%;
      order: 1;
      border: 1px solid #000; }
      @media only screen and (min-width: 640px) {
        .blog-article-previous-next .previous-next__previous {
          order: 0; } }
      .blog-article-previous-next .previous-next__previous .link-arrow:after {
        display: block;
        transition: all 0.15s ease-in-out;
        background: url(/themes/custom/brander/assets/css/../../../images/arrow-left-white.svg) no-repeat;
        float: left; }
      .blog-article-previous-next .previous-next__previous:hover .link-arrow:after {
        background: url(/themes/custom/brander/assets/css/../../../images/arrow-black-link-left.svg) no-repeat; }
    .blog-article-previous-next .previous-next__next {
      flex: 0 1 49%;
      margin-left: 0;
      margin-bottom: 30px;
      border: 1px solid #000; }
      @media only screen and (min-width: 640px) {
        .blog-article-previous-next .previous-next__next {
          margin-bottom: 0;
          order: 1;
          margin-left: auto; } }
      .blog-article-previous-next .previous-next__next .link-arrow:after {
        display: block;
        transition: all 0.15s ease-in-out;
        background: url(/themes/custom/brander/assets/css/../../../images/arrow-right-white.svg) no-repeat;
        float: right; }
      .blog-article-previous-next .previous-next__next:hover .link-arrow:after {
        background: url(/themes/custom/brander/assets/css/../../../images/arrow-black-link.svg) no-repeat; }
    .blog-article-previous-next .previous-next__link {
      display: flex;
      flex-direction: column;
      padding: 15px; }
      @media only screen and (min-width: 640px) {
        .blog-article-previous-next .previous-next__link {
          padding: 30px; } }
      .blog-article-previous-next .previous-next__link .link-title {
        font-size: 14px;
        font-weight: bold;
        line-height: 1.43;
        min-height: 40px;
        letter-spacing: 0.5px;
        margin-bottom: 20px; }
      .blog-article-previous-next .previous-next__link .link-arrow:after {
        content: "";
        width: 30px;
        height: 30px; }

.what-we-offer,
.works-header,
.about-header,
.contacts-header,
.blog-header,
.service-header,
.page-404 .header,
.reviews-header,
.page-404 {
  padding-top: 95px; }
  @media only screen and (min-width: 1024px) {
    .what-we-offer,
    .works-header,
    .about-header,
    .contacts-header,
    .blog-header,
    .service-header,
    .page-404 .header,
    .reviews-header,
    .page-404 {
      padding-top: 200px; } }
  .what-we-offer .breadcrumbs-wrapper,
  .works-header .breadcrumbs-wrapper,
  .about-header .breadcrumbs-wrapper,
  .contacts-header .breadcrumbs-wrapper,
  .blog-header .breadcrumbs-wrapper,
  .service-header .breadcrumbs-wrapper,
  .page-404 .header .breadcrumbs-wrapper,
  .reviews-header .breadcrumbs-wrapper,
  .page-404 .breadcrumbs-wrapper {
    grid-column: content-start / content-end; }
  .what-we-offer h1,
  .what-we-offer .main-header3,
  .what-we-offer .main-header2,
  .works-header h1,
  .works-header .main-header3,
  .works-header .main-header2,
  .about-header h1,
  .about-header .main-header3,
  .about-header .main-header2,
  .contacts-header h1,
  .contacts-header .main-header3,
  .contacts-header .main-header2,
  .blog-header h1,
  .blog-header .main-header3,
  .blog-header .main-header2,
  .service-header h1,
  .service-header .main-header3,
  .service-header .main-header2,
  .page-404 .header h1,
  .page-404 .header .main-header3,
  .page-404 .header .main-header2,
  .reviews-header h1,
  .reviews-header .main-header3,
  .reviews-header .main-header2,
  .page-404 h1,
  .page-404 .main-header3,
  .page-404 .main-header2 {
    padding-top: 0; }

.blog-header {
  word-wrap: break-word; }
  .blog-header .main-header2--md {
    margin-bottom: 1em; }
  .blog-header .breadcrumbs {
    margin-bottom: 1em; }

.page-reviews .reviews-header {
  margin-bottom: var(--margin30); }
  .page-reviews .reviews-header .header {
    grid-column: content; }

.page-reviews .description {
  grid-column: content;
  font-size: 1rem; }
  .page-reviews .description p {
    margin: 0; }
    @media only screen and (min-width: 768px) {
      .page-reviews .description p {
        line-height: 1.1; } }
  @media only screen and (min-width: 768px) {
    .page-reviews .description {
      font-size: 1.5rem; } }
  @media only screen and (min-width: 1024px) {
    .page-reviews .description {
      grid-column: content-start / content-3;
      font-size: 36px;
      font-weight: 700;
      max-width: 855px; } }

.header.header-cross-links {
  grid-column: content-start / content-end;
  margin-bottom: 10px;
  margin-left: -0.04em;
  position: relative;
  padding-right: 0.9em;
  font-weight: 900;
  text-transform: uppercase;
  font-size: 48px;
  line-height: 44px;
  letter-spacing: -2px; }
  @media only screen and (min-width: 768px) {
    .header.header-cross-links {
      font-size: 120px;
      line-height: 0.88; } }

.first-level-services-links {
  grid-column: content;
  margin-bottom: var(--margin30); }
  @media only screen and (min-width: 1200px) {
    .first-level-services-links {
      grid-column: content-start / content-3;
      padding-left: 300px;
      margin-bottom: var(--margin60); } }
  .first-level-services-links .cross-links {
    margin-bottom: 0; }
  .first-level-services-links__item {
    border-top: 1px solid black;
    padding: 30px 0;
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-wrap: wrap; }
    .first-level-services-links__item:hover .arrow {
      fill: #000; }
    .first-level-services-links__item a:after {
      content: none; }
  .first-level-services-links .arrow {
    height: auto;
    width: 0.9em;
    transition: fill 0.3s;
    fill: rgba(0, 0, 0, 0);
    stroke: #000;
    stroke-width: 1; }
    @media only screen and (min-width: 760px) {
      .first-level-services-links .arrow {
        width: 0.85em; } }

.code-badge {
  background: transparent !important; }
  .code-badge .code-badge-language {
    display: none; }

.codesnippet-copy.code-badge-copy-icon, .code-badge-copy-icon.codesnippet-check {
  padding: 0;
  font-size: 1rem;
  cursor: none; }
  .codesnippet-copy.code-badge-copy-icon:before, .code-badge-copy-icon.codesnippet-check:before {
    display: block; }

.codesnippet-copy.code-badge-copy-icon:before {
  content: url(../../../images/copy_icon.svg); }

.codesnippet-check.code-badge-copy-icon:before {
  content: url('data:image/svg+xml;charset=utf8,<svg width="18" height="18" viewBox="0 0 18 18" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M17.3346 0.666992H4.0013V14.0003H17.3346V0.666992ZM9.39297 10.667L6.5013 7.75033L7.66797 6.57533L9.39297 8.30866L13.668 4.00033L14.8346 5.17533L9.39297 10.667ZM2.33464 4.00033H0.667969V17.3337H14.0013V15.667H2.33464V4.00033Z" fill="black"/></svg>'); }

.before-contact-form {
  margin-top: var(--margin60); }

.brief .form-content .form-style .js-form-type-radio {
  display: flex; }

.brief .form-content .form-style .form-radios {
  margin-top: 30px; }
  .brief .form-content .form-style .form-radios input {
    width: auto;
    margin-right: 10px;
    height: auto; }
  .brief .form-content .form-style .form-radios label {
    line-height: 1; }

.brief .form-content .form-style label, .brief .form-content .form-style input {
  line-height: 20px;
  font-size: 14px;
  text-transform: uppercase;
  font-weight: bold; }

.average-rate {
  grid-column: content;
  margin-bottom: 30px; }
  @media only screen and (min-width: 768px) {
    .average-rate {
      grid-column: content-1 / content-end; } }
  .average-rate .fivestar-summary-average-count {
    margin-left: 10px;
    line-height: 21px;
    font-size: 21px; }

.form-type-select.form-item-vote,
.form-item-vote .form-item {
  display: flex;
  font-size: 20px;
  line-height: 23px;
  font-weight: bold; }

.breadcrumbs {
  grid-column: content; }

.dmca {
  margin-bottom: 20px; }

.review-rate {
  display: flex;
  flex-direction: column;
  margin-top: 10px; }
  .review-rate > div:first-child {
    margin-right: 10px; }

.standard-content > *,
.standard-content > .header.stroke {
  grid-column: content-start / content-end; }
  @media only screen and (min-width: 760px) {
    .standard-content > *,
    .standard-content > .header.stroke {
      grid-column: content-1 / content-3; } }

@media only screen and (min-width: 768px) {
  .standard-content .comment-component {
    grid-template-columns: auto 1fr; }
    .standard-content .comment-component .img {
      max-width: 190px;
      margin-right: 20px; } }

@media only screen and (min-width: 1024px) {
  .standard-content .comment-component .img {
    max-width: 210px; }
  .standard-content .comment-component .header {
    grid-column: span 3; } }

@media only screen and (min-width: 1200px) {
  .standard-content .comment-component .img {
    margin-right: 75px; } }

.standard-content .comment-component .text-block {
  margin-left: 0; }

.standard-content .before-contact-form .header {
  grid-column: 1 / span 6;
  color: #000;
  max-width: 520px; }

@media only screen and (min-width: 768px) {
  .standard-content .before-contact-form .footer-button {
    max-width: 285px;
    grid-column: 1 / span 3; } }

@media only screen and (max-width: 767px) {
  .standard-content .before-contact-form .header {
    max-width: 100%; }
  .standard-content .before-contact-form .footer-button {
    grid-column: 1 / span 6; } }

.standard-content .pics {
  margin: var(--margin60) 0; }
  @media only screen and (min-width: 1440px) {
    .standard-content .pics {
      margin: 80px 0; } }

.share-content {
  margin-bottom: 60px; }
  .share-content .share__inner {
    margin: 0; }
  @media only screen and (min-width: 1024px) {
    .share-content {
      margin-bottom: 195px; } }

[id="block-bloknagorod"] [id="block-bloknagorod-container"] {
  padding-top: 0; }

[id="block-bloknagorod-container"] {
  overflow: hidden;
  padding-bottom: 60px;
  padding-top: 60px; }
  [id="block-bloknagorod-container"] .companies {
    display: none; }
  [id="block-bloknagorod-container"] .field--name-field-list {
    grid-column: 2 / span 4; }
    @media only screen and (min-width: 1024px) {
      [id="block-bloknagorod-container"] .field--name-field-list {
        grid-column: 3 / span 4; } }
  [id="block-bloknagorod-container"] .owl-stage-outer {
    overflow: visible; }
  [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel) {
    display: flex;
    align-items: center; }
    .touch [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel) {
      padding-left: var(--outsideIndent);
      overflow-y: hidden;
      -ms-overflow-style: none;
      scrollbar-width: none; }
      .touch [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel)::-webkit-scrollbar {
        display: none; }
      .touch [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel)::after {
        content: '';
        height: 1px;
        width: var(--outsideIndent);
        flex-shrink: 0; }
      @media only screen and (min-width: 1024px) {
        .touch [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel) {
          padding-left: calc(var(--blueCell) + var(--outsideIndent)); }
          .touch [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel):after {
            width: calc(var(--blueCell) + var(--outsideIndent)); } }
    [id="block-bloknagorod-container"] .field--name-field-award-item:not(.owl-carousel) .field__item:last-child {
      border-right: 1px solid #000; }
  [id="block-bloknagorod-container"] .field--name-field-award-item .owl-item:last-child .field__item {
    border-right: 1px solid #000; }
  [id="block-bloknagorod-container"] .field--name-field-award-item .field__item {
    width: 230px;
    height: 130px;
    flex-shrink: 0;
    border-left: 1px solid #000; }
    [id="block-bloknagorod-container"] .field--name-field-award-item .field__item .media--image::before {
      display: none; }
    [id="block-bloknagorod-container"] .field--name-field-award-item .field__item > a, [id="block-bloknagorod-container"] .field--name-field-award-item .field__item > .logo {
      padding: 20px;
      display: flex;
      align-items: center;
      justify-content: center;
      box-sizing: border-box;
      width: 100%;
      height: 100%; }
    [id="block-bloknagorod-container"] .field--name-field-award-item .field__item a {
      position: relative; }
      [id="block-bloknagorod-container"] .field--name-field-award-item .field__item a::before {
        content: '';
        display: block;
        width: 20px;
        height: 20px;
        right: 10px;
        top: -4px;
        background: url(../../../images/awards-arrow.svg) 50% 50%/12px no-repeat;
        position: absolute;
        transition: opacity .2s, transform .5s;
        opacity: 0; }
      [id="block-bloknagorod-container"] .field--name-field-award-item .field__item a > * {
        pointer-events: none; }
      .no-touch [id="block-bloknagorod-container"] .field--name-field-award-item .field__item a:hover::before {
        transform: rotate(-45deg);
        opacity: 1; }
      .touch [id="block-bloknagorod-container"] .field--name-field-award-item .field__item a::before {
        transform: rotate(-45deg);
        opacity: 1; }
    [id="block-bloknagorod-container"] .field--name-field-award-item .field__item img {
      max-width: 190px;
      max-height: 90px;
      object-fit: contain;
      width: auto;
      height: auto; }
  @media only screen and (min-width: 768px) {
    [id="block-bloknagorod-container"] {
      padding-bottom: 90px; } }
  @media only screen and (min-width: 1024px) {
    [id="block-bloknagorod-container"] {
      padding-bottom: 30px; } }
  .no-touch [id="block-bloknagorod-container"] {
    display: grid;
    grid-template-columns: [start] var(--outsideIndent) [after-start content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [before-end content-end] var(--outsideIndent) [end]; }
    @media only screen and (min-width: 1024px) {
      .no-touch [id="block-bloknagorod-container"] {
        grid-template-columns: [start] var(--outsideIndent) [after-start] var(--blueCell) [content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [content-end] var(--blueCell) [before-end] var(--outsideIndent) [end]; } }

[id="block-blokreytingiv-container"] {
  display: grid;
  grid-template-columns: [start] var(--outsideIndent) [after-start content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [before-end content-end] var(--outsideIndent) [end]; }
  @media only screen and (min-width: 1024px) {
    [id="block-blokreytingiv-container"] {
      grid-template-columns: [start] var(--outsideIndent) [after-start] var(--blueCell) [content-start] var(--contentCell) [content-1] var(--contentCell) [content-center] var(--contentCell) [content-3] var(--contentCell) [content-end] var(--blueCell) [before-end] var(--outsideIndent) [end]; } }
  [id="block-blokreytingiv-container"] .companies {
    display: none; }
  [id="block-blokreytingiv-container"] .field--name-field-list {
    grid-column: 2 / span 4; }
    @media only screen and (min-width: 1024px) {
      [id="block-blokreytingiv-container"] .field--name-field-list {
        grid-column: 3 / span 4; } }
  [id="block-blokreytingiv-container"] .field--name-field-rating-item {
    width: 100%;
    display: flex;
    align-items: flex-start;
    flex-wrap: wrap; }
    [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item {
      width: 100%;
      margin-bottom: 60px; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item .logo {
        margin-bottom: 15px;
        border-bottom: 1px solid #000;
        padding-bottom: 6px;
        height: 76px;
        display: flex;
        align-items: center; }
        [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item .logo * {
          max-width: 100%;
          max-height: 100%;
          width: 100%;
          height: 100%;
          object-fit: contain; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item .media--image::before {
        display: none; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item .title {
        font-size: 44px;
        line-height: 52px;
        padding-right: 50px;
        font-weight: 800;
        box-sizing: border-box;
        position: relative; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item a {
        display: block; }
        [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item a .title::before {
          content: '';
          width: 43px;
          height: 37px;
          position: absolute;
          display: block;
          right: 0;
          top: 50%;
          transform: translateY(-50%);
          background: url(../../../images/arrow-black-link.svg) 50% 50%/43px no-repeat;
          opacity: 0;
          transition: opacity .3s ease-in-out; }
        [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item a > * {
          pointer-events: none; }
        .no-touch [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item a:hover .title::before {
          opacity: 1; }
        .touch [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item a .title::before {
          opacity: 1; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item .description {
        margin-top: 10px;
        font-size: 16px;
        line-height: 19px; }
        [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item .description * {
          margin: 0; }
  @media only screen and (min-width: 1024px) {
    [id="block-blokreytingiv-container"] {
      padding-bottom: 30px; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item {
        margin: 0 0 0px -30px;
        width: calc(100% + 30px); }
        [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item {
          width: calc(25% - 30px);
          margin-left: 30px; } }
  @media only screen and (min-width: 1200px) {
    [id="block-blokreytingiv-container"] .field--name-field-rating-item {
      margin: 0 0 0px -70px;
      width: calc(100% + 70px); }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item {
        width: calc(25% - 70px);
        margin-left: 70px; } }

@media only screen and (max-width: 1023px) and (min-width: 480px) {
  [id="block-blokreytingiv-container"] .field--name-field-rating-item {
    flex-direction: column;
    justify-content: center;
    align-items: center; }
    [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item {
      width: 32.49%;
      min-width: 230px; }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item:nth-child(odd) {
        transform: translateX(-62px); }
      [id="block-blokreytingiv-container"] .field--name-field-rating-item .field__item:nth-child(even) {
        transform: translateX(115px); } }

body.path-frontpage .layout-content {
  display: flex;
  flex-direction: column; }
  body.path-frontpage .layout-content [id="block-seo-block"],
  body.path-frontpage .layout-content [id="block-seoserviceslinkslist"] {
    order: 1; }

.about-project-component {
  margin-bottom: 60px; }
  @media only screen and (min-width: 1024px) {
    .about-project-component {
      margin-bottom: 80px; } }
  .about-project-component .link-col {
    grid-column: content-start / content-end;
    font-size: 14px;
    text-transform: uppercase;
    line-height: 1.4;
    letter-spacing: 0.035em;
    font-weight: bold;
    margin-bottom: 40px; }
    @media only screen and (min-width: 640px) {
      .about-project-component .link-col {
        margin-bottom: 32px; } }
    @media only screen and (min-width: 1024px) {
      .about-project-component .link-col {
        grid-column: content-start / content-center; } }
  .about-project-component .text-col {
    grid-column: content-start / content-end; }
    @media only screen and (min-width: 640px) {
      .about-project-component .text-col {
        grid-column: content-center / content-end; } }
    .about-project-component .text-col .field__item {
      margin-bottom: 40px; }
      .about-project-component .text-col .field__item:last-child {
        margin-bottom: 0; }
      .about-project-component .text-col .field__item .header {
        margin-bottom: 5px;
        font-size: 12px;
        line-height: 1.33; }
      .about-project-component .text-col .field__item .text {
        font-weight: bold;
        line-height: 1.4; }
        .about-project-component .text-col .field__item .text li {
          margin-bottom: 15px; }

.project-team-component {
  margin-bottom: 60px; }
  @media only screen and (min-width: 1024px) {
    .project-team-component {
      margin-bottom: 150px; } }
  .project-team-component:before, .project-team-component:after {
    content: '';
    display: block;
    width: auto;
    height: 1px;
    background-color: #000;
    grid-column: content-start / content-end; }
  .project-team-component:before {
    margin-bottom: 20px; }
    @media only screen and (min-width: 640px) {
      .project-team-component:before {
        margin-bottom: 10px; } }
    @media only screen and (min-width: 1024px) {
      .project-team-component:before {
        margin-bottom: 30px; } }
  .project-team-component:after {
    margin-top: 28px; }
    @media only screen and (min-width: 1024px) {
      .project-team-component:after {
        margin-top: 60px; } }
  .project-team-component .title {
    grid-column: content-start / content-end;
    margin-bottom: 16px; }
    @media only screen and (min-width: 640px) {
      .project-team-component .title {
        margin-bottom: 20px; } }
    @media only screen and (min-width: 1024px) {
      .project-team-component .title {
        grid-column: content-start / content-center;
        margin-bottom: 0; } }
  .project-team-component .title-inner {
    line-height: 1.7; }
    @media only screen and (min-width: 1024px) {
      .project-team-component .title-inner {
        line-height: 1.11; } }
  .project-team-component .team-items {
    grid-column: content-start / content-end; }
    @media only screen and (min-width: 640px) {
      .project-team-component .team-items {
        display: flex; } }
    @media only screen and (min-width: 1024px) {
      .project-team-component .team-items {
        grid-column: content-center / content-end; } }
  .project-team-component .item {
    margin-bottom: 20px; }
    @media only screen and (min-width: 640px) {
      .project-team-component .item {
        margin-right: 55px;
        margin-bottom: 0; } }
    .project-team-component .item:last-child {
      margin-bottom: 0; }
      @media only screen and (min-width: 640px) {
        .project-team-component .item:last-child {
          margin-right: 0; } }
    .project-team-component .item .name {
      margin-bottom: 5px;
      font-weight: bold; }
    .project-team-component .item .caption {
      font-size: 12px; }

.header-case-component {
  margin-bottom: 20px; }
  @media only screen and (min-width: 640px) {
    .header-case-component {
      margin-bottom: 60px; } }
  @media only screen and (min-width: 1024px) {
    .header-case-component {
      margin-bottom: 40px; } }
  .header-case-component .header {
    margin-bottom: 20px; }
    @media only screen and (min-width: 640px) {
      .header-case-component .header {
        grid-column: content-start / content-3;
        margin-bottom: 10px; } }
    @media only screen and (min-width: 1024px) {
      .header-case-component .header {
        margin-bottom: 80px; } }
  .header-case-component .caption {
    grid-column: content-start / content-end;
    line-height: 1.4; }
    @media only screen and (min-width: 760px) {
      .header-case-component .caption {
        grid-column: content-1 / content-3; } }

.article-block-component {
  font-weight: 600;
  margin-bottom: 60px; }
  @media only screen and (min-width: 760px) {
    .article-block-component {
      margin-bottom: 30px; } }
  @media only screen and (min-width: 1024px) {
    .article-block-component {
      margin-bottom: 80px; } }
  .article-block-component .header {
    margin-bottom: 20px; }
    @media only screen and (min-width: 760px) {
      .article-block-component .header {
        margin-bottom: 10px; } }
    @media only screen and (min-width: 1024px) {
      .article-block-component .header {
        margin-bottom: 40px; } }
  .article-block-component .text li {
    margin-bottom: 15px; }

.image-block-component {
  margin-bottom: 60px; }
  @media only screen and (min-width: 760px) {
    .image-block-component {
      margin-bottom: 30px; } }
  @media only screen and (min-width: 1024px) {
    .image-block-component {
      margin-bottom: 80px; } }
  .image-block-component .header {
    margin-bottom: 20px; }
    @media only screen and (min-width: 760px) {
      .image-block-component .header {
        margin-bottom: 10px; } }
    @media only screen and (min-width: 1024px) {
      .image-block-component .header {
        margin-bottom: 40px; } }
  .image-block-component .img img {
    width: auto;
    max-width: 100%; }

.big-digit-component .header {
  font-size: 80px;
  line-height: 100px;
  letter-spacing: -2px;
  font-weight: 800; }
  @media only screen and (min-width: 760px) {
    .big-digit-component .header {
      font-size: 88px; } }
  @media only screen and (min-width: 1024px) {
    .big-digit-component .header {
      font-size: 120px; } }

.big-digit-component .caption {
  width: 140px;
  font-size: 12px;
  line-height: 1.3; }

.digit-list-component .item {
  border-bottom: 1px solid #000;
  margin-bottom: 30px; }
  .digit-list-component .item:last-child {
    margin-bottom: 0; }

.digit-list-component .top-text {
  margin-bottom: 10px;
  font-size: 24px;
  font-weight: 600; }
  @media only screen and (min-width: 760px) {
    .digit-list-component .top-text {
      margin-bottom: 15px; } }
  @media only screen and (min-width: 1024px) {
    .digit-list-component .top-text {
      margin-bottom: 30px; } }

.digit-list-component .header {
  font-size: 80px;
  line-height: 100px;
  letter-spacing: -2px;
  font-weight: 800; }
  @media only screen and (min-width: 760px) {
    .digit-list-component .header {
      font-size: 88px; } }
  @media only screen and (min-width: 1024px) {
    .digit-list-component .header {
      font-size: 120px;
      margin-bottom: 25px; } }

.digit-list-component .caption {
  font-weight: 600;
  margin-bottom: 30px; }
  @media only screen and (min-width: 1024px) {
    .digit-list-component .caption {
      margin-bottom: 20px; } }

.inviting-component .header {
  margin-bottom: 30px; }
  @media only screen and (min-width: 1024px) {
    .inviting-component .header {
      margin-bottom: 60px; } }

.inviting-component .button-block {
  max-width: 285px; }

.comment-component {
  margin-bottom: 60px;
  display: grid;
  grid-template-columns: 1fr 1fr 1fr; }
  @media only screen and (min-width: 1024px) {
    .comment-component {
      margin-bottom: 80px; } }
  .comment-component .header {
    margin-bottom: 30px;
    grid-column: span 3;
    max-width: 450px; }
    @media only screen and (min-width: 760px) {
      .comment-component .header {
        margin-bottom: 20px; } }
    @media only screen and (min-width: 1024px) {
      .comment-component .header {
        margin-bottom: 40px; } }
  .comment-component .img {
    grid-column: span 3;
    max-width: 160px;
    margin-bottom: 20px; }
    @media only screen and (min-width: 760px) {
      .comment-component .img {
        grid-column: span 1;
        max-width: unset;
        margin-bottom: 0; } }
    @media only screen and (min-width: 1024px) {
      .comment-component .img {
        max-width: 210px;
        margin-right: 20px; } }
  .comment-component .text-block {
    grid-column: span 3;
    font-size: 12px;
    line-height: 1.3; }
    @media only screen and (min-width: 760px) {
      .comment-component .text-block {
        grid-column: span 2;
        margin-left: 20px; } }
    @media only screen and (min-width: 1024px) {
      .comment-component .text-block {
        margin-left: 0; } }
  .comment-component .name-block {
    margin-bottom: 15px; }
    @media only screen and (min-width: 760px) {
      .comment-component .name-block {
        margin-bottom: 20px; } }
    @media only screen and (min-width: 1024px) {
      .comment-component .name-block {
        margin-bottom: 30px; } }
  .comment-component .name {
    font-size: 24px;
    font-weight: bold;
    margin-bottom: 5px; }
    @media only screen and (min-width: 760px) {
      .comment-component .name {
        font-size: 14px; } }
    @media only screen and (min-width: 1024px) {
      .comment-component .name {
        font-size: 24px; } }
  .comment-component .caption {
    grid-column: content-start / content-end;
    margin-bottom: 20px; }

.share__inner {
  grid-column: content-start / content-end;
  font-size: 12px;
  line-height: 1.85;
  margin-bottom: 80px; }
  @media only screen and (min-width: 760px) {
    .share__inner {
      margin-bottom: 200px; } }
  .share__inner > div {
    margin-bottom: 15px; }
  .share__inner .share__list {
    list-style: none;
    padding: 0;
    margin: 0;
    display: flex;
    font-weight: bold; }
    .share__inner .share__list .share__item {
      margin-right: 20px; }

.services-main {
  padding-top: 20px; }
  .services-main__item {
    margin: 0 0 var(--margin160); }
    .services-main__item .services-main__item-title {
      grid-column: 4 / content-end;
      padding-left: 45px;
      margin: 0;
      box-sizing: border-box; }
      .services-main__item .services-main__item-title .link {
        width: 100%;
        max-width: 610px;
        position: relative; }
        .touch .services-main__item .services-main__item-title .link {
          color: #000; }
        .services-main__item .services-main__item-title .link .link-clip {
          color: #000;
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          clip-path: polygon(0 500px, calc(500px + -300px) 500px, calc(0px + -300px) 0, 0 0);
          transition: clip-path .5s;
          display: none; }
          .services-main__item .services-main__item-title .link .link-clip .arrow__item {
            fill: #000;
            stroke: none; }
        .no-touch .services-main__item .services-main__item-title .link .link-clip {
          display: block; }
        .no-touch .services-main__item .services-main__item-title .link:hover .link-clip {
          clip-path: polygon(0 500px, calc(500px + 100%) 500px, calc(0px + 100%) 0, 0 0); }
      .services-main__item .services-main__item-title a {
        width: 100%;
        display: block;
        box-sizing: border-box;
        word-break: break-word;
        border-top: 11px solid #000;
        padding: 40px 90px 40px 0; }
      .services-main__item .services-main__item-title .arrow__item {
        position: absolute;
        right: 0;
        top: 45px;
        width: 80px;
        height: 68px;
        pointer-events: none; }
        .no-touch .services-main__item .services-main__item-title .arrow__item {
          fill: transparent;
          stroke: #000; }
    .no-touch .services-main__item:hover .pic__content-inner:before {
      opacity: 1; }
    .no-touch .services-main__item:hover .pic__content-inner img {
      opacity: 1;
      transition-delay: 1.2s; }
    .no-touch .services-main__item:hover .pic__content-inner svg path,
    .no-touch .services-main__item:hover .pic__content-inner svg polygon,
    .no-touch .services-main__item:hover .pic__content-inner svg polyline {
      transition: stroke-dashoffset 1.5s; }
    .no-touch .services-main__item:not(:hover) svg {
      opacity: 1; }
      .no-touch .services-main__item:not(:hover) svg path,
      .no-touch .services-main__item:not(:hover) svg polygon,
      .no-touch .services-main__item:not(:hover) svg polyline {
        stroke-dashoffset: 0; }
    .services-main__item-content {
      grid-column: 4 / content-end;
      grid-row: 2;
      box-sizing: border-box;
      padding-left: 45px; }
  .services-main .pic {
    grid-row: 2;
    grid-column: 1 / span 3; }
    .services-main .pic__content {
      width: 86.21%; }
      .services-main .pic__content-inner {
        width: 100%;
        padding-top: 100%;
        position: relative; }
        .services-main .pic__content-inner:before {
          content: '';
          position: absolute;
          left: 0;
          top: 0;
          border: 1px solid #000;
          background-color: #fff;
          width: 100%;
          height: 100%;
          box-sizing: border-box;
          opacity: 0;
          will-change: opacity; }
          .no-touch .services-main .pic__content-inner:before {
            opacity: 1; }
        .services-main .pic__content-inner img {
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          object-fit: cover;
          z-index: 1; }
          .no-touch .services-main .pic__content-inner img {
            transition: opacity 0.5s;
            will-change: opacity;
            opacity: 0; }
        .services-main .pic__content-inner svg {
          position: absolute;
          width: 100%;
          height: 100%;
          top: 0;
          left: 0;
          fill: none;
          stroke: #000;
          stroke-width: 1; }
          .no-touch .services-main .pic__content-inner svg {
            opacity: 1; }
          .services-main .pic__content-inner svg path,
          .services-main .pic__content-inner svg polygon,
          .services-main .pic__content-inner svg polyline {
            vector-effect: non-scaling-stroke; }
        .no-touch .services-main .pic__content-inner picture, .no-touch .services-main .pic__content-inner svg {
          pointer-events: none; }
      .services-main .pic__content-title {
        text-align: right;
        margin-top: 15px;
        font-weight: 600;
        font-size: 16px;
        line-height: 19px;
        letter-spacing: 0.6px;
        text-transform: uppercase; }
        .services-main .pic__content-title a {
          width: 100%;
          display: block; }
  .services-main .another-offers .another-offers-list {
    margin: 0; }
  .services-main .another-offers + .our-offers-list {
    margin-top: 40px; }
  .services-main .our-offers-list .vacancies {
    display: flex;
    flex-direction: column; }
  .services-main .our-offers-list .field-content + .field-content {
    margin-top: 5px; }
  .services-main .our-offers-list .show-more {
    display: none;
    margin-left: calc(var(--outsideIndent) * -1);
    width: calc(100% + (var(--outsideIndent) * 2));
    padding: 14px var(--outsideIndent);
    box-sizing: border-box;
    border-style: solid;
    border-color: #000;
    border-width: 1px 0;
    margin-top: 20px;
    font-weight: 900;
    font-size: 24px;
    line-height: 32px;
    position: relative;
    text-transform: uppercase; }
    .services-main .our-offers-list .show-more::before {
      content: attr(data-active-text);
      display: block;
      padding-right: var(--outsideIndent);
      box-sizing: border-box;
      width: 100%; }
    .services-main .our-offers-list .show-more .arrow__item {
      fill: transparent;
      stroke: #000;
      width: 25px;
      height: 21px;
      position: absolute;
      top: 50%;
      right: var(--outsideIndent);
      transform: translateY(-50%) rotate(-90deg);
      transition: transform .3s;
      pointer-events: none; }
  @media only screen and (max-width: 1023px) {
    .services-main {
      padding-top: 40px; }
      .services-main__item .services-main__item-title {
        grid-column: 3 / span 2;
        padding-left: 0; }
        .services-main__item .services-main__item-title a {
          padding: 30px 0;
          border-top-width: 5px; }
        .services-main__item .services-main__item-title .arrow__item {
          display: none; }
      .services-main__item-content {
        grid-column: 3 / span 3;
        padding-left: 0; }
      .services-main .another-offers + .our-offers-list {
        margin-top: 33px; }
      .services-main .pic {
        grid-row: 3;
        margin-top: 60px; }
        .services-main .pic__content {
          margin-left: auto;
          width: 92.21%; }
          .services-main .pic__content-title {
            margin-top: 10px;
            text-align: left; } }
  @media only screen and (max-width: 767px) {
    .services-main {
      padding-top: 20px; }
      .services-main__item .services-main__item-title {
        grid-column: content; }
        .services-main__item .services-main__item-title a {
          border-top-width: 7px;
          padding: 12px 40px 30px 0; }
        .services-main__item .services-main__item-title .arrow__item {
          display: block;
          width: 30px;
          height: 25px;
          top: 21px; }
      .services-main__item-content {
        grid-column: content; }
      .services-main .another-offers + .our-offers-list {
        margin-top: 15px; }
      .services-main .pic {
        grid-column: 3 / span 4;
        margin-top: 40px; }
        .services-main .pic__content {
          width: 90.15%; }
      .services-main .our-offers-list .field-content:nth-child(6) ~ .show-more {
        display: block; }
      .services-main .our-offers-list:not(.active) .field-content:nth-child(5) ~ .field-content {
        display: none; }
      .services-main .our-offers-list:not(.active) .show-more::before {
        content: attr(data-static-text); }
      .services-main .our-offers-list:not(.active) .show-more .arrow__item {
        transform: translateY(-50%) rotate(90deg); } }

.services-slider {
  margin: 0 0 var(--margin160);
  overflow: hidden; }
  .services-slider__numbers {
    padding-bottom: 20px; }
    .services-slider__numbers .numbers-slider {
      width: 100%; }
      .services-slider__numbers .numbers-slider .owl-stage-outer {
        overflow: visible; }
      .services-slider__numbers .numbers-slider .owl-stage {
        min-width: 100%; }
      .services-slider__numbers .numbers-slider .owl-item {
        transition: opacity .3s linear, transform .3s linear; }
        .services-slider__numbers .numbers-slider .owl-item .digits .clip-text {
          clip: rect(0px, 0px, auto, 0);
          transition: clip .3s linear; }
        @media only screen and (min-width: 1024px) {
          .services-slider__numbers .numbers-slider .owl-item:first-child {
            transform: translate(235px); }
          .services-slider__numbers .numbers-slider .owl-item:not(:first-child) {
            transform: translate(140px); } }
      .services-slider__numbers .numbers-slider .owl-item.active {
        transform: unset; }
        .services-slider__numbers .numbers-slider .owl-item.active + .owl-item {
          transform: unset; }
        .services-slider__numbers .numbers-slider .owl-item.active .digits .clip-text {
          transition: clip .3s linear; }
        .services-slider__numbers .numbers-slider .owl-item.active ~ .owl-item .digits .clip-text {
          clip: rect(0px, 0px, auto, 0); }
        .services-slider__numbers .numbers-slider .owl-item.active + .owl-item + .owl-item {
          opacity: 0; }
        .services-slider__numbers .numbers-slider .owl-item.active .digits .clip-text {
          clip: rect(0px, 500px, auto, 0); }
      .services-slider__numbers .numbers-slider:not(.owl-carousel) {
        display: flex;
        flex-wrap: nowrap; }
        .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits {
          width: 100%;
          max-width: 240px; }
          .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits:first-child {
            color: #000; }
          .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits + .digits {
            margin-left: 30px; }
            .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits + .digits .clip-text {
              clip: rect(0px, 0px, auto, 0); }
      .services-slider__numbers .numbers-slider.owl-carousel {
        max-width: 240px; }
    .services-slider__numbers .digits {
      font-weight: 800;
      font-size: 200px;
      line-height: .8;
      letter-spacing: -5px;
      flex-shrink: 0;
      transition: color .3s;
      position: relative; }
      .services-slider__numbers .digits .clip-text {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        color: #000;
        font-size: inherit;
        letter-spacing: inherit;
        line-height: inherit;
        clip: rect(0px, 500px, auto, 0px); }
  .services-slider__content, .services-slider__numbers {
    box-sizing: border-box;
    grid-column: 2 /  span 4; }
  .services-slider__content .service-item {
    padding-top: 30px;
    padding-bottom: 30px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    display: grid;
    row-gap: 20px;
    grid-template-columns: repeat(1, 1fr); }
    .services-slider__content .service-item:not(.active) {
      display: none; }
    .services-slider__content .service-item .head {
      display: flex;
      flex-direction: column; }
      .services-slider__content .service-item .head__title {
        font-weight: 700;
        display: block;
        width: 100%;
        max-width: 420px;
        font-size: 36px;
        line-height: .89;
        order: 1; }
      .services-slider__content .service-item .head__count {
        font-size: 12px;
        line-height: 1.33;
        margin-bottom: 10px;
        order: -1; }
    .services-slider__content .service-item .description {
      font-weight: 600;
      font-size: 16px;
      line-height: 1.37;
      width: 100%; }
      .services-slider__content .service-item .description > * {
        margin-top: 0; }
  @media only screen and (min-width: 768px) {
    .services-slider__numbers .numbers-slider .digits {
      font-size: 280px; }
    .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits {
      max-width: 340px; }
      .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits + .digits {
        margin-left: 40px; }
    .services-slider__numbers .numbers-slider.owl-carousel {
      max-width: 340px; }
    .services-slider__content .service-item .head {
      flex-direction: row;
      align-items: flex-start;
      justify-content: space-between; }
      .services-slider__content .service-item .head__title {
        font-size: 44px;
        line-height: 1;
        max-width: 50%; }
    .services-slider__content .service-item .description {
      max-width: 50%;
      margin-left: auto; } }
  @media only screen and (min-width: 1024px) {
    .services-slider__content, .services-slider__numbers {
      grid-column: 3 /  span 4; }
    .services-slider__numbers {
      padding-top: 66px; }
      .services-slider__numbers .numbers-slider .digits {
        font-size: 400px; }
      .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits {
        max-width: 500px; }
        .services-slider__numbers .numbers-slider:not(.owl-carousel) .digits + .digits {
          margin-left: 160px; }
      .services-slider__numbers .numbers-slider.owl-carousel {
        max-width: 500px; }
    .services-slider__content .service-item {
      grid-template-columns: repeat(2, 1fr); }
      .services-slider__content .service-item .head {
        display: block; }
        .services-slider__content .service-item .head__title {
          font-size: 36px;
          line-height: 1.11;
          margin-bottom: 15px;
          max-width: 100%;
          order: 0; }
      .services-slider__content .service-item .description {
        max-width: 420px;
        margin-left: 0; } }

.services-accordion .list-style .header:not(.item) {
  max-width: 920px; }

.services-accordion .list-style__content {
  margin: 0 0 var(--margin160);
  padding-top: 10px; }
  .services-accordion .list-style__content .item {
    display: grid;
    box-sizing: border-box;
    padding: 30px 0;
    border-bottom: 1px solid #000;
    grid-template-columns: 1fr;
    position: relative;
    margin: 0; }
    .services-accordion .list-style__content .item:first-child {
      border-top: 1px solid #000; }
    .services-accordion .list-style__content .item .digits {
      font-weight: 900;
      font-size: 54px;
      line-height: .82;
      box-sizing: border-box;
      transition: font-size .3s, color .3s;
      margin-bottom: 10px; }
    .services-accordion .list-style__content .item__content {
      pointer-events: none; }
      .services-accordion .list-style__content .item__content .title {
        box-sizing: border-box;
        font-weight: 700;
        font-size: 24px;
        line-height: 40px;
        text-transform: none; }
        .services-accordion .list-style__content .item__content .title::before, .services-accordion .list-style__content .item__content .title:after {
          content: '';
          display: block;
          width: 30px;
          height: 1px;
          background-color: #000;
          transition: transform .3s;
          top: 52px;
          position: absolute;
          right: 0; }
        .services-accordion .list-style__content .item__content .title:after {
          transform: rotate(90deg); }
      .services-accordion .list-style__content .item__content .content {
        font-weight: 600;
        font-size: 16px;
        line-height: 1.37;
        text-transform: none; }
        .services-accordion .list-style__content .item__content .content .inner {
          margin-top: 20px; }
          .services-accordion .list-style__content .item__content .content .inner > * {
            margin-top: 0; }
    .services-accordion .list-style__content .item.active .digits {
      color: #000; }
    .services-accordion .list-style__content .item.active .item__content .title:after {
      transform: rotate(0deg); }
  @media only screen and (min-width: 768px) {
    .services-accordion .list-style__content {
      padding-top: 30px;
      margin: 0 0 90px calc(var(--outsideIndent) * -1);
      width: calc(100% + (var(--outsideIndent) * 2)); }
      .services-accordion .list-style__content .item {
        grid-template-columns: 1fr 1fr;
        padding: 45px var(--outsideIndent); }
        .services-accordion .list-style__content .item .digits {
          font-size: 120px;
          line-height: 1.2;
          margin-bottom: 0; }
        .services-accordion .list-style__content .item__content {
          padding-top: 18px;
          transition: padding .3s; }
          .services-accordion .list-style__content .item__content .title {
            position: relative;
            padding-right: 60px; }
            .services-accordion .list-style__content .item__content .title::before, .services-accordion .list-style__content .item__content .title:after {
              right: var(--outsideIndent);
              top: 50%;
              transform: translateY(-50%); }
            .services-accordion .list-style__content .item__content .title:after {
              transform: translateY(-50%) rotate(90deg); }
        .services-accordion .list-style__content .item.active .item__content .title:after {
          transform: translateY(-50%); } }
  @media only screen and (min-width: 1024px) {
    .services-accordion .list-style__content {
      padding-top: 80px;
      margin: 0 0 160px 0;
      width: 100%; }
      .services-accordion .list-style__content .item {
        padding: 45px 0; }
        .services-accordion .list-style__content .item:nth-child(even) {
          grid-template-columns: 300px 1fr; }
          .services-accordion .list-style__content .item:nth-child(even) .title {
            padding-right: 35%; }
          .services-accordion .list-style__content .item:nth-child(even) .inner {
            padding-right: 35%;
            box-sizing: border-box; }
        .services-accordion .list-style__content .item:nth-child(odd) .digits {
          text-align: right;
          padding-right: 84px; }
        .services-accordion .list-style__content .item__content {
          padding-top: 24px; }
          .services-accordion .list-style__content .item__content .title {
            font-size: 36px; }
            .services-accordion .list-style__content .item__content .title::before, .services-accordion .list-style__content .item__content .title:after {
              right: 0; }
        .services-accordion .list-style__content .item.active .item__content {
          padding-top: 29px; }
        .services-accordion .list-style__content .item.active .digits {
          font-size: 150px; } }

.workers-for-project {
  overflow: hidden;
  box-sizing: border-box;
  margin: 0 0 var(--margin160); }
  .workers-for-project .list-style > .header.stroke span {
    color: #000; }
  .workers-for-project__list {
    padding-top: 10px;
    max-width: calc(100vw - (var(--outsideIndent) * 2)); }
    .workers-for-project__list .owl-stage-outer {
      overflow: visible; }
    .workers-for-project__list .owl-stage {
      display: flex;
      align-items: stretch; }
    .workers-for-project__list .item {
      width: 315px;
      flex-shrink: 0;
      border: 1px solid #000;
      padding: 30px 16px 30px 22px;
      box-sizing: border-box; }
      .workers-for-project__list .item .title {
        font-weight: 600;
        font-size: 16px;
        line-height: 22px; }
      .workers-for-project__list .item .position {
        font-size: 12px;
        line-height: 16px; }
      .workers-for-project__list .item .description {
        font-size: 14px;
        line-height: 20px;
        font-weight: 400; }
        .workers-for-project__list .item .description > *:last-child {
          margin-bottom: 0; }
    .workers-for-project__list .owl-item {
      display: flex;
      flex-direction: column; }
      .workers-for-project__list .owl-item .item {
        flex-grow: 1; }
    .workers-for-project__list:not(.owl-carousel) {
      display: flex;
      align-items: stretch; }
      .workers-for-project__list:not(.owl-carousel) .item + .item {
        margin-left: 10px; }
  @media only screen and (min-width: 768px) {
    .workers-for-project {
      margin: 0 0 60px; }
      .workers-for-project__list {
        padding-top: 30px; }
        .workers-for-project__list .item {
          width: 420px;
          padding: 30px 25px; }
        .workers-for-project__list:not(.owl-carousel) .item + .item {
          margin-left: 30px; } }
  @media only screen and (min-width: 1024px) {
    .workers-for-project__list {
      padding-top: 20px;
      max-width: calc(100vw - ((var(--outsideIndent) + var(--blueCell)) * 2)); } }

.another-offers .secondary-header3 {
  font-size: 36px;
  line-height: 32px;
  grid-column: 2 / span 4;
  margin-bottom: 30px;
  color: #000; }

.another-offers-list {
  margin: 0 0 var(--margin160);
  grid-column: 2 / span 4;
  position: relative; }
  .another-offers-list .vacancies {
    display: grid;
    grid-template-columns: repeat(1, 1fr);
    padding: 0 0 1px 1px;
    box-sizing: border-box; }
    .another-offers-list .vacancies.owl-carousel:not(.slides-1) ~ .another-offers-list__arrow {
      display: flex; }
  .another-offers-list .service {
    padding-top: 100%;
    position: relative;
    border: 1px solid #000;
    margin: 0 0 -1px -1px;
    background: #000; }
    .another-offers-list .service > * {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%; }
      .another-offers-list .service > * .service_image {
        width: 100%;
        height: 100%;
        object-fit: cover;
        background-repeat: repeat-x;
        background-size: 59.83% 54.15%;
        background-position: 0% 50%;
        animation: slideImage 2100s linear infinite; }
    .another-offers-list .service_text {
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      box-sizing: border-box;
      padding: 0 12px 12px;
      font-size: 14px;
      line-height: 18px;
      color: #fff;
      transition: color .3s;
      display: flex;
      align-items: flex-end; }
      .another-offers-list .service_text > a {
        display: flex;
        align-items: flex-end;
        width: 100%;
        height: 100%; }
  .another-offers-list .owl-dots {
    counter-reset: dots;
    display: flex;
    align-items: center;
    justify-content: space-between;
    margin-top: 12px; }
    .another-offers-list .owl-dots button {
      line-height: 15px;
      font-size: 12px; }
      .another-offers-list .owl-dots button::before {
        counter-increment: dots;
        content: counter(dots); }
      .another-offers-list .owl-dots button span {
        display: none; }
      .another-offers-list .owl-dots button + button {
        transform: translateX(4px); }
      .another-offers-list .owl-dots button:last-child {
        transform: none; }
  .another-offers-list[style*="100%"] .another-offers-list__arrow {
    left: calc(100% - 30px); }
    .another-offers-list[style*="100%"] .another-offers-list__arrow svg {
      transition-delay: .3s;
      transform: scaleX(-1); }
  .another-offers-list__arrow {
    display: none;
    width: 30px;
    height: 30px;
    align-items: center;
    justify-content: center;
    position: relative;
    left: var(--arrowLeft);
    margin-top: -6px;
    pointer-events: none;
    transition: left .3s linear; }
    .another-offers-list__arrow svg {
      width: 100%;
      height: 10px;
      transition: transform .1s; }

.another-offers .our-offers-list {
  margin-top: 15px; }
  .another-offers .our-offers-list .vacancies {
    display: flex;
    flex-direction: column; }
  .another-offers .our-offers-list a + a {
    margin-top: 5px; }
  .another-offers .our-offers-list .show-more {
    display: none;
    margin-left: calc(var(--outsideIndent) * -1);
    width: calc(100% + (var(--outsideIndent) * 2));
    padding: 14px var(--outsideIndent);
    box-sizing: border-box;
    border-style: solid;
    border-color: #000;
    border-width: 1px 0;
    margin-top: 20px;
    font-weight: 900;
    font-size: 24px;
    line-height: 32px;
    position: relative;
    text-transform: uppercase; }
    .another-offers .our-offers-list .show-more::before {
      content: attr(data-active-text);
      display: block;
      padding-right: var(--outsideIndent);
      box-sizing: border-box;
      width: 100%; }
    .another-offers .our-offers-list .show-more .arrow__item {
      fill: transparent;
      stroke: #000;
      width: 25px;
      height: 21px;
      position: absolute;
      top: 50%;
      right: var(--outsideIndent);
      transform: translateY(-50%) rotate(-90deg);
      transition: transform .3s;
      pointer-events: none; }

@media only screen and (max-width: 767px) {
  .another-offers-list {
    display: flex;
    flex-direction: column; }
  .another-offers .vacancies:not(.owl-carousel) .service + .service {
    display: none; }
  .another-offers .our-offers-list {
    order: 1; }
    .another-offers .our-offers-list a:nth-child(6) ~ .show-more {
      display: block; }
    .another-offers .our-offers-list:not(.active) a:nth-child(5) ~ a {
      display: none; }
    .another-offers .our-offers-list:not(.active) .show-more::before {
      content: attr(data-static-text); }
    .another-offers .our-offers-list:not(.active) .show-more .arrow__item {
      transform: translateY(-50%) rotate(90deg); } }

@media only screen and (min-width: 768px) {
  .another-offers .our-offers-list {
    margin-top: 33px; }
  .another-offers .secondary-header3 {
    grid-template-columns: repeat(3, 1fr);
    margin-bottom: 60px;
    font-size: 44px;
    line-height: 40px; }
  .another-offers-list {
    grid-template-columns: repeat(3, 1fr); }
    .another-offers-list .vacancies {
      grid-column: 3 / span 3;
      grid-template-columns: repeat(3, 1fr); } }

@media only screen and (min-width: 1024px) {
  .another-offers .our-offers-list {
    margin-top: 40px; }
  .another-offers .secondary-header3 {
    grid-column: 4 / span 3;
    margin-bottom: 90px;
    font-size: 64px;
    line-height: 56px; }
  .another-offers-list {
    grid-column: 4 / span 3;
    margin: 0 0 150px; }
    .another-offers-list .vacancies {
      grid-template-columns: repeat(2, 1fr); }
    .no-touch .another-offers-list .service {
      background: transparent; }
      .no-touch .another-offers-list .service_image {
        opacity: 0; }
      .no-touch .another-offers-list .service_text {
        color: #000;
        font-size: 16px;
        line-height: 24px; }
      .no-touch .another-offers-list .service:hover {
        background: #000; }
        .no-touch .another-offers-list .service:hover .service_image {
          opacity: 1; }
        .no-touch .another-offers-list .service:hover .service_text {
          color: #fff; } }

@media only screen and (min-width: 1281px) {
  .another-offers .vacancies {
    width: 80.7%;
    min-width: 690px;
    grid-template-columns: repeat(3, 1fr); } }

@keyframes slideImage {
  0% {
    background-position: 0% 50%; }
  100% {
    background-position: -200000% 50%; } }

.block-line {
  margin: 0 0 var(--margin160); }
  .block-line .list-style {
    grid-column: 2/  span 4; }
  .block-line__list {
    grid-column: 2 /  span 4;
    position: relative; }
    .block-line__list-item {
      position: relative; }
      .block-line__list-item .digits {
        font-weight: 900;
        font-size: 54px;
        line-height: 66px;
        position: relative;
        z-index: 1;
        margin-bottom: 5px;
        transition: color .3s; }
        .block-line__list-item .digits .clip-text {
          position: absolute;
          left: 0;
          top: 0;
          width: 100%;
          height: 100%;
          color: #000;
          font-size: inherit;
          letter-spacing: inherit;
          line-height: inherit;
          clip: rect(0px, auto, 0px, 0px);
          transition: clip .2s linear; }
      .block-line__list-item .title {
        font-weight: 700;
        font-size: 24px;
        line-height: 40px;
        max-width: 440px; }
      .block-line__list-item .description {
        margin-top: 10px;
        padding-top: 10px;
        border-top: 1px solid #000; }
        .block-line__list-item .description p {
          margin: 0; }
      .block-line__list-item + .block-line__list-item {
        margin-top: 30px; }
      .block-line__list-item.active .digits .clip-text {
        clip: rect(0px, auto, 200px, 0); }
      .block-line__list-item.active .digits::after {
        clip: rect(0px, auto, 40px, 0px); }
  @media only screen and (min-width: 768px) {
    .block-line {
      margin: 0 0 60px; }
      .block-line .list-style {
        grid-column: 2 /  span 2; }
      .block-line__list {
        grid-column: 3 /  span 3;
        margin-top: 30px; }
        .block-line__list::before {
          content: '';
          position: absolute;
          left: -60px;
          top: 40px;
          height: calc(100% - 73px);
          width: 1px;
          background: #000; }
        .block-line__list-item .digits {
          font-weight: 900;
          font-size: 88px;
          line-height: 107px; }
          .block-line__list-item .digits::before, .block-line__list-item .digits:after {
            content: '';
            display: block;
            width: 30px;
            height: 30px;
            border-radius: 50%;
            position: absolute;
            top: 40px;
            border: 1px solid #000;
            right: calc(100% + 44px); }
          .block-line__list-item .digits::before {
            background: #fff; }
          .block-line__list-item .digits::after {
            background: #000;
            clip: rect(0px, auto, 0px, 0px);
            transition: clip .2s linear; }
        .block-line__list-item .title {
          font-size: 36px; }
        .block-line__list-item .description {
          margin-top: 20px;
          padding-top: 20px; }
        .block-line__list-item:last-child::before {
          content: '';
          background: #fff;
          position: absolute;
          left: -65px;
          top: 40px;
          width: 10px;
          height: calc(100% - 13px); } }
  @media only screen and (min-width: 1024px) {
    .block-line .list-style {
      grid-column: 4 /  span 3;
      max-width: 85%; }
    .block-line__list {
      grid-column: 5 /  span 2;
      margin-top: 50px; }
      .block-line__list::before {
        left: -125px;
        top: 73px; }
      .block-line__list-item .digits {
        font-size: 150px;
        line-height: 183px;
        letter-spacing: 15px;
        margin-bottom: 0; }
        .block-line__list-item .digits::before, .block-line__list-item .digits::after {
          top: 73px;
          right: calc(100% + 108px); }
      .block-line__list-item:last-child::before {
        left: -130px;
        top: 73px; }
      .block-line__list-item + .block-line__list-item {
        margin-top: 60px; } }

.link-to-brief {
  border: 1px solid #000;
  margin: 0 0 var(--margin160);
  grid-column: content;
  box-sizing: border-box;
  --width: 93px;
  --height: 80px;
  padding: 44px; }
  .link-to-brief__content .title {
    margin-bottom: 20px;
    display: block;
    text-transform: uppercase;
    font-weight: 900; }
  .link-to-brief__content .desc {
    font-weight: 600;
    font-size: 16px;
    line-height: 22px;
    display: block; }
  .link-to-brief .arrow {
    position: relative;
    width: var(--width);
    height: var(--height);
    margin: 40px auto 0; }
    .link-to-brief .arrow__item {
      width: 100%;
      height: 100%; }
      .link-to-brief .arrow__item.white {
        fill: transparent;
        stroke: #000;
        stroke-width: 1; }
      .link-to-brief .arrow__item.clip {
        position: absolute;
        left: 0;
        top: 0;
        clip: rect(0px, 0, auto, 0px);
        transition: clip .5s; }
  @media only screen and (min-width: 768px) {
    .link-to-brief {
      display: flex;
      align-items: center;
      flex-wrap: wrap;
      padding: 50px 55px;
      --width: 150px;
      --height: 128px; }
      .link-to-brief__content {
        width: calc(100% - var(--width)); }
        .link-to-brief__content > * {
          min-width: 360px;
          width: 59%; }
      .link-to-brief .arrow {
        margin: 0; } }
  @media only screen and (min-width: 1024px) {
    .link-to-brief__content .title {
      margin-bottom: 30px; }
    .link-to-brief:hover .arrow {
      fill: #000; }
      .link-to-brief:hover .arrow__item.clip {
        clip: rect(0px, var(--width), auto, 0px); } }
  @media only screen and (min-width: 1281px) {
    .link-to-brief {
      padding: 85px 95px;
      --width: 200px;
      --height: 172px; } }

.list-style {
  grid-column: content; }
  .list-style.list-style-3 > .header {
    max-width: 920px; }
  .list-style .header {
    font-size: 36px;
    font-weight: 900;
    text-transform: uppercase;
    line-height: 32px;
    margin-bottom: 30px; }
    @media only screen and (min-width: 1024px) {
      .list-style .header {
        font-size: 64px;
        line-height: 56px;
        margin-bottom: 40px; } }
  .list-style .items .item:before {
    content: ""; }
  @media only screen and (min-width: 1024px) {
    .list-style .items .item {
      display: grid;
      grid-template-columns: var(--contentCell) var(--contentCell) var(--contentCell);
      grid-template-rows: max-content min-content;
      margin-bottom: 50px;
      padding-bottom: 20px; }
      .list-style .items .item:not(:last-child) {
        border-bottom: 1px solid black; } }
  .list-style .items .item .digits {
    grid-column: 1 / 2;
    font-size: 54px;
    font-weight: 800;
    line-height: 0.89; }
    @media only screen and (min-width: 1024px) {
      .list-style .items .item .digits {
        grid-column: 1 / 2;
        grid-row: 1 / 2;
        font-size: 150px; } }
  .list-style .items .item .title {
    font-size: 24px;
    line-height: 1;
    font-weight: bold;
    border-bottom: 1px solid black;
    padding-bottom: 10px;
    margin-bottom: 10px; }
    @media only screen and (min-width: 1024px) {
      .list-style .items .item .title {
        grid-column: 1 / 2;
        grid-row: 2 / 3;
        border-bottom: none; } }
    @media only screen and (min-width: 1440px) {
      .list-style .items .item .title {
        font-size: 36px; } }
  .list-style .items .item .description p {
    margin-top: 0; }
  @media only screen and (min-width: 1024px) {
    .list-style .items .item .description {
      grid-column: 2 / 4;
      grid-row: 1 / span2;
      margin-left: 30px; } }
  .list-style.list-style-2 {
    margin-top: 30px; }
    @media only screen and (min-width: 1024px) {
      .list-style.list-style-2 {
        grid-column: content-1 / content-end; } }
  .list-style.list-style-3 .header {
    margin-bottom: 30px; }
    @media only screen and (min-width: 1024px) {
      .list-style.list-style-3 .header {
        margin-bottom: 60px; } }
  .list-style.list-style-3 .items .item {
    padding: 1.25em 0; }
    .list-style.list-style-3 .items .item:first-child {
      border-top: 1px solid black; }
    .list-style.list-style-3 .items .item:last-child {
      border-bottom: 1px solid black; }
    @media only screen and (min-width: 1024px) {
      .list-style.list-style-3 .items .item {
        grid-template-columns: 1fr 1fr;
        padding: 1.8em 0; } }
    .list-style.list-style-3 .items .item .digits {
      grid-column: 1 / 2;
      margin-bottom: 10px; }
      @media only screen and (min-width: 1024px) {
        .list-style.list-style-3 .items .item .digits {
          grid-row: 1 / 3;
          font-size: 150px;
          margin-bottom: 16px; } }
    .list-style.list-style-3 .items .item .accordion_js {
      grid-column: 2 / 3;
      margin-bottom: 0; }
      .list-style.list-style-3 .items .item .accordion_js .title {
        position: relative;
        padding-right: 100px;
        border: none;
        grid-row: 1 / 2; }
        .list-style.list-style-3 .items .item .accordion_js .title i {
          position: absolute;
          width: 30px;
          height: 30px;
          right: 0;
          top: 0;
          transition: transform 0.5s; }
          .list-style.list-style-3 .items .item .accordion_js .title i:before {
            width: 30px;
            height: 1px;
            top: 50%;
            transition: width 0.5s;
            content: '';
            background-color: #000;
            position: absolute; }
          .list-style.list-style-3 .items .item .accordion_js .title i:after {
            width: 1px;
            height: 30px;
            left: 50%;
            content: '';
            background-color: #000;
            position: absolute; }
        .list-style.list-style-3 .items .item .accordion_js .title.active i::after {
          width: 0; }
      .list-style.list-style-3 .items .item .accordion_js .content {
        grid-row: 2 / 3; }
        @media only screen and (min-width: 1024px) {
          .list-style.list-style-3 .items .item .accordion_js .content .description {
            margin-left: 0; } }

.page-node-type-service .text {
  grid-column: content;
  margin-bottom: 50px;
  line-height: 22px;
  font-weight: 600; }
  @media only screen and (min-width: 1024px) {
    .page-node-type-service .text {
      margin-bottom: 120px;
      grid-column: content-start / content-center; } }
  @media only screen and (min-width: 1024px) {
    .page-node-type-service .text .stroke h2 {
      font-size: 64px;
      line-height: 56px;
      font-weight: 900; } }

.page-node-type-service .image {
  grid-column: content;
  margin-bottom: 60px; }
  @media only screen and (min-width: 1024px) {
    .page-node-type-service .image {
      grid-column: content-1 / content-end;
      margin-bottom: 120px; } }

.style-1-text ul,
.text ul {
  list-style-type: none;
  line-height: 22px;
  font-weight: 600; }
  .style-1-text ul li,
  .text ul li {
    position: relative;
    margin-left: 20px;
    margin-bottom: 25px; }
    .style-1-text ul li:last-child,
    .text ul li:last-child {
      margin-bottom: 0; }
    .style-1-text ul li:before,
    .text ul li:before {
      content: '';
      border-bottom: 2px solid black;
      height: 0;
      width: 35px;
      position: absolute;
      left: -60px;
      top: 11px; }

.style-1-text ol li,
.text ol li {
  margin-bottom: 25px; }
  .style-1-text ol li:last-child,
  .text ol li:last-child {
    margin-bottom: 0; }

.local-video video {
  width: 100%;
  height: auto;
  margin-bottom: var(--margin30);
  grid-column: content; }
  @media only screen and (min-width: 1024px) {
    .local-video video {
      grid-column: content-1 / content-end; } }

.brander-form .description {
  grid-column: 2 / span 4;
  max-width: 420px;
  font-size: .875rem;
  line-height: 1.4;
  text-transform: uppercase;
  font-weight: bold; }

.form-content,
.header,
.brif-default-form {
  grid-column: content; }

@media only screen and (min-width: 1024px) {
  .form-content,
  .header {
    grid-column: content-start / content-center; }
    .form-content.content-width,
    .header.content-width {
      grid-column: content; } }

.header-style1 {
  margin-bottom: 80px; }
  @media only screen and (min-width: 1024px) {
    .header-style1 {
      margin-bottom: 120px; } }
  .style-2 .header-style1 {
    margin-bottom: 30px; }

.brif-default-form {
  margin-bottom: 90px; }
  @media only screen and (min-width: 1024px) {
    .brif-default-form {
      grid-column: content-center / content-end; } }
  .brif-default-form__button {
    display: flex;
    flex-direction: column; }
    @media only screen and (min-width: 1024px) {
      .brif-default-form__button {
        max-width: 430px;
        margin: 0 auto;
        border-top: var(--border);
        border-bottom: var(--border);
        padding: 40px;
        margin-top: 41px;
        max-height: 150px;
        position: sticky;
        top: calc(50% - 93px);
        margin-bottom: 42px; } }
  .brif-default-form .description {
    margin-bottom: 25px; }
  .brif-default-form .button {
    margin: 0;
    padding: 0 20px; }

.pagination {
  max-width: 100vw;
  margin-bottom: 80px;
  overflow-x: hidden; }
  .pagination__list {
    margin: 0;
    display: flex;
    align-items: center;
    grid-column: content-start/content-end; }
    @media only screen and (min-width: 640px) {
      .pagination__list {
        grid-column: content-1/content-end; } }
  .pagination__item {
    height: 70px;
    font: bold 14px/1.25 "ProximaNova";
    flex-shrink: 0;
    color: #000;
    background: #fff;
    display: flex;
    align-items: center;
    justify-content: center; }
    .pagination__item--active {
      background: #000;
      color: #fff; }
    .pagination__item {
      width: 70px; }
    .pagination__item--next, .pagination__item--prev {
      text-transform: uppercase;
      width: auto;
      display: none; }
      @media only screen and (min-width: 640px) {
        .pagination__item--next, .pagination__item--prev {
          display: flex; } }
    .pagination__item--prev {
      margin-right: auto; }
    .pagination__item--next {
      margin-left: auto;
      margin-left: auto; }
      @media only screen and (min-width: 640px) {
        .pagination__item--next {
          display: flex;
          padding-left: 15px; } }
    .pagination__item:last-child {
      text-transform: uppercase; }
    .pagination__item a {
      display: block;
      text-align: center; }
  @media only screen and (min-width: 640px) {
    .pagination {
      margin-bottom: 180px; } }
  @media only screen and (min-width: 1024px) {
    .pagination {
      margin-bottom: 220px; } }

.pager {
  margin-bottom: 80px; }
  @media only screen and (min-width: 640px) {
    .pager {
      margin-bottom: 180px; } }
  @media only screen and (min-width: 1024px) {
    .pager {
      margin-bottom: 220px; } }
  .pager__nav {
    grid-column: content-start/content-end;
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end; }
  .pager__holder {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    min-width: 236px;
    padding: 10px 0;
    border-top: 1px solid #000; }
    @media only screen and (min-width: 640px) {
      .pager__holder {
        min-width: 354px; } }
    @media only screen and (min-width: 1024px) {
      .pager__holder {
        min-width: 570px; } }
  .pager__numbers {
    display: flex;
    flex-wrap: wrap; }
  .pager__number {
    display: inline-block;
    vertical-align: middle;
    -webkit-text-stroke: 1px #000;
    text-stroke: 1px #000;
    color: transparent;
    line-height: 1;
    font-size: 32px;
    font-weight: 900; }
    @media only screen and (min-width: 640px) {
      .pager__number {
        font-size: 44px;
        line-height: 0.9; } }
    @media only screen and (min-width: 1024px) {
      .pager__number {
        font-size: 64px; } }
    .pager__number--current {
      position: relative;
      margin-right: 26px;
      color: #000; }
      @media only screen and (min-width: 640px) {
        .pager__number--current {
          margin-right: 42px; } }
      @media only screen and (min-width: 1024px) {
        .pager__number--current {
          margin-right: 51px; } }
      .pager__number--current::after {
        content: '';
        top: 2px;
        bottom: 2px;
        transform: rotate(35deg);
        width: 1px;
        background-color: #000;
        position: absolute;
        right: -13px;
        font-weight: 300; }
        @media only screen and (min-width: 640px) {
          .pager__number--current::after {
            right: -20px; } }
        @media only screen and (min-width: 1024px) {
          .pager__number--current::after {
            right: -26px; } }
  .pager__arrow {
    display: inline-block;
    vertical-align: middle; }
    .pager__arrow:hover svg {
      fill: #000; }
    .pager__arrow--prev {
      margin-right: 10px; }
      .pager__arrow--prev svg {
        transform: scale(-1, 1); }
    .pager__arrow svg {
      width: 33px;
      height: 28px;
      fill: #fff;
      stroke: #000;
      transition: fill 0.3s; }
      @media only screen and (min-width: 640px) {
        .pager__arrow svg {
          width: 44px;
          height: 38px; } }
      @media only screen and (min-width: 1024px) {
        .pager__arrow svg {
          width: 60px;
          height: 52px; } }

.breadcrumbs {
  padding: 0;
  list-style: none;
  margin: 0 0 40px;
  display: flex;
  flex-wrap: wrap;
  font-size: 12px; }
  .breadcrumbs .breadcrumbs__item {
    position: relative; }
    .breadcrumbs .breadcrumbs__item:not(:last-of-type) {
      padding-right: 15px;
      margin-right: 10px; }
      .breadcrumbs .breadcrumbs__item:not(:last-of-type):before {
        position: absolute;
        transform: translateY(-50%);
        top: 50%;
        right: 0;
        content: '';
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 3px 0 3px 5px;
        border-color: transparent transparent transparent #000; }
  .breadcrumbs .breadcrumbs--sm {
    margin: 0 0 20px; }

.bradcrumbs-look1 .breadcrumbs-wrapper {
  grid-column: content-start / content-end; }

.heading-component1 {
  margin-bottom: 5px; }
  @media only screen and (min-width: 640px) {
    .heading-component1 {
      margin-bottom: 20px; } }
  @media only screen and (min-width: 1024px) {
    .heading-component1 {
      margin-bottom: 5px; } }
  .heading-component1 .title {
    grid-column: content-start / content-end;
    margin-bottom: 40px; }
    @media only screen and (min-width: 640px) {
      .heading-component1 .title {
        grid-row: 1;
        align-self: center;
        margin-bottom: 0; } }
    @media only screen and (min-width: 1024px) {
      .heading-component1 .title {
        height: 1.84em;
        grid-column: 3 / span 2;
        padding-bottom: calc(100% - 3.5em); } }
    @media only screen and (min-width: 1200px) {
      .heading-component1 .title {
        padding-bottom: calc(100% - 3.8em); } }
    .heading-component1 .title:before {
      content: '';
      display: block;
      position: static;
      grid-column: 2 / span 4;
      background-color: #000;
      height: 5px;
      width: 100%;
      margin: 10px 0;
      transition: width 0.6s; }
    .heading-component1 .title .title-inner {
      width: 60%;
      word-break: break-all; }
      @media only screen and (min-width: 640px) {
        .heading-component1 .title .title-inner {
          position: relative;
          z-index: 1;
          word-break: unset; } }
  .heading-component1 .captions-list {
    grid-column: content-start / content-end;
    font-size: 12px;
    line-height: 1.33;
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    position: relative; }
    @media only screen and (min-width: 640px) {
      .heading-component1 .captions-list {
        margin-top: 50px; } }
    @media only screen and (min-width: 1024px) {
      .heading-component1 .captions-list {
        grid-column: 3 / span 2;
        margin-top: 0; } }
    .heading-component1 .captions-list:after {
      content: '';
      display: block;
      position: static;
      grid-column: 2 / span 4;
      background-color: #000;
      height: 5px;
      width: 100%;
      margin: 10px 0;
      transition: width 0.6s; }
    .heading-component1 .captions-list .inner {
      position: absolute;
      bottom: 25px; }
      @media only screen and (min-width: 640px) {
        .heading-component1 .captions-list .inner {
          position: static; } }
    .heading-component1 .captions-list span {
      display: block; }
  .heading-component1 .pic {
    grid-row: 2;
    grid-column: 4 / span 2; }
    @media only screen and (min-width: 640px) {
      .heading-component1 .pic {
        grid-row: 1; } }
    @media only screen and (min-width: 768px) {
      .heading-component1 .pic {
        position: relative;
        display: flex;
        align-items: center; } }
    @media only screen and (min-width: 1024px) {
      .heading-component1 .pic {
        grid-column: 5 / span 2;
        grid-row: 1 / span 2; } }
  .heading-component1 .pic-inner {
    width: 100%;
    display: block;
    pointer-events: none;
    position: relative; }
    @media only screen and (min-width: 1024px) {
      .heading-component1 .pic-inner {
        position: absolute; } }
  .heading-component1 img {
    display: block;
    width: 100%;
    position: relative; }
    @media only screen and (min-width: 768px) {
      .heading-component1 img {
        transition: opacity 0.01s;
        will-change: opacity; } }

.heading-component2 {
  position: relative;
  margin-bottom: 30px; }
  .heading-component2 .header {
    grid-column: content-start / content-end;
    word-break: break-all; }
    @media only screen and (min-width: 640px) {
      .heading-component2 .header {
        word-break: unset; } }
    @media only screen and (min-width: 1024px) {
      .heading-component2 .header {
        grid-column: 3 / span 2;
        min-height: 85px; } }
  .heading-component2 .header-style1 {
    margin-bottom: 0;
    z-index: 100; }

.form-popup-block {
  --indent: 100px;
  margin-bottom: var(--indent); }
  .form-popup-block .first-screen,
  .form-popup-block .success-screen {
    grid-column: content;
    background: #000;
    color: #fff; }
    .form-popup-block .first-screen .stroke,
    .form-popup-block .success-screen .stroke {
      -webkit-text-stroke: 1px #fff;
      text-stroke: 1px #fff; }
  .form-popup-block .first-screen {
    --buttonSize: 110px;
    padding: 30px;
    font-size: 36px;
    font-weight: 900;
    line-height: 32px;
    text-transform: uppercase;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr;
    row-gap: 20px; }
    .form-popup-block .first-screen .link {
      position: relative;
      width: var(--buttonSize);
      height: var(--buttonSize);
      border-radius: 50%;
      background: #fff;
      color: #000;
      margin-left: auto; }
      .form-popup-block .first-screen .link img {
        position: absolute;
        left: 50%;
        top: 50%;
        width: 88.42%;
        object-fit: contain;
        height: 92.11%;
        transform: translate(-50%, -50%);
        animation: rotate 10s linear infinite; }
      .form-popup-block .first-screen .link svg {
        width: 35.26%;
        height: 31.05%;
        position: absolute;
        left: 50%;
        top: 50%;
        transform: translate(-50%, -50%); }
  .form-popup-block .success-screen {
    padding: 67px 30px;
    display: none;
    align-items: center;
    column-gap: 1fr;
    row-gap: 20px; }
    .form-popup-block .success-screen .title {
      font-size: 36px;
      font-weight: 900;
      line-height: 32px;
      text-transform: uppercase; }
    .form-popup-block .success-screen .descriptions {
      font-size: 16px;
      font-weight: 700;
      line-height: 1.37; }
  .form-popup-block.sended .success-screen {
    display: grid; }
  .form-popup-block.sended .first-screen {
    display: none; }
  @media only screen and (min-width: 768px) {
    .form-popup-block {
      --indent: 120px; }
      .form-popup-block .first-screen {
        --buttonSize: 130px;
        padding: 55px 65px 55px 60px;
        font-size: 44px;
        line-height: 40px;
        grid-template-columns: 1fr var(--buttonSize);
        column-gap: 12px; }
      .form-popup-block .success-screen {
        padding: 75px 60px;
        grid-template-columns: 58.5% 1fr; }
        .form-popup-block .success-screen .title {
          font-size: 44px;
          line-height: 40px; }
        .form-popup-block .success-screen .descriptions {
          font-size: 14px;
          line-height: 1.28; } }
  @media only screen and (min-width: 1024px) {
    .form-popup-block {
      --indent: 180px; }
      .form-popup-block .first-screen {
        --buttonSize: 190px;
        padding: 89px 100px;
        font-size: 64px;
        line-height: 56px;
        column-gap: 30px; }
        .form-popup-block .first-screen__content {
          max-width: 79.17%; }
      .form-popup-block .success-screen {
        padding: 128px 100px;
        column-gap: 8px;
        grid-template-columns: 55.32% 1fr; }
        .form-popup-block .success-screen .title {
          font-size: 64px;
          line-height: 56px; }
        .form-popup-block .success-screen .descriptions {
          font-size: 16px;
          line-height: 1.37; } }

@keyframes rotate {
  from {
    transform: translate(-50%, -50%) rotate(0deg); }
  to {
    transform: translate(-50%, -50%) rotate(360deg); } }

.video-banner {
  padding-top: 164px;
  margin-bottom: 180px; }
  .video-banner__wrapper {
    position: relative;
    grid-column: content;
    display: flex;
    flex-direction: column;
    justify-content: center; }
    @media (min-width: 0px) {
      .video-banner__wrapper {
        min-height: unset; } }
    @media only screen and (min-width: 768px) {
      .video-banner__wrapper {
        min-height: 374px; } }
    @media only screen and (min-width: 1024px) {
      .video-banner__wrapper {
        min-height: 600px; } }
  .video-banner__bottom {
    position: relative;
    z-index: 1; }
  .video-banner .breadcrumbs {
    margin-bottom: 15px; }
    .video-banner .breadcrumbs-wrapper {
      position: relative;
      z-index: 1; }
  .video-banner .image {
    display: grid;
    grid-template-columns: repeat(4, var(--contentCell));
    grid-template-rows: 100%;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%; }
    @media screen and (max-width: 768px) {
      .video-banner .image {
        position: relative;
        order: 1;
        margin-top: 40px; } }
    .video-banner .image__inner {
      max-height: 100%;
      grid-column: 2 / 5; }
      @media screen and (max-width: 768px) {
        .video-banner .image__inner {
          grid-column: 1 / 5; } }
      .video-banner .image__inner img {
        height: 100%;
        width: 100%;
        object-fit: cover; }
  .video-banner .main-header {
    margin-bottom: 0; }
  .video-banner .descriptions {
    margin-top: 15px;
    font-size: 16px;
    font-weight: 400;
    line-height: 1.25; }
    @media screen and (max-width: 768px) {
      .video-banner .descriptions p {
        margin-bottom: 0px; } }
  @media (min-width: 0px) {
    .video-banner {
      padding-top: calc(74px + 120px);
      margin-bottom: 120px; } }
  @media only screen and (min-width: 768px) {
    .video-banner {
      padding-top: calc(74px + 80px);
      margin-bottom: 120px; }
      .video-banner .descriptions {
        max-width: 531px; } }
  @media only screen and (min-width: 1024px) {
    .video-banner {
      padding-top: 164px;
      margin-bottom: 180px; }
      .video-banner .descriptions {
        max-width: 570px; } }

.benefits__wrapper {
  grid-column: content-start / content-end; }
  .benefits__wrapper .item {
    border: 1px solid #000;
    padding: 25px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    min-height: 380px;
    box-sizing: border-box;
    position: relative;
    transition: color 1s ease; }
    .benefits__wrapper .item + .item {
      margin-left: -1px; }
    @media screen and (max-width: 1023px) {
      .benefits__wrapper .item {
        min-height: 178px;
        padding: unset;
        border: unset; }
        .benefits__wrapper .item:first-child {
          padding-bottom: 30px; }
        .benefits__wrapper .item:last-child {
          padding-top: 30px; }
        .benefits__wrapper .item:not(:last-child) {
          border-bottom: 1px solid #000; }
        .benefits__wrapper .item:not(:first-child):not(:last-child) {
          padding: 30px 0; }
        .benefits__wrapper .item + .item {
          margin-left: 0; } }
    .benefits__wrapper .items {
      display: grid;
      grid-template-columns: repeat(3, calc(100% / 3)); }
      @media screen and (max-width: 1023px) {
        .benefits__wrapper .items {
          grid-template-columns: repeat(1, calc(100% / 1)); } }
    @media (hover: hover) and (min-width: 1024px) {
      .benefits__wrapper .item:hover {
        color: #fff; }
        .benefits__wrapper .item:hover .image {
          clip-path: ellipse(100% 100% at center); } }
    .benefits__wrapper .item .image {
      top: 0;
      left: 0;
      position: absolute;
      height: 100%;
      width: 100%;
      clip-path: ellipse(0px 0px at center);
      transition: clip-path 1s ease; }
      @media screen and (max-width: 1023px) {
        .benefits__wrapper .item .image {
          display: none; } }
      .benefits__wrapper .item .image img {
        width: 100%;
        height: 100%;
        object-fit: cover;
        object-position: center;
        position: absolute;
        top: 0;
        left: 0; }
    .benefits__wrapper .item .count_wrapper, .benefits__wrapper .item .solution {
      position: relative;
      z-index: 1; }
    .benefits__wrapper .item .count_wrapper .count {
      font-size: 72px;
      font-style: normal;
      font-weight: 900;
      line-height: 72px;
      /* 100% */
      text-transform: uppercase;
      margin-bottom: 15px; }
      @media screen and (max-width: 1023px) {
        .benefits__wrapper .item .count_wrapper .count {
          font-size: 36px;
          font-style: normal;
          font-weight: 900;
          line-height: 32px;
          /* 88.889% */
          text-transform: uppercase; } }
    .benefits__wrapper .item .count_wrapper .text {
      font-size: 20px;
      font-style: normal;
      font-weight: 700;
      line-height: 24px;
      /* 120% */
      text-transform: uppercase; }
      @media screen and (max-width: 1023px) {
        .benefits__wrapper .item .count_wrapper .text {
          font-size: 16px;
          font-style: normal;
          font-weight: 700;
          line-height: normal;
          text-transform: uppercase; } }
    @media screen and (max-width: 1023px) {
      .benefits__wrapper .item .solution {
        display: grid;
        margin-top: 30px;
        grid-template-columns: repeat(2, calc(100% / 2)); } }
    .benefits__wrapper .item .solution .title {
      font-size: 20px;
      font-style: normal;
      font-weight: 700;
      line-height: 24px;
      /* 120% */
      margin-bottom: 15px; }
      @media screen and (max-width: 1023px) {
        .benefits__wrapper .item .solution .title {
          font-size: 16px;
          font-style: normal;
          font-weight: 700;
          line-height: 20px;
          /* 125% */
          margin-bottom: unset;
          padding-right: 10px; } }
    .benefits__wrapper .item .solution .text, .benefits__wrapper .item .solution .text p {
      font-size: 16px;
      font-style: normal;
      font-weight: 400;
      line-height: 20px;
      /* 125% */
      margin: unset; }
      @media screen and (max-width: 1023px) {
        .benefits__wrapper .item .solution .text, .benefits__wrapper .item .solution .text p {
          font-size: 14px;
          font-style: normal;
          font-weight: 400;
          line-height: 18px;
          /* 128.571% */
          padding-left: 10px; } }

.double-list {
  margin-top: 180px; }
  @media screen and (max-width: 1023px) {
    .double-list {
      margin-top: 100px; } }
  .double-list .header {
    padding-right: 60px; }
    .double-list .header span {
      position: sticky;
      top: 80px; }
    @media only screen and (min-width: 1024px) {
      .double-list .header {
        margin-bottom: 80px; } }
    @media only screen and (min-width: 1200px) {
      .double-list .header {
        margin-bottom: 5px; } }
    @media screen and (min-width: 1760px) {
      .double-list .header {
        margin-bottom: 45px; } }
    @media only screen and (max-width: 1023px) {
      .double-list .header {
        grid-column: content-start / content-end;
        margin-bottom: 30px; }
        .double-list .header span {
          position: static;
          top: 0px; } }
  .double-list .item:first-child {
    padding-bottom: 30px; }
  .double-list .item:last-child {
    padding-top: 30px; }
  .double-list .item:not(:last-child) {
    border-bottom: 1px solid #000; }
  .double-list .item:not(:first-child):not(:last-child) {
    padding: 30px 0; }
  .double-list .item .title {
    font-size: 36px;
    font-style: normal;
    font-weight: 700;
    line-height: 40px;
    /* 111.111% */
    margin-bottom: 15px; }
    @media screen and (max-width: 1023px) {
      .double-list .item .title {
        font-size: 24px;
        font-style: normal;
        font-weight: 700;
        line-height: 28px;
        /* 116.667% */
        margin-bottom: 10px; } }
  .double-list .item .description {
    font-size: 16px;
    font-style: normal;
    font-weight: 600;
    line-height: 22px;
    /* 137.5% */ }
    @media screen and (max-width: 1023px) {
      .double-list .item .description {
        font-size: 16px;
        font-style: normal;
        font-weight: 600;
        line-height: 22px;
        /* 137.5% */ } }
  .double-list .items {
    grid-column: content-center / content-end; }
    @media screen and (max-width: 1023px) {
      .double-list .items {
        grid-column: content-start / content-end; } }

.retail-solutions {
  margin-top: 180px;
  --header-height: 64px; }
  @media screen and (max-width: 1023px) {
    .retail-solutions {
      margin-top: 100px; } }
  .retail-solutions .lower {
    grid-column: content-start / content-center;
    font-size: 14px;
    font-style: normal;
    font-weight: 400;
    line-height: 18px; }
    @media screen and (max-width: 1023px) {
      .retail-solutions .lower {
        grid-column: content-start / content-end;
        margin-bottom: 15px; } }
  .retail-solutions .main-header {
    grid-column: content-center / content-end;
    margin: unset; }
    @media screen and (max-width: 1023px) {
      .retail-solutions .main-header {
        grid-column: content-start / content-end; } }
  .retail-solutions .content {
    margin-top: 60px;
    grid-column: start / end;
    display: grid; }
    @media screen and (max-width: 1023px) {
      .retail-solutions .content {
        margin-top: 30px; } }
  .retail-solutions .images {
    position: sticky;
    top: var(--header-height);
    height: calc(100vh - var(--header-height));
    width: 100%;
    grid-column: content-center / end; }
    @media screen and (max-width: 1023px) {
      .retail-solutions .images {
        display: none; } }
    .retail-solutions .images img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      object-position: center;
      position: absolute;
      top: 0;
      left: 0;
      transition: opacity .3s ease; }
      .retail-solutions .images img.visible {
        opacity: 1; }
        .retail-solutions .images img.visible ~ img:not(.visible) {
          opacity: 0; }
  .retail-solutions .items {
    display: flex;
    flex-direction: column;
    grid-column: content-start / content-center; }
    @media screen and (max-width: 1023px) {
      .retail-solutions .items {
        grid-column: content-start / content-end; } }
    .retail-solutions .items .info {
      display: flex;
      flex-direction: column;
      min-height: 100vh; }
      .retail-solutions .items .info .button {
        min-height: 60px; }
        .retail-solutions .items .info .button a {
          height: 100%;
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          text-align: center; }
      .retail-solutions .items .info .image {
        display: none;
        margin-bottom: 30px;
        min-height: 350px;
        max-height: 350px;
        object-fit: cover;
        object-position: center; }
        @media screen and (max-width: 1023px) {
          .retail-solutions .items .info .image {
            display: block; } }
      @media screen and (max-width: 1023px) {
        .retail-solutions .items .info {
          min-height: unset; } }
      .retail-solutions .items .info-wrapper {
        padding-right: 60px;
        display: flex;
        flex-direction: column; }
        @media screen and (max-width: 1023px) {
          .retail-solutions .items .info-wrapper {
            padding-right: unset; } }
      .retail-solutions .items .info .top {
        display: flex;
        margin-bottom: 20px; }
        .retail-solutions .items .info .top .title {
          margin: unset; }
        .retail-solutions .items .info .top .count {
          padding-left: 20px;
          font-size: 16px;
          font-style: normal;
          font-weight: 600;
          line-height: 22px;
          /* 137.5% */ }
          @media screen and (max-width: 1023px) {
            .retail-solutions .items .info .top .count {
              font-size: 14px;
              font-style: normal;
              font-weight: 600;
              line-height: 18px;
              /* 128.571% */ } }
      .retail-solutions .items .info .text-wrapper {
        padding-right: 20px; }
        .retail-solutions .items .info .text-wrapper .text {
          font-size: 16px;
          font-style: normal;
          font-weight: 600;
          line-height: 22px;
          /* 137.5% */ }
          .retail-solutions .items .info .text-wrapper .text ul {
            padding-left: 24px; }
            .retail-solutions .items .info .text-wrapper .text ul li {
              margin-left: 0; }
              .retail-solutions .items .info .text-wrapper .text ul li::before {
                width: 5px;
                height: 5px;
                top: 8px;
                left: -15px;
                border: none;
                background: #000; }
              .retail-solutions .items .info .text-wrapper .text ul li:not(:last-child) {
                margin-bottom: 10px; }
                @media only screen and (min-width: 768px) {
                  .retail-solutions .items .info .text-wrapper .text ul li:not(:last-child) {
                    margin-bottom: 12px; } }
                @media only screen and (min-width: 1024px) {
                  .retail-solutions .items .info .text-wrapper .text ul li:not(:last-child) {
                    margin-bottom: 16px; } }
      .retail-solutions .items .info .button {
        margin: 20px 0 0; }
        @media only screen and (min-width: 768px) {
          .retail-solutions .items .info .button {
            margin: 24px 0 0; } }
        @media only screen and (min-width: 1024px) {
          .retail-solutions .items .info .button {
            max-width: 280px; } }
      .retail-solutions .items .info:last-child .info-wrapper {
        padding-bottom: 60px; }
        @media only screen and (min-width: 1024px) {
          .retail-solutions .items .info:last-child .info-wrapper {
            padding-bottom: 180px; } }
      .retail-solutions .items .info + .info {
        margin-top: calc(100vh - 60px); }
        @media screen and (max-width: 1023px) {
          .retail-solutions .items .info + .info {
            margin-top: 30px; } }
      .retail-solutions .items .info:not(:first-of-type) .info-wrapper {
        position: sticky;
        top: var(--header-height); }
        @media screen and (max-width: 1023px) {
          .retail-solutions .items .info:not(:first-of-type) .info-wrapper {
            position: relative;
            top: unset; } }
      .retail-solutions .items .info:first-of-type {
        justify-content: space-between; }
        .retail-solutions .items .info:first-of-type .info-wrapper {
          height: 100%; }
        .retail-solutions .items .info:first-of-type .top {
          position: sticky;
          top: var(--header-height); }
          @media screen and (max-width: 1023px) {
            .retail-solutions .items .info:first-of-type .top {
              position: relative;
              top: unset; } }
          .retail-solutions .items .info:first-of-type .top-wrapper {
            height: 100%; }
            @media screen and (max-width: 1023px) {
              .retail-solutions .items .info:first-of-type .top-wrapper {
                height: unset; } }

.retail-solutions-slider {
  padding: 180px 0;
  background-color: #000;
  margin-bottom: 180px;
  color: #fff; }
  @media screen and (max-width: 1023px) {
    .retail-solutions-slider {
      overflow: hidden; } }
  .retail-solutions-slider button {
    color: #fff; }
  @media screen and (max-width: 1023px) {
    .retail-solutions-slider {
      padding: 100px 0;
      margin-bottom: 100px; } }
  .retail-solutions-slider__title {
    grid-column: content-start / content-end;
    margin-bottom: 60px; }
    @media screen and (max-width: 1023px) {
      .retail-solutions-slider__title {
        margin-bottom: 30px; } }
  .retail-solutions-slider .applications-block {
    margin-top: 60px; }
    .retail-solutions-slider .applications-block .swiper {
      margin-left: auto;
      margin-right: auto;
      position: relative;
      list-style: none;
      padding: 0;
      overflow: hidden;
      z-index: 1;
      display: block; }
      @media screen and (max-width: 1023px) {
        .retail-solutions-slider .applications-block .swiper {
          overflow: unset; } }
    .retail-solutions-slider .applications-block .swiper-horizontal {
      touch-action: pan-y; }
    .retail-solutions-slider .applications-block .swiper {
      width: 100%;
      height: fit-content; }
    .retail-solutions-slider .applications-block .swiper-slide {
      flex-shrink: 0;
      width: 100%;
      height: fit-content;
      position: relative;
      transition-property: transform;
      display: block; }
    .retail-solutions-slider .applications-block .swiper-wrapper {
      position: relative;
      width: 100%;
      height: fit-content;
      z-index: 1;
      display: flex;
      transition-property: transform;
      transition-timing-function: var(--swiper-wrapper-transition-timing-function, initial);
      box-sizing: content-box; }
    @media screen and (max-width: 1023px) {
      .retail-solutions-slider .applications-block {
        margin-top: 30px; } }
    .retail-solutions-slider .applications-block .applications-block__single {
      display: block; }
      .retail-solutions-slider .applications-block .applications-block__single.hide {
        display: none; }
    .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block {
      display: flex;
      align-items: center; }
      @media screen and (max-width: 1023px) {
        .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block {
          flex-direction: column; } }
      .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .image {
        width: 100%;
        padding-right: 60px; }
        .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .image img {
          width: 100%;
          object-fit: cover; }
        @media screen and (max-width: 1023px) {
          .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .image {
            padding-right: unset; } }
      .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info {
        max-width: 280px;
        width: 100%; }
        @media screen and (max-width: 1023px) {
          .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info {
            max-width: 100%;
            margin-top: 30px; } }
        .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .title {
          font-size: 36px;
          font-style: normal;
          font-weight: 700;
          line-height: 40px;
          /* 111.111% */
          margin-bottom: 20px; }
          @media screen and (max-width: 1023px) {
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .title {
              font-size: 24px;
              font-style: normal;
              font-weight: 700;
              line-height: 28px;
              /* 116.667% */ } }
        .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .description {
          padding-bottom: 30px;
          border-bottom: 1px solid #fff; }
          @media screen and (max-width: 1023px) {
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .description {
              border-bottom: unset; } }
        .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .description, .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .description p {
          margin: unset;
          font-size: 16px;
          font-style: normal;
          font-weight: 600;
          line-height: 22px;
          /* 137.5% */ }
        .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls {
          display: flex;
          margin-top: 30px;
          align-items: center;
          justify-content: space-between; }
          @media screen and (max-width: 1023px) {
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls {
              display: none; } }
          .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .counter {
            font-size: 32px;
            font-style: normal;
            font-weight: 900;
            line-height: 32px;
            /* 100% */
            text-transform: uppercase; }
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .counter .stroke {
              -webkit-text-stroke: 0.5px #fff;
              text-stroke: 0.5px #fff; }
          .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons {
            display: flex; }
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .prev-slide, .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .next-slide {
              background-color: transparent;
              border: unset;
              padding: unset; }
              .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .prev-slide:hover .arrow__item, .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .next-slide:hover .arrow__item {
                fill: #fff; }
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .next-slide {
              margin-left: 15px; }
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .arrow__item {
              pointer-events: none;
              height: 28px;
              width: 33px;
              fill: transparent;
              stroke: #fff; }
            .retail-solutions-slider .applications-block .modules-blocks .modules-block .module-block .info .controls .buttons .arrow__item.reverse {
              transform: rotateZ(180deg); }
  .retail-solutions-slider .applications-list {
    display: flex; }
    @media screen and (max-width: 1023px) {
      .retail-solutions-slider .applications-list {
        flex-direction: column; } }
    .retail-solutions-slider .applications-list__modules {
      padding-left: 30px;
      border-left: 1px solid #fff; }
      @media screen and (max-width: 1023px) {
        .retail-solutions-slider .applications-list__modules {
          border-left: unset;
          padding-left: unset; } }
      .retail-solutions-slider .applications-list__modules .title {
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 16px;
        /* 133.333% */
        margin-bottom: 10px;
        display: block; }
      .retail-solutions-slider .applications-list__modules .module-list__single {
        display: flex;
        flex-wrap: wrap;
        row-gap: 20px;
        column-gap: 30px; }
        @media screen and (max-width: 1023px) {
          .retail-solutions-slider .applications-list__modules .module-list__single {
            flex-wrap: nowrap;
            overflow-x: auto;
            overflow-y: hidden; }
            .retail-solutions-slider .applications-list__modules .module-list__single::-webkit-scrollbar {
              display: none; } }
        .retail-solutions-slider .applications-list__modules .module-list__single.hide {
          display: none; }
        .retail-solutions-slider .applications-list__modules .module-list__single .module {
          font-size: 14px;
          font-style: normal;
          font-weight: 700;
          line-height: normal;
          text-transform: uppercase;
          background-color: transparent;
          border: unset;
          outline: unset;
          padding: unset; }
          @media screen and (max-width: 1023px) {
            .retail-solutions-slider .applications-list__modules .module-list__single .module {
              width: fit-content;
              min-width: fit-content; } }
          .retail-solutions-slider .applications-list__modules .module-list__single .module.active {
            text-decoration: underline; }
    .retail-solutions-slider .applications-list__select {
      display: flex;
      flex-direction: column;
      margin-right: 30px; }
      @media screen and (max-width: 1023px) {
        .retail-solutions-slider .applications-list__select {
          margin-top: 30px;
          margin-right: unset;
          order: 1; } }
      .retail-solutions-slider .applications-list__select .title {
        display: block;
        font-size: 12px;
        font-style: normal;
        font-weight: 400;
        line-height: 16px;
        /* 133.333% */
        margin-bottom: 10px; }
      .retail-solutions-slider .applications-list__select .select__custom {
        position: absolute;
        top: calc(100% + 18px);
        left: 50%;
        transform: translateX(-50%);
        display: none;
        padding: 30px;
        background-color: #000;
        border: 1px solid #fff;
        z-index: 10; }
        .retail-solutions-slider .applications-list__select .select__custom button + button {
          margin-top: 25px; }
        .retail-solutions-slider .applications-list__select .select__custom button {
          background-color: transparent;
          padding: unset;
          border: unset;
          font-size: 14px;
          font-style: normal;
          font-weight: 700;
          line-height: normal;
          text-transform: uppercase;
          text-align: left; }
        .retail-solutions-slider .applications-list__select .select__custom.visible {
          display: flex;
          flex-direction: column; }
      .retail-solutions-slider .applications-list__select .select__wrapper {
        position: relative; }
        .retail-solutions-slider .applications-list__select .select__wrapper::after {
          position: absolute;
          bottom: 4px;
          right: 0;
          pointer-events: none;
          content: '\25BC';
          margin-left: 5px;
          font-size: 12px; }
      .retail-solutions-slider .applications-list__select select {
        font-size: 14px;
        font-style: normal;
        font-weight: 700;
        line-height: normal;
        text-transform: uppercase;
        -webkit-appearance: none;
        -moz-appearance: none;
        background-color: transparent;
        outline: none;
        border: unset;
        min-width: 142px; }
        @media screen and (max-width: 1023px) {
          .retail-solutions-slider .applications-list__select select {
            width: 100%; } }
        .retail-solutions-slider .applications-list__select select::-ms-expand {
          display: none !important; }
        .retail-solutions-slider .applications-list__select select option {
          color: #000; }
  .retail-solutions-slider .applications-list, .retail-solutions-slider .applications-block {
    grid-column: content-start / content-end; }

.retail-team-block__title, .retail-team-block .members {
  grid-column: content-start / content-end; }

.retail-team-block__title {
  margin-bottom: 60px; }
  @media screen and (max-width: 1023px) {
    .retail-team-block__title {
      margin-bottom: 30px; } }

.retail-team-block .member {
  margin-right: 60px;
  padding-bottom: 40px;
  border-bottom: 1px solid #000;
  display: flex; }
  @media screen and (max-width: 1023px) {
    .retail-team-block .member {
      padding-bottom: 30px;
      margin-right: unset; } }
  @media screen and (max-width: 1023px) {
    .retail-team-block .member:nth-last-child(-n+1) {
      border-bottom: unset; } }
  @media screen and (min-width: 1024px) {
    .retail-team-block .member:nth-last-child(-n+2) {
      border-bottom: unset; } }
  .retail-team-block .member .photo {
    max-width: 120px;
    max-height: 120px;
    width: 100%;
    height: 100%;
    padding-right: 20px; }
    @media screen and (max-width: 1023px) {
      .retail-team-block .member .photo {
        max-width: 70px;
        max-height: 70px; } }
    .retail-team-block .member .photo img {
      height: 100%;
      width: 100%;
      object-fit: cover; }
  .retail-team-block .member .info {
    display: flex;
    flex-direction: column;
    justify-content: space-between; }
    .retail-team-block .member .info .name {
      font-size: 20px;
      font-style: normal;
      font-weight: 700;
      line-height: 24px;
      /* 120% */
      margin-bottom: 2px; }
    .retail-team-block .member .info .position {
      font-size: 12px;
      font-style: normal;
      font-weight: 400;
      line-height: 16px;
      /* 133.333% */ }
    .retail-team-block .member .info .text {
      margin-top: 10px; }
      .retail-team-block .member .info .text p {
        margin: unset; }
    .retail-team-block .member .info .text, .retail-team-block .member .info .text p {
      font-size: 14px;
      font-style: normal;
      font-weight: 400;
      line-height: 20px;
      /* 142.857% */ }
  .retail-team-block .members {
    display: grid;
    grid-template-columns: repeat(2, calc(100% / 2));
    row-gap: 40px; }
    @media screen and (max-width: 1023px) {
      .retail-team-block .members {
        grid-template-columns: repeat(1, calc(100% / 1));
        row-gap: 30px; } }

.page-node-type-industries .faq {
  margin-top: 180px; }
  @media screen and (max-width: 1023px) {
    .page-node-type-industries .faq {
      margin-top: 100px; } }
  .page-node-type-industries .faq .heading {
    font-weight: 900;
    text-transform: uppercase; }
  .page-node-type-industries .faq .heading, .page-node-type-industries .faq .header, .page-node-type-industries .faq .content {
    grid-column: 4 / span 2; }
    @media screen and (max-width: 1023px) {
      .page-node-type-industries .faq .heading, .page-node-type-industries .faq .header, .page-node-type-industries .faq .content {
        grid-column: content-start / content-end; } }

.retail-next-industry {
  margin-top: 108px; }
  @media screen and (max-width: 1023px) {
    .retail-next-industry {
      margin-top: 28px; } }
  .retail-next-industry .title {
    grid-column: 4 / span 2;
    font-size: 14px;
    font-style: normal;
    font-weight: 700;
    line-height: normal;
    text-transform: uppercase;
    padding-bottom: 10px;
    border-bottom: 1px solid #000;
    margin-bottom: 20px; }
    @media screen and (max-width: 1023px) {
      .retail-next-industry .title {
        grid-column: content-start / content-end; } }
  .retail-next-industry .item {
    margin-bottom: unset; }
    .retail-next-industry .items {
      grid-column: 4 / span 2; }
      @media screen and (max-width: 1023px) {
        .retail-next-industry .items {
          grid-column: content-start / content-end; } }
  .retail-next-industry .link {
    width: 100%;
    max-width: 100%;
    position: relative; }
    .touch .retail-next-industry .link {
      color: #000; }
    .retail-next-industry .link .link-clip {
      color: #000;
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      clip-path: polygon(0 500px, calc(500px + -300px) 500px, calc(0px + -300px) 0, 0 0);
      transition: clip-path .5s;
      display: none; }
      .retail-next-industry .link .link-clip .arrow__item {
        fill: #000;
        stroke: none; }
    .no-touch .retail-next-industry .link .link-clip {
      display: block; }
    .no-touch .retail-next-industry .link:hover .link-clip {
      clip-path: polygon(0 500px, calc(500px + 100%) 500px, calc(0px + 100%) 0, 0 0); }
  .retail-next-industry a {
    width: 100%;
    display: block;
    box-sizing: border-box;
    word-break: break-word;
    padding: 20px 90px 20px 0; }
  .retail-next-industry .arrow__item {
    position: absolute;
    right: 0;
    top: 15px;
    width: 80px;
    height: 68px;
    pointer-events: none; }
    @media screen and (max-width: 1023px) {
      .retail-next-industry .arrow__item {
        top: 5px;
        width: 50px;
        height: 56px; } }
    .no-touch .retail-next-industry .arrow__item {
      fill: transparent;
      stroke: #000; }

.blog-user-page .top {
  padding-top: 174px;
  grid-column: content;
  display: flex;
  flex-direction: column;
  margin-bottom: 100px; }
  .blog-user-page .top__content {
    display: contents; }
  .blog-user-page .top .breadcrumbs-wrapper {
    order: -1;
    margin-bottom: 15px; }
    .blog-user-page .top .breadcrumbs-wrapper .breadcrumbs {
      margin-bottom: 0; }
  .blog-user-page .top .name {
    order: -1;
    font-weight: 900;
    font-size: 54px;
    line-height: 48px;
    text-transform: uppercase;
    word-break: break-word;
    margin-bottom: 15px; }
  .blog-user-page .top .photo {
    width: 50%;
    margin-bottom: 15px; }
    .blog-user-page .top .photo .field {
      position: relative;
      padding-top: 100%; }
      .blog-user-page .top .photo .field img {
        position: absolute;
        left: 0;
        top: 0;
        width: 100%;
        height: 100%;
        object-fit: cover; }
  .blog-user-page .top .position {
    margin-bottom: 15px; }
    .blog-user-page .top .position .breadcrumbs {
      text-transform: uppercase;
      font-weight: 700;
      font-size: 16px;
      line-height: 20px;
      margin-bottom: 0; }
  .blog-user-page .top .description {
    font-weight: 400;
    font-size: 16px;
    line-height: 20px; }
    .blog-user-page .top .description p {
      margin: 0;
      font-weight: inherit;
      font-size: inherit;
      line-height: inherit; }

.blog-user-page .blog-articles-list {
  margin-bottom: 70px; }

.blog-user-page__title {
  margin-bottom: 30px; }
  .blog-user-page__title span {
    display: block;
    border-top: 1px solid #000;
    padding-top: 5px;
    grid-column: content; }

@media only screen and (max-width: 767px) {
  .blog-user-page .blog-article-item {
    width: 100%; } }

@media only screen and (min-width: 768px) {
  .blog-user-page .top {
    padding-top: 114px;
    margin-bottom: 120px;
    display: grid;
    grid-template-columns: 50% 1fr;
    column-gap: 30px; }
    .blog-user-page .top__content {
      display: flex;
      justify-content: center;
      flex-direction: column; }
    .blog-user-page .top .name {
      font-size: 56px; }
    .blog-user-page .top .photo {
      width: 100%;
      margin-bottom: 0px; }
    .blog-user-page .top .position {
      margin-bottom: 30px; }
  .blog-user-page__title {
    margin-bottom: 60px; }
    .blog-user-page__title span {
      padding-top: 20px; }
  .blog-user-page .blog-articles-list {
    margin-bottom: 90px; } }

@media only screen and (min-width: 1200px) {
  .blog-user-page .top {
    padding-top: 154px;
    margin-bottom: 180px;
    grid-template-columns: 37.72% 1fr;
    column-gap: 140px; }
    .blog-user-page .top__content {
      justify-content: flex-start;
      flex-wrap: wrap;
      align-content: center;
      align-items: flex-start;
      flex-direction: row; }
    .blog-user-page .top .breadcrumbs-wrapper {
      width: 100%;
      margin-bottom: 30px; }
    .blog-user-page .top .name {
      width: 100%;
      font-size: 72px;
      line-height: 64px;
      margin-bottom: 30px; }
    .blog-user-page .top .position {
      margin-bottom: 0;
      padding-right: 30px;
      box-sizing: border-box;
      width: 50%; }
    .blog-user-page .top .description {
      width: 50%; }
  .blog-user-page__title {
    margin-bottom: 90px; } }

@media only screen and (min-width: 1281px) {
  .blog-user-page .blog-articles-list {
    column-gap: 50px;
    margin-bottom: 150px; } }
