* {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
*:before,
*:after {
  -webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;
}
::-webkit-scrollbar-button {
    background-image:url('');
    background-repeat:no-repeat;
    width:10px;
    height:0px;
}
::-webkit-scrollbar-track {
    background-color:#fff;
}
::-webkit-scrollbar-thumb {
    -webkit-border-radius: 0px;
    border-radius: 0px;
    background-color:#525252;
}
::-webkit-scrollbar-thumb:hover{
    
}
::-webkit-resizer{
    background-image:url('');
    background-repeat:no-repeat;
    width:10px;
    height:0px;
}
::-webkit-scrollbar{
    width: 2px;
    height: 3px;
}
:root {
  --font-family: "Wix Madefor Display", sans-serif;
  --second-family: "Oranienbaum", serif;
  --third-family: "Playfair Display", serif;
}
html{
    height:100%;
    position: relative;
    font-family: sans-serif;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
}
body{
    position: relative;
    background: #fff;
    margin: 0;
    font-size:16px;
    color:#000;
    font-family: 'GrtskTera-Regular';
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}
article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary {
  display: block;
  margin:0;
}
a {
    color: #000;
    text-decoration: underline;
}
a:hover {
    color:#a05850;
    text-decoration: underline;
}
img{
    display: block;
}
ul{
    padding:0;
    margin:0;
}
ul li{
    list-style: none;
}
.container {
  margin-right: auto;
  margin-left: auto;
  position: relative;
  width:100%;
  max-width:1230px;
  padding:0 15px;
  box-sizing: border-box;
}
.d-flex{
    display: flex;
    flex-wrap:wrap;
}
.nowrap{
    flex-wrap: nowrap;
}
.j-between{
    justify-content: space-between;
}
.j-center{
    justify-content: center;
}
.j-end{
    justify-content: flex-end;
}
.a-center{
    align-items: center;
}
.a-start{
    align-items: flex-start;
}
.a-end{
    align-items: flex-end;
}
.dir-column{
    flex-direction: column;
}
.text-right{
    text-align: right;
}
.overlay{
    width: 100%;
    height: 100%;
    top: 0;
    left: 0;
    background: rgba(37, 37, 37, 0.9);
    position: fixed;
    z-index: 34;
    display: none;
}
.btn{
    display: flex;
    align-items: center;
    justify-content: center;
    text-decoration: none;
    transition:.3s;
    color:#fff;
    border:1px solid #fff;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 18px;
    text-align: center;
}
.btn:hover{
    text-decoration: none;
    background: #fff;
    color:#000;
}
.page-main{
    overflow: hidden;
}
.preload {
    position:fixed;
    top:0px;
    left:0px;
    width:100%;
    height:100%;
    background:#252525;
    transition: all 1s ease-out;
    z-index: 9999;
}
.preload img {
    margin: 0px auto;
    display: block;
    margin-top: 45vh;
    transition: all 1s ease-out;
}
/*Шапка сайта*/
header{
    padding: 45px 0 38px 0;
    top:17px;
    position: fixed;
    width: 100%;
    left: 0;
    z-index: 30;
    transition: .5s;
}
header.scrolled{
    background: rgba(0, 0, 0, 0.47);
    padding: 13px 0 14px 0;
    top:0;
    transition: .5s;
}
header.scrolled img{
    max-height:36px;
    margin-right: 100px;
}
header.scrolled a.btn{
    font-weight: 700;
    font-size: 18px;
    text-decoration: underline;
    text-align: center;
    color: #fff;
    display: inline-block;
    width: auto;
    height: auto;
    border: none;
}
header.scrolled a.btn:hover{
    background:none;
    text-decoration:none;
}
header ul{
    display: flex;
    gap:45px;
}
header ul li{
    display: inline-block;
}
header ul li img{
    margin-right: 33px;
}
header ul li a{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    text-align: center;
    color: #fff;
    text-decoration: none;
}
header ul li a:hover{
    text-shadow: 0 0 2px #fff;
    text-decoration: none;
    color:#fff;
}
header .btn{
    width: 309px;
    height: 73px;
}

/*Первый экран*/
.s-promo{
    padding: 339px 0 140px 0;
    background: url('../images/bg-main.jpg') no-repeat top center;
}
.s-promo h1{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 96%;
    color: #fff;
    margin:0;
    text-transform: uppercase;
}
.s-promo h1 span{
    display:block;
    font-family: var(--third-family);
    font-style: italic;
    font-size: 64px;
    text-transform: none;
}
.s-promo p{
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 19px;
    line-height: 168%;
    text-transform: uppercase;
    color: #e5e5e5;
    margin:40px 0 0 0;
}
.s-promo .btn{
    width: 340px;
    height: 73px;
    margin:60px 0 0 0;
}
.info__nums{
    padding: 302px 0 0 0;
}
.info__nums .item{
    text-align: center;
    display: flex;
    flex-direction: column;
    align-items: center;
    min-width: 177px;
}
.info__nums span{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 120px;
    line-height: 100%;
    text-align: center;
    color: #cbced0;
    position: relative;
    display: block;
    padding: 0 40px 0 0;
    transition: .3s;
}
.info__nums .item span:hover{
    color:#fff;
}
.info__nums span:after{
    content:'+';
    position: absolute;
    right:0px;
    top:50%;
    margin-top: -50px;
    font-size: 90px;
    color: #cbced0;
    font-family: var(--second-family);
    font-weight: 400;
}
.s-promo .info__nums p{
    padding:19px 0 0 0;
    margin:3px auto 0;
    max-width: 177px;
    border-top: 1px solid #545456;
    text-transform: none;
    opacity: 0.9;
    width: 100%;
    display: inline-block;
    font-weight: 400;
    font-size: 18px;
    line-height: 133%;
    text-align: center;
    color: #fff;
}
.s-promo .info__nums p b{
    opacity: 1;
    text-transform: uppercase;
}


.section-about{
    padding:184px 0 199px 0;
}
.section-about h2{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 48px;
    line-height: 144%;
    text-transform: uppercase;
    text-align: center;
    color: #000;
    margin:0 0 66px 0;
}
.section-about h2 span{
    font-family: var(--third-family);
    font-style: italic;
    font-size: 40px;
    line-height: 153%;
    color: #696969;
    display: block;
    text-transform: none;
    margin-top: -4px;
}
.about-wrap{
    max-width: 545px;
    padding-bottom: 30px;
}
.about-wrap p{
    font-weight: 400;
    line-height: 168%;
    color: #252525;
    font-weight: 400;
    font-size: 19px;
    margin:50px 0 0 0;
    font-family: var(--font-family);
}
.about-wrap ul{
    padding: 15px 0 0 0;
    margin:0;
}
.about-wrap ul li{
   /*text-transform: uppercase;*/
    margin:20px 0 0 20px;
    font-weight: 400;
    font-size: 19px;
    line-height: 111%;
    color: #000;
    font-family: var(--font-family);
    list-style: disc;
}

.section-directions{
    padding: 188px 0 170px 0;
    background: #f7f7f6;
}
.section-directions h2{
    margin:0;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 74%;
    text-transform: uppercase;
    color: #000;
}
.directions__list{
    padding: 78px 0 0 0;
    margin:0;
    display: flex;
    justify-content: space-between;
    list-style-type: none; 
    counter-reset: num;
}
.directions__list .item{
    width: calc(100%/3 - 20px);
    position: relative;
}
.directions__list .item:nth-child(2){
    width: calc(100%/3 + 40px);
}
.directions__list .item:first-child{
    padding: 0 55px 0 0;
}
.directions__list .item:nth-child(2){
    padding: 0 55px;
    border-left: 1px solid #696969;
    border-right: 1px solid #696969;
}
.directions__list .item:last-child{
    padding: 0 0 0 55px;
}
.directions__list .item p{
    margin:30px 0 0 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 19px;
    color: #252525;
    line-height: 168%;
    opacity: 0.9;
    z-index: 1;
    position: relative;
    padding: 0 30px 0 0;
}
.directions__list .item p.name{
    opacity: 1;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 40px;
    line-height: 123%;
    text-transform: uppercase;
    color: #000;
    margin: 78px 0 0 0;
    padding: 0 10px 0 0;
}
.directions__list .item:before {
    content: '0'counter(num); 
    counter-increment: num;
    display: inline-block;  
    position: absolute;
    bottom: 200px;
    right: 25px;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 180px;
    line-height: 27%;
    letter-spacing: -0.05em;
    text-transform: uppercase;
    color: #f1f1f0;
    z-index: 0;
}
/*Портфолио*/
.section-portfolio{
    padding: 214px 0 0 0;
    position: relative;
    overflow: hidden;
}
.section-portfolio h2{
    margin:0;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 74%;
    text-transform: uppercase;
    color: #000;
} 
.portfolio-slider{
    padding: 85px 0 0 0;
    width: calc(50vw + 50%);
}
.portfolio-slider .item{
    opacity: 0.12;
    margin:0 180px 0 0;
}
.portfolio-slider .slick-current{
    opacity: 1;
}
.portfolio-slider .portfolio-wrap{
    max-width: 630px;
    padding-bottom: 23px;
} 
.portfolio-slider .item img{
    margin-right: 90px;
}
.portfolio-wrap p.subtitle{
    font-family: var(--font-family);
    font-weight: 600;
    font-size: 19px;
    line-height: 150%;
    color: #252525;
    margin:0;
}
.portfolio-wrap p.name{
    margin:19px 0 0 0;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 48px;
    line-height: 108%;
    letter-spacing: -0.01em;
    text-transform: uppercase;
    color: #000;
}
.portfolio-wrap p{
    margin:34px 0 0 0;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 19px;
    line-height: 150%;
    color: #252525;
    padding: 0 55px 0 0;
}
.portfolio-wrap .price{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 120px;
    line-height: 108%;
    color: #adaaab;
    margin:55px 0 0 0;
}
.portfolio-wrap .price b{
    font-size: 90px;
}
.portfolio-wrap .price span{
    font-size: 48px;
    margin-left: -15px;
    text-transform: uppercase;
}
.nav-portfolio{
    position: absolute;
    bottom:0;
    left:0;
    width: 100%;
    z-index: 4;
}
.nav-btn {
    bottom:228px;
    position: absolute;
    width: 41px;
    height: 41px;
    border:none;
    cursor: pointer;
    z-index: 4;
    background: url('../images/arrow-left.svg') no-repeat;
}
.btn-prev{
    right:81px;
}
.btn-next{
    right:30px;
    transform: rotate(180deg);
}
.section-clients + .section-about{
    padding:195px 0 150px 0;
}
.section-clients + .section-about .about-wrap{
    max-width: 585px;
    padding-top: 40px;
    padding-right: 40px;
}
.section-clients + .section-about .about-wrap ul{
    /*padding: 55px 0 0 0;*/
    margin:0;
}
.section-clients + .section-about .about-wrap ul li{
    /*margin: 0 0 58px 0;*/
}
.section-clients + .section-about  h2 {
    /*margin: 0 0 15px 0;*/
}
.section-clients{
    position: relative;
    overflow: hidden;
    background: #f7f7f6;
    padding: 210px 0 230px 0;
}
.section-clients h2{
    margin:0;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 74%;
    text-transform: uppercase;
    color: #000;
}
.logos-slider{
    padding: 100px 0 70px 0;
    width: calc(50vw + 50%);
    border-bottom: 1px solid #696969;
}
.logos-slider .item{
    width: 235px;
    height: 102px;
    display:flex;
    align-items: center;
    justify-content: center;
}
.bank-slider{
    margin:80px 0 0 0;
}
.bank-slider figure{
    width: 209px;
    height: 75px;
    display:flex;
    align-items: center;
    justify-content: center;
}


.section-strategy{
    width: 100%;
    height: 668px;
    background: url('../images/bg-marketing.jpg') no-repeat top center;
    padding: 232px 0 0 0;
}
.section-strategy h2{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 96%;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    margin:0;
}
.section-strategy h2 span{
    font-family: var(--third-family);
    font-style: italic;
    font-size: 64px;
    text-transform: none;
    line-height: 100%;
}

.section-company{
    padding: 210px 0;
}
.section-company img{
    max-width: 100%;
}
.company-wrap{
    max-width: 512px;
}
.company-wrap h2{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 96%;
    text-transform: uppercase;
    color: #000;
    margin:0 0 50px 0;
    display: inline-block;
}
.company-wrap p{
    font-family: var(--font-family);
    font-weight: 400;
    color: #252525;
    font-size: 19px;
    line-height: 168%;
    margin:30px 0 0 0;
}
.company-wrap p b{
    font-weight: 600;
    color:#000;
}
.company-wrap p.snos{
    font-family: var(--third-family);
    font-style: italic;
    font-weight: 400;
    font-size: 32px;
    line-height: 140%;
    color: #696969;
    margin:95px 0 0 0;
    display: inline-block;
}



.section-services{
    background: #f7f7f6;
    padding: 210px 0 100px 0;
}
.section-services h2{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 72px;
    line-height: 74%;
    text-transform: uppercase;
    color: #000;
    margin:0;
}
.section-services ol{
    padding:0;
    margin:0;
    list-style-type: none; 
    counter-reset: num;
}
.section-services ol > li{
    border-bottom: 1px solid #696969;
    padding:90px 0;
    position: relative;
    z-index: 2;
}
.section-services ol > li:last-child{
    border:none;
}
.section-services ol > li:before {
    content: '0'counter(num); 
    counter-increment: num;
    display: inline-block;  
    position: absolute;
    top: 130px;
    left: 210px;
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 180px;
    line-height: 27%;
    letter-spacing: -0.05em;
    text-transform: uppercase;
    color: #f1f1f0;
    z-index: 0;
}
.section-services ol > li:nth-child(n+10):before {
    content: counter(num); 
}
.section-services ol > li p{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 40px;
    line-height: 123%;
    text-transform: uppercase;
    color: #000;
    margin:0;
    z-index: 2;
    position: relative;
}
.section-services ol > li ul{
    column-count: 2;
    padding: 38px 100px 0 0;
}
.section-services ol > li ul li{
    max-width: 450px;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 19px;
    line-height: 187%;
    color: #252525;
    z-index: 2;
    position: relative;
}


footer{
    padding: 170px 0 100px 0;
    background: url('../images/bg-footer.jpg') no-repeat top center;
}
footer p.title{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 48px;
    line-height: 104%;
    text-transform: uppercase;
    color: #fff;
    margin:20px 0 0 0;
}
footer p span{
    font-family: var(--third-family);
    font-style: italic;
    font-size: 35px;
    display: block;
    text-transform: none;
    margin-top: 55px;
}
footer p{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 19px;
    line-height: 168%;
    /*text-transform: uppercase;*/
    color: #e5e5e5;
    margin:55px 0 0 0;
}
form{
    max-width: 423px;
}
form input{
    border:none;
    border-bottom: 1px solid rgba(255,255,255,0.7);
    outline: none;
    width: 100%;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    color: #fff;
    margin:0 0 40px 0;
    height: 60px;
    background: none;
}
form input::-webkit-input-placeholder { 
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    color: #fff;
}
form input:-moz-placeholder { 
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    color: #fff; 
}
form button{
    border:none;
    cursor: pointer;
    border: 1px solid #fff;
    width: 100%;
    height: 73px;
    background: #d3d5d6;
    transition:.3s;
    display: flex;
    align-items: center;
    justify-content: center;
    font-family: var(--font-family);
    font-weight: 700;
    font-size: 18px;
    text-align: center;
    color: #000;
    margin:57px 0 0 0;
}
form button:hover{
    background: #fff;
}
form label{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 12px;
    color: #aaaaab;
    margin:35px 0 0 0;
    display: inline-block;
}
form label a{
    text-decoration: underline;
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 12px;
    color: #fff;
}
form label a:hover{
    text-decoration: none;
    color:#fff;
}
.bottom{
    border-top: 1px solid rgba(255,255,255,0.32);
    margin: 97px 0 0 0;
    padding: 105px 0 0 0;
}
.bottom a.phone{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    line-height: 226%;
    color: #fff;
    text-decoration: none;
    padding: 0 0 0 19px;
    background: url('../images/icon-phone.svg') no-repeat left center;
}
.bottom a.email{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 18px;
    line-height: 226%;
    color: #fff;
    text-decoration: none;
    padding: 0 0 0 19px;
    background: url('../images/icon-email.svg') no-repeat left center;
}
.bottom ul{
    padding: 0;
    margin: 0;
}
.bottom ul li{
    margin: 0;
}
.bottom ul li a{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 13px;
    line-height: 180%;
    color: #aaaaab;
    text-decoration: none;
}
.bottom ul li a:hover{
    color:#fff;
    text-decoration: none;
}
.bottom a.btn{
    width: 293px;
    height: 73px;
}
.bottom .contact{
    display: flex;
    flex-direction: column;
}
.service-slider .slick-arrow{
    width:27px;
    height:19px;
    position: absolute;
    z-index: 1;
    bottom:0;
    border:none;
    cursor: pointer;
    font-size: 0;
}
.service-slider .slick-next{
    right:3px;
    background: url('../images/arr-w.png') no-repeat;
    transform: rotate(180deg);
}
.service-slider .slick-prev{
    right:55px;
    background: url('../images/arr-w.png') no-repeat;
}
.mobile{
    display: none!important;
}
.popup{
    display: none;
    width:100%;
    max-width: 620px;
    left:0;
    right:0;
    margin:auto;
    background: none;
    position: fixed;
    z-index: 35;
    top:50%;
    margin-top:-330px;
    padding: 45px 0 0 0;
}
.popup.active{
    display: block;
}
.popup .title{
    font-family: var(--second-family);
    font-weight: 400;
    font-size: 48px;
    line-height: 104%;
    text-transform: uppercase;
    text-align: center;
    color: #fff;
    margin:0;
}
.popup form{
    margin: 40px auto 0;
}
.popup .title span{
    font-family: var(--third-family);
    font-style: italic;
    font-size: 40px;
    text-transform: none;
    display: block;
}
.popup .close{
    background: url('../images/icon-close.svg') no-repeat;
    position: absolute;
    right:0;
    top:0;
    cursor: pointer;
    z-index: 1;
    width:21px;
    height: 21px;
}
#thank{
    margin-top: -100px;
}
.cookie{
    border-radius: 6px;
    width:calc(100% - 20px);
    max-width: 509px;
    left:10px;
    bottom:10px;
    position: fixed;
    z-index: 3;
    box-shadow: 0 4px 4px 0 rgba(0, 0, 0, 0.25);
    background: #f3f3f2;
    padding: 20px 40px 23px 40px;
}
.cookie_notice {
    display: none;
    position: fixed;
    z-index: 9999999;
    bottom: 20px;
    width: 100%;
}
.cookie p{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 14px;
    line-height: 130%;
    text-align: center;
    color: #313131;
    margin:0;
}
.cookie .btn{
    border: 1px solid #696969;
    width: 167px;
    height: 36px;
    font-family: var(--font-family);
    font-weight: 500;
    font-size: 14px;
    text-align: center;
    color: #696969;
    margin:9px auto 0;
    transition: .5s;
}
.cookie .btn:hover{
    background: #252525;
    color: #fff;
}
.mobile-menu{
    padding: 30px 20px;
    position: fixed;
    left:-9999px;
    top:0;
    height: 100%;
    width: 100%;
    max-width: 768px;
    transition: 1s;
    background: #000;
}
.mobile-menu .d-flex{
    gap:150px;
    flex-direction: column;
    align-items: flex-start;
}
.mobile-menu .close{
    width:41px;
    height:33px;
    position: absolute;
    background: url('../images/close-menu.svg');
    right:16px;
    top:55px;
}
.mobile-menu.active{
    left:0;
    z-index: 31;
}
.mobile-menu ul{
    padding: 0;
    margin:0;
}
.mobile-menu li{
    margin:15px 0 0 0;
}
.mobile-menu li a{
    font-family: var(--font-family);
    font-weight: 400;
    font-size: 20px;
    line-height: 127%;
    color: #fff;
    text-decoration: none;
}
.mobile-menu .btn{
    width: 100%;
    height: 73px;
}
.client-slider{
    display: none;
    padding: 65px 0 0 0;
}
.client-slider .d-flex{
    justify-content: center;
    gap:20px;
}
.client-slider figure{
    height:90px;
    width:calc(100%/3 - 40px/3);
    display: flex;
    align-items: center;
    justify-content: center;
}
.client-slider figure img{
    max-width: 100%;
    max-height:90px;
}
.client-slider .slick-arrow{
    bottom:-110px;
    position: absolute;
    width: 41px;
    height: 41px;
    border:none;
    cursor: pointer;
    z-index: 4;
    font-size: 0;
    background: url('../images/arrow-left.svg') no-repeat;
}
.slick-prev{
    left:50%;
    margin-left:-46px;
}
.slick-next{
    right:50%;
    margin-right:-46px;
    transform: rotate(180deg);
}
.toTop{
    width: 65px;
    height: 65px;
    position: fixed;
    bottom:20px;
    right:20px;
    background: url('../images/arrow-up.svg') no-repeat;
    z-index: 2;
}
.toTop:hover{
    background: url('../images/arrow-up-hov.svg') no-repeat;
}
header.scrolled ul li img{
    max-width: 85px;
} 
@media (max-width: 768px) {
    .mobile{
        display: block!important;
    }
    h2{
        text-align: center;
    }
    header{
        top:0;
    }
    header ul{
        width: 100%;
        justify-content: space-between;
    }
    header ul li,
    header .btn,
    header.scrolled a.btn{
        display: none;
    }
    header ul li:first-child{
        display: block;
    }
    header .menu{
        width: 43px;
        height: 34px;
        display: flex;
        transition: .3s;
        background: url(../images/icon-burger.svg) no-repeat;
    }
    header ul li img{
        max-width: 65px;
        margin:0;
    }
    header:before{
        display: none;
    }
    header.scrolled{
        padding: 10px 0;
    }
    .s-promo{
        padding: 240px 0 175px 0;
        background: url('../images/bg-mobile.jpg') no-repeat top center;
        background-size: cover;
    }
    .s-promo h1{
        font-size: 42px;
        text-align: center;
    }
    .s-promo h1 span{
        font-size: 34px;
    }
    .s-promo p{
        font-size: 16px;
        margin: 50px 0 0 0;
        text-align: center;
        line-height: 200%;
    }
    .s-promo p br{
        display: none;
    }
    .s-promo .btn{
        height: 81px;
        width: 100%;
        margin:60px 0 0 0;
    }
    .info__nums{
        padding: 155px 0 0 0;
        flex-direction: column;
        justify-content: center;
        gap:80px;
    }
    .info__nums span{
        font-size:95px;
    }
    .s-promo .info__nums p{
        font-size: 17px;
        padding:0;
        border:none;
        max-width: 100%;
    }
    .s-promo .info__nums p b{
        display:block;
    }
    .section-about {
        padding: 110px 0 55px 0;
    }
    .section-about h2{
        font-size: 35px;
        margin: 0 0 53px 0;
        line-height: 130%;
    }
    .section-about h2 span{
        font-size: 27px;
        margin-top: 0;
    }
    .section-about h2 br{
        display: none;
    }
    .section-about img{
        order:1;
        max-width: 100%;
    }
    .about-wrap{
        order:2;
        padding: 37px 0 0 0;
        text-align: center;
    }
    .about-wrap p{
        font-size: 17px;
        line-height: 180%;
        margin: 30px 0 0 0;
    }
    .about-wrap ul{
        padding: 35px 0 0 0;
    }
    .about-wrap ul li{
        font-size:16px;
        list-style: none;
        text-transform: uppercase;
        margin: 20px 0 0 0px;
    }
    .section-clients{
        padding:105px 0 180px 0;
    }
    .section-clients h2{
        font-size: 42px;
    }
    .bank-slider,
    .logos-slider{
        display: none;
    }
    .client-slider{
        display: block;
    }
    .section-directions{
        padding:105px 0 25px 0;
    }
    .section-directions h2{
        font-size: 42px;
    }
    .directions__list{
        padding: 60px 0 0 0;
        flex-wrap: wrap;
    }
    .directions__list .item,
    .directions__list .item:first-child,
    .directions__list .item:nth-child(2),
    .directions__list .item:last-child{
        width: 100%;
        margin:0 0 80px 0;
        border:none;
        padding: 0;
        text-align: center;
    }
    .directions__list .item img{
        margin: 0 auto;
        max-width: 100%;
    }
    .directions__list .item p.name{
        margin: 48px auto 0;
        padding: 0;
    }
    .directions__list .item p{
        margin: 15px auto 0;
        padding: 0;
        max-width: 300px;
    }
    .directions__list .item:before{
        top:475px;
    }
    .section-portfolio{
        padding: 90px 0 180px 0;
    }
    .section-portfolio h2{
        font-size: 42px;
        line-height: 126%;
    }
    .portfolio-slider{
        padding: 65px 0 0 0;
        width: 100%;
    }
    .portfolio-slider .portfolio-wrap{
        display: flex;
        flex-direction: column;
        max-width: 100%;
        padding: 0;
    }
    .portfolio-wrap p{
        order:1;
        text-align: center;
        padding: 0;
        font-size: 17px;
    }
    .portfolio-wrap p.name{
        font-size: 40px;
        padding: 0;
    }
    .portfolio-wrap .price{
        order:0;
    }
    .portfolio-slider .item{
        width: 448px;
        margin:0 40px 0 0;
    }
    .portfolio-slider .item img{
        display: none;
    }
    .portfolio-slider .item img.mobile{
        display: block;
        margin:0 0 30px 0;
    }
    .portfolio-slider .item .d-flex{
        flex-direction: column;
        align-items: flex-start;
    }
    .portfolio-wrap .price{
        margin:0;
        font-size: 95px;
    }
    .portfolio-wrap .price b{
        font-size: 80px;
    }
    .portfolio-wrap .price span{
        font-size: 30px;
    }
    .nav-btn{
        top:50px;
        bottom:auto;
    }
    .btn-prev{
        left:50%;
        margin-left: -45px;
    }
    .btn-next{
        right:50%;
        margin-right: -45px;
    }
    .section-clients + .section-about{
        padding: 100px 0 77px 0;
    }
    .section-clients + .section-about h2{
        margin:0 0 53px 0;
    }
    .section-clients + .section-about .about-wrap{
        padding: 53px 0 0 0;
        max-width: 100%;
        width: 100%;
    }
    .section-clients + .section-about .about-wrap p{
        margin:25px auto 0;
        max-width: 390px;
        line-height: 190%;
    }
    .section-clients + .section-about .about-wrap ul{
        padding: 35px 0 0 0;
    }
    .section-clients + .section-about .about-wrap ul li {
        margin: 0 0 20px 0;
    }
    .section-strategy {
        height: 515px;
        padding: 170px 0 0 0;
    }
    .section-strategy h2{
        font-size: 42px;
        line-height: 70%;
    }
    .section-strategy h2 span{
        font-size: 34px;
        line-height: 130%;
        display: block;
        padding: 8px 0 0 0;
    }
    .section-company{
        padding: 100px 0;
    }
    .company-wrap{
        max-width: 100%;
        width: 100%;
    }
    .company-wrap h2{
        text-align: center;
        font-size: 42px;
        display: block;
    }
    .company-wrap p{
        font-size: 17px;
        text-align: center;
        line-height: 190%;
        max-width: 390px;
        margin:30px auto 0;
    }
    .company-wrap p.snos{
        font-size: 23px;
        margin:34px auto 0;
        width: 100%;
        text-align: center;
        display: block;
        line-height: 160%;
    }
    .section-company img{
        margin: 60px auto 0;
        max-width: 100%;
    }

    .section-services{
        padding: 105px 0 60px 0;
    }
    .section-services h2{
        font-weight: 400;
        font-size: 42px;
        line-height: 126%;
        text-align: center;
        color: #000;
    }
    .section-services ol{
        padding: 15px 0 0 0;
    }
    .section-services ol > li ul{
        column-count: 1;
        padding: 29px 0 0 0;
        display: none;
    }
    .section-services ol > li ul li{
        font-size: 17px;
    }
    .section-services ol > li p{
        font-size: 30px;
        line-height: 140%;
        color: #000;
    }
    .section-services ol > li{
        padding: 45px 0;
    }
    .section-services ol > li:after{
        content:'';
        width: 13px;
        height: 13px;
        background: url('../images/plus.svg') no-repeat;
        right:0;
        top:60px;
        position: absolute;
        transform: rotate(45deg);
        transition: .5s;
    }
    .section-services ol > li:before{
        font-size: 0px;
    }
    .section-services ol > li.active:before{
        font-size: 180px;
    }
    .section-services ol > li.active:after{
        transform: none;
    }
    .section-services ol > li:before{
        top:80px;
    }
    footer {
        padding: 135px 0 90px 0;
        background: url(../images/bg-mobile.jpg) no-repeat top center;
        background-size: cover;
    }
    footer p.title{
        font-size: 35px;
        text-align: center;
        margin:0;
    }
    footer p span{
        font-size: 27px;
    }
    footer p{
        font-size: 16px;
        line-height: 200%;
        text-align: center;
        margin: 45px auto 0;
        max-width: 310px;
        display: block;
    }
    footer p br{
        display: none;
    }
    footer p.title{
        line-height: 130%;
        padding: 0 20px;
        max-width: 100%;
    }
    form{
        max-width: 100%;
        padding: 80px 0 0 0;
    }
    form input{
        padding: 0 0 0 12px;
        margin: 0 0 35px 0;
    }
    form label{
        text-align: center;
    }
    form button{
        margin: 60px 0 0 0;
    }
    .bottom{
        margin: 100px 0 0 0;
        padding: 60px 0 0 0;
    }
    .bottom .d-flex{
        flex-direction: column;
        align-items: center;
    }
    .bottom a.phone{
        order:1;
        margin:0;
        padding: 0 0 0 24px;
    }
    .bottom a.email{
        order:2;
        margin:20px 0 0 0;
        padding: 0 0 0 30px;
    }
    .bottom a{
        order:3;
        margin:40px 0 0 0;
    }
    .bottom ul{
        order:4;
        padding: 64px 0 0 0;
        text-align: center;   
    }
    .popup{
        padding: 15px;
    }
    .popup .title,
    .popup .title span{
        font-size: 38px;
    }
    .popup form{
        margin:0;
        padding: 40px 0 0 0;
    }
    .popup form button{
        margin: 10px 0 0 0;
    }
    .popup .close{
        right:30px;
        top:-30px;
    }
    .overlay{
        background: rgba(37,37,37,1);
    }
}
@media (max-width: 450px) {
    .portfolio-slider .item{
        width: 100%;
        margin:0;
    }
}
#load {
    display:none;
}