:root {
    --color1: #0072bc;
    --color2: #000;
    --color3: #fff;
    --color4: #f1cb1e
}

section.home-banner.small.very h1 {
    max-width: 469px;
}
section.project-single img {
    width: auto;
    clip-path: polygon(15px 0, calc(100% - 15px) 0, 100% 15px, 100% calc(100% - 15px), calc(100% - 15px) 100%, 15px 100%, 0 calc(100% - 15px), 0 15px);
}
body {
    font-family: Montserrat,sans-serif;
    margin: 0;
    background: #ededed;
    color: var(--color2);
    overflow-x: hidden
}

section.home-banner.small.very {
    padding-top: 160px;
    padding-bottom: 110px;
    clip-path: polygon(15px 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0 calc(100% - 15px),0 15px);
    margin-top: 25px;
    position: relative;
    background: #fff;
    margin-bottom: 50px
}

section.home-banner.small.very .after {
    content: "";
    position: absolute;
    background-position: center;
    background-size: cover;
    width: 78%;
    height: 100%;
    top: 0;
    right: 0;
    z-index: -1;
    filter: saturate(.5);
    clip-path: polygon(56% 0%,calc(100% - 20px) 0%,100% 20px,100% calc(100% - 20px),calc(100% - 20px) 100%,0% 100%)
}

a:hover {
    color: var(--color4)
}

ul.breads {
    list-style: none;
    margin: 0;
    padding: 0;
    display: flex
}

ul.breads a {
    color: var(--color1)
}

ul.breads i {
    font-size: 12px;
    margin-right: 6px
}

body.perexod>* {
    opacity: 0
}

body>* {
    transition: .4s
}

ul.footer-menu-a {
    display: grid;
    grid-template-columns: 1fr 1fr
}

ul a {
    color: #fff
}

footer:after {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: url(/media/UK_MAP.png);
    background-position: center;
    background-size: 18%;
    background-repeat: no-repeat;
    z-index: -1;
    opacity: .1;
    filter: brightness(0)
}

footer li>span i {
    margin-right: 5px;
    color: var(--color4)
}

footer li>span {
    display: block;
    font-weight: 700;
    margin-bottom: 10px
}

footer ul~ul:after {
    content: "";
    position: absolute;
    left: -11%;
    top: 0;
    width: 2px;
    height: 150px;
    background: #09649e
}

footer img {
    filter: brightness(0)invert(1)
}

footer .a21 {
    background: #005085;
    margin-top: 14px
}

footer img {
    width: 253px;
}

footer ul {
    margin: 0;
    padding: 0;
    position: relative
}

footer li {
    list-style: none;
    margin: 0;
    padding: 0;
    color: #fff
}

footer {
    display: grid;
    grid-template-columns: 1fr 4fr 1fr;
    gap: 10%;
    background: var(--color1);
    max-width: 1400px;
    clip-path: polygon(15px 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0 calc(100% - 15px),0 15px);
    position: relative
}

.joie:hover g circle {
    animation: rotate_alogo .5s linear infinite
}

a.joie svg {
    width: 115px;
    height: auto;
    margin: -14px 7px
}

.joie:hover g>:nth-child(2n) circle {
    animation: rotate_alogo .4s linear infinite
}

@keyframes rotate_alogo {
    0% {
        transform: rotate(0) translate(8px) rotate(0)
    }

    to {
        transform: rotate(360deg) translate(8px) rotate(-360deg)
    }
}

a.joie svg>g>:nth-child(1),a.joie svg>g>:nth-child(3),a.joie svg>g>:nth-child(4),a.joie svg>g>:nth-child(5) {
    fill: #152c52
}

a.joie svg g {
    filter: none
}

a.joie svg path~g path {
    stroke-width: 24px;
    filter: brightness(0)
}

a.joie {
    width: 100%;
    text-align: center;
    display: block;
    padding: 24px;
    background: transparent;
    color: #000;
    letter-spacing: 1px;
    margin: 0 auto;
    box-sizing: border-box;
    position: relative;
    z-index: 2;
    width: -moz-fit-content;
    width: fit-content;
    border-radius: 15px
}

