:root {
    --text-primary: #333;
    --text-orange: #ffc107;
    --el-border: #EBEDF0;
    --c-red: #FF3347;
    --color-green: #00BFA5;
    --color-pink: #DE22CE;
    --color-pink-light: #FCE9FA;
    --color-green-light: #E7FBFA;
    --color-black: #0F2240;
    --color-red: #FB5959;
    --color-gray: #637282;
    --color-lightgray: #F5F7FA;
    --color-lightgray2: #EEF0F2;
    --color-tretiyary: #9CA1AD;
    --color-purple: #8006D5;
    --color-orange: #FFA800;
    --color-navy: #353057;
    --color-green1: #43F0AB;
    --color-primary: #1a237e;
    --color-el-faceplace: #F5F7F7;
    --text-bigger: 30px;
    --text-big: 24px;
    --text-medium-big: 20px;
    --text-medium: 18px;
    --text-small-medium: 14px;
    --text-small: 12px;
    --text-smaller: 10px;
}

html {
    scroll-behavior: smooth;
}

*,
*::before,
*::after {
    box-sizing: border-box;
}

ul,
ol {
    padding: 0;
    list-style: none;
}

body,
h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
li,
figure {
    margin: 0;
    font-weight: normal;
}

h1 {
    margin: 0;
}
    
body {
    min-height: 100vh;
    scroll-behavior: smooth;
    text-rendering: optimizeSpeed;
    font-family: "Roboto", -apple-system, BlinkMacSystemFont, "Segoe UI", "Oxygen", "Ubuntu", "Helvetica Neue", Arial, sans-serif;
    font-size: 16px;
    line-height: 1.4;
    overflow-x: hidden !important;
    color: var(--text-primary);
    background-color: #030407;
    touch-action: manipulation;
    -webkit-tap-highlight-color: transparent;
}

body.hidden {
    overflow: hidden !important;
}

a {
    text-decoration: none;
}

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

input {
    border: none;
}

input,
button,
textarea,
select,
a {
    outline: none;
    font: inherit;
}

input:focus,
button:focus,
textarea:focus,
select:focus,
a:focus {
    outline: none;
}

button {
    cursor: pointer;
    border: none;
}

button, a {
    color: var(--text-primary)
}
    
select {
    background: #fff
}
    
input::-webkit-outer-spin-button,
input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

h1 {
    font-size: var(--text-big);
    font-weight: 500;
}

input::placeholder {
    color: #9CA1AD;
}

input {
    font-size: 14px;
}

input[type=number] {
    -moz-appearance: textfield;
}

select {
    background: transparent;
    height: 42px;
    padding: 11px 14px;
    border: solid 1px var(--color-lightgray2);
    border-radius: 6px;
    width: 100%;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    /* background-image: url('/icons/select_tri.svg'); */
    background-repeat: no-repeat;
    background-position: right 13px center;
    font-size: var(--text-small-medium);
}

label {
    display: block;
}

.layout {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    min-height: 100vh;
    flex-direction: column;
}

.layout_cell {
    max-width: 1280px;
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    position: relative;
    z-index: 2;
    padding-left: 15px;
    padding-right: 15px;
}

.layout_cell-header {
    padding-top: 20px;
    width: 100%;
    background-color: aliceblue;
    position: relative;
}

.layout_cell-header .layout_cell {
    position: relative;
}

.layout_cell-header::before {
    content: '';
    position: absolute;
    background-image: url('../img/city.jpg');
    width: 100%;
    height: 100%;
    background-size: cover;
    top: 0;
    left: 0; 
    z-index: 1;
    box-shadow: inset 0 0 100px 20px #000000bf
}

.layout_cell-header::after {
    content: '';
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0; 
    z-index: 1;
    background: #10122c;
    opacity: .6;
}

.layout_cell-header .layout_cell::before {
    content: '';
    background-image: url(../img/man.png);
    position: absolute;
    width: 70%;
    height: 85%;
    right: 0;
    bottom: -10px;
    z-index: -1;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center bottom;
}

.layout_cell-body {
    height: 100%;
    width: 100%;
    flex: 1 0 100%;
}

.top__line {
    display: flex;
    justify-content: space-between;
    align-items: center;
    /* position: abs; */
}

.navbar {
    display: flex;
    justify-content: flex-start;
    align-items: center;
}

.navbar-item {
    margin-right: 28px;
}

.navbar-item:last-child {
    margin-right: 0;
}

.navbar-link {
    font-size: 16px;
    color: #fff;
    white-space: nowrap;
    transition: 150ms;
}

