*,
*:before,
*:after {
  min-height: 0;
  min-width: 0;
  margin: 0;
  padding: 0;
  outline: none;
  box-sizing: border-box; }

body,
input,
button,
textarea,
select,
.fancybox-skin {
  font-family: "Futura PT";
  font-size: 16px;
  line-height: 1.5;
  color: #000; }

img {
  vertical-align: middle;
  max-width: 100%;
  max-height: 100%; }

a {
  color: #000;
  text-decoration: none; }

.hidden,
.modals {
  display: none; }

input[type="date"]::-webkit-calendar-picker-indicator {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  width: auto;
  height: auto;
  color: transparent;
  background: transparent; }

input[type="date"]::-webkit-inner-spin-button,
input[type="date"]::-webkit-clear-button {
  display: none; }

[placeholder]:focus::-webkit-input-placeholder {
  color: transparent !important; }

[placeholder]:focus:-moz-placeholder {
  color: transparent !important; }

[placeholder]:focus::-moz-placeholder {
  color: transparent !important; }

[placeholder]:focus:-ms-input-placeholder {
  color: transparent !important; }

.input-1, .input-2 {
  position: relative; }
  .input-1 input, .input-2 input,
  .input-1 textarea,
  .input-2 textarea {
    width: 100%;
    font-size: 19px;
    color: #000;
    border: 1px solid #EBEBEB;
    outline: none;
    background: #FAFAFA; }
    .input-1 input::-webkit-input-placeholder, .input-2 input::-webkit-input-placeholder,
    .input-1 textarea::-webkit-input-placeholder,
    .input-2 textarea::-webkit-input-placeholder {
      color: #000; }
    .input-1 input:-moz-placeholder, .input-2 input:-moz-placeholder,
    .input-1 textarea:-moz-placeholder,
    .input-2 textarea:-moz-placeholder {
      color: #000;
      opacity: 1; }
    .input-1 input::-moz-placeholder, .input-2 input::-moz-placeholder,
    .input-1 textarea::-moz-placeholder,
    .input-2 textarea::-moz-placeholder {
      color: #000;
      opacity: 1; }
    .input-1 input:-ms-input-placeholder, .input-2 input:-ms-input-placeholder,
    .input-1 textarea:-ms-input-placeholder,
    .input-2 textarea:-ms-input-placeholder {
      color: #000; }
  .input-1 input, .input-2 input {
    height: 64px;
    padding: 10px 24px; }
  
  .input-1 textarea,
  .input-2 textarea {
    height: 139px;
    padding: 14px 24px;
    resize: none; }

.input-2 input,
.input-2 textarea {
  background: #fff; }

.input-2 textarea {
  height: 110px; }

.file-1.jq-file {
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  height: 57px;
  padding: 0 0 0 71px;
  line-height: 1.28; }
  .file-1.jq-file:before {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 57px;
    height: 100%;
    border: 1px dashed #000;
    background: url("../images/icon-upload-1.svg") center no-repeat; }

.file-1 .jq-file__name {
  font-size: 19px;
  font-weight: 500; }

.file-1 .jq-file__browse {
  margin: 4px 0 0;
  font-size: 12px; }

.checkbox-1.jq-checkbox {
  flex-shrink: 0;
  width: 20px;
  height: 20px;
  background: #FF270A; }
  .checkbox-1.jq-checkbox .jq-checkbox__div {
    position: absolute;
    left: 50%;
    top: 50%;
    width: 10px;
    height: 10px;
    margin: -5px 0 0 -5px;
    background: url("../images/icon-check-1.svg") center no-repeat;
    background-size: contain;
    opacity: 0; }
  .checkbox-1.jq-checkbox.checked .jq-checkbox__div {
    opacity: 1; }

/*
.select-1 {
	&.jq-selectbox {
		display: block;
		height: 36px;
		border-bottom: 1px solid $color_gray_12;
		.jq-selectbox__select {
			height: 100%;
		}
		.jq-selectbox__select-text {
			display: flex;
			font-size: 17px;
			color: $color_gray_11;
			align-items: center;
			height: 100%;
			margin: 0 30px 0 10px;
		}
		.jq-selectbox__trigger {
			position: absolute;
			right: 15px;
			top: 50%;
			width: 10px;
			height: 5px;
			margin: -3px 0 0;
			background: url('../images/arrow-2.png') no-repeat;
		}
		.jq-selectbox__dropdown {
			width: 100%;
			font-size: 17px;
			background: $color_gray_13;
			ul {
				max-height: 220px;
				overflow: auto;
			}
			li {
				position: relative;
				padding: 5px 10px;
				cursor: pointer;
				&.sel {
					color: $color_white;
					background: $color_green_1;
				}
				&:hover {
					color: $color_white;
					background: $color_green_1;
				}
			}
		}
		&.opened {
			.jq-selectbox__trigger {
				transform: rotate(180deg);
			}
		}
	}
}
*/
.button-1 {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  height: 97px;
  padding: 0 15px;
  font-size: 25px;
  font-weight: 600;
  line-height: 1;
  color: #fff !important;
  text-decoration: none !important;
  text-align: center;
  border: none;
  cursor: pointer;
  background: #FF270A; }
  .button-1:hover {
    background: #d61900; }

.text-nowrap {
  white-space: nowrap; }

.main-wrapper {
  position: relative;
  z-index: 1;
  max-width: 1920px;
  margin: 0 auto;
  overflow: hidden; }

.container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 0 15px; }

/* START HERE */
a,
input, textarea, button,
.menu,
.header, .header__phone,
.header__menu ul,
.homescreen__nav-progress-line span,
.services__item {
  transition: all 0.4s ease-in-out; }

.menu {
  position: fixed;
  z-index: 100;
  right: 0;
  top: 0;
  width: 290px;
  height: 100%;
  padding: 30px 0;
  transform: translateX(100%);
  background: #fff;
  opacity: 0;
  visibility: hidden;
  box-shadow: 0 0 120px rgba(0, 0, 0, 0.2); }

.menu_active {
  transform: translateX(0);
  opacity: 1;
  visibility: visible; }

.menu__close {
  display: block;
  width: 36px;
  height: 36px;
  margin: 0 auto 30px;
  background: url("../images/close-1.svg") center no-repeat;
  background-size: contain; }
  .menu__close:hover {
    transform: rotate(90deg); }

.menu__list {
  font-size: 16px;
  font-weight: bold;
  list-style: none; }
  .menu__list li {
    margin: 10px 0 0; }
    .menu__list li:first-child {
      margin: 0; }
    .menu__list li ul {
      margin: 10px 0 0; }
      .menu__list li ul a {
        padding-left: 30px; }
  .menu__list a {
    display: block;
    padding: 7px 15px; }
    .menu__list a:hover {
      color: #fff;
      background: #000; }

.header {
  position: fixed;
  z-index: 9;
  left: 0;
  top: 0;
  width: 100%; }

.header_white {
  background: #fff; }
  .header_white .header__phone {
    filter: invert(100%); }

.header__inner {
  display: flex;
  align-items: center;
  justify-content: space-between; }

.header__left {
  position: relative;
  display: flex;
  align-items: center;
  padding: 15px 45px 15px 0;
  background: #fff; }
  .header__left:before {
    display: block;
    content: '';
    position: absolute;
    right: 100%;
    top: 0;
    width: 375px;
    height: 100%;
    background: #fff; }

.header__logo {
  flex-shrink: 0;
  display: block; }

.header__menu {
  display: flex;
  margin: 0 0 0 43px;
  font-size: 18px;
  list-style: none; }
  .header__menu li {
    position: relative;
    margin: 0 0 0 22px;
    padding: 0 0 0 20px; }
    .header__menu li:before {
      display: block;
      content: '';
      position: absolute;
      left: 0;
      top: 50%;
      width: 3px;
      height: 3px;
      margin: -1px 0 0;
      background: #FF270A; }
    .header__menu li:first-child {
      margin: 0;
      padding: 0; }
      .header__menu li:first-child:before {
        display: none; }
    .header__menu li:hover ul {
      visibility: visible;
      opacity: 1;
      transform: translateY(0); }
    .header__menu li ul {
      position: absolute;
      left: 0;
      top: 100%;
      padding: 10px 20px;
      background: #fff;
      white-space: nowrap;
      list-style: none;
      visibility: hidden;
      opacity: 0;
      transform: translateY(-10px); }
      .header__menu li ul li {
        margin: 10px 0 0;
        padding: 0; }
        .header__menu li ul li:before {
          display: none; }

.header__right {
  display: flex;
  align-items: center;
  color: #fff; }

.header__phone {
  position: relative;
  padding: 0 0 0 73px;
  font-size: 18px;
  font-weight: bold; }
  .header__phone a {
    color: #fff; }
  .header__phone:before {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 50%;
    width: 14px;
    height: 14px;
    background: url("../images/icon-phone-2.svg") center no-repeat;
    background-size: contain;
    transform: translateY(-50%); }
  .header__phone:after {
    display: block;
    content: '';
    position: absolute;
    left: 28px;
    top: 50%;
    width: 33px;
    height: 1px;
    background: rgba(255, 255, 255, 0.2); }

.header__language {
  display: inline-block;
  margin: 0 0 0 20px;
  padding: 7px;
  color: #fff;
  background: #FF270A; }

.header__menu-button {
  flex-shrink: 0;
  position: relative;
  display: none;
  width: 24px;
  margin: 0 0 0 20px;
  padding: 8px 0; }
  .header__menu-button i {
    display: block;
    height: 4px;
    border-radius: 1px;
    background: #000; }
  .header__menu-button:before, .header__menu-button:after {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    width: 100%;
    height: 4px;
    border-radius: 1px;
    background: #000; }
  .header__menu-button:before {
    top: 0; }
  .header__menu-button:after {
    bottom: 0; }

.homescreen {
  position: relative;
  padding: 0 0 86px; }

.homescreen__slide-inner {
  position: relative;
  display: flex;
  flex-direction: row-reverse; }

.homescreen__slide-image {
  width: 100%;
  margin: 0 -375px 0 0;
  background-position: center 25%;
  background-repeat: no-repeat;
  background-size: cover; }

.homescreen__slide-content {
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  width: 470px;
  padding: 145px 30px 365px 0; }

.homescreen__slide-title {
  font-size: 58px;
  font-weight: bold;
  line-height: 1.12; }
  .homescreen__slide-title span {
    color: #FF270A; }

.homescreen__slide-text {
  margin: 28px 0 0;
  font-size: 29px;
  line-height: 1.28; }

.homescreen__bottom {
  position: relative;
  z-index: 1;
  margin: -239px 0 0; }

.homescreen__nav {
  display: none;
  justify-content: space-between;
  align-items: center;
  width: 370px; }

.homescreen__nav-progress {
  display: flex;
  align-items: center; }

.homescreen__nav-progress-current {
  font: bold 48px/1 'Century Gothic';
  color: #FF270A; }

.homescreen__nav-progress-line {
  width: 130px;
  height: 1px;
  margin: 0 20px 0 12px;
  background: #E8E8E8; }
  .homescreen__nav-progress-line span {
    display: block;
    width: 0;
    height: 100%;
    background: #FF270A; }

.homescreen__nav-arrows {
  flex-shrink: 0;
  display: flex; }

.homescreen__nav-arrow {
  position: relative;
  display: block;
  width: 52px;
  height: 52px;
  margin: 0 0 0 8px;
  border: 2px solid #FF270A;
  border-radius: 50%; }
  .homescreen__nav-arrow:before {
    display: block;
    content: '';
    position: absolute;
    left: 50%;
    top: 50%;
    width: 7px;
    height: 11px;
    margin: -5px 0 0 -3px;
    background: url("../images/icon-arrow-1.svg") center no-repeat;
    background-size: contain; }
  .homescreen__nav-arrow:first-child {
    margin: 0; }
  .homescreen__nav-arrow:hover {
    filter: grayscale(0);
    opacity: 1; }

.homescreen__nav-arrow_prev {
  filter: grayscale(100%);
  opacity: 0.2; }
  .homescreen__nav-arrow_prev:before {
    transform: rotate(180deg); }

.homescreen__nav-progress-total {
  font: bold 18px/1 'Century Gothic';
  color: #E8E8E8; }

.homescreen__items {
  display: flex;
  flex-wrap: wrap;
  margin: 120px -15px 0; }

.homescreen__item {
  width: 33.33%;
  padding: 0 15px; }

.homescreen__item-inner {
  height: 100%;
  padding: 29px 36px;
  color: #fff;
  background: #FF270A; }

.homescreen__item-title {
  font-size: 42px;
  font-weight: bold;
  line-height: 1; }
  .homescreen__item-title span {
    display: inline-block;
    font-size: 17px;
    font-weight: 500;
    vertical-align: middle; }

.homescreen__item-text {
  margin: 29px 0 0;
  font-size: 18px;
  line-height: 1.28; }

.homescreen__bg {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

.homescreen__decors {
  position: relative;
  max-width: 1200px;
  height: 100%;
  margin: 0 auto;
  padding: 0 15px; }

.homescreen__decor {
  position: absolute; }
  .homescreen__decor:nth-child(1) {
    left: -360px;
    right: 42.9%;
    top: 0;
    height: 100%;
    background: #F7F7F7; }
  .homescreen__decor:nth-child(2) {
    left: -352px;
    bottom: 0;
    width: 883px;
    height: 393px;
    background: url("../images/decor-1.png") no-repeat; }

.title {
  max-width: 800px;
  font-size: 46px;
  font-weight: bold;
  line-height: 1.37; }

.about__inner {
  position: relative;
  padding: 28px 0 61px; }

.about__content {
  display: flex;
  align-items: flex-start;
  margin: 27px 0 0; }

.about__director {
  flex-shrink: 0;
  width: 41.9%;
  margin: 7px 0 0; }

.about__director-inner {
  position: relative;
  z-index: 1;
  margin: 0 30px; }
  .about__director-inner:before {
    display: block;
    content: '';
    position: absolute;
    z-index: -1;
    left: -30px;
    right: 30px;
    top: 20px;
    bottom: -30px;
    border: 10px solid #fff; }

.about__director-image img {
  width: 100%; }

.about__director-text {
  position: absolute;
  z-index: 1;
  left: 0;
  bottom: 0;
  width: 100%;
  max-width: 330px;
  padding: 0 23px 42px;
  font-size: 19px;
  line-height: 1.28;
  color: #fff; }

.about__text {
  position: relative;
  z-index: 1;
  padding: 0 0 0 70px;
  font-size: 19px;
  line-height: 1.46; }
  .about__text p {
    position: relative;
    margin: 27px 0 0; }
    .about__text p:first-child {
      margin: 0; }
    .about__text p:nth-child(2) {
      padding: 0 0 0 52px;
      font-size: 28px;
      font-weight: 500;
      line-height: 1.28; }
      .about__text p:nth-child(2):before, .about__text p:nth-child(2):after {
        display: block;
        content: '';
        position: absolute; }
      .about__text p:nth-child(2):before {
        left: -114px;
        top: -3px;
        width: 48px;
        height: 38px;
        background: url("../images/icon-quote-1.svg") center no-repeat;
        background-size: contain; }
      .about__text p:nth-child(2):after {
        left: -51px;
        top: 16px;
        width: 88px;
        height: 1px;
        background: rgba(0, 0, 0, 0.2); }

.about__decors, .clients__decors, .services__decors, .vacancies__decors, .candidates__decors, .resume__decors, .cta__decors {
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }

.about__decor {
  position: absolute; }
  .about__decor:nth-child(1) {
    left: -375px;
    right: 42.7%;
    top: 0;
    height: 100%;
    background: #F7F7F7; }
  .about__decor:nth-child(2) {
    right: -375px;
    top: -216px;
    width: 550px;
    height: 493px;
    background: url("../images/decor-2.png") no-repeat; }

.clients__inner {
  position: relative;
  padding: 61px 0 31px; }

.clients__content {
  display: flex;
  margin: 0 -15px; }

.clients__left {
  width: 46.7%;
  padding: 0 15px; }

.clients__left-text {
  margin: 15px 0 0;
  font-size: 22px;
  line-height: 1.28; }

.clients__right {
  width: 53.3%;
  margin: 10px 0 0;
  padding: 0 15px; }

.clients__right-text {
  padding: 32px 40px 33px;
  font-size: 29px;
  font-weight: 500;
  line-height: 1.41;
  color: #fff;
  background: #FF270A; }

.clients__decor {
  position: absolute; }
  .clients__decor:nth-child(1) {
    left: -375px;
    right: 42.7%;
    top: 0;
    height: 100%;
    background: #F7F7F7; }

.services__inner {
  position: relative; }

.services__items {
  margin: 43px 0 0; }

.services__item {
  position: relative;
  margin: 30px 0 0;
  padding: 40px 50px 63px;
  background: #fff;
  cursor: pointer; }
  .services__item:first-child {
    margin: 0; }
  .services__item:hover {
    background: #f7f7f7; }

.services__item-title {
  position: relative;
  margin: 0 0 17px;
  padding: 0 0 0 100px;
  font-size: 30px;
  font-weight: bold;
  line-height: 1.28; }
  .services__item-title span {
    display: none;
    position: absolute;
    left: 0;
    top: 0; }
  .services__item-title:before {
    display: block;
    content: '';
    position: absolute;
    left: 47px;
    top: 50%;
    width: 40px;
    height: 2px;
    margin: -1px 0 0;
    background: #FF270A; }

.services__item-content {
  position: relative;
  padding: 0 0 0 100px; }

.services__item-icon {
  position: absolute;
  left: 0;
  top: 9px; }

.services__item-subtitle {
  margin: 0 0 22px;
  font-size: 23px;
  line-height: 1.28; }

.services__item-text {
  display: none;
  font-size: 19px;
  line-height: 1.28; }
  .services__item-text p {
    margin: 23px 0 0; }
    .services__item-text p:first-child {
      margin: 0; }
  .services__item-text strong {
    font-weight: 600; }
  .services__item-text ul {
    margin: 24px 0 0;
    list-style: none; }
  .services__item-text li:before {
    display: inline-block;
    content: '';
    width: 5px;
    height: 5px;
    margin: 10px 25px 0 1px;
    background: #FF270A;
    vertical-align: top; }

.services__decor {
  position: absolute; }
  .services__decor:nth-child(1) {
    left: -375px;
    right: 42.7%;
    top: 0;
    bottom: 70px;
    background: #F7F7F7; }
  .services__decor:nth-child(2) {
    left: -375px;
    top: 35.88%;
    width: 471px;
    height: 393px;
    background: url("../images/decor-3.png") no-repeat;
    transform: translateY(-50%); }
  .services__decor:nth-child(3) {
    right: -370px;
    bottom: -130px;
    width: 883px;
    height: 393px;
    background: url("../images/decor-4.png") no-repeat; }

.vacancies__inner {
  position: relative;
  padding: 131px 0 0; }

.vacancies__items {
  display: flex;
  flex-wrap: wrap;
  margin: 41px -180px 0 -90px; }

.vacancies__item {
  position: relative;
  width: 12.5%;
  background: #fff; }
  .vacancies__item:before {
    display: block;
    content: '';
    padding: 100% 0 0; }
  .vacancies__item:nth-child(1) {
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(2) {
    margin: 0 0 0 12.5%;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(4) {
    color: #fff;
    background: #FF270A;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(7) {
    transform: translate(-200%, -100%); }
  .vacancies__item:nth-child(8) {
    margin: 0 0 0 12.5%;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(13) {
    margin: 0 0 0 12.5%;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(14) {
    margin: 0 0 0 12.5%; }
  .vacancies__item:nth-child(15) {
    margin: 0 0 0 12.5%; }
  .vacancies__item:nth-child(16) {
    width: 25%; }
    .vacancies__item:nth-child(16):before {
      padding: 50% 0 0; }
    .vacancies__item:nth-child(16) .vacancies__item-content {
      font-size: 26px;
      font-weight: bold;
      line-height: 1.27; }
  .vacancies__item:nth-child(17) {
    margin: 0 12.5% 0 0;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(18) {
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(19) {
    margin: 0 0 0 12.5%;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(20) {
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }
  .vacancies__item:nth-child(21) {
    margin: 0 0 0 12.5%;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.047); }

.vacancies__item-content {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  padding: 10.5%;
  font-size: 19px;
  font-weight: 600;
  line-height: 1.26;
  text-align: center; }

.vacancies__decor {
  position: absolute; }
  .vacancies__decor:nth-child(1) {
    left: -370px;
    bottom: 111px;
    width: 841px;
    height: 503px;
    background: url("../images/decor-5.png") no-repeat; }
  .vacancies__decor:nth-child(2) {
    left: 34.2%;
    right: -375px;
    bottom: 0;
    height: 62px;
    background: #F7F7F7; }

.candidates__inner {
  position: relative;
  padding: 119px 0 0; }

.candidates__content {
  display: flex; }

.candidates__image {
  width: 100%;
  margin: 14px 0 0 -375px; }
  .candidates__image img {
    width: 100%;
    height: 100%;
    object-fit: cover; }

.candidates__right {
  flex-shrink: 0;
  width: 61.5%;
  padding: 0 0 0 47px; }

.candidates__text {
  margin: 25px 0 0;
  font-size: 22px;
  line-height: 1.265; }
  .candidates__text ul {
    list-style: none; }
  .candidates__text li {
    position: relative;
    margin: 35px 0 0;
    padding: 0 0 0 29px; }
    .candidates__text li:before {
      display: block;
      content: '';
      position: absolute;
      left: 3px;
      top: 9px;
      width: 8px;
      height: 8px;
      background: #FF270A; }
    .candidates__text li:first-child {
      margin: 0; }

.candidates__hint {
  max-width: 454px;
  margin: 70px 0 0 -97px;
  padding: 26px 32px 19px;
  font-size: 28px;
  font-weight: 500;
  line-height: 1.28;
  color: #fff;
  background: #FF270A; }

.candidates__decor {
  position: absolute; }
  .candidates__decor:nth-child(1) {
    left: 34.2%;
    right: -375px;
    top: 0;
    height: 100%;
    background: #F7F7F7; }

.resume__inner {
  position: relative;
  padding: 80px 0 100px; }

.resume__content {
  display: flex;
  justify-content: space-between; }

.resume__left {
  padding: 0 30px 0 0; }

.resume__form {
  flex-shrink: 0;
  width: 51.25%;
  margin: 20px 0 0;
  padding: 40px 40px 20px;
  background: #fff; }

.resume__form-inputs {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }

.resume__form-input {
  width: 100%;
  margin: 0 0 20px;
  padding: 0 10px; }
  .resume__form-input:nth-child(-n+2) {
    width: 50%; }

.resume__form-button {
  width: 100%; }

.resume__form-agree {
  display: flex;
  font-size: 14px;
  line-height: 1.28; }
  .resume__form-agree .jq-checkbox {
    margin: 0 10px 0 0; }
  .resume__form-agree a {
    text-decoration: underline; }

.resume__decor {
  position: absolute; }
  .resume__decor:nth-child(1) {
    left: 34.2%;
    right: -375px;
    top: 0;
    height: 100%;
    background: #F7F7F7; }
  .resume__decor:nth-child(2) {
    left: -375px;
    bottom: 0;
    width: 611px;
    height: 401px;
    background: url("../images/decor-6.png") no-repeat; }
  .resume__decor:nth-child(3) {
    right: -375px;
    bottom: 99px;
    width: 611px;
    height: 643px;
    background: url("../images/decor-7.png") no-repeat; }

.contacts__map {
  position: relative;
  z-index: 1;
  height: 600px; }

.contacts {
  position: relative; }

.contacts__wrapper {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%; }
  .contacts__wrapper .container {
    height: 100%; }

.contacts__inner {
  position: relative;
  z-index: 2;
  width: 0;
  height: 100%; }

.contacts__content {
  position: absolute;
  left: 0;
  top: 50%;
  width: 401px;
  padding: 30px 37px 40px;
  background: #fff;
  transform: translateY(-50%); }
  .contacts__content:before {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 12px;
    height: 12px; }

.contacts__items {
  margin: 17px 0 0;
  font-size: 18px;
  line-height: 1.28;
  font-weight: 600; }

.contacts__item {
  position: relative;
  margin: 23px 0 0;
  padding: 0 0 0 40px; }
  .contacts__item p:first-child {
    font-weight: normal; }
  .contacts__item:before {
    display: block;
    content: '';
    position: absolute;
    left: 3px;
    top: 2px;
    width: 20px;
    height: 20px;
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain; }
  .contacts__item:first-child {
    margin: 0; }

.contacts__item_address:before {
  background-image: url("../images/icon-pin-1.svg"); }

.contacts__item_time:before {
  background-image: url("../images/icon-time-1.svg"); }

.contacts__item_phone:before {
  background-image: url("../images/icon-phone-1.svg"); }

.contacts__item_email:before {
  background-image: url("../images/icon-email-1.svg"); }

.cta {
  overflow: hidden; }

.cta__inner {
  position: relative;
  padding: 44px 0 49px; }

.cta__content {
  display: flex;
  justify-content: space-between; }

.cta__left {
  padding: 0 30px 0 0; }

.cta__form {
  flex-shrink: 0;
  width: 45.3%;
  margin: 26px 0 0; }

.cta__form-inputs {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -10px; }

.cta__form-input {
  width: 100%;
  margin: 0 0 20px;
  padding: 0 10px; }
  .cta__form-input:nth-child(-n+2) {
    width: 50%; }

.cta__form-button {
  width: 100%; }

.cta__decor {
  position: absolute; }
  .cta__decor:nth-child(1) {
    left: -37px;
    bottom: 0;
    width: 543px;
    height: 371px;
    background: url("../images/decor-8.png") no-repeat; }
  .cta__decor:nth-child(2) {
    right: -90px;
    top: 0;
    width: 543px;
    height: 450px;
    background: url("../images/decor-9.png") no-repeat; }
  .cta__decor:nth-child(3) {
    left: -375px;
    top: 0;
    width: 675px;
    height: 286px;
    background: #F7F7F7; }

.footer {
  font-size: 18px;
  line-height: 1.28;
  background: #F7F7F7; }

.footer__inner {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 -15px;
  padding: 30px 0 30px; }

.footer__left {
  width: 250px;
  padding: 0 15px; }

.footer__center {
  display: flex;
  align-items: center;
  width: 420px;
  margin: 0 0 0 100px;
  padding: 0 15px; }

.footer__logo {
  flex-shrink: 0;
  margin: 0 15px 0 0; }

.footer__right {
  width: 250px;
  padding: 0 15px;
  text-align: right; }

.modal-policy {
  position: relative;
  width: 1170px;
  padding: 30px 15px;
  background: #fff; }

.modal-policy__text {
  height: 100%;
  font-size: 20px;
  overflow: auto; }
  .modal-policy__text h3 {
    font-size: 120%; }
  .modal-policy__text ul {
    margin: 20px 0 0;
    list-style: none; }
  .modal-policy__text ul, .modal-policy__text ol {
    list-style-position: inside; }
  .modal-policy__text li, .modal-policy__text p {
    margin: 20px 0 0; }
    .modal-policy__text li:first-child, .modal-policy__text p:first-child {
      margin: 0; }
  .modal-policy__text li span {
    font-weight: bold; }

.modal-close {
  position: absolute;
  right: 5px;
  top: 5px;
  display: block;
  width: 36px;
  height: 36px;
  background: url("../images/close-1.svg") center no-repeat;
  background-size: contain; }
  .modal-close:hover {
    transform: rotate(90deg); }

.modal-thanks {
  position: relative;
  width: 760px;
  padding: 45px 60px;
  background: #fff; }
  .modal-thanks:before {
    display: block;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 13px;
    height: 13px;
    background: #FF270A; }

.modal-thanks__title {
  font-size: 46px;
  font-weight: bold; }

.modal-thanks__text {
  margin: 24px 0 0;
  font-size: 19px;
  line-height: 1.28; }
  .modal-thanks__text p {
    margin: 24px 0 0; }
    .modal-thanks__text p:first-child {
      margin: 0; }

.debug {
  position: fixed;
  z-index: 100;
  right: 0;
  bottom: 0;
  opacity: 0.5;
  padding: 5px;
  color: #fff;
  background: #000; }
  .debug:before {
    content: 'desktop'; }

/* Debug */
@media (max-width: 1199px) {
  .debug:before {
    content: '1199'; } }

@media (max-width: 991px) {
  .debug:before {
    content: '991'; } }

@media (max-width: 767px) {
  .debug:before {
    content: '767'; } }

@media (max-width: 575px) {
  .debug:before {
    content: '575'; } }

/* FONT SIZE TABLE

58
57 > 42 > 36 > 28 > 24
46 > 38 > 32 > 28 > 24
30
29
28 > 24 > 22 > 20 > 18
23 > 20 > 18
22 > 20 > 18
19
18 >    >    > 16
*/
@media (max-width: 1599px) {
  .vacancies__items {
    margin: 40px 0 0; }
  .vacancies__item {
    width: 20%;
    margin: 0 !important;
    transform: none !important;
    box-shadow: 0 0 120px rgba(0, 0, 0, 0.1) !important; }
    .vacancies__item:nth-child(16) {
      width: 40%; }
      .vacancies__item:nth-child(16) .vacancies__item-content {
        font-size: 20px; } }

@media (max-width: 1199px) {
  .header {
    background: #fff; }
  .header__phone {
    padding: 0 0 0 22px;
    filter: invert(100%); }
    .header__phone:after {
      display: none; }
  .homescreen {
    padding: 0 0 50px; }
  .homescreen__slide-inner {
    display: block;
    padding: 100px 0 0; }
  .homescreen__slide-content {
    width: auto;
    max-width: 450px;
    margin: 0 auto;
    padding: 100px 0 100px;
    color: #fff;
    text-align: center; }
  .homescreen__slide-title {
    font-size: 42px; }
  .homescreen__slide-text {
    font-size: 24px; }
  .homescreen__slide-image {
    position: absolute;
    left: -15px;
    right: -15px;
    top: 0;
    width: auto;
    height: 100%;
    margin: 0; }
    .homescreen__slide-image:after {
      display: block;
      content: '';
      position: absolute;
      left: 0;
      top: 0;
      width: 100%;
      height: 100%;
      background: rgba(0, 0, 0, 0.5); }
  .homescreen__bottom {
    margin: 30px 0 0; }
  .homescreen__nav {
    width: 260px;
    margin: 0 0 0 auto; }
  .homescreen__nav-progress-current {
    font-size: 36px; }
  .homescreen__nav-progress-line {
    width: 65px; }
  .homescreen__nav-arrow {
    width: 36px;
    height: 36px; }
  .homescreen__items {
    margin-top: 30px; }
  .homescreen__item {
    padding: 0 5px; }
  .homescreen__item-inner {
    padding: 15px; }
  /*
	.homescreen__item-title {
		font-size: 42px;
	}
	*/
  .homescreen__item-text {
    margin: 15px 0 0; }
  .title {
    font-size: 38px; }
  .about__inner {
    padding: 20px 0 35px; }
  .about__director-inner {
    margin: 0; }
    .about__director-inner:before {
      display: none; }
  .about__text {
    padding: 0 0 0 30px; }
    .about__text p:nth-child(2) {
      padding: 0 0 0 30px;
      font-size: 24px; }
      .about__text p:nth-child(2):before {
        left: 0;
        width: 24px;
        height: 19px; }
      .about__text p:nth-child(2):after {
        display: none; }
  .clients__inner {
    padding: 35px 0; }
  .clients__left-text {
    font-size: 20px; }
  .clients__right-text {
    font-size: 24px;
    line-height: 1.28; }
  .services__inner {
    padding: 35px 0 0; }
  .services__item-title {
    padding: 0 0 0 70px;
    font-size: 24px; }
    .services__item-title:before {
      left: 42px;
      width: 20px; }
  .services__item-icon {
    width: 50px; }
  .services__item-content {
    padding: 0 0 0 70px; }
  .services__item-subtitle {
    font-size: 20px; }
  .vacancies__inner {
    padding: 70px 0 0; }
  .candidates__inner {
    padding: 70px 0 0; }
  .candidates__image {
    margin-left: -15px; }
  .candidates__right {
    width: 50%;
    padding: 0 0 0 30px; }
  .candidates__text {
    font-size: 20px; }
  .candidates__hint {
    margin: 60px 0 0 -60px;
    padding: 30px;
    font-size: 24px; }
  .resume__inner {
    padding: 70px 0; }
  .cta__decor:nth-child(2) {
    display: none; }
  .footer {
    font-size: 16px; }
  .footer__left {
    width: 25%; }
  .footer__center {
    width: 50%;
    margin: 0; }
  .footer__right {
    width: 25%; }
  .modal-thanks__title {
    font-size: 38px; }
  .modal-policy {
    width: 970px; } }

@media (max-width: 991px) {
  .button-1 {
    height: 57px; }
  .input-1 input, .input-2 input {
    height: 57px; }
  .header__left {
    padding: 8px 15px 8px 0; }
  .header__logo {
    width: 50px; }
  .header__menu {
    margin: 0 0 0 20px; }
    .header__menu li {
      margin: 0 0 0 12px;
      padding: 0 0 0 10px; }
  .homescreen__slide-title {
    font-size: 36px; }
  .homescreen__slide-text {
    font-size: 22px; }
  .homescreen__item-title {
    font-size: 36px; }
  .title {
    font-size: 32px; }
  .about__text p:nth-child(2) {
    font-size: 22px; }
  .clients__left-text {
    font-size: 18px; }
  .clients__right-text {
    padding: 30px;
    font-size: 22px; }
  .services__item-title {
    font-size: 22px; }
  .services__item-subtitle {
    font-size: 18px; }
  .candidates__text {
    font-size: 18px; }
  .candidates__hint {
    font-size: 22px; }
  .resume .title {
    text-align: center; }
  .resume__content {
    display: block; }
  .resume__form {
    width: auto;
    max-width: 500px;
    margin: 30px auto 0; }
  .contacts .title {
    text-align: center; }
  .contacts__wrapper {
    position: relative;
    left: auto;
    top: auto;
    width: auto;
    height: auto; }
  .contacts__inner {
    width: auto;
    height: auto; }
  .contacts__content {
    position: relative;
    left: auto;
    top: auto;
    width: auto;
    max-width: 350px;
    margin: 0 auto;
    transform: none; }
  .contacts__map {
    height: 450px;
    margin: 30px 0 0; }
  .cta .title {
    text-align: center; }
  .cta__content {
    display: block; }
  .cta__form {
    width: auto;
    max-width: 420px;
    margin: 30px auto 0; }
  .modal-thanks {
    width: 740px; }
  .modal-thanks__title {
    font-size: 32px; }
  .modal-policy {
    width: 740px; } }

@media (max-width: 767px) {
  .header__menu {
    display: none; }
  .header__menu-button {
    display: block; }
  .homescreen__slide-title {
    font-size: 28px; }
  .homescreen__slide-text {
    font-size: 20px; }
  .homescreen__item-title {
    font-size: 28px; }
  .homescreen__item-text {
    font-size: 16px; }
  .title {
    font-size: 28px; }
  .about__director-text {
    padding: 0 15px 15px;
    font-size: 16px; }
  .about__text {
    font-size: 16px;
    line-height: 1.28; }
    .about__text p:nth-child(2) {
      font-size: 20px; }
  .clients__right-text {
    font-size: 20px; }
  .services__items {
    margin: 30px -15px 0; }
  .services__item {
    padding: 30px; }
  .services__item-title {
    font-size: 20px; }
  .services__item-text {
    font-size: 16px; }
  .vacancies__items {
    justify-content: center; }
  .vacancies__item-content {
    font-size: 16px; }
  .vacancies__item {
    width: 33.33%; }
    .vacancies__item:nth-child(16) {
      width: 66.66%; }
      .vacancies__item:nth-child(16) .vacancies__item-content {
        font-size: 20px; }
  .candidates__hint {
    font-size: 20px; }
  .contacts__items {
    font-size: 16px; }
  .footer__inner {
    flex-direction: column; }
  .footer__left,
  .footer__center,
  .footer__right {
    width: auto; }
  .footer__left {
    order: 1;
    margin: 30px 0 0; }
  .footer__center {
    display: block;
    text-align: center; }
  .footer__logo {
    margin: 0 auto 15px; }
  .footer__right {
    order: 2;
    margin: 30px 0 0; }
  .modal-thanks {
    width: 550px; }
  .modal-thanks__title {
    font-size: 28px; }
  .modal-thanks__text {
    font-size: 16px; }
  .modal-policy {
    width: 550px; } }

@media (max-width: 575px) {
  .header__phone {
    font-size: 15px; }
  .homescreen__slide-title {
    font-size: 24px; }
  .homescreen__slide-text {
    font-size: 18px; }
  .homescreen__item {
    padding: 0 2px; }
  .homescreen__item-inner {
    padding: 7px; }
  .homescreen__item-title {
    font-size: 18px; }
    .homescreen__item-title span {
      font-size: 14px;
      vertical-align: baseline; }
  .homescreen__item-text {
    font-size: 14px; }
  .homescreen__decor:nth-child(2) {
    display: none; }
  .title {
    font-size: 24px;
    text-align: center; }
  .about__content {
    display: block; }
  .about__director {
    width: auto;
    max-width: 270px;
    margin: 0 auto; }
  .about__text {
    margin: 30px 0 0;
    padding: 0; }
    .about__text p {
      margin: 18px 0 0; }
      .about__text p:nth-child(2) {
        font-size: 18px; }
  .clients__content {
    display: block; }
  .clients__left {
    width: auto; }
  .clients__right {
    width: auto;
    margin: 30px 0 0; }
  .clients__right-text {
    margin: 0 -15px;
    padding: 30px 15px;
    font-size: 18px; }
  .services__item-title {
    font-size: 18px; }
  .vacancies__item {
    width: 50%; }
    .vacancies__item:nth-child(16) {
      width: 100%; }
      .vacancies__item:nth-child(16) .vacancies__item-content {
        font-size: 20px; }
  .candidates__content {
    display: block; }
  .candidates__image {
    display: none; }
  .candidates__right {
    width: auto;
    padding: 0; }
  .candidates__hint {
    max-width: none;
    margin: 30px -15px 0;
    padding: 30px 15px;
    font-size: 18px; }
  .resume__form {
    padding: 30px 15px 10px; }
  .resume__form-inputs {
    display: block; }
  .resume__form-input {
    width: auto !important; }
  .cta__form-inputs {
    display: block; }
  .cta__form-input {
    width: auto !important; }
  .cta__form {
    max-width: 470px; }
  .modal-thanks {
    width: 290px;
    padding: 30px 15px; }
  .modal-thanks__title {
    font-size: 24px; }
  .modal-policy {
    width: 290px; } }

@media (max-width: 479px) {
  .header__phone {
    padding: 0;
    font-size: 13px; }
    .header__phone:before {
      display: none; } }