img,div {
    box-sizing: border-box;
    width: 100%
}

section,footer {
    max-width: 1400px;
    margin: 0 auto;
    padding: 50px 5%;
    box-sizing: border-box
}

h2 strong {
    font-size: 25px;
    margin-top: 0;
    display: block;
    color: var(--color1);
    margin-left: 3px
}

h2 {
    font-size: 50px;
    font-weight: 400
}

.mob-header,.service-item .img {
    display: none
}

.cursor {
    position: fixed;
    top: -20px;
    left: -20px;
    width: 40px;
    height: 40px;
    border: 1px solid var(--color1);
    border-radius: 50%;
    pointer-events: none;
    transform: translate(-50%,-50%);
    transition: width .8s ease,height .8s ease,top .8s ease,left .8s ease;
    z-index: 9999
}

.cursor.active {
    filter: blur(2px);
    top: -30px;
    left: -30px;
    width: 60px;
    height: 60px
}

.cursor~.after {
    content: "";
    position: fixed;
    top: -4px;
    left: -4px;
    width: 8px;
    height: 8px;
    background: #0078c0;
    border-radius: 50px;
    transition: 1s;
    pointer-events: none;
    transform: translate(-50%,-50%);
    transition: width .8s ease,height .8s ease,top .8s ease,left .8s ease;
    z-index: 9999
}

body input:-webkit-autofill,body input:-webkit-autofill:hover,body input:-webkit-autofill:focus,body input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px rgba(255,255,255,0) inset!important;
    -webkit-text-fill-color: #111!important;
    background-color: red!important;
    -webkit-transition: background-color 9999s ease-in-out 0s;
    transition: background-color 9999s ease-in-out 0s
}

input:-webkit-autofill {
    background-color: var(--color3)0!important;
    color: var(--color3)!important
}

.pole input.phone-input {
    padding-left: 22px
}

.custom-dropdown {
    position: relative
}

.popup.active .b-back-sfon {
    transform: rotateX(0) translateY(0);
    opacity: 1
}

.popup .b-back-sfon {
    transform: rotateX(-50deg) translateY(100px);
    transition: 1s;
    opacity: 0;
    background: #fff;
    clip-path: polygon(15px 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0 calc(100% - 15px),0 15px);
    padding: 5px 35px 10px
}

.dark-theme .popup .b-back-sfon {
    background: #1d1d1d
}

.popup .popup-in {
    perspective: 800px;
    max-height: 90vh;
    overflow-y: visible;
    overflow-x: visible
}

span.fa-xx {
    position: absolute;
    right: 38px;
    top: 38px;
    font-size: 115px;
    font-weight: 100;
    transition: .4s;
    transform: rotate(45deg);
    cursor: pointer;
    line-height: 50px;
    text-align: center;
    height: 50px;
    width: 50px;
    display: flex;
    justify-content: center;
    z-index: 9
}

span.fa-xx:hover {
    transform: rotate(135deg)
}

.popup>div {
    max-width: 650px;
    margin: 0 auto;
    overflow: visible
}

.popup.active {
    opacity: 1;
    z-index: 9999999
}

.popup {
    position: fixed;
    width: 100%;
    height: 100vh;
    background: #e9e9e9c7;
    display: flex;
    justify-content: center;
    flex-direction: column;
    transition: .4s;
    z-index: -1;
    opacity: 0;
    top: 0;
    left: 0
}

form.contact-form {
    padding: 10px
}

form .a21 {
    transition: .4s;
    cursor: pointer;
    font-family: Montserrat;
    font-size: 16px;
    letter-spacing: 2px;
    border: none
}

.custom-dropdown .options {
    display: none;
    position: absolute;
    top: 92%;
    left: -8px;
    right: 0;
    background-color: #122035;
    border: 0px solid #ccc;
    border-radius: 15px;
    z-index: 10;
    max-height: 471px;
    overflow-y: auto;
    list-style: none;
    margin: 0;
    padding: 10px 8px;
    cursor: pointer
}

input#id_file {
    font-size: 12px
}

