@charset "UTF-8";

@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 100;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R8aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR9aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq_p9aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq6R9aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq5Z9aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq3p6aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jq0N6aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqyR6aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUFjIg1_i6t8kCHKm459Wx7xQYXK0vOoz6jqw16aX8.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Uw-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr6Ew-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCs16Ew-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtr6Ew-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCtZ6Ew-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCu170w-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCuM70w-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvr70w-.ttf) format('truetype');
}
@font-face {
  font-family: 'Montserrat';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/montserrat/v31/JTUHjIg1_i6t8kCHKm4532VJOt5-QNFgpCvC70w-.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeOvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSd-OvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSKeOvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSG-OvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsS9-SvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSzuSvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSqeSvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: italic;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptwg83HX_SGhgqk2hAjQlW_mEuZ0FsSgOSvHg.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNRwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexc1RwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexZNRwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexaFRwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexU1WwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexXRWwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexRNWwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Mulish';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/mulish/v18/1Ptyg83HX_SGhgqO0yLcmjzUAuWexTpWwaA.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 100;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R6Zsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 200;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhdR-Zsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhqx-Zsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPh9R-Zsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 500;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhxx-Zsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 600;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhKxiZsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhEhiZsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 800;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhdRiZsg.ttf) format('truetype');
}
@font-face {
  font-family: 'Onest';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(https://fonts.gstatic.com/s/onest/v9/gNMZW3F-SZuj7zOT0IfSjTS16cPhXBiZsg.ttf) format('truetype');
}


:root {
--font-family:Montserrat,sans-serif;
--second-family:Mulish,sans-serif;
--font3:Onest,sans-serif
}

* {
padding:0;
margin:0;
border:0
}

*,:before,:after {
box-sizing:border-box
}

:focus,:active {
outline:none
}

a:focus,a:active {
outline:none
}

nav,footer,header,aside {
display:block
}

html,body {
height:100%;
width:100%;
font-size:100%;
line-height:1;
font-size:14px;
-ms-text-size-adjust:100%;
-moz-text-size-adjust:100%;
-webkit-text-size-adjust:100%
}

input,button,textarea {
font-family:inherit
}

input::-ms-clear {
display:none
}

button {
cursor:pointer
}

button::-moz-focus-inner {
padding:0;
border:0
}

a,a:visited {
text-decoration:none
}

a:hover {
text-decoration:none
}

ul li {
list-style:none
}

img {
vertical-align:top
}

h1,h2,h3,h4,h5,h6 {
font-size:inherit;
font-weight:400
}

html {
scroll-behavior:smooth
}

body {
background:#fff;
color:#151515;
height:100%;
font-size:16px;
font-family:var(--font-family)
}

body.hidden {
overflow:hidden
}

.wrapper {
min-height:100vh;
overflow:hidden;
display:flex;
flex-direction:column
}

.page {
flex:1 0 auto
}

._container {
max-width:1246px;
padding:0 15px;
margin:0 auto
}

.header {
position:fixed;
left:0;
top:0;
width:100%;
z-index:99;
padding:25px 0;
transition:.5s
}

.header.active {
background-color:#fff;
box-shadow:0 0 12px 0 #0000001f
}

@media (min-width: 767px) {
.header.active {
padding:15px 0
}

.header.active .header__body {
grid-template-columns:1fr 140px 1fr
}
}

.header.active .header__logo img:first-child {
display:none
}

.header.active .header__logo img:last-child {
display:block!important
}

.header.active .header__langs {
color:#b4b4b4;
background-image:url(../themes/demo/assets/images/header/select-active.svg)
}

.header.active .header__burger rect {
fill:#151515
}

.header.active .header__icon img:first-child {
display:none
}

.header.active .header__icon img:last-child {
display:block!important
}

@media (max-width: 767px) {
.header {
padding:15px 0
}
}

@media (max-width: 480px) {
.header {
padding:10px 0
}
}

.header__body {
display:grid;
align-items:center;
grid-template-columns:1fr 160px 1fr;
transition:.5s
}

@media (max-width: 767px) {
.header__body {
grid-template-columns:1fr 130px 1fr
}
}

@media (max-width: 480px) {
.header__body {
display:flex;
align-items:center;
justify-content:space-between;
flex-direction:row-reverse
}
}

.header__icons {
display:flex;
align-items:center;
column-gap:14px
}

@media (max-width: 480px) {
.header__icons {
display:none
}
}

.header__logo img {
width:100%
}

@media (max-width: 480px) {
.header__logo img {
width:110px
}
}

.header__right {
display:flex;
align-items:center;
column-gap:35px;
justify-content:flex-end
}

@media (max-width: 767px) {
.header__right {
column-gap:20px
}
}

@media (max-width: 480px) {
.header__right {
column-gap:15px
}
}

.header__langs-wrapper {
display:flex;
align-items:center;
column-gap:15px
}

@media (max-width: 767px) {
.header__langs-wrapper {
column-gap:7px
}

.header__langs-wrapper img {
width:17px
}
}

.header__langs {
font-weight:400;
font-size:18px;
color:#fff;
padding-right:15px;
background:url(../themes/demo/assets/images/header/select.svg) right center / 10px no-repeat;
appearance:none;
transition:.4s
}

.header__langs option {
  color: #111;
  background: #fff;
}

@media (max-width: 767px) {
.header__langs {
font-size:15px
}
}

.header__burger {
cursor:pointer
}

.header__burger rect {
transition:.4s
}

section {
margin-top:90px
}

@media (max-width: 480px) {
section {
margin-top:60px
}
}

.main {
position:relative;
height:100vh;
margin-top:0;
background-position:center;
background-size:cover;
background-repeat:no-repeat
}

@media (max-width: 480px) {
.main {
height:auto;
padding:150px 0 80px
}
}

.main__more {
font-weight:400;
font-size:16px;
line-height:150%;
color:#cdcdcd;
font-family:var(--second-family);
transform:rotate(270deg);
position:absolute;
right:-30px;
bottom:115px;
padding-top:10px
}

@media (max-width: 767px) {
.main__more {
display:none
}
}

.main__more::after {
content:"";
display:block;
position:absolute;
right:50px;
top:0;
width:100%;
height:1px;
background-color:#ffffff4d
}

.main::after {
content:"";
display:block;
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
background-color:#00000099
}

.main__container {
height:100%;
position:relative;
z-index:1;
display:flex;
flex-direction:column;
justify-content:center
}

.main__body {
padding-top:60px
}

@media (max-width: 480px) {
.main__body {
padding-top:0
}
}

.main__title {
margin-bottom:15px
}

@media (max-width: 480px) {
.main__title {
margin-bottom:10px
}
}

.main__title {
font-weight:500;
font-size:60px;
line-height:107%;
letter-spacing:.02em;
text-transform:uppercase;
color:#fff
}

@media (max-width: 480px) {
.main__title {
font-size:35px;
line-height:1.3
}
}

.main__text {
font-weight:400;
font-size:22px;
line-height:136%;
color:#d2d2d2;
margin-bottom:35px;
max-width:580px
}

@media (max-width: 480px) {
.main__text {
font-size:16px;
margin-bottom:20px
}
}

.main__button {
font-weight:800;
font-size:16px;
text-align:center;
color:#fff;
font-family:var(--second-family);
display:inline-flex;
align-items:center;
justify-content:center;
padding:15px 35px;
border-radius:5px;
background:#ffffff80
}

@media (max-width: 480px) {
.main__button {
font-size:14px;
padding:12px 25px
}
}

.main__video {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
object-fit:cover
}

.menu {
position:fixed;
left:0;
top:0;
bottom:0;
width:345px;
display:flex;
flex-direction:column;
align-items:flex-end;
justify-content:space-between;
padding:55px 70px 34px;
row-gap:50px;
overflow-y:auto;
background:linear-gradient(117deg,#fff 0%,#ededed 100%);
transform:translateX(-100%);
transition:.8s
}

@media (max-width: 480px) {
.menu {
padding:30px 50px;
width:100%
}
}

.menu.active {
transform:translateX(0)
}

.menu__close {
display:flex;
align-items:center;
column-gap:14px;
cursor:pointer
}

.menu__close span {
font-weight:400;
font-size:14px;
color:#717171
}

.menu__items {
display:flex;
flex-direction:column;
row-gap:50px
}

@media (max-width: 480px) {
.menu__items {
row-gap:40px
}
}

.menu__item {
font-weight:500;
font-size:16px;
text-transform:uppercase;
text-align:right;
color:#2f3540;
cursor:pointer
}

@media (max-width: 480px) {
.menu__item {
font-size:14px
}
}

.menu__bottom {
display:flex;
flex-direction:column;
align-items:flex-end;
row-gap:25px
}

.menu__socials {
display:flex;
align-items:center;
column-gap:10px
}

@media (max-width: 480px) {
.menu__socials img {
width:35px;
height:35px
}
}

.menu2 {
position:fixed;
left:0;
top:0;
bottom:0;
width:345px;
display:flex;
flex-direction:column;
align-items:flex-end;
justify-content:space-between;
padding:55px 70px 34px;
row-gap:50px;
overflow-y:auto;
background:linear-gradient(117deg,#fff 0%,#ededed 100%);
transform:translateX(-100%);
transition:.8s
}

@media (max-width: 480px) {
.menu2 {
padding:30px 50px;
width:100%
}
}

.menu2.active {
transform:translateX(0)
}

.menu2__close {
display:flex;
align-items:center;
column-gap:14px;
cursor:pointer
}

.menu2__close span {
font-weight:400;
font-size:14px;
color:#717171
}

.menu2__items {
display:flex;
flex-direction:column;
row-gap:50px
}

@media (max-width: 480px) {
.menu2__items {
row-gap:40px
}
}

.menu2__back {
display:flex;
align-items:center;
column-gap:25px;
justify-content:flex-end;
cursor:pointer
}

@media (max-width: 480px) {
.menu2__back {
column-gap:15px
}
}

.menu2__back span {
font-weight:300;
font-size:16px;
text-transform:uppercase;
text-align:right;
color:#2f3540
}

@media (max-width: 480px) {
.menu2__back span {
font-size:14px
}
}

.menu2__item {
font-weight:500;
font-size:16px;
text-transform:uppercase;
text-align:right;
color:#2f3540
}

@media (max-width: 480px) {
.menu2__item {
font-size:14px
}
}

.whatsapp {
position:fixed;
right:20px;
bottom:20px;
z-index:99
}

@media (max-width: 480px) {
.whatsapp {
right:10px;
bottom:10px
}
}

.whatsapp img {
width:70px;
height:70px
}

@media (max-width: 480px) {
.whatsapp img {
width:50px;
height:50px
}
}

.title {
font-weight:500;
font-size:38px;
line-height:120%;
letter-spacing:.03em;
text-transform:uppercase;
color:#2f3540;
margin-bottom:40px
}

@media (max-width: 480px) {
.title {
margin-bottom:25px;
font-size:26px
}
}

.title::after {
display:block;
width:45px;
height:2px;
margin-top:20px;
background:#2f3540
}

@media (max-width: 480px) {
.title::after {
margin-top:15px
}
}

.services__items {
display:grid;
grid-template-columns:1fr 1fr;
gap:50px
}

@media (max-width: 992px) {
.services__items {
column-gap:20px
}
}

@media (max-width: 767px) {
.services__items {
grid-template-columns:1fr;
gap:20px
}
}

.item-services {
cursor:pointer;
position:relative
}

.item-services::after {
content:"";
display:block;
position:absolute;
left:-18px;
right:-18px;
top:-18px;
bottom:-18px;
border:1px solid #e0e0e0;
opacity:0;
transition:.5s
}

@media (max-width: 992px) {
.item-services::after {
display:none
}
}

.item-services:hover::after {
opacity:1
}

.item-services:hover .item-services__content {
opacity:0
}

.item-services:hover .item-services__hover {
opacity:1
}

.item-services__image {
position:relative;
padding-bottom:60%;
display:block;
overflow:hidden;
margin-bottom:24px
}

@media (max-width: 767px) {
.item-services__image {
margin-bottom:15px
}
}

.item-services__image img {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
object-fit:cover
}

.item-services__content {
opacity:1;
transition:.5s
}

.item-services__hover {
position:absolute;
bottom:0;
left:0;
right:0;
background-color:#fff;
padding-top:20px;
opacity:0;
transition:.5s;
z-index:1
}

.item-services__button {
display:flex;
align-items:center;
column-gap:10px;
padding:17px;
background-color:#0a4295;
border-radius:5px;
transition:.5s;
display:flex;
align-items:center;
justify-content:center;
width:100%
}

@media (max-width: 480px) {
.item-services__button {
padding:14px
}
}

.item-services__button:hover {
box-shadow:0 0 20px #0a4295
}

.item-services__button span {
font-weight:800;
font-size:16px;
text-align:center;
color:#fff;
font-family:var(--second-family)
}

@media (max-width: 480px) {
.item-services__button span {
font-size:14px
}
}

.item-services__title {
font-weight:600;
font-size:24px;
line-height:108%;
letter-spacing:.1em;
text-transform:uppercase;
color:#2f3540;
margin-bottom:12px
}

@media (max-width: 480px) {
.item-services__title {
font-size:20px;
margin-bottom:8px
}
}

.item-services__text {
font-weight:400;
font-size:14px;
line-height:143%;
color:#666;
margin-bottom:20px
}

@media (max-width: 480px) {
.item-services__text {
margin-bottom:10px
}

.item-services__plus svg {
width:45px;
height:45px
}
}

.videos__items,.gallery__items {
overflow:visible;
position:relative
}

.videos__items:hover .videos__scroll,.gallery__items:hover .videos__scroll,.videos__items:hover .gallery__scroll,.gallery__items:hover .gallery__scroll {
opacity:0;
z-index:0
}

.videos__item,.gallery__item {
display:block;
position:relative;
padding-bottom:85%
}

.videos__item img,.gallery__item img {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
object-fit:cover
}

.videos .swiper-slide,.gallery .swiper-slide {
width:400px
}

@media (max-width: 480px) {
.videos .swiper-slide,.gallery .swiper-slide {
width:250px
}
}

.videos__scroll,.gallery__scroll {
display:flex;
align-items:center;
column-gap:7px;
width:118px;
height:118px;
justify-content:center;
border-radius:50%;
position:absolute;
left:65%;
top:50%;
transform:translateY(-50%);
z-index:1;
background-color:#fff;
transition:.4s
}

@media (max-width: 480px) {
.videos__scroll,.gallery__scroll {
display:none
}
}

.videos__scroll span,.gallery__scroll span {
font-weight:700;
font-size:14px;
line-height:193%;
letter-spacing:.07em;
color:#151515;
font-family:var(--second-family)
}

.numbers__items {
display:grid;
grid-template-columns:1fr 1fr 1fr 1fr;
gap:20px
}

@media (max-width: 992px) {
.numbers__items {
grid-template-columns:1fr 1fr
}
}

@media (max-width: 600px) {
.numbers__items {
grid-template-columns:1fr
}
}

.item-numbers__image {
position:relative;
overflow:hidden;
padding-bottom:90%;
margin-bottom:20px
}

@media (max-width: 992px) {
.item-numbers__image {
margin-bottom:10px
}
}

.item-numbers__image img {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
object-fit:cover
}

.item-numbers__title {
font-weight:600;
font-size:70px;
line-height:120%;
letter-spacing:.03em;
text-transform:uppercase;
color:#2f3540;
border-bottom:1px solid #2f3540;
padding-bottom:10px;
margin-bottom:15px
}

@media (max-width: 480px) {
.item-numbers__title {
font-size:40px;
margin-bottom:10px
}
}

.item-numbers__text {
font-weight:400;
font-size:15px;
line-height:133%;
color:#777
}

.form {
padding:150px 0;
background-position:center;
background-size:cover;
background-repeat:no-repeat;
position:relative
}

@media (max-width: 480px) {
.form {
padding:60px 0
}
}

.form::after {
content:"";
display:block;
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
background:#13131399
}

.form__container {
position:relative;
z-index:1
}

.form__title {
margin-bottom:25px;
color:#fff
}

.form__title::after {
background-color:#fff
}

.form__text {
font-family:var(--second-family);
font-weight:400;
font-size:19px;
line-height:147%;
letter-spacing:.04em;
color:#9f9f9f;
margin-bottom:30px
}

@media (max-width: 480px) {
.form__text {
font-size:16px;
margin-bottom:20px
}
}

.form__inputs {
max-width:520px;
display:grid;
grid-template-columns:1.3fr 1fr;
gap:15px;
margin-bottom:25px
}

@media (max-width: 480px) {
.form__inputs {
grid-template-columns:1fr;
margin-bottom:15px;
gap:10px
}
}

.form__input:nth-child(3) {
grid-column:1 / 3
}

@media (max-width: 480px) {
.form__input:nth-child(3) {
grid-column:auto
}
}

.form__input input,.form__input textarea {
width:100%;
font-weight:400;
font-size:18px;
line-height:133%;
color:#fff;
font-family:var(--second-family);
padding:13px 15px;
background:#fff3;
backdrop-filter:blur(20px)
}

@media (max-width: 480px) {
.form__input input,.form__input textarea {
font-size:16px
}
}

.form__input input::placeholder,.form__input textarea::placeholder {
color:#fff
}

.form__input textarea {
height:100px;
resize:none
}

.form__button {
font-weight:700;
font-size:16px;
letter-spacing:.02em;
text-transform:uppercase;
text-align:center;
color:#fff;
display:inline-flex;
align-items:center;
justify-content:center;
padding:14px 70px;
background:#0a4295;
transition:.5s
}

@media (max-width: 480px) {
.form__button {
font-size:13px;
padding:12px 40px
}
}

.form__button:hover {
box-shadow:0 0 20px #0a4295
}

.geo {
position:relative
}

.geo::after {
content:"";
display:block;
position:absolute;
top:-90px;
right:0;
width:1017px;
height:1463px;
background:url(../themes/demo/assets/images/geo-bg.svg) center / cover no-repeat;
z-index:-1;
transform:translateY(-50%)
}

@media (max-width: 767px) {
.geo::after {
display:none
}
}

.geo__container {
display:flex;
align-items:start;
column-gap:90px
}

@media (max-width: 992px) {
.geo__container {
flex-direction:column;
align-items:start;
row-gap:30px
}
}

.geo__content {
padding-top:120px;
max-width:290px
}

@media (max-width: 1100px) {
.geo__content {
padding-top:0
}
}

@media (max-width: 992px) {
.geo__content {
max-width:100%
}
}

.geo__text {
font-weight:400;
font-size:18px;
line-height:156%;
color:#777
}

@media (max-width: 480px) {
.geo__text {
font-size:14px
}
}

.geo__image {
margin-right:-15px
}

.geo__image img {
max-width:100%
}

.footer {
padding:25px 0;
background:#2f3540
}

.footer__top {
display:flex;
align-items:center;
column-gap:30px;
justify-content:flex-end;
padding-bottom:30px;
border-bottom:1px solid #ffffff1a;
margin-bottom:35px
}

@media (max-width: 480px) {
.footer__top {
column-gap:20px;
padding-bottom:20px;
margin-bottom:20px
}
}

.footer__socials {
display:flex;
align-items:center;
column-gap:10px
}

@media (max-width: 480px) {
.footer__socials {
column-gap:7px
}

.footer__socials img {
width:35px;
height:35px
}
}

.footer__button {
font-weight:700;
font-size:16px;
text-align:center;
color:#0a4295;
line-height:1;
padding:15px 35px;
display:inline-flex;
align-items:center;
justify-content:center;
background-color:#fff;
border-radius:5px;
transition:.5s
}

@media (max-width: 480px) {
.footer__button {
font-size:14px;
font-weight:700;
padding:12px 25px
}
}

.footer__button:hover {
box-shadow:0 0 20px #fff
}

.footer__body {
display:flex;
align-items:start;
justify-content:space-between;
column-gap:80px
}

@media (max-width: 992px) {
.footer__body {
flex-direction:column;
row-gap:30px
}
}

.footer__logo img {
width:160px
}

.footer__content {
display:flex;
align-items:start;
column-gap:80px
}

@media (max-width: 650px) {
.footer__content {
flex-direction:column;
row-gap:30px
}
}

.footer__title {
font-weight:500;
font-size:16px;
letter-spacing:.02em;
text-transform:uppercase;
color:#fff;
font-family:var(--second-family);
margin-bottom:15px
}

.footer__catalog-items {
display:grid;
grid-template-columns:auto auto;
row-gap:10px;
column-gap:30px
}

.footer__catalog-items a {
font-weight:400;
font-size:14px;
color:#cecece;
font-family:var(--second-family);
white-space:nowrap
}

.footer__nav {
display:flex;
flex-direction:column;
row-gap:23px
}

.footer__nav a {
font-weight:500;
font-size:16px;
letter-spacing:.02em;
text-transform:uppercase;
color:#fff;
font-family:var(--second-family)
}

.footer__contacts-items {
display:flex;
flex-direction:column;
row-gap:10px
}

.footer__contacts-items a {
font-weight:400;
font-size:14px;
line-height:114%;
color:#cecece
}

.footer__foot {
display:flex;
align-items:center;
gap:5px;
padding-top:25px;
border-top:1px solid #ffffff1a;
margin-top:90px
}

@media (max-width: 480px) {
.footer__foot {
margin-top:40px;
padding-top:15px
}
}

.footer__foot a {
display:flex;
align-items:center;
justify-content:center
}

.footer__foot span {
font-weight:400;
font-size:13px;
color:#80858e
}

@media (max-width: 480px) {
.footer__foot span {
font-size:11px
}
}

.block__body {
display:flex;
align-items:center;
margin:0 -45px
}

@media (max-width: 992px) {
.block__body {
flex-direction:column;
align-items:start;
row-gap:30px
}
}

@media (max-width: 480px) {
.block__body {
row-gap:20px
}
}

.block__image {
flex:0 0 50%;
padding:0 45px
}

.block__image img {
width:100%
}

.block__content {
flex:1 0 50%;
padding:0 45px
}

.block__content img {
width:100%
}

.block__title {
margin-bottom:34px
}

@media (max-width: 480px) {
.block__title {
margin-bottom:25px
}
}

.block__text {
font-weight:400;
font-size:18px;
line-height:156%;
color:#777;
display:flex;
flex-direction:column;
row-gap:10px
}

@media (max-width: 480px) {
.block__text {
font-size:14px
}
}

.tech__body {
display:grid;
grid-template-columns:1fr 361px;
align-items:center;
column-gap:55px
}

@media (max-width: 1100px) {
.tech__body {
align-items:start;
column-gap:40px
}
}

@media (max-width: 920px) {
.tech__body {
grid-template-columns:1fr;
row-gap:30px
}
}

.tech__images {
display:grid;
grid-template-columns:1fr 1fr;
gap:32px
}

@media (max-width: 1100px) {
.tech__images {
gap:20px
}
}

@media (max-width: 480px) {
.tech__images {
gap:10px
}
}

.tech__image img {
width:100%
}

.tech__items {
display:flex;
flex-direction:column;
row-gap:40px
}

@media (max-width: 480px) {
.tech__items {
row-gap:20px
}
}

.item-tech:not(:last-child) {
padding-bottom:40px;
border-bottom:1px solid #d6deee
}

@media (max-width: 480px) {
.item-tech:not(:last-child) {
padding-bottom:20px
}
}

.item-tech__number {
font-weight:200;
font-size:54px;
line-height:1;
color:#dcdcdc;
font-family:var(--second-family);
margin-bottom:15px
}

@media (max-width: 480px) {
.item-tech__number {
font-size:40px
}
}

.item-tech__title {
font-weight:600;
font-size:23px;
line-height:130%;
color:#2f3540;
margin-bottom:10px
}

@media (max-width: 480px) {
.item-tech__title {
font-size:18px
}
}

.item-tech__text {
font-weight:400;
font-size:14px;
line-height:143%;
color:#5f697c;
font-family:var(--second-family)
}

.partners__items-wrapper {
position:relative
}

.partners__item {
height:100px;
border:1px solid #dcdcdc;
padding:15px;
display:flex;
align-items:center;
justify-content:center
}

@media (max-width: 480px) {
.partners__item {
height:80px
}
}

.partners__item img {
max-width:100%;
max-height:100%
}

.partners__arrows {
display:none
}

@media (max-width: 1300px) {
.partners__arrows {
display:flex;
align-items:center;
column-gap:15px;
justify-content:center;
margin-top:30px
}
}

@media (max-width: 480px) {
.partners__arrows {
margin-top:20px
}
}

.partners__arrow {
position:absolute;
top:50%;
transform:translateY(-50%);
cursor:pointer;
transition:.4s
}

@media (max-width: 1300px) {
.partners__arrow {
position:initial;
transform:translateY(0)
}
}

.partners__arrow.swiper-button-disabled {
opacity:.5
}

.partners__prev {
left:-57px
}

.partners__next {
right:-57px
}

.block--reverse .block__body {
flex-direction:row-reverse
}

@media (max-width: 992px) {
.block--reverse .block__body {
flex-direction:column
}
}

.wrapper-active .page {
margin-top:123.51px
}

@media (max-width: 767px) {
.wrapper-active .page {
margin-top:97px
}
}

@media (max-width: 480px) {
.wrapper-active .page {
margin-top:70.53px
}
}

.wrapper-active .header {
background-color:#fff;
box-shadow:0 0 12px 0 #0000001f
}

.wrapper-active .header__logo img:first-child {
display:none
}

.wrapper-active .header__logo img:last-child {
display:block!important
}

.wrapper-active .header__langs {
color:#b4b4b4;
background-image:url(../themes/demo/assets/images/header/select-active.svg)
}

.wrapper-active .header__burger rect {
fill:#151515
}

.wrapper-active .header__icon img:first-child {
display:none
}

.wrapper-active .header__icon img:last-child {
display:block!important
}

.gallery-page__items {
display:grid;
grid-template-columns:1fr 1fr 1fr;
gap:32px
}

@media (max-width: 992px) {
.gallery-page__items {
grid-template-columns:1fr 1fr;
gap:20px
}
}

@media (max-width: 600px) {
.gallery-page__items {
grid-template-columns:1fr;
gap:15px
}
}

@media (max-width: 480px) {
.gallery-page__items {
gap:10px
}
}

.gallery-page__item {
position:relative;
overflow:hidden;
display:block;
padding-bottom:85%
}

.gallery-page__item img {
position:absolute;
left:0;
top:0;
width:100%;
height:100%;
object-fit:cover
}

.contacts__body {
display:grid;
grid-template-columns:2fr 3fr;
gap:40px
}

@media (max-width: 992px) {
.contacts__body {
grid-template-columns:1fr;
row-gap:30px
}
}

@media (max-width: 480px) {
.contacts__body {
row-gap:20px
}
}

.contacts__items {
border:1px solid silver;
padding:37px 60px;
display:flex;
flex-direction:column;
row-gap:25px
}

@media (max-width: 1100px) {
.contacts__items {
padding:35px 40px
}
}

@media (max-width: 480px) {
.contacts__items {
padding:30px 20px
}
}

.contacts__socials-title {
font-weight:400;
font-size:16px;
line-height:162%;
color:#2f3540;
margin-bottom:17px
}

@media (max-width: 480px) {
.contacts__socials-title {
font-size:14px;
margin-bottom:10px
}
}

.contacts__socials-items {
display:flex;
align-items:center;
column-gap:25px
}

@media (max-width: 480px) {
.contacts__socials-items {
column-gap:10px
}

.contacts__socials-items img {
width:40px;
height:40px
}
}

@media (max-width: 992px) {
.contacts__map {
height:400px
}
}

@media (max-width: 480px) {
.contacts__map {
height:350px
}
}

.contacts__map iframe,.contacts__map div {
width:100%;
height:100%
}

.contact__title {
font-weight:400;
font-size:16px;
line-height:162%;
color:#2f3540;
margin-bottom:10px
}

@media (max-width: 480px) {
.contact__title {
font-size:14px;
margin-bottom:5px
}
}

.contact__text {
display:flex;
align-items:center;
column-gap:30px
}

.contact__text a {
font-weight:400;
font-size:22px;
line-height:109%;
color:#2f3540
}

@media (max-width: 480px) {
.contact__text a {
font-size:16px
}
}

.contact__text svg {
flex-shrink:0
}

@media (max-width: 480px) {
.contact__text svg {
width:15px;
height:auto
}
}

.search__items {
display:flex;
flex-direction:column;
row-gap:60px
}

.search__item {
position:relative
}

.search__item:not(:last-child)::after {
content:"";
display:block;
width:100%;
position:absolute;
bottom:-30px;
left:0;
height:1px;
background-color:#d4d4d4
}

.item-search__image {
margin-bottom:20px
}

.item-search__image img {
max-width:100%
}

.item-search__title {
font-family:var(--font-family);
font-size:24px;
font-weight:500;
line-height:28px;
letter-spacing:0;
text-align:left;
margin-bottom:10px
}

.item-search__text {
font-family:var(--font-family);
font-size:16px;
font-weight:400;
line-height:24px;
letter-spacing:0;
text-align:left;
color:#444;
margin-bottom:20px
}

.item-search__link {
display:flex;
align-items:center;
column-gap:10px
}

.item-search__link span {
font-family:var(--font-family);
text-transform:uppercase;
font-size:16px;
font-weight:700;
line-height:19px;
letter-spacing:.06em;
color:#0a4295
}

.item-search__link svg {
margin-top:-4px
}

.not-found {
font-family:var(--font-family);
font-size:22px;
font-weight:400;
line-height:130%
}

@media (max-width: 480px) {
.not-found {
font-size:16px
}
}

.ss-search-form__input {
margin-bottom:40px;
display:grid;
grid-template-columns:500px auto;
column-gap:10px
}

@media (max-width: 480px) {
.ss-search-form__input {
margin-bottom:30px
}
}

@media (max-width: 767px) {
.ss-search-form__input {
grid-template-columns:1fr;
row-gap:10px
}
}

.ss-search-form__input input {
font-family:var(--font-family);
font-weight:400;
font-size:18px;
line-height:133%;
color:#151515;
padding:13px 15px;
border-radius:10px;
width:100%;
border:1px solid #e4e4e4
}

@media (max-width: 480px) {
.ss-search-form__input input {
font-size:15px;
padding:10px 12px
}
}

.ss-search-form__input input::placeholder {
color:#444
}

.ss-search-form__input button {
font-family:var(--font-family);
font-weight:700;
font-size:18px;
text-align:center;
color:#fff;
border-radius:10px;
width:220px;
display:flex;
align-items:center;
justify-content:center;
background:#0a4295;
transition:.5s
}

@media (max-width: 767px) {
.ss-search-form__input button {
height:44px
}
}

@media (max-width: 480px) {
.ss-search-form__input button {
font-size:14px;
width:140px;
height:40px
}
}

.ss-search-form__input button:hover {
box-shadow:0 0 20px #0a4295
}

.modal {
position:fixed;
left:0;
top:0;
width:100%;
height:100%;
background-color:#15151550;
display:flex;
align-items:center;
justify-content:center;
z-index:99;
padding:10px;
display:none
}

.modal.active {
display:flex
}

.modal__body {
padding:70px 50px;
background-color:#fff;
border-radius:20px;
position:relative
}

@media (max-width: 767px) {
.modal__body {
padding:30px 15px
}
}

.modal__close {
position:absolute;
top:15px;
right:20px;
font-size:40px;
color:#bbb;
background-color:transparent;
cursor:pointer
}

@media (max-width: 480px) {
.modal__close {
font-size:30px;
top:10px;
right:15px
}
}

.modal__title {
margin-bottom:20px;
font-size:35px
}

@media (max-width: 480px) {
.modal__title {
font-size:25px
}
}

.modal__text {
max-width:500px;
font-family:var(--font-family);
font-weight:400;
font-size:15px;
line-height:135%;
color:#444;
margin-bottom:20px
}

@media (max-width: 480px) {
.modal__text {
font-size:14px
}
}

.modal__inputs {
display:grid;
gap:10px;
grid-template-columns:1fr 1fr;
grid-template-areas:"a b" "c c"
}

.modal__input:first-child {
grid-area:a
}

.modal__input:nth-child(2) {
grid-area:b
}

.modal__input:nth-child(3) {
grid-area:c
}

.modal__input input {
width:100%;
font-family:var(--font-family);
font-weight:500;
font-size:14px;
line-height:171%;
color:#151515;
padding:18px 13px 16px;
border-radius:10px;
background:#e8ecf2
}

.modal__input input::placeholder {
color:#828282
}

.modal__button {
font-family:var(--font-family);
font-weight:700;
font-size:16px;
text-align:center;
color:#fff;
display:inline-flex;
align-items:center;
justify-content:center;
padding:15px 40px 13px;
margin-top:25px;
border-radius:10px;
transition:.5s;
background:#0a4295
}

.modal__button:hover {
box-shadow:0 0 20px #0a4295
}

#modalForm_forms_flash .close {
display:none
}

#modalForm_forms_flash p {
font-size:16px;
color:green;
margin-bottom:15px;
line-height:1.3
}

#contactForm_forms_flash .close {
display:none
}