.navbar-link:hover {
    color: var(--text-orange);
}

.top__line .nav,
.top__line .logo,
.top__line .call {
    width: 33%;
}

.top__line .logo {
    width: 23%;
}

.wp {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    margin-right: 12px;
}

.wp img {
    margin-right: 8px;
    width: 32px;
}

.wp{
    color: #fff;
    transition: 150ms;
}

.wp:hover {
    opacity: .8;
}

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

.top__line .btn {
    padding: 12px 60px;
    font-size: 16px;
}

.btn {
    display: inline-block;
    padding: 8px 24px;
    background-color: lightgray;
    border-radius: 10px;
    font-size: 14px;
    transition: 150ms;
    cursor: pointer;
}

.btn:hover {
    opacity: .95;
    scale: .95
}

.hide {
    display: none;
}

.btn-primary {
    background: var(--color-primary);
    color: #fff;
}

.content {
    padding: 80px 0;
}

.title span {
    color: var(--text-orange);
    line-height: 1;
    font-size: 48px;
    letter-spacing: -2px;
    text-transform: uppercase;
    margin-bottom: 10px;
    display: inline-block;
    margin-right: 20px;
    font-weight: 600;
}

.oclients-item span::first-letter,
.bc-title::first-letter,
.title span::first-letter {
    color: #ff5722;
}

.title span:last-child {
    margin-right: 0;
}

.mt-service {
    margin-top: 60px;
}

.sub-title {
    display: block;
    position: relative;
    font-size: 28px;
    text-transform: uppercase;
    letter-spacing: -1px;
    font-weight: 600;
    padding-left: 80px;
    color: #fff;
}

.sub-title:before {
    content: '';
    position: absolute;
    width: 60px;
    height: 4px;
    background: #fff;
    border-radius: 8px;
    left: 0;
    top: calc(50% - 2px);
}

.profit {
    margin-top: 30px;
    color: #c0c0c0;
    font-size: 18px
}

.profit span ~ span {
    color: var(--color-orange);
}

button.home {
    padding: 15px 30px;
    margin-top: 30px;
    font-size: 18px;
    line-height: 1;
    color: #fff;
    background: var(--color-orange);
    border-radius: 60px;
}

.counts {
    margin-top: 60px;
    display: flex;
    justify-content: flex-start;
    align-items: stretch;
}

.count-item {
    min-width: 160px;
    margin-right: 30px;
    padding-right: 40px;
    border-right: 1px solid #ebebeb;
    background: #00000063;
    padding: 0 10px;
}

.count-item:last-child {
    margin-right: 0;
    border-right: none;
}

.count-item-head {
    display: flex;
    justify-content: flex-start;
    align-items: center;
    font-size: 30px;
    font-weight: 500;
    color: #fff;
}

.count-item-head > div {
    margin-right: 4px;
}

.count-item-body {
    font-size: 16px;
    color: #c0c0c0;
}

.shadow-divider {
    width: 100%;
    box-shadow: 0 0 40px 25px black;
    z-index: 3;
    position: relative;
}

.top__line .logo img {
    filter: brightness(100);
    width: 260px;
    display: inline-block;
}

.benefits {
    display: flex;
    margin: 0 auto 0 auto;
    justify-content: space-between;
    max-width: 1200px;
}

.benefits-item {
    padding: 24px;
    background: linear-gradient(90deg, #325ba4, #050d2a);
    margin-right: 40px;
    position: relative;
    border-radius: 10px;
}

.benefits-item:last-child {
    margin-right: 0;
}

.b-counter {
    display: block;
    line-height: 1;
    position: absolute;
    left: 12px;
    top: 12px;
    font-size: 20px;
    font-weight: 500;
    color: #c7d0d7;
}

span.b-title {
    font-size: 13px;
    line-height: 1.1;
    color: #fff;
    display: block;
}

span.b-head {
    display: block;
    margin-top: 24px;
    margin-bottom: 24px;
    font-size: 18px;
    line-height: 1;
    font-weight: 500;
    color: #ffc108;
}

.text-orange {
    color: var(--text-orange)
}

.benefits-wrapp {
    position: relative;
}

.benefits-wrapp .sub-title {
    margin-bottom: 60px
}

.benefits-wrapp:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../img/Techstack.webp);
}

.benefits-wrapp::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #0101028c;
}

.bclients-wrapp {
    position: relative;
}

.bclients-wrapp > .layout_cell {
    padding-bottom: 80px;
}