.custom-dropdown.active .options {
    display: block
}

.custom-dropdown .options li {
    padding: 10px 14px;
    transition: .4s;
    border-radius: 12px
}

.custom-dropdown .selected i {
    font-size: 13px;
    color: #000
}

.custom-dropdown .options li:hover {
    background-color: #1a2b45
}

body :focus-visible {
    outline: none
}

.custom-dropdown .selected {
    cursor: pointer
}

.custom-dropdown .selected,.pole input,.pole textarea,.pole select {
    border: none;
    font-family: Montserrat;
    font-size: 18px;
    padding: 20px 10px;
    width: 97%;
    background: transparent;
    color: var(--color3);
    margin-top: 0;
    margin-bottom: 10px;
    border-bottom: 1px solid #707070;
    position: relative;
    z-index: 2;
    max-height: 150px
}

.a21:hover {
    background: var(--color3);
    transform: scale(1.1);
    color: #0fd0e1
}

.a21 span {
    width: -moz-max-content;
    width: max-content
}

.a21 i {
    display: flex;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    transition: .4s;
    width: 35px;
    height: 35px;
    position: absolute;
    background: #0065a6;
    top: calc(50% - 17px);
    left: 9px;
    color: var(--color3);
    clip-path: polygon(10px 0,calc(100% - 10px) 0,100% 10px,100% calc(100% - 10px),calc(100% - 10px) 100%,10px 100%,0 calc(100% - 10px),0 10px)
}

ul.main-menu .a21,.a21 {
    display: grid;
    grid-template-columns: 20% 80%;
    width: -moz-fit-content;
    width: fit-content;
    height: -moz-fit-content;
    height: fit-content;
    color: var(--color3);
    background: var(--color1);
    position: relative;
    padding: 15px 20px 15px 60px;
    height: initial;
    clip-path: polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px)
}

.a21:before {
    content: "";
    position: absolute;
    left: -140%;
    top: 0;
    width: 100%;
    height: 100%;
    background: var(--color1);
    z-index: -1;
    filter: brightness(.6);
    transform: scale(1.5);
    transition: .8s;
    border-radius: 50px
}

.a21:hover:before {
    left: 0%
}

.a21:hover i {
    background: #fff;
    color: var(--color1)
}

ul.main-menu li.lilogo~li {
    margin-left: 20px
}

ul.main-menu li.lilogo~li.zakaz {
    padding: 9px 0;
    margin-left: auto
}