#contactForm_forms_flash p {
font-size:16px;
color:#90ee90;
margin-bottom:15px;
line-height:1.3
}

.products__items-wrapper {
position:relative
}

.products__items {
display:grid;
grid-template-columns:1fr 1fr 1fr;
gap:32px
}

@media (max-width: 1140px) {
.products__items {
grid-template-columns:1fr 1fr;
gap:20px
}
}

@media (max-width: 650px) {
.products__items {
grid-template-columns:1fr
}
}

.products__item {
overflow:hidden
}

.products__arrow {
position:absolute;
top:50%;
transform:translateY(-50%);
cursor:pointer;
transition:.4s
}

.products__arrow.swiper-button-disabled {
opacity:.5
}

.products__prev {
left:-57px
}

.products__next {
right:-57px
}

.products__pagination {
display:flex;
align-items:center;
column-gap:20px;
margin-top:50px;
justify-content:center
}

@media (max-width: 480px) {
.products__pagination {
margin-top:30px
}
}

.products__pagination.swiper-pagination-lock {
display:none
}

.products__pagination .swiper-pagination-bullet {
width:32px!important;
height:3px!important;
opacity:1!important;
margin:0!important;
border-radius:0!important;
background-color:#b7b7b7!important;
transition:.4s
}

.products__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
width:58px!important;
background-color:#000!important
}

.item-products {
border:1px solid #e1e1e1;
padding:40px;
height:300px;
position:relative
}

@media (max-width: 480px) {
.item-products {
padding:20px;
height:250px
}
}

.item-products__title {
font-weight:400;
font-size:27px;
line-height:130%;
letter-spacing:.07em;
text-transform:uppercase;
color:#2f3540;
position:relative;
z-index:1
}

@media (max-width: 480px) {
.item-products__title {
font-size:22px
}
}

.item-products__title::after {
display:block;
width:51px;
height:1px;
background-color:#151515;
margin-top:20px
}

@media (max-width: 480px) {
.item-products__title::after {
margin-top:10px;
width:30px
}
}

.item-products__image {
position:absolute;
right:0;
bottom:0
}

.hack10-loading-wrapper {
height:100vh;
width:100%;
position:fixed;
top:0;
left:0;
z-index:99
}

.banner {
width:100%;
height:100%;
object-fit:cover
}