.oclients,
.bclients {
    margin-top: 60px;
    max-width: 1080px;
    margin-left: auto;
    margin-right: auto;
    display: flex;
    justify-content: center;
    align-items: stretch;
    flex-wrap: wrap;
}

.oclients-item,
.bclients-item {
    flex: 0 1 calc(33% - 20px);
    margin-right: 20px;
    margin-bottom: 20px;
    border-radius: 5px;
    padding: 10px;
    background: #32343b8f;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

.oclients-item {
    background: #01081966;
}

@media screen and (min-width: 992px) {
    .bclients-item:nth-child(3n+3) {
        margin-right: 0;
    }
}

.bclients-item:last-child {
    margin-right: 0;
}

.bclients-wrapp:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../img/section3.jpg);
}

.bclients-wrapp::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #010102a6;
}

.oclients-item span,
.bc-title {
    display: block;
    color: #fff;
    font-size: 16px;
    width: 100%;
}

.oclients-wrapp:before {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(../img/section4.jpg);
}

.oclients-wrapp::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #010102a6;
}

.oclients-wrapp {
    position: relative;
}

.oclients-wrapp > .layout_cell {
    padding-bottom: 80px;
}

.oclients-item {
    flex: 0 1 calc(33% - 40px);
    margin-right: 40px;
    margin-bottom: 40px;
}

@media screen and (min-width: 768px) {
    .oclients-item:nth-child(3n+3) {
        margin-right: 0;
        flex: 0 1 33%;
    }   
}

.oc-card {
    width: 100%;
    background-color:aliceblue;
    height: 100px;
    border-radius: 8px;
}

.oc-name {
    display: block;
    font-size: 16px;
    font-weight: 500;
    color: #fff;
    margin-top: 12px;
}

.call-wrp {
    display: flex;
    justify-content: center;
    align-items: center;
}

.btn.bclietns {
    margin-top: 20px;
    padding: 16px 60px;
    font-size: 18px;
    background: var(--text-orange);
    color: #333;
    font-weight: 500;
}

.responsive-nav {
    display: none;
}

div#b-nav {
    width: 25px;
    cursor: pointer;
    height: 22px;
}

div#b-nav span {
    display: block;
    width: 100%;
    height: 4px;
    background: #fff;
    margin-bottom: 4px;
    border-radius: 6px;
    transition: 150ms;
}

div#b-nav.active span:nth-child(2) {
    opacity: 0;
}

div#b-nav.active span:first-child {
    transform: rotate(45deg) translate3d(11px, 10px, 10px);
}

div#b-nav.active span:last-child {
    transform: rotate(-45deg) translate3d(2px, 0px, 0)
}

#m-nav {
    display: none;
    width: 260px;
    background: #010001;
    height: 400px;
    position: absolute;
    right: 0;
    top: -20px;
    padding: 20px;
    height: 100%;
    z-index: 2;
}

#b-nav.active ~ #m-nav {
    display: block;
}

#b-nav.active {
    z-index: 3;
    position: absolute;
    right: 0;
    top: 0;
    right: 20px;
}

.oc-card img {
    width: 100%;
    height: 100%;
    object-fit: contain;
    padding: 10px 0
}

.modal {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 999;
    background: rgba(0, 0, 0, .5);
    display: flex;
    justify-content: center;
    align-items: center;
    opacity: 0;
    z-index: -1;
    transition: 150ms;
    padding: 0 15px;
}

.modal.show {
    opacity: 1;
    z-index: 9999;
}
.modal-content {
    max-width: 600px;
    width: 100%;
    min-height: 300px;
    background: #fff;
    margin: auto;
    transition: 150ms;
    transform: translateY(100%) scale(.4);   
}

.modal.show .modal-content {
    transform: translateY(0);
}

.md-block > img {
    height: 180px;
    width: 100%;
    object-fit: cover;
}

.modal-title {
    color: #ffa900;
    font-size: 32px;
    font-weight: 500;
    letter-spacing: -1px;
    line-height: 1;
    padding: 0 15px;
    margin-top: 20px;
}

.modal-subtitle {
    color: #10122c;
    font-size: 20px;
    font-weight: 300;
    padding: 0 15px;
    margin-top: 10px;
    display: block;
    line-height: 1;
    font-weight: 400;
    margin-bottom: 20px;
}

.md-block form {
    padding: 0 15px;
    /* display: flex;
    justify-content: space-between;
    align-items: center; */
}

.form input {
    width: 100%;
    padding: 12px 24px;
    background: #f0f0f0;
    border-radius: 4px;
    margin-bottom: 20px;
}