ul.main-menu ul {
    position: absolute;
    list-style: none;
    margin: 0;
    transition: .2s;
    transform: translateY(50px);
    background: linear-gradient(45deg,var(--color2),#0d142c);
    padding: 20px 35px;
    left: -35px;
    min-width: -moz-max-content;
    min-width: max-content;
    display: block;
    opacity: 0;
    pointer-events: none
}

.a21 span,.a21:hover span {
    color: var(--color3)
}

ul.main-menu a:hover,ul.main-menu .active a {
    color: var(--color1)
}

ul.main-menu.scroll-up {
    padding-top: 15px;
    padding-bottom: 15px;
    background: var(--color2)
}

ul.main-menu {
    position: fixed;
    width: 100%;
    display: flex;
    justify-content: start;
    list-style: none;
    padding: 42px 5%;
    left: calc(50% - 700px);
    z-index: 9;
    transition: .4s;
    top: 0;
    box-sizing: border-box;
    max-width: 1400px;
    margin: 0 auto
}

ul.main-menu:after {
    content: "";
    clip-path: polygon(15px 0,calc(100% - 15px) 0,100% 15px,100% calc(100% - 15px),calc(100% - 15px) 100%,15px 100%,0 calc(100% - 15px),0 15px);
    background: transparent;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    z-index: -1;
    transition: .4s
}

ul.main-menu.scroll-down:after,ul.main-menu.scroll-up:after {
    background: #fff
}

ul.main-menu a {
    font-weight: 500;
    font-size: 14px;
    letter-spacing: 1px;
    color: var(--color2);
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 100%;
    position: relative;
    width: -moz-fit-content;
    width: fit-content
}

.preloader.loaded span:before {
    width: 0
}

.preloader.loaded.hidden {
    opacity: 0;
    z-index: -1
}

div.logo .a img {
    max-width: 90px;
    display: block;
    margin: 18px 5px
}

ul.main-menu li.lilogo img {
    width: 250px
}

div.logo {
    position: relative;
    width: 180px;
    height: 70px;
    overflow: visible;
    display: flex;
    top: -6px;
    justify-content: center;
    flex-direction: column
}

.logo svg {
    width: 153px;
    height: 60px;
    padding: 0 8px;
    margin: 11px 0
}

ul.main-menu li.lilogo a {
    font-size: 0px;
    width: fit-content;
    margin-right: 19px;
}

li.langs a {
    text-transform: uppercase
}

li.langs,li.menu-item.has-children {
    position: relative;
    cursor: pointer;
    width: -moz-fit-content;
    width: fit-content;
    padding: 0 20px 0 0
}

ul.main-menu>li {
    margin-left: 0
}

li.menu-item.has-children>a {
    cursor: pointer
}

li.langs i,li.menu-item.has-children i {
    position: absolute;
    top: 26px;
    right: 0;
    transition: .4s;
    width: -moz-fit-content;
    width: fit-content;
    color: #000
}

li.langs:hover i,li.menu-item.has-children:hover i {
    transform: rotate(360deg)
}

ul.main-menu li:hover>ul {
    z-index: 1;
    opacity: 1;
    transform: translateY(0);
    pointer-events: all
}

ul.main-menu ul {
    position: absolute;
    list-style: none;
    margin: 0;
    transition: .2s;
    transform: translateY(50px);
    background: #fff;
    padding: 20px 35px;
    left: -35px;
    min-width: -moz-max-content;
    min-width: max-content;
    display: block;
    opacity: 0;
    pointer-events: none;
    clip-path: polygon(5px 0,calc(100% - 5px) 0,100% 5px,100% calc(100% - 5px),calc(100% - 5px) 100%,5px 100%,0 calc(100% - 5px),0 5px)
}

ul.main-menu ul a>span {
    margin-right: 5px
}

ul.main-menu ul a {
    padding: 12px 0;
    position: relative;
    display: flex;
    flex-direction: row;
    justify-content: start
}

ul.main-menu ul li~li a:after {
    content: "";
    position: absolute;
    left: 0;
    top: 2px;
    width: 50px;
    height: 1px;
    background: #292929;
    max-width: 90%
}

li.zakaz {
    padding: 9px 0
}

ul.main-menu li.lilogo img {
    width: 300px;
    transition: .2s;
}



ul.main-menu.scroll-down,ul.main-menu.scroll-up {
    padding-top: 5px;
    padding-bottom: 5px;
    background: transparent;
    margin-top: 10px
}

.error-msg {
    color: #f44336;
    font-size: 14px;
    margin-top: -8px;
    margin-bottom: 15px
}

.b-back-sfon {
    position: relative;
    overflow: hidden
}

form.contact-form .pole i {
    color: var(--color1)
}

form .a21:hover,form .a21:hover i {
    color: #000
}

.popup-in h3 {
    font-size: 45px;
    color: #111;
    text-align: center
}

.load {
    display: none;
    font-size: 24px;
    text-align: center;
    margin-bottom: 10px;
    position: absolute;
    transition: .4s;
    width: 100%;
    height: 100%;
    background: #0b0b0b;
    opacity: .9;
    justify-content: center;
    flex-direction: column;
    z-index: 9;
    left: 0;
    top: 0
}

.load i {
    animation: spin 1s linear infinite
}

@keyframes spin {
    0% {
        transform: rotate(0)
    }

    to {
        transform: rotate(360deg)
    }
}

span#phone-flag {
    position: absolute;
    margin: 0;
    display: flex;
    justify-content: center;
    flex-direction: column;
    height: 82%
}

.custom-dropdown .selected,.pole input,.pole textarea,.pole select {
    border: none;
    font-family: Montserrat;
    font-size: 18px;
    padding: 20px 10px;
    width: 97%;
    background: transparent;
    color: #111;
    margin-top: 0;
    margin-bottom: 10px;
    border-bottom: 1px solid #707070;
    position: relative;
    z-index: 2;
    max-height: 150px;
    box-sizing: border-box
}

.phone-input-wrap {
    position: relative
}

.popup-in form .a21 {
    margin: 0 auto
}

a {
    text-decoration: none;
    cursor: pointer;
    transition: .4s;
    color: var(--color1)
}

li.day-night-toggle>:nth-child(1) {
    color: #000;
    opacity: 0
}

li.day-night-toggle i {
    position: absolute;
    z-index: 2;
    display: flex;
    justify-content: center;
    flex-direction: column;
    color: #000;
    width: 100%;
    height: 100%;
    left: 0;
    top: 0;
    text-align: center;
    line-height: 0px;
    background: var(--color4);
    transition: .4s
}

li.day-night-toggle:hover:after {
    opacity: .8
}

li.day-night-toggle {
    cursor: pointer;
    margin: 0;
    background: transparent;
    height: -moz-fit-content;
    height: fit-content;
    position: fixed;
    left: 18px;
    border-radius: 50px;
    overflow: hidden;
    width: 35px;
    height: 35px;
    display: flex;
    justify-content: space-between;
    padding: 0 10px;
    box-sizing: border-box;
    top: 29px;
    z-index: 99
}

body.dark-theme li.day-night-toggle>:nth-child(2) {
    color: #000;
    opacity: 0
}

body.dark-theme li.day-night-toggle>:nth-child(1) {
    color: #fff;
    opacity: 1;
    background: #4c4c4c
}

body.dark-theme {
    background: #1e1e1e
}

body.dark-theme .partners-page li,body.dark-theme .line-block p,body.dark-theme .services h2~p,body.dark-theme .tex,body.dark-theme h2,body.dark-theme ul.main-menu a,body.dark-theme .stats-grid,body.dark-theme .about-stats h1 {
    color: var(--color3)
}

body.dark-theme ul.main-menu li.lilogo img {
    filter: brightness(0)invert(1)
}

body.dark-theme .services>div:after {
    opacity: .05;
    filter: brightness(0)invert(1)
}

body.dark-theme .services ul li {
    background: #272727;
    color: #fff
}

body.dark-theme .loader div {
    background: #1e1e1e
}

body.dark-theme section.home-banner.small.very {
    background: #242424;
    color: #fff
}

body.dark-theme ul.breads a {
    color: var(--color4)
}

body.dark-theme section.step {
    background: #171717
}

body.dark-theme .serv,body.dark-theme section.step .steps span {
    background: url(/media/dots.png),#1c1c1c;
    color: #fff;
    background-size: 135px;
    background-repeat: repeat-y;
    background-position: left
}

body.dark-theme .serv:hover,body.dark-theme section.step .steps span:hover {
    background: url(/media/dots.png),var(--color1);
    background-size: 135px;
    background-repeat: repeat-y;
    background-position: left;
    color: #fff
}

body.dark-theme a.joie {
    color: #fff
}

body.dark-theme a.joie svg>g>:nth-child(1),body.dark-theme a.joie svg>g>:nth-child(3),body.dark-theme a.joie svg>g>:nth-child(4),body.dark-theme a.joie svg>g>:nth-child(5) {
    fill: #fff
}

body.dark-theme ul.main-menu .active a {
    color: var(--color4)
}

body.dark-theme .contact-block {
    background: url(/media/dots.png),#171717;
    color: #fff;
    background-size: 135px;
    background-repeat: repeat-y;
    background-position: left
}

body.dark-theme .popup {
    background: #181818f2
}

body.dark-theme .popup-in h3,body.dark-theme .pole,body.dark-theme .custom-dropdown .selected,body.dark-theme .pole input,body.dark-theme .pole textarea,.pole select {
    color: #fff
}

body.dark-theme .services ul li:hover span {
    transform: translate(-10px);
    background: #272727;
    color: var(--color1)
}