.form .btn {
    width: 100%;
    padding: 12px 24px;
    border-radius: 4px;
    text-transform: uppercase;
    font-weight: 500;
    background: #ffa900;
}

.form .btn:disabled {
    background: lightgray
}

.footer-subtitle,
.footer-title {
    font-size: 48px;
    letter-spacing: -1px;
    font-weight: 300;
    color: #fff;
    text-align: center;
    display: block;
    text-transform: uppercase;
}

.third {
    display: block;
    font-size: 18px;
    color: #fff;
    text-align: center;
    margin-bottom: 40px;
}

.footer-subtitle {
    font-weight: 600;
    color: var(--text-orange);
}

.layout_cell-footer {
    background: url(../img/footer.webp) center center;
    background-size: cover;
    z-index: 0;
}

.layout_cell.layout_cell-footer::after {
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, .8);
    z-index: -1;
}

.foot-info {
    margin: 40px 0;
    display: flex;
    flex-direction: column;
    justify-content: flex-start;
    align-items: center;
    color: lightgray
}

.foot-info .f-item {
    color: var(--text-orange)
}

.foot-info .f-item a {
    color: lightgray;
    text-overflow: hidden;
    transition: 150ms
}

.foot-info .f-item a:hover {
    opacity: .8;
}

@media screen and (max-width: 1200px) {
    .layout_cell-header .layout_cell::before {
        width: 55%;
        height: 70%;
    }
}

@media screen and (max-width: 1080px) {
    
    .top__line .call,
    .nav.desktop {
        display: none;
    }

    .responsive-nav {
        display: block
    }

    .navbar {
        flex-direction: column;
        width: 100%;
        align-items: flex-start;
        margin-top: 25px;
    }

    .top__line .nav {
        width: 100%;
    }

    .navbar-item {
        margin-right: 0;
        width: 100%;
        margin-bottom: 8px;
    }
}

@media screen and (max-width: 768px) {
    .content { 
        padding: 20px 0 
    }

    .title span {
        font-size: 20px;
        margin-right: 0;
        letter-spacing: 0
    }

    .sub-title {
        font-size: 16px;
        padding-left: 40px;
    }

    .sub-title:before {
        width: 20px;
    }

    .profit {
        font-size: 16px;
        margin-top: 10px;
    }

    button.home {
        margin-top: 10px;
        padding: 7px 12px;
        font-size: 16px;
    }

    .shadow-divider {
        box-shadow: 0 0 20px 20px black
    }

    .addr {
        text-align: center;
    }

    .counts {
        margin-top: 20px;
        flex-wrap: wrap;
        justify-content: center;
    }

    .count-item-head {
        font-size: 18px;
    }

    .count-item-body {
        font-size: 14px;
    }

    .count-item {
        margin-right: 10px;
        margin-bottom: 10px;
        padding-right: 0;
        border-right: 0;
        min-width: unset;
        text-align: center;
    }

    .count-item-head {
        justify-content: center;
    }

    .layout_cell-header .layout_cell::before {
        display: none;
    }

    .benefits-wrapp .sub-title {
        margin-bottom: 20px;
    }

    .benefits {
        flex-wrap: wrap;
    }

    .benefits-item {
        margin: 0 0 20px 0 !important;
        padding: 15px;
    }

    span.b-head {
        margin-top: 12px;
        margin-bottom: 12px;
        font-size: 16px
    }

    .b-counter {
        position: initial;
    }

    .benefits-wrapp > .layout_cell {
        padding-bottom: 30px;
    }

    .bclients-item {
        flex: 0 1 calc(50% - 20px)
    }

    .bclients-item:nth-child(2n+2) {
        margin-right: 0;
    }

    .bc-title {
        font-size: 14px;
        margin-top: 10px;
    }

    .oclients-item {
        flex: 0 1 calc(45% - 2px);
        margin-right: 20px;
        margin-bottom: 20px;
    }

    .oclients-item:nth-child(2n+2) {
        margin-right: 0;
    }

    .oc-name {
        font-size: 14px;
        margin-top: 10px;
    }

    .bclients-wrapp > .layout_cell {
        padding-bottom: 40px;
    }

    .btn.bclietns {
        font-size: 16px;
    }

    .oclients-wrapp > .layout_cell {
        padding-bottom: 40px;
    }

    .footer-subtitle, .footer-title {
        font-size: 20px;
    }
    .footer-subtitle {
        font-size: 18px;
    }

    .third {
        font-size: 16px;
        margin-bottom: 20px;
    }

    .btn.bclietns {
        padding: 12px 30px;
    }
}