body.dark-theme ul.main-menu.scroll-down:after,body.dark-theme ul.main-menu.scroll-up:after {
    background: #262626
}

body.dark-theme li.langs i,body.dark-theme li.menu-item.has-children i {
    color: #fff
}

body.dark-theme ul.main-menu ul {
    background: #0a0a0a
}

body.dark-theme .about-text p:after {
    background: #262626
}

body.dark-theme .about-text p {
    color: #fff
}

body.dark-theme .project-item {
    background: #262626
}

body.dark-theme span.catasas,body.dark-theme span.fa-xx {
    color: #fff
}

@media (max-width: 1400px) {
    footer img {
    width: 155px;
}
    section.about-company {
        padding:136px 1%
    }

    .stat-number {
        font-size: 36px
    }

    .custom-dropdown .selected,.pole input,.pole textarea,.pole select {
        max-height: 100px
    }

    form.contact-form {
        padding: 10px;
        max-height: 64vh;
        overflow-y: scroll
    }

    h2 {
        font-size: 34px
    }

    section.step .steps h3 {
        font-size: 22px
    }



    .about-stats h2 {
        font-size: 30px
    }



    ul.main-menu {
        left: calc(50% - 500px);
        max-width: 1000px;
        margin: 0 auto;
        padding: 42px 1%
    }

    h2 strong {
        line-height: 21px;
        margin-top: 27px
    }

    .services h2 {
        line-height: 42px
    }

    .items {
        grid-template-columns: 1fr 1fr 1fr
    }

    section,footer {
        max-width: 1000px
    }
}

@media (max-width: 1200px) {
    ul.main-menu ul a {
        display:block
    }

    ul.main-menu ul a>span {
        margin-right: 0
    }

    section.portfolio_all .work-item h3 {
        padding: 0 20px;
        font-size: 16px;
        font-weight: 400
    }

    body.dark-theme ul.main-menu {
        background: #111
    }

    .store .cheks {
        grid-template-columns: 49% 50%
    }

    ul.main-menu ul {
        pointer-events: all
    }

    ul.submenu {
        pointer-events: none
    }

    ul.submenu a {
        pointer-events: all
    }

    body.dark-theme .services-circles {
        display: flex;
        justify-content: center;
        opacity: 0
    }

    body.dark-theme .service-item .img {
        filter: invert(1)
    }

    body.dark-theme section.services>div h3~p {
        color: #000
    }

    body.dark-theme ul.main-menu.scroll-up,body.dark-theme ul.main-menu.scroll-down,ul.main-menu {
        background: #111
    }

    ul.main-menu.scroll-down li.lilogo img,ul.main-menu.scroll-up li.lilogo img {
        width: 100px
    }

    body.dark-theme .butter>span {
        background: #152c52
    }

div.logo {
    position: relative;
    width: 173px;
    height: 70px;
    overflow: visible;
    display: flex;
    top: 0;
    justify-content: center;
    flex-direction: column;
}

    body.dark-theme .mob-header {
        background: transparent;
        transition: .4s
    }

    body.dark-theme .mob-header.scrolled {
        background: #111
    }

    body.dark-theme ul.main-menu.scroll-down:after,body.dark-theme ul.main-menu.scroll-up:after {
        background: #262626;
        opacity: 0
    }

    ul.main-menu.scroll-up.open,ul.main-menu.scroll-down.open,ul.main-menu.open {
        left: 0;
        margin: 0
    }

    div#smooth-content.menu-opened {
        opacity: .1
    }

    .butter.active>:nth-child(3) {
        transform: translate(-2px,-4px) rotate(-45deg);
        width: 20px
    }

    .butter.active>:nth-child(2) {
        transform: translate(-15px,5px) rotate(45deg);
        width: 20px
    }

    .butter>span {
        width: 35px;
        height: 2px;
        background: var(--color1);
        position: absolute;
        right: 0;
        top: 31px;
        transition: .4s
    }

    .dark-theme .butter {
        color: #fff
    }

    body.dark-theme div.logo {
        filter: brightness(0)invert(1)
    }

    body.dark-theme .butter>span {
        background: #fff
    }

    .butter>span~span {
        top: 40px;
        width: 22px;
        right: 13px
    }

    .butter {
        position: relative;
        padding-right: 54px;
        display: flex;
        justify-content: center;
        flex-direction: column;
        cursor: pointer;
        width: 95px;
        font-weight: 700;
        color: var(--color1)
    }

    .logos-slide img {
        width: auto;
        display: block
    }

    .mob-header>a {
        font-size: 0
    }

    .mob-header.scrolled {
        background: var(--color2);
        background: #fff
    }

    .mob-header {
        position: fixed;
        top: 0;
        left: 0;
        background: transparent;
        width: 100%;
        display: flex;
        justify-content: space-between;
        transition: .4s;
        z-index: 99999;
        padding: 5px 15px 5px 55px
    }

    div.clients {
        overflow: hidden;
        position: relative
    }

    div#steps-wrapper,.we-are {
        overflow: hidden
    }

    .raboty .scroll-wrapper {
        overflow: hidden;
        margin-left: -7%;
        width: 114%;
        padding-left: 10%
    }

    .main-menu {
        overflow: auto;
        touch-action: pan-y;
        scrollbar-width: none;
        -ms-overflow-style: none
    }

    ul.main-menu li.lilogo~li {
        margin-left: 0
    }

ul.main-menu.scroll-up, ul.main-menu.scroll-down, ul.main-menu {
    padding: 25px 30px;
    display: block;
    width: 260px;
    background: #fff;
    min-height: 100vh;
    overflow-y: auto;
    max-height: 100vh;
    position: fixed;
    left: -420px;
    z-index: 9999;
    padding-top: 73px;
}

    .main-menu::-webkit-scrollbar {
        display: none
    }

    li.langs i,li.menu-item.has-children i {
        position: absolute;
        top: 17px;
        right: 2px;
        transition: .4s;
        left: -5px
    }

    ul.main-menu ul li a {
        font-size: 14px;
        display: grid
    }

    ul.main-menu li.langs>a,li.menu-item.has-children>a {
        padding-left: 15px
    }

    ul.main-menu a.active-link:after {
        bottom: 0
    }

    ul.main-menu a {
        padding: 7px 0
    }

    .mob-header .logo svg {
        margin: 10px 0;
        width: 173px
    }

    li.day-night-toggle {
        position: fixed;
        top: 21px;
        left: 10px;
        z-index: 99999
    }

    ul.main-menu li.lilogo {
        position: relative;
        left: auto;
        margin: 0;
        right: 0;
        top: 0;
        opacity: 0
    }

    ul.main-menu a,ul.main-menu ul a {
        padding: 15px 0;
        position: relative;
        font-size: 18px
    }

    ul.main-menu li.open:hover>ul,ul.main-menu li.open>ul {
        height: auto;
        transform: translateY(0);
        margin-bottom: 0;
        opacity: 1;
        display: block
    }

    li.menu-item.has-children.open i {
        transform: rotate(-90deg)
    }

    ul.main-menu li:hover>ul,ul.main-menu ul {
        position: relative;
        left: 0;
        opacity: 1;
        transform: none;
        padding: 10px;
        background: transparent;
        border-left: 1px solid #585858;
        width: -moz-fit-content;
        width: fit-content;
        min-width: 100%;
        z-index: 1;
        margin-bottom: -20px;
        display: block
    }

    section.about-company:after {
        top: 78px;
        height: 90%
    }

    ul.main-menu>li {
        margin-left: 0
    }

    .landing-nav a {
        height: 30px
    }

    ul.price-ul {
        grid-template-columns: 33% 33% 33%
    }

    .word {
        font-size: 140px;
        margin-right: 10%
    }

    svg.svg2 {
        width: 100vw;
        left: 21%;
        margin-top: -73%
    }

    section.sircle {
        top: .5%;
        left: 30%
    }

    .a21 i {
        margin: 2px 5px;
        left: 7px
    }

    ul.main-menu .a21 i {
        display: none
    }

    ul.main-menu .a21 {
        padding: 15px 20px
    }

    .logo svg {
        width: 200px;
        height: 60px;
        padding: 0 8px;
        margin: 0
    }
}

@media (max-width: 950px) {
    footer img {
    width: 100%;
}
    section.step h2 {
        text-align:center
    }

    .popup .b-back-sfon {
        height: 100vh
    }

    form.contact-form {
        padding: 10px;
        max-height: 70vh;
        overflow-y: scroll
    }

    .popup .popup-in {
        max-height: 100vh;
        height: 100vh
    }

    section,footer {
        max-width: 320px
    }

    .about-stats {
        width: 100%
    }

    .about-stats h2 {
        font-size: 22px
    }

    .about-stats h1 {
        font-size: 14px
    }

    .about-stats h1 svg {
        margin: -8px 0
    }

    section.about-company:after {
        top: auto;
        height: 45%;
        width: 100%;
        bottom: 0;
        opacity: .4
    }

    section.about-company {
        padding: 100px 5% 0
    }

    .stats-grid {
        margin: 11px 0
    }

    .about-text {
        grid-template-columns: 1fr
    }

    .tex {
        transform: none;
        writing-mode: horizontal-tb;
        text-align: left;
        font-size: 14px
    }

    .img-back {
        min-height: 250px
    }

    section,footer {
        max-width: 320px;
        padding: 10px 0
    }

    .textas>:nth-child(1) {
        transform: translate(0)
    }

    .textas>:nth-child(2) {
        transform: translate(0)
    }

    .textas>:nth-child(3) {
        transform: translate(0)
    }

    .about-text p {
        padding: 25px;
        position: relative;
        margin-top: 60px;
        margin-left: 28px
    }

    .services {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px
    }

    .services ul li p {
        padding-left: 34px
    }

    .items {
        grid-template-columns: 1fr
    }

    footer {
        grid-template-columns: 1fr;
        gap: 0;
        padding: 35px
    }

    ul.footer-menu-a {
        display: grid;
        grid-template-columns: 1fr
    }

    footer ul~ul:after {
        display: none
    }

    footer li {
        list-style: none;
        margin: 15px 0;
        padding: 0;
        color: #fff
    }

    footer .a21 {
        margin: 14px auto 0
    }

    section.home-banner.small.very {
        padding: 32px 25px 59px;
        margin-top: 90px
    }

    section.home-banner.small.very .after {
        opacity: .4;
        right: -25px
    }

    .x2 {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px
    }

    .x2.revert>:nth-child(2) {
        order: 0
    }

    section.step .steps {
        display: grid;
        grid-template-columns: 1fr;
        gap: 40px;
        margin: 25px 0
    }

    .filter {
        display: grid
    }

    section.step .steps h3~i {
        top: auto;
        bottom: -29px;
        left: calc(50% - 17px);
        transform: rotate(90deg);
        right: auto
    }

    body.dark-theme section.step {
        background: transparent
    }

    .services-page {
        display: grid;
        grid-template-columns: 1fr;
        gap: 30px
    }

    .serv img {
        width: 54px;
        height: auto;
        position: relative;
        left: auto;
        top: auto;
        transition: .4s;
        margin-bottom: 10px
    }

    .serv {
        padding: 19px 24px
    }

    h2 {
        font-size: 22px
    }

    .line-block {
        position: relative;
        padding-left: 45px
    }

    .contact-block {
        grid-template-columns: 1fr;
        padding: 25px 20px
    }

    section.contacts iframe {
        margin: 0
    }

    section.contacts {
        padding: 0
    }

    ul.breads {
        list-style: none;
        margin: 0;
        padding: 0;
        display: grid
    }

    ul.breads li {
        margin: 2px 0
    }

    ul.breads i {
        font-size: 12px;
        margin-right: 6px;
        transform: rotate(90deg)
    }

    section.projects-list>h2 {
        text-align: center
    }

    .services ul li p {
        padding-left: 34px;
        font-size: 16px
    }
}

@media (max-width: 330px) {
    section,footer {
        max-width:320px;
        padding: 10px 16px
    }
}
